Make WordPress Core

Ticket #58912: 58912.2.diff

File 58912.2.diff, 1.4 KB (added by joedolson, 9 months ago)

Updated patch

  • src/js/_enqueues/admin/common.js

     
    17021702                                }
    17031703                        } );
    17041704
    1705                         // Close sidebar when focus moves outside of toggle and sidebar.
    1706                         $( '#wp-admin-bar-menu-toggle, #adminmenumain' ).on( 'focusout', function() {
    1707                                 var focusIsInToggle, focusIsInSidebar;
     1705                        // Close sidebar when target moves outside of toggle and sidebar.
     1706                        $( document ).on( 'click', function(e) {
    17081707
    17091708                                if ( ! $wpwrap.hasClass( 'wp-responsive-open' ) || ! document.hasFocus() ) {
    17101709                                        return;
    17111710                                }
    1712                                 // A brief delay is required to allow focus to switch to another element.
    1713                                 setTimeout( function() {
    1714                                         focusIsInToggle  = $.contains( $( '#wp-admin-bar-menu-toggle' )[0], $( ':focus' )[0] );
    1715                                         focusIsInSidebar = $.contains( $( '#adminmenumain' )[0], $( ':focus' )[0] );
    17161711
    1717                                         if ( ! focusIsInToggle && ! focusIsInSidebar ) {
    1718                                                 $( '#wp-admin-bar-menu-toggle' ).trigger( 'click.wp-responsive' );
    1719                                         }
    1720                                 }, 10 );
     1712                                var focusIsInToggle  = $.contains( $( '#wp-admin-bar-menu-toggle' )[0], e.target );
     1713                                var focusIsInSidebar = $.contains( $( '#adminmenumain' )[0], e.target );
     1714
     1715                                if ( ! focusIsInToggle && ! focusIsInSidebar ) {
     1716                                        $( '#wp-admin-bar-menu-toggle' ).trigger( 'click.wp-responsive' );
     1717                                }
    17211718                        } );
    17221719
    17231720