jenkins-bot has submitted this change and it was merged. Change subject: LanguageInspector: Make the widget use one line for language ......................................................................
LanguageInspector: Make the widget use one line for language And optionally suppress the free-form text input for use in the demo. Bug: T110127 Change-Id: Id417c22102a3c70fbf448e424b03072aa6d203e9 --- M demos/ve/ve.demo.init.js M src/ui/inspectors/ve.ui.LanguageInspector.js M src/ui/styles/widgets/ve.ui.LanguageInputWidget.css M src/ui/widgets/ve.ui.LanguageInputWidget.js 4 files changed, 28 insertions(+), 15 deletions(-) Approvals: Esanders: Looks good to me, approved jenkins-bot: Verified diff --git a/demos/ve/ve.demo.init.js b/demos/ve/ve.demo.init.js index 551d25e..ba12d55 100644 --- a/demos/ve/ve.demo.init.js +++ b/demos/ve/ve.demo.init.js @@ -26,6 +26,7 @@ } ), languageInput = new ve.ui.LanguageInputWidget( { requireDir: true, + hideCodeInput: true, availableLanguages: ve.availableLanguages, dialogManager: new OO.ui.WindowManager( { factory: ve.ui.windowFactory, classes: [ 've-demo-languageSearchDialogManager' ] } ) } ), @@ -60,8 +61,6 @@ messageKeyButton.on( 'click', function () { languageInput.setLangAndDir( 'qqx', currentDir ); } ); - - languageInput.languageCodeField.$element.hide(); languageInput.setLangAndDir( currentLang, currentDir ); // Dir doesn't change on init but styles need to be set diff --git a/src/ui/inspectors/ve.ui.LanguageInspector.js b/src/ui/inspectors/ve.ui.LanguageInspector.js index 647e55c..2c18244 100644 --- a/src/ui/inspectors/ve.ui.LanguageInspector.js +++ b/src/ui/inspectors/ve.ui.LanguageInspector.js @@ -26,8 +26,6 @@ ve.ui.LanguageInspector.static.name = 'language'; -ve.ui.LanguageInspector.static.size = 'medium'; - ve.ui.LanguageInspector.static.title = OO.ui.deferMsg( 'visualeditor-languageinspector-title' ); diff --git a/src/ui/styles/widgets/ve.ui.LanguageInputWidget.css b/src/ui/styles/widgets/ve.ui.LanguageInputWidget.css index cc9ffbf..33c4032 100644 --- a/src/ui/styles/widgets/ve.ui.LanguageInputWidget.css +++ b/src/ui/styles/widgets/ve.ui.LanguageInputWidget.css @@ -5,16 +5,20 @@ */ .ve-ui-languageInputWidget-findLanguageButton .oo-ui-buttonElement-button > .oo-ui-labelElement-label { - width: 8.5em; + width: 9.5em; text-align: left; overflow: hidden; text-overflow: ellipsis; } -.ve-ui-languageInputWidget-languageCodeTextInput { +.ve-ui-languageInputWidget .oo-ui-fieldLayout.oo-ui-labelElement > .oo-ui-fieldLayout-body > .oo-ui-labelElement-label { width: 7em; +} + +.ve-ui-languageInputWidget-languageCodeTextInput { + width: 6em; } .ve-ui-languageInputWidget-directionSelect { margin-bottom: 0.5em; -} \ No newline at end of file +} diff --git a/src/ui/widgets/ve.ui.LanguageInputWidget.js b/src/ui/widgets/ve.ui.LanguageInputWidget.js index e9d8c2b..58c0dce 100644 --- a/src/ui/widgets/ve.ui.LanguageInputWidget.js +++ b/src/ui/widgets/ve.ui.LanguageInputWidget.js @@ -13,6 +13,7 @@ * @constructor * @param {Object} [config] Configuration options * @cfg {boolean} [requireDir] Require directionality to be set (no 'auto' value) + * @cfg {boolean} [hideCodeInput] Prevent user from entering a language code as free text * @cfg {ve.ui.WindowManager} [dialogManager] Window manager to launch the language search dialog in * @cfg {string[]} [availableLanguages] Available language codes to show in search dialog */ @@ -28,9 +29,11 @@ // Properties this.lang = null; this.dir = null; + this.overlay = new ve.ui.Overlay( { classes: [ 've-ui-overlay-global' ] } ); this.dialogs = config.dialogManager || new ve.ui.WindowManager( { factory: ve.ui.windowFactory, isolate: true } ); this.availableLanguages = config.availableLanguages; + this.findLanguageButton = new OO.ui.ButtonWidget( { classes: [ 've-ui-languageInputWidget-findLanguageButton' ], label: ve.msg( 'visualeditor-languageinspector-widget-changelang' ), @@ -42,14 +45,24 @@ this.directionSelect = new OO.ui.ButtonSelectWidget( { classes: [ 've-ui-languageInputWidget-directionSelect' ] } ); - this.findLanguageField = new OO.ui.FieldLayout( this.findLanguageButton, { + this.languageLabel = { align: 'left', label: ve.msg( 'visualeditor-languageinspector-widget-label-language' ) - } ); - this.languageCodeField = new OO.ui.FieldLayout( this.languageCodeTextInput, { - align: 'left', - label: ve.msg( 'visualeditor-languageinspector-widget-label-langcode' ) - } ); + }; + + if ( config.hideCodeInput ) { + this.languageLayout = new OO.ui.FieldLayout( + this.findLanguageButton, + this.languageLabel + ); + } else { + this.languageLayout = new OO.ui.ActionFieldLayout( + this.languageCodeTextInput, + this.findLanguageButton, + this.languageLabel + ); + } + this.directionField = new OO.ui.FieldLayout( this.directionSelect, { align: 'left', label: ve.msg( 'visualeditor-languageinspector-widget-label-direction' ) @@ -86,8 +99,7 @@ this.$element .addClass( 've-ui-languageInputWidget' ) .append( - this.findLanguageField.$element, - this.languageCodeField.$element, + this.languageLayout.$element, this.directionField.$element ); }; -- To view, visit https://gerrit.wikimedia.org/r/232877 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Id417c22102a3c70fbf448e424b03072aa6d203e9 Gerrit-PatchSet: 4 Gerrit-Project: VisualEditor/VisualEditor Gerrit-Branch: master Gerrit-Owner: Jforrester <jforres...@wikimedia.org> Gerrit-Reviewer: Esanders <esand...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits