Make WordPress Core

Ticket #24859: 24859.11.diff

File 24859.11.diff, 1.3 KB (added by kadamwhite, 11 years ago)

Move timeout logic inside Spinner view

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

    diff --git a/src/wp-includes/js/media-views.js b/src/wp-includes/js/media-views.js
    index 76f689b..fc282c3 100644
    a b  
    53615361
    53625362                        this.collection.on( 'add remove reset', this.updateContent, this );
    53635363                },
    5364                 toggleSpinner: function( state ) {
    5365                         if ( state ) {
    5366                                 this.spinnerTimeout = _.delay(function( view ) {
    5367                                         view.toolbar.get( 'spinner' ).show();
    5368                                 }, 600, this );
    5369                         } else {
    5370                                 this.toolbar.get( 'spinner' ).hide();
    5371                                 clearTimeout( this.spinnerTimeout );
    5372                         }
    5373                 },
    53745364                /**
    53755365                 * @returns {wp.media.view.AttachmentsBrowser} Returns itself to allow chaining
    53765366                 */
     
    54355425                        }
    54365426
    54375427                        if ( ! this.collection.length ) {
    5438                                 this.toggleSpinner( true );
     5428                                this.toolbar.get( 'spinner' ).show();
    54395429                                this.collection.more().done(function() {
    54405430                                        if ( ! view.collection.length ) {
    54415431                                                view.createUploader();
    54425432                                        }
    5443                                         view.toggleSpinner( false );
     5433                                        view.toolbar.get( 'spinner' ).hide();
    54445434                                });
    54455435                        }
    54465436                },
     
    65796569                className: 'spinner',
    65806570
    65816571                show: function() {
    6582                         this.$el.show();
     6572                        this.spinnerTimeout = _.delay(function( $el ) {
     6573                                $el.show();
     6574                        }, 300, this.$el );
     6575
    65836576                        return this;
    65846577                },
    65856578
    65866579                hide: function() {
    65876580                        this.$el.hide();
     6581                        clearTimeout( this.spinnerTimeout );
     6582
    65886583                        return this;
    65896584                }
    65906585        });