jenkins-bot has submitted this change and it was merged. Change subject: Add focus and blur events to ce.Surface ......................................................................
Add focus and blur events to ce.Surface Didn't bother to deduplicate blur-focus event pairs that occur when the focus moves from the documentNode to the pasteTarget or vice versa (this happens when switching between normal selection and FocusableNode selection). Change-Id: If1ccd2fbf11de956b6c2364ae81b9dc20a1bf409 --- M modules/ve/ce/ve.ce.Surface.js 1 file changed, 18 insertions(+), 0 deletions(-) Approvals: Divec: Looks good to me, approved jenkins-bot: Verified diff --git a/modules/ve/ce/ve.ce.Surface.js b/modules/ve/ce/ve.ce.Surface.js index 7f7a57c..3dda86a 100644 --- a/modules/ve/ce/ve.ce.Surface.js +++ b/modules/ve/ce/ve.ce.Surface.js @@ -146,6 +146,20 @@ * @event relocationEnd */ +/** + * @event focus + * Note that it's possible for a focus event to occur immediately after a blur event, if the focus + * moves to or from a FocusableNode. In this case the surface doesn't lose focus conceptually, but + * a pair of blur-focus events is emitted anyway. + */ + +/** + * @event blur + * Note that it's possible for a focus event to occur immediately after a blur event, if the focus + * moves to or from a FocusableNode. In this case the surface doesn't lose focus conceptually, but + * a pair of blur-focus events is emitted anyway. + */ + /* Static methods */ /** @@ -317,6 +331,7 @@ * * @method * @param {Event} e Focus event (native event, NOT a jQuery event!) + * @fires focus */ ve.ce.Surface.prototype.documentOnFocus = function ( e ) { if ( e.target === this.documentView.getDocumentNode().$element[0] ) { @@ -326,6 +341,7 @@ } this.eventSequencer.attach( this.$element ); this.surfaceObserver.startTimerLoop(); + this.emit( 'focus' ); }; /** @@ -333,12 +349,14 @@ * * @method * @param {Event} e Blur event (native event, NOT a jQuery event!) + * @fires blur */ ve.ce.Surface.prototype.documentOnBlur = function () { this.eventSequencer.detach(); this.surfaceObserver.stopTimerLoop(); this.surfaceObserver.pollOnce(); this.dragging = false; + this.emit( 'blur' ); }; /** -- To view, visit https://gerrit.wikimedia.org/r/98115 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: If1ccd2fbf11de956b6c2364ae81b9dc20a1bf409 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/VisualEditor Gerrit-Branch: master Gerrit-Owner: Catrope <roan.katt...@gmail.com> Gerrit-Reviewer: Divec <da...@sheetmusic.org.uk> Gerrit-Reviewer: Trevor Parscal <tpars...@wikimedia.org> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits