WordPress.org

Make WordPress Core

Changeset 35199


Ignore:
Timestamp:
10/15/2015 03:19:04 PM (6 years ago)
Author:
iseulde
Message:

TinyMCE: make captioned images draggable

See #28003.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js

    r33834 r35199  
    783783        });
    784784
    785         dom.bind( editor.getDoc(), 'dragstart', function( event ) {
    786             var node = editor.selection.getNode();
    787 
    788             // Prevent dragging images out of the caption elements
    789             if ( node.nodeName === 'IMG' && dom.getParent( node, '.wp-caption' ) ) {
    790                 event.preventDefault();
    791             }
    792         });
    793 
    794785        // Prevent IE11 from making dl.wp-caption resizable
    795786        if ( tinymce.Env.ie && tinymce.Env.ie > 10 ) {
     
    965956    });
    966957
     958    ( function() {
     959        var wrap;
     960
     961        editor.on( 'dragstart', function() {
     962            var node = editor.selection.getNode();
     963
     964            if ( node.nodeName === 'IMG' ) {
     965                wrap = editor.dom.getParent( node, '.mceTemp' );
     966            }
     967        } );
     968
     969        editor.on( 'drop', function( event ) {
     970            var rng;
     971
     972            if ( wrap && ( rng = tinymce.dom.RangeUtils.getCaretRangeFromPoint( event.clientX, event.clientY, editor.getDoc() ) ) ) {
     973                event.preventDefault();
     974
     975                if ( ! editor.dom.getParent( rng.startContainer, '.mceTemp' ) ) {
     976                    editor.undoManager.transact( function() {
     977                        editor.selection.setRng( rng );
     978                        editor.selection.setNode( wrap );
     979                        editor.dom.remove( wrap );
     980                    } );
     981                }
     982            }
     983
     984            wrap = null;
     985        } );
     986    } )();
     987
    967988    // Add to editor.wp
    968989    editor.wp = editor.wp || {};
Note: See TracChangeset for help on using the changeset viewer.