From d65c0a770cc2b835043cfca32f52954f338af089 Mon Sep 17 00:00:00 2001 From: Dominik Schilling Date: Sun, 5 Jul 2020 12:58:20 +0000 Subject: [PATCH] Posts: Provide a HiDPI version for the avatar used in post locked dialogs. Props wpdesk, audrasjb, ocean90. Fixes #39633. git-svn-id: https://develop.svn.wordpress.org/trunk@48318 602fd350-edb4-49c9-b593-d223f7449a82 --- src/js/_enqueues/admin/inline-edit-post.js | 9 ++++++++- src/js/_enqueues/admin/post.js | 9 ++++++++- src/wp-admin/includes/misc.php | 14 ++++++-------- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/js/_enqueues/admin/inline-edit-post.js b/src/js/_enqueues/admin/inline-edit-post.js index 642bc4487b..f997e17f14 100644 --- a/src/js/_enqueues/admin/inline-edit-post.js +++ b/src/js/_enqueues/admin/inline-edit-post.js @@ -529,7 +529,14 @@ $( document ).on( 'heartbeat-tick.wp-check-locked-posts', function( e, data ) { row.find('.check-column checkbox').prop('checked', false); if ( lock_data.avatar_src ) { - avatar = $( '' ).attr( 'src', lock_data.avatar_src.replace( /&/g, '&' ) ); + avatar = $( '', { + 'class': 'avatar avatar-18 photo', + width: 18, + height: 18, + alt: '', + src: lock_data.avatar_src, + srcset: lock_data.avatar_src_2x ? lock_data.avatar_src_2x + ' 2x' : undefined + } ); row.find('.column-title .locked-avatar').empty().append( avatar ); } row.addClass('wp-locked'); diff --git a/src/js/_enqueues/admin/post.js b/src/js/_enqueues/admin/post.js index 00f80c51bb..ad014b5eb7 100644 --- a/src/js/_enqueues/admin/post.js +++ b/src/js/_enqueues/admin/post.js @@ -200,7 +200,14 @@ window.wp = window.wp || {}; } if ( received.lock_error.avatar_src ) { - avatar = $( '' ).attr( 'src', received.lock_error.avatar_src.replace( /&/g, '&' ) ); + avatar = $( '', { + 'class': 'avatar avatar-64 photo', + width: 64, + height: 64, + alt: '', + src: received.lock_error.avatar_src, + srcset: received.lock_error.avatar_src_2x ? received.lock_error.avatar_src_2x + ' 2x' : undefined + } ); wrap.find('div.post-locked-avatar').empty().append( avatar ); } diff --git a/src/wp-admin/includes/misc.php b/src/wp-admin/includes/misc.php index bee524cb50..77d6649138 100644 --- a/src/wp-admin/includes/misc.php +++ b/src/wp-admin/includes/misc.php @@ -1053,9 +1053,9 @@ function wp_check_locked_posts( $response, $data, $screen_id ) { 'text' => sprintf( __( '%s is currently editing' ), $user->display_name ), ); - $avatar = get_avatar( $user->ID, 18 ); - if ( $avatar && preg_match( "|src='([^']+)'|", $avatar, $matches ) ) { - $send['avatar_src'] = $matches[1]; + if ( get_option( 'show_avatars' ) ) { + $send['avatar_src'] = get_avatar_url( $user->ID, array( 'size' => 18 ) ); + $send['avatar_src_2x'] = get_avatar_url( $user->ID, array( 'size' => 36 ) ); } $checked[ $key ] = $send; @@ -1103,11 +1103,9 @@ function wp_refresh_post_lock( $response, $data, $screen_id ) { 'text' => sprintf( __( '%s has taken over and is currently editing.' ), $user->display_name ), ); - $avatar = get_avatar( $user->ID, 64 ); - if ( $avatar ) { - if ( preg_match( "|src='([^']+)'|", $avatar, $matches ) ) { - $error['avatar_src'] = $matches[1]; - } + if ( get_option( 'show_avatars' ) ) { + $error['avatar_src'] = get_avatar_url( $user->ID, array( 'size' => 64 ) ); + $error['avatar_src_2x'] = get_avatar_url( $user->ID, array( 'size' => 128 ) ); } $send['lock_error'] = $error;