Make WordPress Core

Ticket #22726: 22726.3.media-views.browserified.diff

File 22726.3.media-views.browserified.diff, 3.3 KB (added by kucrut, 9 years ago)

Browserified media-views.js

  • src/wp-includes/js/media-views.js

    diff --git src/wp-includes/js/media-views.js src/wp-includes/js/media-views.js
    index c932f21..80a435f 100644
    module.exports = EditImage; 
    503503 * @param {string} [attributes.content=embed]         Initial mode for the content region.
    504504 * @param {string} [attributes.menu=default]          Initial mode for the menu region.
    505505 * @param {string} [attributes.toolbar=main-embed]    Initial mode for the toolbar region.
    506  * @param {string} [attributes.menu=false]            Initial mode for the menu region.
    507506 * @param {int}    [attributes.priority=120]          The priority for the state link in the media menu.
    508507 * @param {string} [attributes.type=link]             The type of embed. Currently only link is supported.
    509508 * @param {string} [attributes.url]                   The embed URL.
    var l10n = wp.media.view.l10n, 
    516515Embed = wp.media.controller.State.extend({
    517516        defaults: {
    518517                id:       'embed',
    519                 title:    l10n.insertFromUrlTitle,
     518                title:    l10n.fromUrlTitle,
    520519                content:  'embed',
    521520                menu:     'default',
     521                router:   'browse',
    522522                toolbar:  'main-embed',
    523523                priority: 120,
    524524                type:     'link',
    Embed = wp.media.controller.State.extend({ 
    536536                this.props.on( 'change:url', this.debouncedScan, this );
    537537                this.props.on( 'change:url', this.refresh, this );
    538538                this.on( 'scan', this.scanImage, this );
     539                this.off( 'ready', this._ready, this );
    539540        },
    540541
    541542        /**
    Embed = wp.media.controller.State.extend({ 
    590591                image.onload = function() {
    591592                        deferred.resolve();
    592593
    593                         if ( state !== frame.state() || url !== state.props.get('url') ) {
     594                        if ( url !== state.props.get('url') ) {
    594595                                return;
    595596                        }
    596597
    Post = Select.extend({ 
    52525253        bindHandlers: function() {
    52535254                var handlers, checkCounts;
    52545255
     5256                this.on( 'content:create:browse', this._fixState, this );
     5257                this.on( 'content:render:upload', this._fixState, this );
     5258                this.on( 'content:render:embed', this._fixState, this );
     5259
    52555260                Select.prototype.bindHandlers.apply( this, arguments );
    52565261
    52575262                this.on( 'activate', this.activate, this );
    Post = Select.extend({ 
    52745279                this.on( 'toolbar:create:main-video-playlist', this.createToolbar, this );
    52755280                this.on( 'toolbar:create:featured-image', this.featuredImageToolbar, this );
    52765281                this.on( 'toolbar:create:main-embed', this.mainEmbedToolbar, this );
     5282                this.on( 'router:render:browse', this.embedRouterItem, this );
    52775283
    52785284                handlers = {
    52795285                        menu: {
    Post = Select.extend({ 
    54265432                });
    54275433        },
    54285434
     5435        embedRouterItem: function( routerView ) {
     5436                var state = this.state(),
     5437                    routerItem = routerView.get( 'embed' );
     5438
     5439                if ( 'embed' === state.id || 'insert' === state.id ) {
     5440                        if ( ! routerItem ) {
     5441                                routerView.set( 'embed', {
     5442                                        text: l10n.fromUrlTitle,
     5443                                        priority: 60
     5444                                });
     5445                        } else {
     5446                                routerView.show( 'embed' );
     5447                        }
     5448                } else {
     5449                        routerView.hide( 'embed' );
     5450                }
     5451        },
     5452
    54295453        // Content
     5454        _fixState: function() {
     5455                var mode = this.content.mode(),
     5456                    state = this.state().id;
     5457
     5458                if ( 'embed' === mode ) {
     5459                        this.setState( 'embed' );
     5460                } else if ( 'embed' === state ) {
     5461                        this.setState( 'insert' );
     5462                        this.content.mode( mode );
     5463                }
     5464        },
     5465
    54305466        embedContent: function() {
    54315467                var view = new wp.media.view.Embed({
    54325468                        controller: this,