MarkTraceur has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/104133


Change subject: Fix resize engine (a little)
......................................................................

Fix resize engine (a little)

In particular,

* Resize will actually fire now (stupid bug was stupid)
* nonce should ensure that resizes don't fire en masse

Change-Id: I1ef5fd34ed974f41f81a9bd9ae65bb4f2820bedb
---
M resources/ext.multimediaViewer/ext.multimediaViewer.js
1 file changed, 13 insertions(+), 3 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/MultimediaViewer 
refs/changes/33/104133/1

diff --git a/resources/ext.multimediaViewer/ext.multimediaViewer.js 
b/resources/ext.multimediaViewer/ext.multimediaViewer.js
index 1cd4b11..6f11905 100755
--- a/resources/ext.multimediaViewer/ext.multimediaViewer.js
+++ b/resources/ext.multimediaViewer/ext.multimediaViewer.js
@@ -81,6 +81,13 @@
                 */
                this.lightbox = null;
 
+               /**
+                * nonce for resize events - prevents bandwidth destruction with
+                * multiple resize events firing.
+                * @private
+                */
+               this.resizeNonce = 0;
+
                var $thumbs = $( imgsSelector ),
                        urls = [],
                        viewer = this;
@@ -237,7 +244,8 @@
        MMVP.resize = function ( ui ) {
                var viewer = this,
                        density = $.devicePixelRatio(),
-                       filename = ui.currentImageFilename;
+                       filename = this.currentImageFilename,
+                       resizeNonce = ++this.resizeNonce;
 
                this.api.get( {
                        action: 'query',
@@ -248,7 +256,9 @@
                        iiurlwidth: Math.floor( density * 
ui.$imageWrapper.width() ),
                        iiurlheight: Math.floor( density * 
ui.$imageWrapper.height() )
                } ).done( function ( data ) {
-                       viewer.loadResizedImage( ui, data );
+                       if ( resizeNonce === viewer.resizeNonce ) {
+                               viewer.loadResizedImage( ui, data );
+                       }
                } );
        };
 
@@ -278,7 +288,7 @@
                        image.onload = function () {
                                viewer.profileEnd( rpid );
                                ui.replaceImageWith( image );
-                               this.updateControls();
+                               viewer.updateControls();
                        };
 
                        rpid = this.profileStart( 'image-resize', {

-- 
To view, visit https://gerrit.wikimedia.org/r/104133
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1ef5fd34ed974f41f81a9bd9ae65bb4f2820bedb
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MultimediaViewer
Gerrit-Branch: master
Gerrit-Owner: MarkTraceur <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to