From: James D. Forrester Date: Tue, 3 May 2016 23:09:20 +0000 (-0400) Subject: Update OOjs UI to v0.17.1 X-Git-Tag: 1.31.0-rc.0~7108 X-Git-Url: https://git.cyclocoop.org/%7B%24admin_url%7Dmembres/modifier.php?a=commitdiff_plain;h=4e691f2c5f8cf7250984253079edce446145d50f;p=lhc%2Fweb%2Fwiklou.git Update OOjs UI to v0.17.1 Release notes: https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.17.1 Change-Id: I6175a5d788f71f5d07efeabe54aca6335fce4766 --- diff --git a/composer.json b/composer.json index 4fb107ea90..57531c112e 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "ext-xml": "*", "liuggio/statsd-php-client": "1.0.18", "mediawiki/at-ease": "1.1.0", - "oojs/oojs-ui": "0.17.0", + "oojs/oojs-ui": "0.17.1", "oyejorge/less.php": "1.7.0.10", "php": ">=5.5.9", "psr/log": "1.0.0", diff --git a/resources/lib/oojs-ui/oojs-ui-apex.js b/resources/lib/oojs-ui/oojs-ui-apex.js index 62613b88fd..625c02edb1 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.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) { diff --git a/resources/lib/oojs-ui/oojs-ui-core-apex.css b/resources/lib/oojs-ui/oojs-ui-core-apex.css index c928838191..eeb4b286d8 100644 --- a/resources/lib/oojs-ui/oojs-ui-core-apex.css +++ b/resources/lib/oojs-ui/oojs-ui-core-apex.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-element-hidden { display: none !important; diff --git a/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css index 72e4db8faa..268a6802ba 100644 --- a/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-element-hidden { display: none !important; @@ -53,6 +53,9 @@ font-weight: bold; text-decoration: none; } +.oo-ui-buttonElement > .oo-ui-buttonElement-button:focus { + outline: 0; +} .oo-ui-buttonElement.oo-ui-iconElement > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon { margin-left: 0; } @@ -60,8 +63,7 @@ margin-left: 0.46875em; } .oo-ui-buttonElement-frameless > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.2); - outline: 0; + box-shadow: inset 0 0 0 1px #347bff, 0 0 0 1px #347bff; } .oo-ui-buttonElement-frameless > .oo-ui-buttonElement-button .oo-ui-indicatorElement-indicator { margin-right: 0; @@ -83,37 +85,34 @@ .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #444444; } -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label, -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus > .oo-ui-labelElement-label { - color: #2962cc; -} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #347bff; } +.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label { + color: #2962cc; +} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active > .oo-ui-labelElement-label, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #1f4999; box-shadow: none; } -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label, -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:focus > .oo-ui-labelElement-label { - color: #2962cc; -} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #347bff; } +.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label { + color: #2962cc; +} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active > .oo-ui-labelElement-label, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #1f4999; box-shadow: none; } -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label, -.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:focus > .oo-ui-labelElement-label { - color: #8c130d; -} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #d11d13; } +.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover > .oo-ui-labelElement-label { + color: #8c130d; +} .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active > .oo-ui-labelElement-label, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { color: #73100a; @@ -143,10 +142,6 @@ -moz-transition: background 100ms, color 100ms, border-color 100ms, box-shadow 100ms; transition: background 100ms, color 100ms, border-color 100ms, box-shadow 100ms; } -.oo-ui-buttonElement-framed > .oo-ui-buttonElement-button:hover, -.oo-ui-buttonElement-framed > .oo-ui-buttonElement-button:focus { - outline: 0; -} .oo-ui-buttonElement-framed > input.oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-labelElement > .oo-ui-buttonElement-button > .oo-ui-labelElement-label { line-height: 1.2em; @@ -182,7 +177,8 @@ background-color: #ebebeb; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2); + border-color: #347bff; + box-shadow: inset 0 0 0 1px #347bff; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { @@ -197,14 +193,10 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { color: #347bff; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { background-color: #ebf2ff; border-color: #859dcc; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #1f4999; - border-color: #1f4999; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #1f4999; @@ -215,17 +207,17 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #347bff; + box-shadow: inset 0 0 0 1px #347bff; +} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button { color: #347bff; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:hover { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { background-color: #ebf2ff; border-color: #859dcc; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #1f4999; - border-color: #1f4999; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #1f4999; @@ -236,17 +228,17 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #347bff; + box-shadow: inset 0 0 0 1px #347bff; +} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { color: #d11d13; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { background-color: #fbe8e7; border-color: #b77c79; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #73100a; - border-color: #73100a; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #73100a; @@ -257,19 +249,19 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #d11d13; + box-shadow: inset 0 0 0 1px #d11d13; +} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { color: #ffffff; background-color: #347bff; border-color: #347bff; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover { - background: #2962cc; +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { + background-color: #2962cc; border-color: #2962cc; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #ffffff; - border-color: #347bff; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #ffffff; @@ -281,19 +273,19 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #347bff; + box-shadow: inset 0 0 0 1px #ffffff; +} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button { color: #ffffff; background-color: #347bff; border-color: #347bff; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:hover { - background: #2962cc; +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { + background-color: #2962cc; border-color: #2962cc; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #ffffff; - border-color: #347bff; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #ffffff; @@ -305,19 +297,19 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #347bff; + box-shadow: inset 0 0 0 1px #ffffff; +} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { color: #ffffff; background-color: #d11d13; border-color: #d11d13; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover { - background: #8c130d; +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { + background-color: #8c130d; border-color: #8c130d; } -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:focus { - box-shadow: inset 0 0 0 1px #ffffff; - border-color: #d11d13; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color: #ffffff; @@ -329,6 +321,10 @@ background-color: #999999; color: #ffffff; } +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { + border-color: #d11d13; + box-shadow: inset 0 0 0 1px #ffffff; +} .oo-ui-clippableElement-clippable { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; @@ -621,6 +617,12 @@ .oo-ui-decoratedOptionWidget.oo-ui-widget-disabled .oo-ui-indicatorElement-indicator { opacity: 0.2; } +.oo-ui-radioSelectWidget:focus { + outline: 0; +} +.oo-ui-radioSelectWidget:focus .oo-ui-radioOptionWidget.oo-ui-optionWidget-selected .oo-ui-radioInputWidget [type="radio"] + span { + border-width: 2px; +} .oo-ui-radioOptionWidget { cursor: default; padding: 0.25em 0; @@ -689,6 +691,9 @@ border-radius: 0; margin-left: -1px; } +.oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed .oo-ui-buttonElement-button:focus { + z-index: 2; +} .oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed:first-child .oo-ui-buttonElement-button { border-bottom-left-radius: 2px; border-top-left-radius: 2px; diff --git a/resources/lib/oojs-ui/oojs-ui-core.js b/resources/lib/oojs-ui/oojs-ui-core.js index 7128e7a031..ddfee91c4c 100644 --- a/resources/lib/oojs-ui/oojs-ui-core.js +++ b/resources/lib/oojs-ui/oojs-ui-core.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) { @@ -5021,6 +5021,7 @@ OO.ui.SelectWidget = function OoUiSelectWidget( config ) { toggle: 'onToggle' } ); this.$element.on( { + focus: this.onFocus.bind( this ), mousedown: this.onMouseDown.bind( this ), mouseover: this.onMouseOver.bind( this ), mouseleave: this.onMouseLeave.bind( this ) @@ -5101,6 +5102,19 @@ OO.ui.SelectWidget.static.passAllFilter = function () { /* Methods */ +/** + * Handle focus events + * + * @private + * @param {jQuery.Event} event + */ +OO.ui.SelectWidget.prototype.onFocus = function () { + // The styles for focus state depend on one of the items being selected. + if ( !this.getSelectedItem() ) { + this.selectItem( this.getFirstSelectableItem() ); + } +}; + /** * Handle mouse down events. * diff --git a/resources/lib/oojs-ui/oojs-ui-mediawiki.js b/resources/lib/oojs-ui/oojs-ui-mediawiki.js index 33f1e0f827..c1150d0795 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.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) { diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css b/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css index c4eff7c2f7..957dcfcce2 100644 --- a/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css +++ b/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-popupTool .oo-ui-popupWidget-popup, .oo-ui-popupTool .oo-ui-popupWidget-anchor { diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css index 4194cdf78c..1faf7e5281 100644 --- a/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-popupTool .oo-ui-popupWidget-popup, .oo-ui-popupTool .oo-ui-popupWidget-anchor { diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars.js b/resources/lib/oojs-ui/oojs-ui-toolbars.js index 2817324aca..49b96748dd 100644 --- a/resources/lib/oojs-ui/oojs-ui-toolbars.js +++ b/resources/lib/oojs-ui/oojs-ui-toolbars.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) { diff --git a/resources/lib/oojs-ui/oojs-ui-widgets-apex.css b/resources/lib/oojs-ui/oojs-ui-widgets-apex.css index 8851558801..4de8cea956 100644 --- a/resources/lib/oojs-ui/oojs-ui-widgets-apex.css +++ b/resources/lib/oojs-ui/oojs-ui-widgets-apex.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-draggableElement-handle, .oo-ui-draggableElement-handle.oo-ui-widget { @@ -442,7 +442,6 @@ .oo-ui-selectFileWidget-dropTarget { cursor: default; height: 5.5em; - text-align: left; padding: 0; } .oo-ui-selectFileWidget-dropTarget .oo-ui-selectFileWidget-dropLabel, @@ -490,9 +489,6 @@ position: absolute; right: 0.5em; } -.oo-ui-selectFileWidget-empty .oo-ui-selectFileWidget-dropTarget { - text-align: center; -} .oo-ui-selectFileWidget-empty .oo-ui-selectFileWidget-dropTarget .oo-ui-selectFileWidget-dropLabel { display: block; } @@ -516,6 +512,12 @@ .oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-clearButton { display: none; } +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-dropTarget, +.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-dropTarget, +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-dropTarget .oo-ui-buttonElement-button, +.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-dropTarget .oo-ui-buttonElement-button { + cursor: no-drop; +} .oo-ui-selectFileWidget:last-child { margin-right: 0; } diff --git a/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css index 2cd8473a20..5c48ea526c 100644 --- a/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-draggableElement-handle, .oo-ui-draggableElement-handle.oo-ui-widget { @@ -182,6 +182,14 @@ .oo-ui-buttonSelectWidget:last-child { margin-right: 0; } +.oo-ui-buttonSelectWidget:focus { + outline: 0; +} +.oo-ui-buttonSelectWidget:focus .oo-ui-buttonOptionWidget.oo-ui-optionWidget-selected .oo-ui-buttonElement-button { + border-color: #347bff; + box-shadow: inset 0 0 0 1px #347bff; + z-index: 2; +} .oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget .oo-ui-buttonElement-button { border-radius: 0; margin-left: -1px; @@ -461,7 +469,6 @@ .oo-ui-selectFileWidget-dropTarget { cursor: default; height: 5.5em; - text-align: left; padding: 0; } .oo-ui-selectFileWidget-dropTarget .oo-ui-selectFileWidget-dropLabel, @@ -509,9 +516,6 @@ position: absolute; right: 0.5em; } -.oo-ui-selectFileWidget-empty .oo-ui-selectFileWidget-dropTarget { - text-align: center; -} .oo-ui-selectFileWidget-empty .oo-ui-selectFileWidget-dropTarget .oo-ui-selectFileWidget-dropLabel { display: block; } @@ -535,6 +539,12 @@ .oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-clearButton { display: none; } +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-dropTarget, +.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-dropTarget, +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-dropTarget .oo-ui-buttonElement-button, +.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-dropTarget .oo-ui-buttonElement-button { + cursor: no-drop; +} .oo-ui-selectFileWidget:last-child { margin-right: 0; } @@ -875,14 +885,14 @@ -moz-box-sizing: border-box; box-sizing: border-box; vertical-align: middle; - padding: 0 0.4em; - margin: 0.1em; height: 1.7em; line-height: 1.7em; background-color: #eeeeee; - border: 1px solid #cccccc; color: #555555; + margin: 0.1em; + border: 1px solid #cccccc; border-radius: 2px; + padding: 0 0.4em; } .oo-ui-capsuleItemWidget.oo-ui-labelElement .oo-ui-labelElement-label { display: inline-block; @@ -892,16 +902,38 @@ .oo-ui-capsuleItemWidget:focus { outline: 0; border-color: #347bff; + box-shadow: inset 0 0 0 1px #347bff; } .oo-ui-capsuleItemWidget.oo-ui-widget-disabled { + background-color: #f3f3f3; color: #cccccc; - text-shadow: 0 1px 1px #ffffff; border-color: #dddddd; - background-color: #f3f3f3; + text-shadow: 0 1px 1px #ffffff; } .oo-ui-capsuleItemWidget > .oo-ui-buttonElement { - margin-top: -1.4em; - padding-left: 0.3em; + display: none; +} +.oo-ui-capsuleItemWidget.oo-ui-widget-enabled { + padding-right: 1.5375em; +} +.oo-ui-capsuleItemWidget.oo-ui-widget-enabled > .oo-ui-buttonElement { + display: block; + position: absolute; + top: 0; + right: 0; + bottom: 0; +} +.oo-ui-capsuleItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button { + display: block; + width: 1.5375em; + height: 100%; +} +.oo-ui-capsuleItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button .oo-ui-indicator-clear { + position: absolute; + top: 0; + right: 0.3em; + bottom: 0; + height: auto; } .oo-ui-searchWidget-query { position: absolute; diff --git a/resources/lib/oojs-ui/oojs-ui-widgets.js b/resources/lib/oojs-ui/oojs-ui-widgets.js index 895cea478e..366aa38eb9 100644 --- a/resources/lib/oojs-ui/oojs-ui-widgets.js +++ b/resources/lib/oojs-ui/oojs-ui-widgets.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) { @@ -332,74 +332,23 @@ OO.ui.mixin.DraggableGroupElement.prototype.onItemDropOrDragEnd = function () { * @fires reorder */ OO.ui.mixin.DraggableGroupElement.prototype.onDragOver = function ( e ) { - var dragOverObj, $optionWidget, itemOffset, itemMidpoint, itemBoundingRect, - itemSize, cssOutput, dragPosition, overIndex, itemPosition, after, - targetIndex = null, + var overIndex, targetIndex, item = this.getDragItem(), - dragItemIndex = item.getIndex(), - clientX = e.originalEvent.clientX, - clientY = e.originalEvent.clientY; + dragItemIndex = item.getIndex(); // Get the OptionWidget item we are dragging over - dragOverObj = this.getElementDocument().elementFromPoint( clientX, clientY ); - $optionWidget = $( dragOverObj ).closest( '.oo-ui-draggableElement' ); - if ( $optionWidget[ 0 ] ) { - itemOffset = $optionWidget.offset(); - itemBoundingRect = $optionWidget[ 0 ].getBoundingClientRect(); - itemPosition = $optionWidget.position(); - overIndex = $optionWidget.data( 'index' ); - } + overIndex = $( e.target ).closest( '.oo-ui-draggableElement' ).data( 'index' ); + + if ( overIndex !== undefined && overIndex !== dragItemIndex ) { + targetIndex = overIndex + ( overIndex > dragItemIndex ? 1 : 0 ); - if ( - itemOffset && - overIndex !== dragItemIndex - ) { - if ( this.orientation === 'horizontal' ) { - // Calculate where the mouse is relative to the item width - itemSize = itemBoundingRect.width; - itemMidpoint = itemBoundingRect.left + itemSize / 2; - dragPosition = clientX; - // Which side of the item we hover over will dictate - // where to drop the selected item, on the left or - // on the right - cssOutput = { - left: dragPosition < itemMidpoint ? itemPosition.left : itemPosition.left + itemSize, - top: itemPosition.top - }; - } else { - // Calculate where the mouse is relative to the item height - itemSize = itemBoundingRect.height; - itemMidpoint = itemBoundingRect.top + itemSize / 2; - dragPosition = clientY; - // Which side of the item we hover over will dictate - // where to drop the selected item, on the top or - // on the bottom - cssOutput = { - top: dragPosition < itemMidpoint ? itemPosition.top : itemPosition.top + itemSize, - left: itemPosition.left - }; - } - // Store whether we are before or after an item to rearrange - // For horizontal layout, we need to account for RTL, as this is flipped - if ( this.orientation === 'horizontal' && this.dir === 'rtl' ) { - after = dragPosition < itemMidpoint; - } else { - after = dragPosition > itemMidpoint; - } - targetIndex = overIndex + ( after ? 1 : 0 ); - // Check the targetIndex isn't immediately to the left or right of the current item (a no-op) - if ( targetIndex === dragItemIndex || targetIndex === dragItemIndex + 1 ) { - targetIndex = null; - } - } - if ( targetIndex !== null ) { if ( targetIndex > 0 ) { this.$group.children().eq( targetIndex - 1 ).after( item.$element ); } else { this.$group.prepend( item.$element ); } - // Move item in itemsOrder array. Needs to account for left shift if the item is moved forward. - this.itemsOrder.splice( targetIndex - ( targetIndex > dragItemIndex ? 1 : 0 ), 0, + // Move item in itemsOrder array + this.itemsOrder.splice( overIndex, 0, this.itemsOrder.splice( dragItemIndex, 1 )[ 0 ] ); this.updateIndexes(); diff --git a/resources/lib/oojs-ui/oojs-ui-windows-apex.css b/resources/lib/oojs-ui/oojs-ui-windows-apex.css index b1a3c3bac9..764f40c5d1 100644 --- a/resources/lib/oojs-ui/oojs-ui-windows-apex.css +++ b/resources/lib/oojs-ui/oojs-ui-windows-apex.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-actionWidget.oo-ui-pendingElement-pending { background-image: /* @embed */ url(themes/apex/images/textures/pending.gif); diff --git a/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css index d323fec0fb..deda1d0c57 100644 --- a/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:05Z + * Date: 2016-05-03T22:58:06Z */ .oo-ui-window { background: transparent; diff --git a/resources/lib/oojs-ui/oojs-ui-windows.js b/resources/lib/oojs-ui/oojs-ui-windows.js index 7f33fad6d5..93a870cb68 100644 --- a/resources/lib/oojs-ui/oojs-ui-windows.js +++ b/resources/lib/oojs-ui/oojs-ui-windows.js @@ -1,12 +1,12 @@ /*! - * OOjs UI v0.17.0 + * OOjs UI v0.17.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2016 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2016-04-26T21:34:01Z + * Date: 2016-05-03T22:58:02Z */ ( function ( OO ) {