Make WordPress Core

Ticket #24859: 24859.4.diff

File 24859.4.diff, 2.4 KB (added by kovshenin, 11 years ago)
  • wp-includes/css/media-views.css

     
    12901290        margin: 0;
    12911291}
    12921292
     1293.media-toolbar .spinner {
     1294        display: inline-block;
     1295        margin-top: 14px;
     1296}
     1297
    12931298.media-sidebar .settings-save-status {
    12941299        background: #f5f5f5;
    12951300        float: right;
  • wp-includes/js/media-views.js

     
    52375237        media.view.AttachmentsBrowser = media.View.extend({
    52385238                tagName:   'div',
    52395239                className: 'attachments-browser',
     5240                showSpinner: false,
    52405241
    52415242                initialize: function() {
    52425243                        _.defaults( this.options, {
     
    52535254
    52545255                        this.collection.on( 'add remove reset', this.updateContent, this );
    52555256                },
     5257
     5258                toggleSpinner: function( toggle ) {
     5259                        this.showSpinner = toggle;
     5260
     5261                        if ( this.showSpinner ) {
     5262                                // Delay showing spinner, catch when toggled before delay is finished
     5263                                _.delay( function( view ) {
     5264                                        if ( view.showSpinner ) {
     5265                                                view.toolbar.get('spinner').show();
     5266                                        }
     5267                                }, 600, this );
     5268                        } else {
     5269                                this.showSpinner = false;
     5270                                this.toolbar.get('spinner').hide();
     5271                        }
     5272                },
     5273
    52565274                /**
    52575275                 * @returns {wp.media.view.AttachmentsBrowser} Returns itself to allow chaining
    52585276                 */
     
    52895307                                }).render() );
    52905308                        }
    52915309
     5310                        this.toolbar.set( 'spinner', new media.view.Spinner({
     5311                                priority: -70
     5312                        }) );
     5313
    52925314                        if ( this.options.search ) {
    52935315                                this.toolbar.set( 'search', new media.view.Search({
    52945316                                        controller: this.controller,
     
    53135335                        }
    53145336
    53155337                        if ( ! this.collection.length ) {
     5338                                this.toggleSpinner( true );
    53165339                                this.collection.more().done( function() {
    53175340                                        if ( ! view.collection.length ) {
    53185341                                                view.createUploader();
    53195342                                        }
     5343                                        view.toggleSpinner( false );
    53205344                                });
    53215345                        }
    53225346                },
     
    63266350                        this.$( '.embed-media-settings' ).scrollTop( 0 );
    63276351                }
    63286352        });
     6353
     6354        /**
     6355         * wp.media.view.Spinner
     6356         *
     6357         * @constructor
     6358         * @augments wp.media.View
     6359         * @augments wp.Backbone.View
     6360         * @augments Backbone.View
     6361         */
     6362        media.view.Spinner = media.View.extend({
     6363                tagName:   'span',
     6364                className: 'spinner',
     6365
     6366                show: function() {
     6367                        this.$el.show();
     6368                        return this;
     6369                },
     6370
     6371                hide: function() {
     6372                        this.$el.hide();
     6373                        return this;
     6374                }
     6375        });
    63296376}(jQuery, _));