From 1c8f2c11e3a1d2a738a202b68340ed2bad23413e Mon Sep 17 00:00:00 2001 From: "James D. Forrester" Date: Wed, 7 Oct 2015 13:59:52 -0700 Subject: [PATCH] Update OOjs UI to v0.12.11 Release notes: https://git.wikimedia.org/blob/oojs%2Fui.git/v0.12.11/History.md Change-Id: I2884af2f6de88754b06f3e644d302e489f5abec5 --- composer.json | 2 +- resources/lib/oojs-ui/i18n/as.json | 7 +++- resources/lib/oojs-ui/i18n/is.json | 6 ++- resources/lib/oojs-ui/i18n/pl.json | 2 +- resources/lib/oojs-ui/i18n/sr-ec.json | 4 +- resources/lib/oojs-ui/i18n/vi.json | 1 + .../lib/oojs-ui/oojs-ui-apex-noimages.css | 4 +- resources/lib/oojs-ui/oojs-ui-apex.js | 4 +- .../oojs-ui/oojs-ui-mediawiki-noimages.css | 14 ++++--- resources/lib/oojs-ui/oojs-ui-mediawiki.js | 4 +- resources/lib/oojs-ui/oojs-ui.js | 37 +++++++++++++++---- 11 files changed, 61 insertions(+), 24 deletions(-) diff --git a/composer.json b/composer.json index 6f859bd4ed..46ff59c614 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,7 @@ "ext-iconv": "*", "liuggio/statsd-php-client": "1.0.16", "mediawiki/at-ease": "1.1.0", - "oojs/oojs-ui": "0.12.10", + "oojs/oojs-ui": "0.12.11", "oyejorge/less.php": "1.7.0.9", "php": ">=5.3.3", "psr/log": "1.0.0", diff --git a/resources/lib/oojs-ui/i18n/as.json b/resources/lib/oojs-ui/i18n/as.json index c37360128b..505328095e 100644 --- a/resources/lib/oojs-ui/i18n/as.json +++ b/resources/lib/oojs-ui/i18n/as.json @@ -2,7 +2,8 @@ "@metadata": { "authors": [ "Gitartha.bordoloi", - "Dibya Dutta" + "Dibya Dutta", + "IKHazarika" ] }, "ooui-outline-control-move-down": "সমল তললৈ স্থানান্তৰ কৰক", @@ -17,6 +18,8 @@ "ooui-dialog-process-dismiss": "বাতিল", "ooui-dialog-process-retry": "পুনৰ চেষ্টা কৰক", "ooui-dialog-process-continue": "অব্যাহত ৰাখক", + "ooui-selectfile-button-select": "ফাইল নিৰ্বাচন কৰক", "ooui-selectfile-not-supported": "নথি নিৰ্বাচন সমৰ্থন কৰা নাই", - "ooui-selectfile-placeholder": "কোনো নথি নিৰ্বাচিত কৰা হোৱা নাই" + "ooui-selectfile-placeholder": "কোনো নথি নিৰ্বাচিত কৰা হোৱা নাই", + "ooui-selectfile-dragdrop-placeholder": "ইয়াত ফাইল এৰক" } diff --git a/resources/lib/oojs-ui/i18n/is.json b/resources/lib/oojs-ui/i18n/is.json index 3a4e14544b..574c59276e 100644 --- a/resources/lib/oojs-ui/i18n/is.json +++ b/resources/lib/oojs-ui/i18n/is.json @@ -16,5 +16,9 @@ "ooui-dialog-process-error": "Eitthvað mistókst", "ooui-dialog-process-dismiss": "Loka", "ooui-dialog-process-retry": "Reyna aftur", - "ooui-dialog-process-continue": "Halda áfram" + "ooui-dialog-process-continue": "Halda áfram", + "ooui-selectfile-button-select": "Velja skrá", + "ooui-selectfile-not-supported": "Skráar val er ekki stutt.", + "ooui-selectfile-placeholder": "Engin skrá er valin", + "ooui-selectfile-dragdrop-placeholder": "Slepptu skránni hérna" } diff --git a/resources/lib/oojs-ui/i18n/pl.json b/resources/lib/oojs-ui/i18n/pl.json index 486e87f43f..9ceb96fd9f 100644 --- a/resources/lib/oojs-ui/i18n/pl.json +++ b/resources/lib/oojs-ui/i18n/pl.json @@ -29,7 +29,7 @@ "ooui-dialog-message-accept": "OK", "ooui-dialog-message-reject": "Anuluj", "ooui-dialog-process-error": "Coś poszło nie tak", - "ooui-dialog-process-dismiss": "Ukryj", + "ooui-dialog-process-dismiss": "Powrót", "ooui-dialog-process-retry": "Spróbuj ponownie", "ooui-dialog-process-continue": "Kontynuuj", "ooui-selectfile-button-select": "Wybierz plik", diff --git a/resources/lib/oojs-ui/i18n/sr-ec.json b/resources/lib/oojs-ui/i18n/sr-ec.json index c827554edb..de52812e78 100644 --- a/resources/lib/oojs-ui/i18n/sr-ec.json +++ b/resources/lib/oojs-ui/i18n/sr-ec.json @@ -17,5 +17,7 @@ "ooui-dialog-process-error": "Нешто је пошло наопако", "ooui-dialog-process-dismiss": "Одбаци", "ooui-dialog-process-retry": "Покушај поново", - "ooui-dialog-process-continue": "Настави" + "ooui-dialog-process-continue": "Настави", + "ooui-selectfile-button-select": "Изабери датотеку", + "ooui-selectfile-placeholder": "Није изабрана ниједна датотека" } diff --git a/resources/lib/oojs-ui/i18n/vi.json b/resources/lib/oojs-ui/i18n/vi.json index 27cef231e7..fd63081453 100644 --- a/resources/lib/oojs-ui/i18n/vi.json +++ b/resources/lib/oojs-ui/i18n/vi.json @@ -20,6 +20,7 @@ "ooui-dialog-process-dismiss": "Bỏ qua", "ooui-dialog-process-retry": "Thử lại", "ooui-dialog-process-continue": "Tiếp tục", + "ooui-selectfile-button-select": "Chọn tập tin", "ooui-selectfile-not-supported": "Không hỗ trợ việc chọn tập tin", "ooui-selectfile-placeholder": "Không có tập tin nào được chọn", "ooui-selectfile-dragdrop-placeholder": "Thả tập tin vào đây" diff --git a/resources/lib/oojs-ui/oojs-ui-apex-noimages.css b/resources/lib/oojs-ui/oojs-ui-apex-noimages.css index fdfbffbedc..6fb7be6bce 100644 --- a/resources/lib/oojs-ui/oojs-ui-apex-noimages.css +++ b/resources/lib/oojs-ui/oojs-ui-apex-noimages.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.12.10 + * OOjs UI v0.12.11 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2015 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2015-09-29T21:20:47Z + * Date: 2015-10-07T20:48:23Z */ @-webkit-keyframes oo-ui-progressBarWidget-slide { from { diff --git a/resources/lib/oojs-ui/oojs-ui-apex.js b/resources/lib/oojs-ui/oojs-ui-apex.js index 2e3c409abc..d0c8e51593 100644 --- a/resources/lib/oojs-ui/oojs-ui-apex.js +++ b/resources/lib/oojs-ui/oojs-ui-apex.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.12.10 + * OOjs UI v0.12.11 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2015 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2015-09-29T21:20:38Z + * Date: 2015-10-07T20:48:15Z */ /** * @class diff --git a/resources/lib/oojs-ui/oojs-ui-mediawiki-noimages.css b/resources/lib/oojs-ui/oojs-ui-mediawiki-noimages.css index e4e0d36891..4b65ad4fa0 100644 --- a/resources/lib/oojs-ui/oojs-ui-mediawiki-noimages.css +++ b/resources/lib/oojs-ui/oojs-ui-mediawiki-noimages.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.12.10 + * OOjs UI v0.12.11 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2015 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2015-09-29T21:20:47Z + * Date: 2015-10-07T20:48:23Z */ @-webkit-keyframes oo-ui-progressBarWidget-slide { from { @@ -1616,7 +1616,7 @@ border: 1px solid #aaaaaa; border-radius: 0.2em; background-color: #ffffff; - box-shadow: 0 0.15em 0 0 rgba(204, 204, 204, 0.5); + box-shadow: 0 0.15em 0 0 rgba(0, 0, 0, 0.15); } .oo-ui-popupWidget-anchored .oo-ui-popupWidget-popup { margin-top: 9px; @@ -1788,6 +1788,9 @@ -moz-box-sizing: border-box; box-sizing: border-box; border: 1px solid #cccccc; + border-radius: 0.1em; + padding-left: 1em; + vertical-align: middle; } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus { @@ -2061,7 +2064,7 @@ margin-top: -1px; border: 1px solid #aaaaaa; border-radius: 0 0 0.2em 0.2em; - box-shadow: 0 0.15em 0 0 rgba(204, 204, 204, 0.5); + box-shadow: 0 0.15em 0 0 rgba(0, 0, 0, 0.15); } .oo-ui-menuSelectWidget input { position: absolute; @@ -2138,7 +2141,8 @@ margin-right: 0; } .oo-ui-dropdownWidget-handle { - padding: 0.5em 0; + padding: 0.3em 0; + height: 2.275em; border: 1px solid #cccccc; border-radius: 0.1em; } diff --git a/resources/lib/oojs-ui/oojs-ui-mediawiki.js b/resources/lib/oojs-ui/oojs-ui-mediawiki.js index 4c6c77cd92..60acdd2a1c 100644 --- a/resources/lib/oojs-ui/oojs-ui-mediawiki.js +++ b/resources/lib/oojs-ui/oojs-ui-mediawiki.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.12.10 + * OOjs UI v0.12.11 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2015 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2015-09-29T21:20:38Z + * Date: 2015-10-07T20:48:15Z */ /** * @class diff --git a/resources/lib/oojs-ui/oojs-ui.js b/resources/lib/oojs-ui/oojs-ui.js index 1a7d406db5..e433e91931 100644 --- a/resources/lib/oojs-ui/oojs-ui.js +++ b/resources/lib/oojs-ui/oojs-ui.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.12.10 + * OOjs UI v0.12.11 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2015 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2015-09-29T21:20:38Z + * Date: 2015-10-07T20:48:15Z */ ( function ( OO ) { @@ -9832,8 +9832,8 @@ OO.ui.BookletLayout.prototype.focus = function ( itemIndex ) { return; } // Only change the focus if is not already in the current page - if ( !page.$element.find( ':focus' ).length ) { - OO.ui.findFocusable( page.$element ).focus(); + if ( !OO.ui.contains( page.$element[ 0 ], this.getElementDocument().activeElement, true ) ) { + page.focus(); } }; @@ -10338,9 +10338,9 @@ OO.ui.IndexLayout.prototype.focus = function ( itemIndex ) { if ( !card ) { return; } - // Only change the focus if is not already in the current card - if ( !card.$element.find( ':focus' ).length ) { - OO.ui.findFocusable( card.$element ).focus(); + // Only change the focus if is not already in the current page + if ( !OO.ui.contains( card.$element[ 0 ], this.getElementDocument().activeElement, true ) ) { + card.focus(); } }; @@ -10664,6 +10664,17 @@ OO.ui.PanelLayout = function OoUiPanelLayout( config ) { OO.inheritClass( OO.ui.PanelLayout, OO.ui.Layout ); +/* Methods */ + +/** + * Focus the panel layout + * + * The default implementation just focuses the first focusable element in the panel + */ +OO.ui.PanelLayout.prototype.focus = function () { + OO.ui.findFocusable( this.$element ).focus(); +}; + /** * CardLayouts are used within {@link OO.ui.IndexLayout index layouts} to create cards that users can select and display * from the index's optional {@link OO.ui.TabSelectWidget tab} navigation. Cards are usually not instantiated directly, @@ -15530,6 +15541,18 @@ OO.ui.TextInputWidget = function OoUiTextInputWidget( config ) { } if ( config.autocomplete === false ) { this.$input.attr( 'autocomplete', 'off' ); + // Turning off autocompletion also disables "form caching" when the user navigates to a + // different page and then clicks "Back". Re-enable it when leaving. Borrowed from jQuery UI. + $( window ).on( { + beforeunload: function () { + this.$input.removeAttr( 'autocomplete' ); + }.bind( this ), + pageshow: function () { + // Browsers don't seem to actually fire this event on "Back", they instead just reload the + // whole page... it shouldn't hurt, though. + this.$input.attr( 'autocomplete', 'off' ); + }.bind( this ) + } ); } if ( this.multiline && config.rows ) { this.$input.attr( 'rows', config.rows ); -- 2.20.1