WordPress.org

Make WordPress Core

Ticket #27880: 27880.2.diff

File 27880.2.diff, 2.4 KB (added by azaozz, 7 years ago)
  • src/wp-includes/js/media-views.js

     
    32703270                localDrag: false,
    32713271                overContainer: false,
    32723272                overDropzone: false,
     3273                draggingFile: null,
    32733274
    32743275                initialize: function() {
    32753276                        var self = this;
     
    33093310                        return supports;
    33103311                },
    33113312
     3313                isDraggingFile: function( event ) {
     3314                        if ( this.draggingFile !== null ) {
     3315                                return this.draggingFile;
     3316                        }
     3317
     3318                        if ( _.isUndefined( event.originalEvent ) || _.isUndefined( event.originalEvent.dataTransfer ) ) {
     3319                                return false;
     3320                        }
     3321
     3322                        this.draggingFile = _.indexOf( event.originalEvent.dataTransfer.types, 'Files' ) > -1 &&
     3323                                _.indexOf( event.originalEvent.dataTransfer.types, 'text/plain' ) === -1;
     3324
     3325                        return this.draggingFile;
     3326                },
     3327
    33123328                refresh: function( e ) {
    33133329                        var dropzone_id;
    33143330                        for ( dropzone_id in this.dropzones ) {
     
    33203336                                $( e.target ).closest( '.uploader-editor' ).toggleClass( 'droppable', this.overDropzone );
    33213337                        }
    33223338
     3339                        if ( ! this.overContainer && ! this.overDropzone ) {
     3340                                this.draggingFile = null;
     3341                        }
     3342
    33233343                        return this;
    33243344                },
    33253345
     
    33833403                        return this;
    33843404                },
    33853405
    3386                 containerDragover: function() {
    3387                         if ( this.localDrag ) {
     3406                containerDragover: function( event ) {
     3407                        if ( this.localDrag || ! this.isDraggingFile( event ) ) {
    33883408                                return;
    33893409                        }
    33903410
     
    33993419                        _.delay( _.bind( this.refresh, this ), 50 );
    34003420                },
    34013421
    3402                 dropzoneDragover: function( e ) {
    3403                         if ( this.localDrag ) {
     3422                dropzoneDragover: function( event ) {
     3423                        if ( this.localDrag || ! this.isDraggingFile( event ) ) {
    34043424                                return;
    34053425                        }
    34063426
    34073427                        this.overDropzone = true;
    3408                         this.refresh( e );
     3428                        this.refresh( event );
    34093429                        return false;
    34103430                },
    34113431
  • src/wp-includes/js/tinymce/plugins/wordpress/plugin.js

     
    317317                        dom.bind( doc, 'dragstart dragend dragover drop', function( event ) {
    318318                                if ( typeof window.jQuery !== 'undefined' ) {
    319319                                        // Trigger the jQuery handlers.
    320                                         window.jQuery( document ).triggerHandler( event.type );
     320                                        window.jQuery( document ).trigger( new window.jQuery.Event( event ) );
    321321                                }
    322322                        });
    323323                }