jenkins-bot has submitted this change and it was merged.
Change subject: [DEPRECATING CHANGE] core: Deprecate
add/removeCaptureEventListener
......................................................................
[DEPRECATING CHANGE] core: Deprecate add/removeCaptureEventListener
These were provided to work around IE 8's lack of #attachEvent / #detachEvent,
which
we no longer support as a library.
Change-Id: I424e01ad945d7ba3bc22c41f0259c55179cb9656
---
M src/ToolGroup.js
M src/core.js
M src/mixins/ButtonElement.js
M src/toolgroups/PopupToolGroup.js
M src/widgets/MenuSelectWidget.js
M src/widgets/PopupWidget.js
M src/widgets/SelectWidget.js
7 files changed, 32 insertions(+), 50 deletions(-)
Approvals:
Bartosz Dziewoński: Looks good to me, but someone else must approve
Jforrester: Looks good to me, approved
jenkins-bot: Verified
diff --git a/src/ToolGroup.js b/src/ToolGroup.js
index 0bbda5b..a0c598c 100644
--- a/src/ToolGroup.js
+++ b/src/ToolGroup.js
@@ -165,8 +165,8 @@
this.pressed = this.getTargetTool( e );
if ( this.pressed ) {
this.pressed.setActive( true );
- OO.ui.addCaptureEventListener(
this.getElementDocument(), 'mouseup', this.onCapturedMouseKeyUpHandler );
- OO.ui.addCaptureEventListener(
this.getElementDocument(), 'keyup', this.onCapturedMouseKeyUpHandler );
+ this.getElementDocument().addEventListener( 'mouseup',
this.onCapturedMouseKeyUpHandler, true );
+ this.getElementDocument().addEventListener( 'keyup',
this.onCapturedMouseKeyUpHandler, true );
}
return false;
}
@@ -179,8 +179,8 @@
* @param {Event} e Mouse up or key up event
*/
OO.ui.ToolGroup.prototype.onCapturedMouseKeyUp = function ( e ) {
- OO.ui.removeCaptureEventListener( this.getElementDocument(), 'mouseup',
this.onCapturedMouseKeyUpHandler );
- OO.ui.removeCaptureEventListener( this.getElementDocument(), 'keyup',
this.onCapturedMouseKeyUpHandler );
+ this.getElementDocument().removeEventListener( 'mouseup',
this.onCapturedMouseKeyUpHandler, true );
+ this.getElementDocument().removeEventListener( 'keyup',
this.onCapturedMouseKeyUpHandler, true );
// onMouseKeyUp may be called a second time, depending on where the
mouse is when the button is
// released, but since `this.pressed` will no longer be true, the
second call will be ignored.
this.onMouseKeyUp( e );
diff --git a/src/core.js b/src/core.js
index 826e0b6..bd20c2f 100644
--- a/src/core.js
+++ b/src/core.js
@@ -245,35 +245,27 @@
};
/**
- * Proxy for `node.addEventListener( eventName, handler, true )`, if the
browser supports it.
- * Otherwise falls back to non-capturing event listeners.
+ * Proxy for `node.addEventListener( eventName, handler, true )`.
*
* @param {HTMLElement} node
* @param {string} eventName
* @param {Function} handler
+ * @deprecated
*/
OO.ui.addCaptureEventListener = function ( node, eventName, handler ) {
- if ( node.addEventListener ) {
- node.addEventListener( eventName, handler, true );
- } else {
- node.attachEvent( 'on' + eventName, handler );
- }
+ node.addEventListener( eventName, handler, true );
};
/**
- * Proxy for `node.removeEventListener( eventName, handler, true )`, if the
browser supports it.
- * Otherwise falls back to non-capturing event listeners.
+ * Proxy for `node.removeEventListener( eventName, handler, true )`.
*
* @param {HTMLElement} node
* @param {string} eventName
* @param {Function} handler
+ * @deprecated
*/
OO.ui.removeCaptureEventListener = function ( node, eventName, handler ) {
- if ( node.addEventListener ) {
- node.removeEventListener( eventName, handler, true );
- } else {
- node.detachEvent( 'on' + eventName, handler );
- }
+ node.removeEventListener( eventName, handler, true );
};
/**
diff --git a/src/mixins/ButtonElement.js b/src/mixins/ButtonElement.js
index 3ad7045..bfbf20f 100644
--- a/src/mixins/ButtonElement.js
+++ b/src/mixins/ButtonElement.js
@@ -110,7 +110,7 @@
this.$element.addClass( 'oo-ui-buttonElement-pressed' );
// Run the mouseup handler no matter where the mouse is when the button
is let go, so we can
// reliably remove the pressed class
- OO.ui.addCaptureEventListener( this.getElementDocument(), 'mouseup',
this.onMouseUpHandler );
+ this.getElementDocument().addEventListener( 'mouseup',
this.onMouseUpHandler, true );
// Prevent change of focus unless specifically configured otherwise
if ( this.constructor.static.cancelButtonMouseDownEvents ) {
return false;
@@ -129,7 +129,7 @@
}
this.$element.removeClass( 'oo-ui-buttonElement-pressed' );
// Stop listening for mouseup, since we only needed this once
- OO.ui.removeCaptureEventListener( this.getElementDocument(), 'mouseup',
this.onMouseUpHandler );
+ this.getElementDocument().removeEventListener( 'mouseup',
this.onMouseUpHandler, true );
};
/**
@@ -160,7 +160,7 @@
this.$element.addClass( 'oo-ui-buttonElement-pressed' );
// Run the keyup handler no matter where the key is when the button is
let go, so we can
// reliably remove the pressed class
- OO.ui.addCaptureEventListener( this.getElementDocument(), 'keyup',
this.onKeyUpHandler );
+ this.getElementDocument().addEventListener( 'keyup',
this.onKeyUpHandler, true );
};
/**
@@ -175,7 +175,7 @@
}
this.$element.removeClass( 'oo-ui-buttonElement-pressed' );
// Stop listening for keyup, since we only needed this once
- OO.ui.removeCaptureEventListener( this.getElementDocument(), 'keyup',
this.onKeyUpHandler );
+ this.getElementDocument().removeEventListener( 'keyup',
this.onKeyUpHandler, true );
};
/**
diff --git a/src/toolgroups/PopupToolGroup.js b/src/toolgroups/PopupToolGroup.js
index b5779cb..80c11f0 100644
--- a/src/toolgroups/PopupToolGroup.js
+++ b/src/toolgroups/PopupToolGroup.js
@@ -168,8 +168,8 @@
if ( this.active !== value ) {
this.active = value;
if ( value ) {
- OO.ui.addCaptureEventListener(
this.getElementDocument(), 'mouseup', this.onBlurHandler );
- OO.ui.addCaptureEventListener(
this.getElementDocument(), 'keyup', this.onBlurHandler );
+ this.getElementDocument().addEventListener( 'mouseup',
this.onBlurHandler, true );
+ this.getElementDocument().addEventListener( 'keyup',
this.onBlurHandler, true );
this.$clippable.css( 'left', '' );
// Try anchoring the popup to the left first
@@ -197,8 +197,8 @@
} );
}
} else {
- OO.ui.removeCaptureEventListener(
this.getElementDocument(), 'mouseup', this.onBlurHandler );
- OO.ui.removeCaptureEventListener(
this.getElementDocument(), 'keyup', this.onBlurHandler );
+ this.getElementDocument().removeEventListener(
'mouseup', this.onBlurHandler, true );
+ this.getElementDocument().removeEventListener( 'keyup',
this.onBlurHandler, true );
this.$element.removeClass(
'oo-ui-popupToolGroup-active
oo-ui-popupToolGroup-left oo-ui-popupToolGroup-right'
);
diff --git a/src/widgets/MenuSelectWidget.js b/src/widgets/MenuSelectWidget.js
index 5ad85dd..4e661ca 100644
--- a/src/widgets/MenuSelectWidget.js
+++ b/src/widgets/MenuSelectWidget.js
@@ -293,12 +293,12 @@
// Auto-hide
if ( this.autoHide ) {
- OO.ui.addCaptureEventListener(
this.getElementDocument(), 'mousedown', this.onDocumentMouseDownHandler );
+ this.getElementDocument().addEventListener(
'mousedown', this.onDocumentMouseDownHandler, true );
}
} else {
this.unbindKeyDownListener();
this.unbindKeyPressListener();
- OO.ui.removeCaptureEventListener(
this.getElementDocument(), 'mousedown', this.onDocumentMouseDownHandler );
+ this.getElementDocument().removeEventListener(
'mousedown', this.onDocumentMouseDownHandler, true );
this.toggleClipping( false );
}
}
diff --git a/src/widgets/PopupWidget.js b/src/widgets/PopupWidget.js
index f3331c0..01d208c 100644
--- a/src/widgets/PopupWidget.js
+++ b/src/widgets/PopupWidget.js
@@ -157,7 +157,7 @@
*/
OO.ui.PopupWidget.prototype.bindMouseDownListener = function () {
// Capture clicks outside popup
- OO.ui.addCaptureEventListener( this.getElementWindow(), 'mousedown',
this.onMouseDownHandler );
+ this.getElementWindow().addEventListener( 'mousedown',
this.onMouseDownHandler, true );
};
/**
@@ -177,7 +177,7 @@
* @private
*/
OO.ui.PopupWidget.prototype.unbindMouseDownListener = function () {
- OO.ui.removeCaptureEventListener( this.getElementWindow(), 'mousedown',
this.onMouseDownHandler );
+ this.getElementWindow().removeEventListener( 'mousedown',
this.onMouseDownHandler, true );
};
/**
@@ -203,7 +203,7 @@
* @private
*/
OO.ui.PopupWidget.prototype.bindKeyDownListener = function () {
- OO.ui.addCaptureEventListener( this.getElementWindow(), 'keydown',
this.onDocumentKeyDownHandler );
+ this.getElementWindow().addEventListener( 'keydown',
this.onDocumentKeyDownHandler, true );
};
/**
@@ -212,7 +212,7 @@
* @private
*/
OO.ui.PopupWidget.prototype.unbindKeyDownListener = function () {
- OO.ui.removeCaptureEventListener( this.getElementWindow(), 'keydown',
this.onDocumentKeyDownHandler );
+ this.getElementWindow().removeEventListener( 'keydown',
this.onDocumentKeyDownHandler, true );
};
/**
diff --git a/src/widgets/SelectWidget.js b/src/widgets/SelectWidget.js
index 1d2b861..8f579ca 100644
--- a/src/widgets/SelectWidget.js
+++ b/src/widgets/SelectWidget.js
@@ -161,16 +161,8 @@
if ( item && item.isSelectable() ) {
this.pressItem( item );
this.selecting = item;
- OO.ui.addCaptureEventListener(
- this.getElementDocument(),
- 'mouseup',
- this.onMouseUpHandler
- );
- OO.ui.addCaptureEventListener(
- this.getElementDocument(),
- 'mousemove',
- this.onMouseMoveHandler
- );
+ this.getElementDocument().addEventListener( 'mouseup',
this.onMouseUpHandler, true );
+ this.getElementDocument().addEventListener(
'mousemove', this.onMouseMoveHandler, true );
}
}
return false;
@@ -198,10 +190,8 @@
this.selecting = null;
}
- OO.ui.removeCaptureEventListener( this.getElementDocument(), 'mouseup',
- this.onMouseUpHandler );
- OO.ui.removeCaptureEventListener( this.getElementDocument(),
'mousemove',
- this.onMouseMoveHandler );
+ this.getElementDocument().removeEventListener( 'mouseup',
this.onMouseUpHandler, true );
+ this.getElementDocument().removeEventListener( 'mousemove',
this.onMouseMoveHandler, true );
return false;
};
@@ -321,7 +311,7 @@
* @protected
*/
OO.ui.SelectWidget.prototype.bindKeyDownListener = function () {
- OO.ui.addCaptureEventListener( this.getElementWindow(), 'keydown',
this.onKeyDownHandler );
+ this.getElementWindow().addEventListener( 'keydown',
this.onKeyDownHandler, true );
};
/**
@@ -330,7 +320,7 @@
* @protected
*/
OO.ui.SelectWidget.prototype.unbindKeyDownListener = function () {
- OO.ui.removeCaptureEventListener( this.getElementWindow(), 'keydown',
this.onKeyDownHandler );
+ this.getElementWindow().removeEventListener( 'keydown',
this.onKeyDownHandler, true );
};
/**
@@ -439,7 +429,7 @@
* @protected
*/
OO.ui.SelectWidget.prototype.bindKeyPressListener = function () {
- OO.ui.addCaptureEventListener( this.getElementWindow(), 'keypress',
this.onKeyPressHandler );
+ this.getElementWindow().addEventListener( 'keypress',
this.onKeyPressHandler, true );
};
/**
@@ -451,7 +441,7 @@
* @protected
*/
OO.ui.SelectWidget.prototype.unbindKeyPressListener = function () {
- OO.ui.removeCaptureEventListener( this.getElementWindow(), 'keypress',
this.onKeyPressHandler );
+ this.getElementWindow().removeEventListener( 'keypress',
this.onKeyPressHandler, true );
this.clearKeyPressBuffer();
};
--
To view, visit https://gerrit.wikimedia.org/r/263563
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I424e01ad945d7ba3bc22c41f0259c55179cb9656
Gerrit-PatchSet: 2
Gerrit-Project: oojs/ui
Gerrit-Branch: master
Gerrit-Owner: Bartosz Dziewoński <[email protected]>
Gerrit-Reviewer: Bartosz Dziewoński <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits