Pppery has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/325823 )

Change subject: Introduces ESC key detection during dragging
......................................................................

Introduces ESC key detection during dragging

When the ESC key is pressed, aborts the drag and returns the sliders to
their original positions

Bug: T140965
Change-Id: I2dfc2fa03d2c7705fa2947dffa07fbce8ed3b185
---
M modules/ext.RevisionSlider.SliderView.js
1 file changed, 22 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/RevisionSlider 
refs/changes/23/325823/1

diff --git a/modules/ext.RevisionSlider.SliderView.js 
b/modules/ext.RevisionSlider.SliderView.js
index 38de177..5be0677 100644
--- a/modules/ext.RevisionSlider.SliderView.js
+++ b/modules/ext.RevisionSlider.SliderView.js
@@ -92,7 +92,9 @@
                                helpPopup,
                                backwardArrowPopup,
                                forwardArrowPopup,
-                               self = this;
+                               self = this,
+                               escapePressed = false,
+                               pointers;
 
                        this.dir = $container.css( 'direction' ) || 'ltr';
 
@@ -198,14 +200,29 @@
                                        this.pointerOlder.getLine().render(), 
this.pointerNewer.getLine().render()
                                );
 
-                       $slider.find( '.mw-revslider-pointer' ).draggable( {
+                       pointers = $slider.find('.mw-revslider-pointer')
+                       $slider.keydown(function(e){
+                               if(e.which == 27){
+                                       escapePressed = true;
+                                       pointers.trigger("mouseup");
+                               }
+                       });
+
+                       pointers.draggable( {
                                axis: 'x',
                                grid: [ this.revisionWidth, null ],
                                containment: '.mw-revslider-pointer-container',
                                start: function () {
                                        $( '.mw-revslider-revision-wrapper' 
).addClass( 'mw-revslider-pointer-cursor' );
+                                       escapePressed = false;
+
                                },
                                stop: function () {
+                                       if(escapePressed){
+                                               
self.updatePointerPositionAttributes();
+                                               
self.resetPointerStylesBasedOnPosition();
+                                               return;
+                                       }
                                        var $p = $( this ),
                                                pointer = self.whichPointer( $p 
),
                                                pos = $p.position().left,
@@ -249,6 +266,9 @@
                                                        
self.resetPointerColorsBasedOnValues( newerLeftPos, olderLeftPos );
                                                }
                                        }
+                               },
+                               revert: function(){
+                                       return escapePressed;
                                }
                        } );
 

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2dfc2fa03d2c7705fa2947dffa07fbce8ed3b185
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/RevisionSlider
Gerrit-Branch: master
Gerrit-Owner: Pppery <[email protected]>

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

Reply via email to