jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/348047 )
Change subject: Tooltips when hovering slider lines in the SliderViewTwo
......................................................................
Tooltips when hovering slider lines in the SliderViewTwo
This change enables tooltips when hovering the slider lines. To avoid
interference of these events when dragging a variable is set to keep
track of the dragging state.
Bug: T162602
Change-Id: I45c1b73ca470d7b8fcf8b95e15187864e35e907f
---
M modules/ext.RevisionSlider.SliderView.js
M modules/ext.RevisionSlider.SliderViewTwo.js
2 files changed, 32 insertions(+), 2 deletions(-)
Approvals:
Addshore: Looks good to me, approved
jenkins-bot: Verified
diff --git a/modules/ext.RevisionSlider.SliderView.js
b/modules/ext.RevisionSlider.SliderView.js
index 5cdc4bc..3304427 100644
--- a/modules/ext.RevisionSlider.SliderView.js
+++ b/modules/ext.RevisionSlider.SliderView.js
@@ -78,6 +78,11 @@
*/
dir: null,
+ /**
+ * @type {boolean}
+ */
+ isDragged: false,
+
render: function ( $container ) {
var containerWidth =
this.calculateSliderContainerWidth(),
$revisions =
this.slider.getRevisions().getView().render( this.revisionWidth ),
@@ -210,6 +215,7 @@
grid: [ this.revisionWidth, null ],
containment: containmentClass,
start: function() {
+ self.isDragged = true;
self.setPointerDragCursor();
self.fadeOutPointerLines();
escapePressed = false;
@@ -220,6 +226,7 @@
pointer = self.whichPointer( $p
),
revId1, revId2;
+ self.isDragged = false;
self.removePointerDragCursor();
if ( escapePressed ) {
diff --git a/modules/ext.RevisionSlider.SliderViewTwo.js
b/modules/ext.RevisionSlider.SliderViewTwo.js
index 7e30ede..aa055b8 100644
--- a/modules/ext.RevisionSlider.SliderViewTwo.js
+++ b/modules/ext.RevisionSlider.SliderViewTwo.js
@@ -22,7 +22,8 @@
renderPointerContainer: function( containerWidth ) {
var pointerContainerPosition = 53,
pointerContainerWidth = containerWidth +
this.revisionWidth - 1,
- pointerContainerStyle;
+ pointerContainerStyle, lastMouseMoveRevisionPos,
+ self = this;
pointerContainerStyle = { left:
pointerContainerPosition + 'px', width: pointerContainerWidth + 'px' };
if ( this.dir === 'rtl' ) {
@@ -37,7 +38,15 @@
return $( '<div>' )
.addClass( 'mw-revslider-pointer-container' )
.css( pointerContainerStyle )
- .append( this.renderPointerContainers() );
+ .append( this.renderPointerContainers() )
+ .mousemove( function( event ) {
+ if ( !self.isDragged ) {
+ lastMouseMoveRevisionPos =
self.showTooltipsOnMouseMoveHandler(
+ event,
+ lastMouseMoveRevisionPos
+ );
+ }
+ } );
},
renderPointerContainers: function() {
@@ -135,6 +144,20 @@
.removeClass( 'mw-revslider-pointer-grabbing' );
},
+ showTooltipsOnMouseMoveHandler: function( event,
lastValidPosition ) {
+ var pos = this.getRevisionPositionFromLeftOffset(
event.pageX ),
+ $hoveredRevisionWrapper;
+
+ if ( pos === lastValidPosition ) {
+ return pos;
+ }
+
+ $hoveredRevisionWrapper = this.getRevElementAtPosition(
this.getRevisionsElement(), pos ).parent();
+ this.slider.getRevisions().getView().showTooltip(
$hoveredRevisionWrapper );
+
+ return pos;
+ },
+
sliderLineClickHandler: function( event, $line ) {
var pos = this.getRevisionPositionFromLeftOffset(
event.pageX ),
$clickedRev, pointerMoved, pointerOther,
$revisions;
--
To view, visit https://gerrit.wikimedia.org/r/348047
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I45c1b73ca470d7b8fcf8b95e15187864e35e907f
Gerrit-PatchSet: 8
Gerrit-Project: mediawiki/extensions/RevisionSlider
Gerrit-Branch: master
Gerrit-Owner: WMDE-Fisch <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Andrew-WMDE <[email protected]>
Gerrit-Reviewer: Tobias Gritschacher <[email protected]>
Gerrit-Reviewer: WMDE-Fisch <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits