Mooeypoo has uploaded a new change for review. https://gerrit.wikimedia.org/r/204204
Change subject: [wip] Focus on the first focusable element in template dialog ...................................................................... [wip] Focus on the first focusable element in template dialog Use the new OOUI focusFirstFocusable() to find the first focusable element in the booklet layout and focus on it. Only do this if no other elements are currently focused. * Depends on ooui change I746389d66b8 Change-Id: I62bb5bc18196fdde61a3f5446b7385037a55a737 --- M modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js M modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js 2 files changed, 15 insertions(+), 4 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor refs/changes/04/204204/1 diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js index 00493dc..2675682 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js @@ -83,6 +83,7 @@ ve.ui.MWTemplateDialog.prototype.onTransclusionReady = function () { this.loaded = true; this.$element.addClass( 've-ui-mwTemplateDialog-ready' ); + this.findFocus(); this.popPending(); }; @@ -512,11 +513,21 @@ * @inheritdoc */ ve.ui.MWTemplateDialog.prototype.getReadyProcess = function ( data ) { - var dialog = this; return ve.ui.MWTemplateDialog.super.prototype.getReadyProcess.call( this, data ) .next( function () { - dialog.bookletLayout.focus(); - } ); + this.findFocus(); + }, this ); +}; + +/** + * Find the focus on the page. Check if there is already a focused + * element, and if not, get the first focusable element in the booklet layout + * and focus on it. + */ +ve.ui.MWTemplateDialog.prototype.findFocus = function () { + if ( !this.bookletLayout.$element.find( ':focus' ) ) { + this.bookletLayout.focusFirstFocusable(); + } }; /** diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js index 065110f..752f4bd 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js @@ -69,7 +69,7 @@ ve.ui.MWTransclusionDialog.prototype.onTransclusionReady = function () { // Parent method ve.ui.MWTransclusionDialog.super.prototype.onTransclusionReady.call( this ); - + this.findFocus(); this.setMode( 'auto' ); }; -- To view, visit https://gerrit.wikimedia.org/r/204204 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I62bb5bc18196fdde61a3f5446b7385037a55a737 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/VisualEditor Gerrit-Branch: master Gerrit-Owner: Mooeypoo <mor...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits