WordPress.org

Make WordPress Core

Ticket #31187: 31187.patch

File 31187.patch, 1.6 KB (added by iseulde, 5 years ago)
  • src/wp-admin/js/common.js

     
    707707
    708708        window.wpResponsive = {
    709709                init: function() {
    710                         var self = this;
     710                        var self = this,
     711                                open = false,
     712                                x, y;
    711713
    712714                        // Modify functionality based on custom activate/deactivate event
    713715                        $document.on( 'wp-responsive-activate.wp-responsive', function() {
     
    725727                                if ( $wpwrap.hasClass( 'wp-responsive-open' ) ) {
    726728                                        $(this).find('a').attr( 'aria-expanded', 'true' );
    727729                                        $( '#adminmenu a:first' ).focus();
     730                                        open = true;
    728731                                } else {
    729732                                        $(this).find('a').attr( 'aria-expanded', 'false' );
     733                                        open = false;
    730734                                }
    731735                        } );
    732736
     737                        $window.on( 'touchstart.wp-responsive', function( event ) {
     738                                var touches = event.originalEvent.touches;
     739
     740                                if ( 1 !== touches.length ) {
     741                                        return;
     742                                }
     743
     744                                x = touches[0].clientX;
     745                                y = touches[0].clientY;
     746                        } );
     747
     748                        $window.on( 'touchend.wp-responsive', function( event ) {
     749                                var touches = event.originalEvent.changedTouches,
     750                                        distanceX;
     751
     752                                if ( 1 === touches.length && x && y ) {
     753                                        if ( window.isRtl == open ) {
     754                                                distanceX = touches[0].clientX - x;
     755                                        } else {
     756                                                distanceX = x - touches[0].clientX;
     757                                        }
     758
     759                                        if ( distanceX > Math.abs( touches[0].clientY - y ) ) {
     760                                                $( '#wp-admin-bar-menu-toggle' ).trigger( 'click' );
     761                                        }
     762                                }
     763
     764                                x = y = 0;
     765                        } );
     766
    733767                        // Add menu events
    734768                        $adminmenu.on( 'click.wp-responsive', 'li.wp-has-submenu > a', function( event ) {
    735769                                if ( ! $adminmenu.data('wp-responsive') ) {