WordPress.org

Make WordPress Core

Changeset 22875


Ignore:
Timestamp:
11/27/2012 07:09:00 PM (5 years ago)
Author:
nacin
Message:

Media: Introduce wp.media.editor.open(editor_id) and leverage it in distraction-free writing (fullscreen). props azaozz, koopersmith. fixes #22541.

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/js/wp-fullscreen.js

    r22019 r22875  
    483483
    484484    api.medialib = function() {
    485         if ( s.has_tinymce && 'tinymce' === s.mode ) {
    486             tinyMCE.execCommand('WP_Medialib');
    487         } else {
    488             var href = $('#wp-' + s.editor_id + '-media-buttons a.thickbox').attr('href') || '';
    489 
    490             if ( href )
    491                 tb_show('', href);
    492         }
     485        if ( typeof wp !== 'undefined' && wp.media && wp.media.editor )
     486            wp.media.editor.open(s.editor_id);
    493487    }
    494488
  • trunk/wp-includes/css/editor.css

    r22640 r22875  
    11491149    position: absolute;
    11501150    display: none;
    1151     z-index: 999998;
     1151    z-index: 100000;
    11521152}
    11531153
  • trunk/wp-includes/css/media-views.css

    r22870 r22875  
    6969    right: 40px;
    7070    bottom: 40px;
    71     z-index: 125000;
     71    z-index: 160000;
    7272}
    7373
     
    8080    background: #000;
    8181    opacity: 0.8;
    82     z-index: 120000;
     82    z-index: 159900;
    8383}
    8484
  • trunk/wp-includes/js/media-editor.js

    r22865 r22875  
    472472
    473473        init: function() {
    474             $(document.body).on('click', '.insert-media', function( event ) {
     474            $(document.body).on( 'click', '.insert-media', function( event ) {
    475475                var $this = $(this),
    476                     editor = $this.data('editor'),
    477                     workflow;
     476                    editor = $this.data('editor');
    478477
    479478                event.preventDefault();
     
    486485                $this.blur();
    487486
    488                 if ( ! _.isString( editor ) )
    489                     return;
    490 
    491                 workflow = wp.media.editor.get( editor );
    492 
    493                 // If the workflow exists, just open it.
    494                 if ( workflow ) {
    495                     workflow.open();
    496                     return;
    497                 }
    498 
    499                 // Initialize the editor's workflow if we haven't yet.
    500                 wp.media.editor.add( editor );
     487                wp.media.editor.open( editor );
    501488            });
     489        },
     490
     491        open: function( id ) {
     492            var workflow;
     493
     494            // If an empty `id` is provided, default to `wpActiveEditor`.
     495            id = id || wpActiveEditor;
     496
     497            // If that doesn't work, fall back to `tinymce.activeEditor`.
     498            if ( ! id && typeof tinymce !== 'undefined' && tinymce.activeEditor )
     499                id = id || tinymce.activeEditor.id;
     500
     501            // Last but not least, fall back to the empty string.
     502            id = id || '';
     503
     504            workflow = wp.media.editor.get( id );
     505
     506            // If the workflow exists, open it.
     507            // Initialize the editor's workflow if we haven't yet.
     508            if ( workflow )
     509                workflow.open();
     510            else
     511                workflow = wp.media.editor.add( id );
     512
     513            return workflow;
    502514        }
    503515    };
  • trunk/wp-includes/js/tinymce/plugins/wordpress/editor_plugin_src.js

    r22857 r22875  
    6464
    6565            ed.addCommand('WP_Medialib', function() {
    66                 var id = ed.getParam('wp_fullscreen_editor_id') || ed.getParam('fullscreen_editor_id') || ed.id,
    67                     link = tinymce.DOM.select('#wp-' + id + '-media-buttons a.thickbox');
    68 
    69                 if ( link && link[0] )
    70                     link = link[0];
    71                 else
    72                     return;
    73 
    74                 tb_show('', link.href);
     66                if ( typeof wp !== 'undefined' && wp.media && wp.media.editor )
     67                    wp.media.editor.open( ed.id );
    7568            });
    7669
Note: See TracChangeset for help on using the changeset viewer.