From e169d184c90328cd2bb99d6eb65cf99e1e54589d Mon Sep 17 00:00:00 2001 From: "James D. Forrester" Date: Tue, 18 Apr 2017 16:41:08 -0700 Subject: [PATCH] Update OOjs UI to v0.21.1 Release notes: https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.21.1 Depends-On: I5edcf21effee760d9951965a152481f2c603b59b Change-Id: I5edcf21effee760d9951965a152481f2c603b5b9 --- composer.json | 2 +- resources/lib/oojs-ui/i18n/jv.json | 6 +- resources/lib/oojs-ui/oojs-ui-apex.js | 4 +- resources/lib/oojs-ui/oojs-ui-core-apex.css | 176 ++++++------- .../lib/oojs-ui/oojs-ui-core-mediawiki.css | 235 +++++++++--------- resources/lib/oojs-ui/oojs-ui-core.js | 29 ++- resources/lib/oojs-ui/oojs-ui-mediawiki.js | 17 +- .../lib/oojs-ui/oojs-ui-toolbars-apex.css | 113 +++++++-- .../oojs-ui/oojs-ui-toolbars-mediawiki.css | 126 ++++++++-- resources/lib/oojs-ui/oojs-ui-toolbars.js | 10 +- .../lib/oojs-ui/oojs-ui-widgets-apex.css | 125 +++++----- .../lib/oojs-ui/oojs-ui-widgets-mediawiki.css | 183 ++++++++------ resources/lib/oojs-ui/oojs-ui-widgets.js | 43 ++-- .../lib/oojs-ui/oojs-ui-windows-apex.css | 38 +-- .../lib/oojs-ui/oojs-ui-windows-mediawiki.css | 72 +++--- resources/lib/oojs-ui/oojs-ui-windows.js | 4 +- 16 files changed, 707 insertions(+), 476 deletions(-) diff --git a/composer.json b/composer.json index 44a5eb415e..36fd0ee0ef 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.21.0", + "oojs/oojs-ui": "0.21.1", "oyejorge/less.php": "1.7.0.14", "php": ">=5.5.9", "psr/log": "1.0.2", diff --git a/resources/lib/oojs-ui/i18n/jv.json b/resources/lib/oojs-ui/i18n/jv.json index 546cc4702c..25aff6800e 100644 --- a/resources/lib/oojs-ui/i18n/jv.json +++ b/resources/lib/oojs-ui/i18n/jv.json @@ -14,14 +14,14 @@ "ooui-toolbar-more": "Liyané", "ooui-toolgroup-expand": "Liyané", "ooui-toolgroup-collapse": "Sacukupé", - "ooui-dialog-message-accept": "Ha'a", + "ooui-dialog-message-accept": "Oké", "ooui-dialog-message-reject": "Wurung", "ooui-dialog-process-error": "Ana sing klèru", "ooui-dialog-process-dismiss": "Tutup", "ooui-dialog-process-retry": "Jajal manèh", - "ooui-dialog-process-continue": "Banjuraké", + "ooui-dialog-process-continue": "Bacutaké", "ooui-selectfile-button-select": "Pilih barkas", - "ooui-selectfile-not-supported": "Barkas pilihan ora disengkuyung", + "ooui-selectfile-not-supported": "Ora bisa milih barkas", "ooui-selectfile-placeholder": "Ora ana barkas sing dipilih", "ooui-selectfile-dragdrop-placeholder": "Dèkèk barkas ing kéné" } diff --git a/resources/lib/oojs-ui/oojs-ui-apex.js b/resources/lib/oojs-ui/oojs-ui-apex.js index be94720c3b..ef48f5b981 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( 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 0313da4fe7..29b0874b62 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-element-hidden { display: none !important; @@ -20,17 +20,17 @@ cursor: pointer; display: inline-block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; vertical-align: middle; font-family: inherit; font-size: inherit; white-space: nowrap; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-buttonElement > .oo-ui-buttonElement-button::-moz-focus-inner { border-color: transparent; @@ -115,13 +115,13 @@ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5); border: 1px #c9c9c9 solid; -webkit-transition: border-color 100ms ease; - -moz-transition: border-color 100ms ease; - transition: border-color 100ms ease; + -moz-transition: border-color 100ms ease; + transition: border-color 100ms ease; background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #fff), color-stop(100%, #ddd)); background-image: -webkit-linear-gradient(top, #fff 0, #ddd 100%); - background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); - background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); + background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); + background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffffff', endColorstr='#ffdddddd' )"; } .oo-ui-buttonElement-framed > .oo-ui-buttonElement-button:hover, @@ -142,8 +142,8 @@ background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #ddd), color-stop(100%, #fff)); background-image: -webkit-linear-gradient(top, #ddd 0, #fff 100%); - background-image: -moz-linear-gradient(top, #ddd 0, #fff 100%); - background-image: linear-gradient(to bottom, #ddd 0, #fff 100%); + background-image: -moz-linear-gradient(top, #ddd 0, #fff 100%); + background-image: linear-gradient(to bottom, #ddd 0, #fff 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffdddddd', endColorstr='#ffffffff' )"; } .oo-ui-buttonElement-framed.oo-ui-iconElement > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon { @@ -169,8 +169,8 @@ background-color: #cde7f4; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #eaf4fa), color-stop(100%, #b0d9ee)); background-image: -webkit-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); - background-image: -moz-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); - background-image: linear-gradient(to bottom, #eaf4fa 0, #b0d9ee 100%); + background-image: -moz-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); + background-image: linear-gradient(to bottom, #eaf4fa 0, #b0d9ee 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffeaf4fa', endColorstr='#ffb0d9ee' )"; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover, @@ -184,8 +184,8 @@ background-color: #cde7f4; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #b0d9ee), color-stop(100%, #eaf4fa)); background-image: -webkit-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); - background-image: -moz-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); - background-image: linear-gradient(to bottom, #b0d9ee 0, #eaf4fa 100%); + background-image: -moz-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); + background-image: linear-gradient(to bottom, #b0d9ee 0, #eaf4fa 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb0d9ee', endColorstr='#ffeaf4fa' )"; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button { @@ -193,8 +193,8 @@ background-color: #daf0bd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #f0fbe1), color-stop(100%, #c3e59a)); background-image: -webkit-linear-gradient(top, #f0fbe1 0, #c3e59a 100%); - background-image: -moz-linear-gradient(top, #f0fbe1 0, #c3e59a 100%); - background-image: linear-gradient(to bottom, #f0fbe1 0, #c3e59a 100%); + background-image: -moz-linear-gradient(top, #f0fbe1 0, #c3e59a 100%); + background-image: linear-gradient(to bottom, #f0fbe1 0, #c3e59a 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff0fbe1', endColorstr='#ffc3e59a' )"; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:hover, @@ -208,8 +208,8 @@ background-color: #daf0bd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #c3e59a), color-stop(100%, #f0fbe1)); background-image: -webkit-linear-gradient(top, #c3e59a 0, #f0fbe1 100%); - background-image: -moz-linear-gradient(top, #c3e59a 0, #f0fbe1 100%); - background-image: linear-gradient(to bottom, #c3e59a 0, #f0fbe1 100%); + background-image: -moz-linear-gradient(top, #c3e59a 0, #f0fbe1 100%); + background-image: linear-gradient(to bottom, #c3e59a 0, #f0fbe1 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc3e59a', endColorstr='#fff0fbe1' )"; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { @@ -220,7 +220,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-disabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { opacity: 0.5; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); box-shadow: none; color: #333; background: #eee; @@ -237,8 +237,8 @@ } .oo-ui-clippableElement-clippable { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; min-height: 3.125em; } .oo-ui-floatableElement { @@ -483,7 +483,7 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-panelLayout-scrollable { overflow: auto; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); } .oo-ui-panelLayout-expanded { position: absolute; @@ -717,9 +717,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-popupWidget-head { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-popupWidget-head > .oo-ui-buttonWidget { float: right; @@ -814,8 +814,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-popupWidget-transitioning .oo-ui-popupWidget-popup { -webkit-transition: width 100ms ease, height 100ms ease, left 100ms ease; - -moz-transition: width 100ms ease, height 100ms ease, left 100ms ease; - transition: width 100ms ease, height 100ms ease, left 100ms ease; + -moz-transition: width 100ms ease, height 100ms ease, left 100ms ease; + transition: width 100ms ease, height 100ms ease, left 100ms ease; } .oo-ui-popupWidget-head { height: 2.5em; @@ -857,8 +857,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { position: relative; vertical-align: middle; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: 100%; max-width: 50em; } @@ -871,8 +871,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-repeat: no-repeat; width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select { cursor: pointer; @@ -909,8 +909,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { position: relative; vertical-align: middle; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: 100%; max-width: 50em; } @@ -919,8 +919,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { display: block; width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-textInputWidget textarea { overflow: auto; @@ -957,9 +957,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { height: 100%; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-textInputWidget.oo-ui-widget-enabled > .oo-ui-iconElement-icon, .oo-ui-textInputWidget.oo-ui-widget-enabled > .oo-ui-indicatorElement-indicator { @@ -973,9 +973,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-labelElement-label { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-textInputWidget.oo-ui-labelElement > .oo-ui-labelElement-label { display: block; @@ -1009,8 +1009,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { box-shadow: 0 0 0 #fff, inset 0 0.1em 0.2em #ddd; border-radius: 0.25em; -webkit-transition: border-color 250ms ease, box-shadow 250ms ease; - -moz-transition: border-color 250ms ease, box-shadow 250ms ease; - transition: border-color 250ms ease, box-shadow 250ms ease; + -moz-transition: border-color 250ms ease, box-shadow 250ms ease; + transition: border-color 250ms ease, box-shadow 250ms ease; } .oo-ui-textInputWidget input.oo-ui-pendingElement-pending, .oo-ui-textInputWidget textarea.oo-ui-pendingElement-pending { @@ -1120,14 +1120,24 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-menuSelectWidget-invisible { display: none; } -.oo-ui-menuOptionWidget .oo-ui-iconElement-icon { - display: none; +.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected { + background-color: transparent; } .oo-ui-menuOptionWidget.oo-ui-optionWidget-selected .oo-ui-iconElement-icon { + background-image: url('themes/apex/images/icons/check.png'); + background-image: -webkit-linear-gradient(transparent, transparent), /* @embed */ url('themes/apex/images/icons/check.svg'); + background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/apex/images/icons/check.svg'); + background-image: -o-linear-gradient(transparent, transparent), url('themes/apex/images/icons/check.png'); + background-position: center center; + background-repeat: no-repeat; + background-size: contain; display: block; -} -.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected { - background-color: transparent; + left: 0.5em; + top: 0; + min-width: 24px; + width: 1.875em; + min-height: 24px; + height: 100%; } .oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted.oo-ui-optionWidget-selected { @@ -1158,12 +1168,12 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { cursor: default; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dropdownWidget-handle .oo-ui-iconElement-icon, .oo-ui-dropdownWidget-handle .oo-ui-indicatorElement-indicator { @@ -1332,24 +1342,24 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { height: 1em; border-right: 1px solid #ccc; -webkit-transition: width 250ms ease; - -moz-transition: width 250ms ease; - transition: width 250ms ease; + -moz-transition: width 250ms ease; + transition: width 250ms ease; background-color: #cde7f4; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #eaf4fa), color-stop(100%, #b0d9ee)); background-image: -webkit-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); - background-image: -moz-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); - background-image: linear-gradient(to bottom, #eaf4fa 0, #b0d9ee 100%); + background-image: -moz-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); + background-image: linear-gradient(to bottom, #eaf4fa 0, #b0d9ee 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffeaf4fa', endColorstr='#ffb0d9ee' )"; } .oo-ui-progressBarWidget-indeterminate .oo-ui-progressBarWidget-bar { -webkit-animation: oo-ui-progressBarWidget-slide 2s infinite linear; - -moz-animation: oo-ui-progressBarWidget-slide 2s infinite linear; - animation: oo-ui-progressBarWidget-slide 2s infinite linear; + -moz-animation: oo-ui-progressBarWidget-slide 2s infinite linear; + animation: oo-ui-progressBarWidget-slide 2s infinite linear; width: 40%; -webkit-transform: translate(-25%); - -moz-transform: translate(-25%); - -ms-transform: translate(-25%); - transform: translate(-25%); + -moz-transform: translate(-25%); + -ms-transform: translate(-25%); + transform: translate(-25%); border-left: 1px solid #a6cee1; } .oo-ui-progressBarWidget.oo-ui-widget-disabled { @@ -1358,42 +1368,42 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { @-webkit-keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } @-moz-keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } @keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } diff --git a/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-core-mediawiki.css index 4cc49c8738..a994e00b35 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-element-hidden { display: none !important; @@ -20,17 +20,17 @@ cursor: pointer; display: inline-block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; vertical-align: middle; font-family: inherit; font-size: inherit; white-space: nowrap; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-buttonElement > .oo-ui-buttonElement-button::-moz-focus-inner { border-color: transparent; @@ -95,15 +95,15 @@ } .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button { -webkit-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon, .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button > .oo-ui-indicatorElement-indicator { opacity: 0.87; -webkit-transition: opacity 100ms; - -moz-transition: opacity 100ms; - transition: opacity 100ms; + -moz-transition: opacity 100ms; + transition: opacity 100ms; } .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon.oo-ui-image-invert, .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button > .oo-ui-indicatorElement-indicator.oo-ui-image-invert { @@ -133,7 +133,10 @@ } .oo-ui-buttonElement-frameless.oo-ui-labelElement > .oo-ui-buttonElement-button { margin-left: -1px; - border: 1px solid #fff; + border-color: #fff; + border-color: transparent; + border-style: solid; + border-width: 1px; padding: 0.3125em 0; } .oo-ui-buttonElement-frameless.oo-ui-indicatorElement > .oo-ui-buttonElement-button { @@ -239,9 +242,6 @@ color: #fff; border: 1px solid #c8ccd1; } -.oo-ui-buttonElement-framed.oo-ui-widget-disabled + .oo-ui-widget-disabled > .oo-ui-buttonElement-button { - border-left-color: #fff; -} .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button { background-color: #f8f9fa; color: #222; @@ -283,7 +283,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { background-color: #eff3fa; color: #2a4b8d; border-color: #2a4b8d; @@ -292,6 +293,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { border-color: #36c; box-shadow: inset 0 0 0 1px #36c; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button { color: #36c; @@ -303,7 +305,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { background-color: #eff3fa; color: #2a4b8d; border-color: #2a4b8d; @@ -312,6 +315,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:focus { border-color: #36c; box-shadow: inset 0 0 0 1px #36c; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { color: #d33; @@ -323,7 +327,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { background-color: #ffffff; color: #b32424; border-color: #b32424; @@ -332,6 +337,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:focus { border-color: #d33; box-shadow: inset 0 0 0 1px #d33; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { color: #fff; @@ -345,7 +351,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { color: #fff; background-color: #2a4b8d; border-color: #2a4b8d; @@ -354,6 +361,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { border-color: #36c; box-shadow: inset 0 0 0 1px #36c, inset 0 0 0 2px #fff; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button { color: #fff; @@ -367,7 +375,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { color: #fff; background-color: #2a4b8d; border-color: #2a4b8d; @@ -376,6 +385,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-constructive > .oo-ui-buttonElement-button:focus { border-color: #36c; box-shadow: inset 0 0 0 1px #36c, inset 0 0 0 2px #fff; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { color: #fff; @@ -389,7 +399,8 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:active:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, -.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, +.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { color: #fff; background-color: #b32424; border-color: #b32424; @@ -398,6 +409,7 @@ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:focus { border-color: #d33; box-shadow: inset 0 0 0 1px #d33, inset 0 0 0 2px #fff; + outline: 0; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary > .oo-ui-buttonElement-button > .oo-ui-indicatorElement-indicator { @@ -405,8 +417,8 @@ } .oo-ui-clippableElement-clippable { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; min-height: 3.125em; } .oo-ui-floatableElement { @@ -646,7 +658,7 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-panelLayout-scrollable { overflow: auto; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); } .oo-ui-panelLayout-expanded { position: absolute; @@ -734,6 +746,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-decoratedOptionWidget .oo-ui-labelElement-label { line-height: 1.172em; } +.oo-ui-decoratedOptionWidget.oo-ui-indicatorElement { + padding-right: 1.875em; +} .oo-ui-decoratedOptionWidget.oo-ui-indicatorElement .oo-ui-indicatorElement-indicator { right: 0.9375em; } @@ -808,18 +823,21 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { margin-right: 0; } .oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed .oo-ui-buttonElement-button { - border-radius: 0; margin-left: -1px; + border-radius: 0; } .oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed:first-child .oo-ui-buttonElement-button { + margin-left: 0; border-bottom-left-radius: 2px; border-top-left-radius: 2px; - margin-left: 0; } .oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed:last-child .oo-ui-buttonElement-button { border-bottom-right-radius: 2px; border-top-right-radius: 2px; } +.oo-ui-buttonGroupWidget .oo-ui-buttonElement-framed.oo-ui-widget-disabled + .oo-ui-widget-disabled > .oo-ui-buttonElement-button { + border-left-color: #fff; +} .oo-ui-buttonGroupWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonGroupWidget.oo-ui-widget-enabled .oo-ui-buttonElement.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { z-index: 1; @@ -894,9 +912,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-popupWidget-head { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-popupWidget-head > .oo-ui-buttonWidget { float: right; @@ -991,8 +1009,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-popupWidget-transitioning .oo-ui-popupWidget-popup { -webkit-transition: width 100ms, height 100ms, left 100ms; - -moz-transition: width 100ms, height 100ms, left 100ms; - transition: width 100ms, height 100ms, left 100ms; + -moz-transition: width 100ms, height 100ms, left 100ms; + transition: width 100ms, height 100ms, left 100ms; } .oo-ui-popupWidget-head { height: 2.5em; @@ -1052,8 +1070,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-repeat: no-repeat; background-size: 0 0; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; position: absolute; left: 0; width: 1.5625em; @@ -1064,8 +1082,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-checkboxInputWidget [type='checkbox']:checked + span { background-image: url('themes/mediawiki/images/icons/check-invert.png'); background-image: -webkit-linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-invert.svg'); - background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-invert.svg'); - background-image: -o-linear-gradient(transparent, transparent), url('themes/mediawiki/images/icons/check-invert.png'); + background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-invert.svg'); + background-image: -o-linear-gradient(transparent, transparent), url('themes/mediawiki/images/icons/check-invert.png'); background-size: 90% 90%; } .oo-ui-checkboxInputWidget [type='checkbox']:disabled + span { @@ -1082,8 +1100,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox'] + span { cursor: pointer; -webkit-transition: background-color 100ms, background-size 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, background-size 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, background-size 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, background-size 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, background-size 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus:hover + span { @@ -1133,8 +1151,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { position: relative; vertical-align: middle; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: 100%; max-width: 50em; } @@ -1147,8 +1165,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-repeat: no-repeat; width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select { cursor: pointer; @@ -1160,11 +1178,11 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-dropdownInputWidget select { -webkit-appearance: none; - -moz-appearance: none; - appearance: none; + -moz-appearance: none; + appearance: none; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; border: 1px solid #a2a9b1; border-radius: 2px; padding: 0.625em 0.9375em 0.546875em; @@ -1191,8 +1209,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-color: #f8f9fa; color: #222; -webkit-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover { background-color: #fff; @@ -1236,8 +1254,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { position: absolute; left: 0; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: 1.5625em; height: 1.5625em; border: 1px solid #72777d; @@ -1273,8 +1291,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio'] + span { cursor: pointer; -webkit-transition: background-color 100ms, border-color 100ms, border-width 100ms; - -moz-transition: background-color 100ms, border-color 100ms, border-width 100ms; - transition: background-color 100ms, border-color 100ms, border-width 100ms; + -moz-transition: background-color 100ms, border-color 100ms, border-width 100ms; + transition: background-color 100ms, border-color 100ms, border-width 100ms; } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span { border-color: #36c; @@ -1325,8 +1343,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { position: relative; vertical-align: middle; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: 100%; max-width: 50em; } @@ -1335,8 +1353,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { display: block; width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-textInputWidget textarea { overflow: auto; @@ -1373,9 +1391,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { height: 100%; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-textInputWidget.oo-ui-widget-enabled > .oo-ui-iconElement-icon, .oo-ui-textInputWidget.oo-ui-widget-enabled > .oo-ui-indicatorElement-indicator { @@ -1389,9 +1407,9 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-labelElement-label { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-textInputWidget.oo-ui-labelElement > .oo-ui-labelElement-label { display: block; @@ -1435,10 +1453,10 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-textInputWidget.oo-ui-widget-enabled input, .oo-ui-textInputWidget.oo-ui-widget-enabled textarea { - box-shadow: inset 0 0 0 1px #fff; + box-shadow: inset 0 0 0 1px transparent; -webkit-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); } .oo-ui-textInputWidget.oo-ui-widget-enabled input:hover, .oo-ui-textInputWidget.oo-ui-widget-enabled textarea:hover { @@ -1452,7 +1470,7 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-textInputWidget.oo-ui-widget-enabled input[readonly], .oo-ui-textInputWidget.oo-ui-widget-enabled textarea[readonly] { - color: #72777d; + background-color: #f8f9fa; } .oo-ui-textInputWidget.oo-ui-widget-enabled input[readonly]:hover, .oo-ui-textInputWidget.oo-ui-widget-enabled textarea[readonly]:hover { @@ -1460,8 +1478,7 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-textInputWidget.oo-ui-widget-enabled input[readonly]:focus, .oo-ui-textInputWidget.oo-ui-widget-enabled textarea[readonly]:focus { - border-color: #c8ccd1; - box-shadow: inset 0 0 0 1px #c8ccd1; + border-color: #36c; } .oo-ui-textInputWidget.oo-ui-widget-enabled input::-webkit-input-placeholder, .oo-ui-textInputWidget.oo-ui-widget-enabled textarea::-webkit-input-placeholder { @@ -1576,14 +1593,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { } .oo-ui-menuOptionWidget { -webkit-transition: background-color 100ms, color 100ms; - -moz-transition: background-color 100ms, color 100ms; - transition: background-color 100ms, color 100ms; -} -.oo-ui-menuOptionWidget .oo-ui-iconElement-icon { - display: none; -} -.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected .oo-ui-iconElement-icon { - display: block; + -moz-transition: background-color 100ms, color 100ms; + transition: background-color 100ms, color 100ms; } .oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted { background-color: #eaecf0; @@ -1593,17 +1604,11 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-color: #eaf3ff; color: #36c; } -.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected .oo-ui-iconElement-icon { - display: none; -} .oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted { background-color: rgba(41, 98, 204, 0.1); color: #36c; } -.oo-ui-menuOptionWidget.oo-ui-iconElement { - padding-left: 0.9375em; -} .oo-ui-menuSectionOptionWidget { color: #72777d; padding: 0.703125em 0.9375em 0.3125em; @@ -1629,12 +1634,12 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { cursor: default; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dropdownWidget-handle .oo-ui-iconElement-icon, .oo-ui-dropdownWidget-handle .oo-ui-indicatorElement-indicator { @@ -1674,8 +1679,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { background-color: #f8f9fa; color: #222; -webkit-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover { background-color: #fff; @@ -1699,8 +1704,8 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle .oo-ui-indicatorElement-indicator { opacity: 0.87; -webkit-transition: opacity 100ms; - -moz-transition: opacity 100ms; - transition: opacity 100ms; + -moz-transition: opacity 100ms; + transition: opacity 100ms; } .oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle { background-color: #fff; @@ -1840,18 +1845,18 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { .oo-ui-progressBarWidget-bar { height: 1em; -webkit-transition: width 200ms; - -moz-transition: width 200ms; - transition: width 200ms; + -moz-transition: width 200ms; + transition: width 200ms; } .oo-ui-progressBarWidget-indeterminate .oo-ui-progressBarWidget-bar { -webkit-animation: oo-ui-progressBarWidget-slide 2s infinite linear; - -moz-animation: oo-ui-progressBarWidget-slide 2s infinite linear; - animation: oo-ui-progressBarWidget-slide 2s infinite linear; + -moz-animation: oo-ui-progressBarWidget-slide 2s infinite linear; + animation: oo-ui-progressBarWidget-slide 2s infinite linear; width: 40%; -webkit-transform: translate(-25%); - -moz-transform: translate(-25%); - -ms-transform: translate(-25%); - transform: translate(-25%); + -moz-transform: translate(-25%); + -ms-transform: translate(-25%); + transform: translate(-25%); border-left-width: 1px; } .oo-ui-progressBarWidget.oo-ui-widget-enabled .oo-ui-progressBarWidget-bar { @@ -1863,42 +1868,42 @@ body:not( :-moz-handler-blocked ) .oo-ui-fieldsetLayout { @-webkit-keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } @-moz-keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } @keyframes oo-ui-progressBarWidget-slide { from { -webkit-transform: translate(-100%); - -moz-transform: translate(-100%); - -ms-transform: translate(-100%); - transform: translate(-100%); + -moz-transform: translate(-100%); + -ms-transform: translate(-100%); + transform: translate(-100%); } to { -webkit-transform: translate(350%); - -moz-transform: translate(350%); - -ms-transform: translate(350%); - transform: translate(350%); + -moz-transform: translate(350%); + -ms-transform: translate(350%); + transform: translate(350%); } } diff --git a/resources/lib/oojs-ui/oojs-ui-core.js b/resources/lib/oojs-ui/oojs-ui-core.js index e566d96cd2..c00d9a7f71 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( function ( OO ) { @@ -719,7 +719,7 @@ OO.ui.Element.static.unsafeInfuse = function ( idOrNode, domPromise ) { throw new Error( 'No infusion data found: ' + id ); } try { - data = $.parseJSON( data ); + data = JSON.parse( data ); } catch ( _ ) { data = null; } @@ -4932,8 +4932,10 @@ OO.ui.PopupWidget.prototype.toggleAnchor = function ( show ) { if ( this.anchored !== show ) { if ( show ) { this.$element.addClass( 'oo-ui-popupWidget-anchored' ); + this.$element.addClass( 'oo-ui-popupWidget-anchored-' + this.anchorEdge ); } else { this.$element.removeClass( 'oo-ui-popupWidget-anchored' ); + this.$element.removeClass( 'oo-ui-popupWidget-anchored-' + this.anchorEdge ); } this.anchored = show; } @@ -4951,7 +4953,9 @@ OO.ui.PopupWidget.prototype.setAnchorEdge = function ( edge ) { this.$element.removeClass( 'oo-ui-popupWidget-anchored-' + this.anchorEdge ); } this.anchorEdge = edge; - this.$element.addClass( 'oo-ui-popupWidget-anchored-' + edge ); + if ( this.anchored ) { + this.$element.addClass( 'oo-ui-popupWidget-anchored-' + edge ); + } }; /** @@ -6610,9 +6614,6 @@ OO.mixinClass( OO.ui.DecoratedOptionWidget, OO.ui.mixin.IndicatorElement ); * @param {Object} [config] Configuration options */ OO.ui.MenuOptionWidget = function OoUiMenuOptionWidget( config ) { - // Configuration initialization - config = $.extend( { icon: 'check' }, config ); - // Parent constructor OO.ui.MenuOptionWidget.parent.call( this, config ); @@ -7884,9 +7885,18 @@ OO.ui.FloatingMenuSelectWidget = function OoUiFloatingMenuSelectWidget( inputWid OO.inheritClass( OO.ui.FloatingMenuSelectWidget, OO.ui.MenuSelectWidget ); OO.mixinClass( OO.ui.FloatingMenuSelectWidget, OO.ui.mixin.FloatableElement ); +/* Events */ + +/** + * @event ready + * + * The menu is ready: it is visible and has been positioned and clipped. + */ + /* Methods */ /** + * @fires ready * @inheritdoc */ OO.ui.FloatingMenuSelectWidget.prototype.toggle = function ( visible ) { @@ -7905,6 +7915,9 @@ OO.ui.FloatingMenuSelectWidget.prototype.toggle = function ( visible ) { if ( change ) { this.togglePositioning( this.isVisible() ); + if ( visible ) { + this.emit( 'ready' ); + } } return this; @@ -8646,6 +8659,7 @@ OO.ui.DropdownInputWidget = function OoUiDropdownInputWidget( config ) { this.$element .addClass( 'oo-ui-dropdownInputWidget' ) .append( this.dropdownWidget.$element ); + this.setTabIndexedElement( null ); }; /* Setup */ @@ -8928,6 +8942,7 @@ OO.ui.RadioSelectInputWidget = function OoUiRadioSelectInputWidget( config ) { this.$element .addClass( 'oo-ui-radioSelectInputWidget' ) .append( this.radioSelectWidget.$element ); + this.setTabIndexedElement( null ); }; /* Setup */ diff --git a/resources/lib/oojs-ui/oojs-ui-mediawiki.js b/resources/lib/oojs-ui/oojs-ui-mediawiki.js index ec6e45dc65..b8dbf7b369 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( function ( OO ) { @@ -48,14 +48,19 @@ OO.ui.MediaWikiTheme.prototype.getElementClasses = function ( element ) { if ( element.supports( [ 'hasFlag' ] ) ) { isFramed = element.supports( [ 'isFramed' ] ) && element.isFramed(); isActive = element.supports( [ 'isActive' ] ) && element.isActive(); - if ( isFramed && ( isActive || element.isDisabled() || element.hasFlag( 'primary' ) ) ) { - // Button with a dark background, use white icon + if ( + // Button with a dark background + isFramed && ( isActive || element.isDisabled() || element.hasFlag( 'primary' ) ) || + // Toolbar with a dark background + element instanceof OO.ui.ToolGroup && ( isActive || element.hasFlag( 'primary' ) ) + ) { + // … use white icon / indicator, regardless of other flags variants.invert = true; } else if ( !isFramed && element.isDisabled() ) { - // Frameless disabled button, always use black icon regardless of flags + // Frameless disabled button, always use black icon / indicator regardless of other flags variants.invert = false; } else if ( !element.isDisabled() ) { - // Any other kind of button, use the right colored icon if available + // Any other kind of button, use the right colored icon / indicator if available variants.progressive = element.hasFlag( 'progressive' ); variants.constructive = element.hasFlag( 'constructive' ); variants.destructive = element.hasFlag( 'destructive' ); diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css b/resources/lib/oojs-ui/oojs-ui-toolbars-apex.css index cb6ebc3881..53c5bf36e7 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-popupTool .oo-ui-popupWidget-popup, .oo-ui-popupTool .oo-ui-popupWidget-anchor { @@ -43,8 +43,8 @@ border-radius: 0.3125em; border: 1px solid transparent; -webkit-transition: border-color 250ms ease; - -moz-transition: border-color 250ms ease; - transition: border-color 250ms ease; + -moz-transition: border-color 250ms ease; + transition: border-color 250ms ease; } .oo-ui-toolGroup-empty { display: none; @@ -121,8 +121,8 @@ background-color: #f8fbfd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #f1f7fb), color-stop(100%, #fff)); background-image: -webkit-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); + background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); + background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff1f7fb', endColorstr='#ffffffff' )"; } .oo-ui-barToolGroup.oo-ui-widget-enabled > .oo-ui-toolGroup-tools > .oo-ui-tool.oo-ui-tool-active.oo-ui-widget-enabled + .oo-ui-tool-active.oo-ui-widget-enabled { @@ -235,6 +235,75 @@ .oo-ui-toolbar-narrow .oo-ui-popupToolGroup.oo-ui-labelElement.oo-ui-indicatorElement .oo-ui-popupToolGroup-handle .oo-ui-labelElement-label { margin-right: 1.75em; } +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle { + border: 1px solid #a6cee1; + background-color: #cde7f4; + background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #eaf4fa), color-stop(100%, #b0d9ee)); + background-image: -webkit-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); + background-image: -moz-linear-gradient(top, #eaf4fa 0, #b0d9ee 100%); + background-image: linear-gradient(to bottom, #eaf4fa 0, #b0d9ee 100%); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffeaf4fa', endColorstr='#ffb0d9ee' )"; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:hover, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:focus { + border-color: #9dc2d4; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:active, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { + border: 1px solid #a6cee1; + background-color: #cde7f4; + background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #b0d9ee), color-stop(100%, #eaf4fa)); + background-image: -webkit-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); + background-image: -moz-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); + background-image: linear-gradient(to bottom, #b0d9ee 0, #eaf4fa 100%); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb0d9ee', endColorstr='#ffeaf4fa' )"; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle { + border: 1px solid #b8d892; + background-color: #daf0bd; + background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #f0fbe1), color-stop(100%, #c3e59a)); + background-image: -webkit-linear-gradient(top, #f0fbe1 0, #c3e59a 100%); + background-image: -moz-linear-gradient(top, #f0fbe1 0, #c3e59a 100%); + background-image: linear-gradient(to bottom, #f0fbe1 0, #c3e59a 100%); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff0fbe1', endColorstr='#ffc3e59a' )"; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:hover, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:focus { + border-color: #adcb89; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:active, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { + border: 1px solid #b8d892; + background-color: #daf0bd; + background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #c3e59a), color-stop(100%, #f0fbe1)); + background-image: -webkit-linear-gradient(top, #c3e59a 0, #f0fbe1 100%); + background-image: -moz-linear-gradient(top, #c3e59a 0, #f0fbe1 100%); + background-image: linear-gradient(to bottom, #c3e59a 0, #f0fbe1 100%); + -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc3e59a', endColorstr='#fff0fbe1' )"; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle { + color: #d45353; +} +.oo-ui-buttonGroupWidget .oo-ui-popupToolGroup { + margin-left: 0; +} +.oo-ui-buttonGroupWidget .oo-ui-popupToolGroup > .oo-ui-popupToolGroup-handle { + height: 2.3em; + border-radius: 0; + margin-left: -2px; +} +.oo-ui-buttonGroupWidget .oo-ui-popupToolGroup:first-child > .oo-ui-popupToolGroup-handle { + border-bottom-left-radius: 0.3em; + border-top-left-radius: 0.3em; + margin-left: 0; +} +.oo-ui-buttonGroupWidget .oo-ui-popupToolGroup:last-child { + margin-right: 0.5em; +} +.oo-ui-buttonGroupWidget .oo-ui-popupToolGroup:last-child > .oo-ui-popupToolGroup-handle { + border-bottom-right-radius: 0.3em; + border-top-right-radius: 0.3em; +} .oo-ui-popupToolGroup-handle .oo-ui-indicatorElement-indicator { width: 0.9375em; height: 0.9375em; @@ -267,8 +336,8 @@ background-color: #f8fbfd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #f1f7fb), color-stop(100%, #fff)); background-image: -webkit-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); + background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); + background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff1f7fb', endColorstr='#ffffffff' )"; } .oo-ui-popupToolGroup .oo-ui-toolGroup-tools { @@ -304,8 +373,8 @@ .oo-ui-listToolGroup .oo-ui-tool { display: block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-listToolGroup .oo-ui-toolGroup-tools { padding: 0.3125em; @@ -324,8 +393,8 @@ background-color: #f8fbfd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #f1f7fb), color-stop(100%, #fff)); background-image: -webkit-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); - background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); + background-image: -moz-linear-gradient(top, #f1f7fb 0, #fff 100%); + background-image: linear-gradient(to bottom, #f1f7fb 0, #fff 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff1f7fb', endColorstr='#ffffffff' )"; } .oo-ui-listToolGroup .oo-ui-tool-active.oo-ui-widget-enabled + .oo-ui-tool-active.oo-ui-widget-enabled { @@ -386,8 +455,8 @@ .oo-ui-menuToolGroup .oo-ui-tool-active .oo-ui-tool-link .oo-ui-iconElement-icon { background-image: url('themes/apex/images/icons/check.png'); background-image: -webkit-linear-gradient(transparent, transparent), /* @embed */ url('themes/apex/images/icons/check.svg'); - background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/apex/images/icons/check.svg'); - background-image: -o-linear-gradient(transparent, transparent), url('themes/apex/images/icons/check.png'); + background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/apex/images/icons/check.svg'); + background-image: -o-linear-gradient(transparent, transparent), url('themes/apex/images/icons/check.png'); background-size: contain; background-position: center center; background-repeat: no-repeat; @@ -420,9 +489,9 @@ .oo-ui-toolbar-actions { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-toolbar-tools { display: inline; @@ -443,16 +512,16 @@ .oo-ui-toolbar-actions .oo-ui-popupWidget { -webkit-touch-callout: default; -webkit-user-select: all; - -moz-user-select: all; - -ms-user-select: all; - user-select: all; + -moz-user-select: all; + -ms-user-select: all; + user-select: all; } .oo-ui-toolbar-bar { background-color: #f8fbfd; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #fff), color-stop(100%, #F1F7FB)); background-image: -webkit-linear-gradient(top, #fff 0, #F1F7FB 100%); - background-image: -moz-linear-gradient(top, #fff 0, #F1F7FB 100%); - background-image: linear-gradient(to bottom, #fff 0, #F1F7FB 100%); + background-image: -moz-linear-gradient(top, #fff 0, #F1F7FB 100%); + background-image: linear-gradient(to bottom, #fff 0, #F1F7FB 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffffff', endColorstr='#fff1f7fb' )"; } .oo-ui-toolbar-position-top > .oo-ui-toolbar-bar { diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css index 85095d3751..a82a8b287f 100644 --- a/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-toolbars-mediawiki.css @@ -1,22 +1,22 @@ /*! - * OOjs UI v0.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-tool.oo-ui-widget-enabled { -webkit-transition: background-color 100ms; - -moz-transition: background-color 100ms; - transition: background-color 100ms; + -moz-transition: background-color 100ms; + transition: background-color 100ms; } .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title { -webkit-transition: color 100ms; - -moz-transition: color 100ms; - transition: color 100ms; + -moz-transition: color 100ms; + transition: color 100ms; } .oo-ui-popupTool .oo-ui-popupWidget-popup, .oo-ui-popupTool .oo-ui-popupWidget-anchor { @@ -96,8 +96,8 @@ .oo-ui-barToolGroup.oo-ui-widget-enabled > .oo-ui-toolGroup-tools > .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link .oo-ui-tool-title { color: #222; -webkit-transition: color 100ms; - -moz-transition: color 100ms; - transition: color 100ms; + -moz-transition: color 100ms; + transition: color 100ms; } .oo-ui-barToolGroup.oo-ui-widget-enabled > .oo-ui-toolGroup-tools > .oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active { background-color: #eaf3ff; @@ -200,6 +200,9 @@ .oo-ui-toolbar-narrow .oo-ui-popupToolGroup.oo-ui-labelElement.oo-ui-indicatorElement .oo-ui-popupToolGroup-handle .oo-ui-labelElement-label { margin-right: 1.75em; } +.oo-ui-popupToolGroup.oo-ui-labelElement:not( .oo-ui-indicatorElement ) .oo-ui-popupToolGroup-handle .oo-ui-labelElement-label { + margin: 0 0.5em; +} .oo-ui-popupToolGroup-header { line-height: 2.6; margin: 0 0.6em; @@ -231,6 +234,9 @@ .oo-ui-toolbar-narrow .oo-ui-popupToolGroup-handle .oo-ui-iconElement-icon { left: 0; } +.oo-ui-popupToolGroup:not( .oo-ui-labelElement ):not( .oo-ui-iconElement ) .oo-ui-indicatorElement-indicator { + opacity: 1; +} .oo-ui-popupToolGroup .oo-ui-toolGroup-tools { margin: 0 -1px; border: 1px solid #c8ccd1; @@ -247,8 +253,8 @@ .oo-ui-popupToolGroup .oo-ui-tool-link { padding: 0.4em 0.625em; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-popupToolGroup .oo-ui-tool-link .oo-ui-iconElement-icon { height: 2.5em; @@ -264,8 +270,8 @@ } .oo-ui-popupToolGroup.oo-ui-widget-enabled { -webkit-transition: background-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, box-shadow 100ms; - transition: background-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, box-shadow 100ms; + transition: background-color 100ms, box-shadow 100ms; } .oo-ui-popupToolGroup.oo-ui-widget-enabled.oo-ui-popupToolGroup-active { box-shadow: inset 0 0.07em 0.07em 0 rgba(0, 0, 0, 0.07); @@ -276,8 +282,8 @@ } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle { -webkit-transition: background-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, box-shadow 100ms; - transition: background-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, box-shadow 100ms; + transition: background-color 100ms, box-shadow 100ms; } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover { background-color: #eaecf0; @@ -285,11 +291,83 @@ .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:active { background-color: #eaf3ff; } +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #36c; + border-color: #36c; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:hover { + background-color: #447ff5; + border-color: #447ff5; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:active, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:active:focus, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #2a4b8d; + border-color: #2a4b8d; + box-shadow: none; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-progressive > .oo-ui-popupToolGroup-handle:focus { + border-color: #36c; + box-shadow: inset 0 0 0 1px #36c, inset 0 0 0 2px #fff; + outline: 0; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #36c; + border-color: #36c; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:hover { + background-color: #447ff5; + border-color: #447ff5; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:active, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:active:focus, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-pressed > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive.oo-ui-buttonElement-active > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #2a4b8d; + border-color: #2a4b8d; + box-shadow: none; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-constructive > .oo-ui-popupToolGroup-handle:focus { + border-color: #36c; + box-shadow: inset 0 0 0 1px #36c, inset 0 0 0 2px #fff; + outline: 0; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #d33; + border-color: #d33; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle:hover { + background-color: #ff4242; + border-color: #ff4242; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle:active, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle:active:focus, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-pressed > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive.oo-ui-buttonElement-active > .oo-ui-popupToolGroup-handle, +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { + color: #fff; + background-color: #b32424; + border-color: #b32424; + box-shadow: none; +} +.oo-ui-popupToolGroup.oo-ui-flaggedElement-destructive > .oo-ui-popupToolGroup-handle:focus { + border-color: #d33; + box-shadow: inset 0 0 0 1px #d33, inset 0 0 0 2px #fff; + outline: 0; +} .oo-ui-listToolGroup .oo-ui-tool { display: block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-listToolGroup .oo-ui-tool.oo-ui-widget-enabled:hover { background-color: #eaecf0; @@ -333,8 +411,8 @@ .oo-ui-menuToolGroup .oo-ui-tool-active .oo-ui-tool-link .oo-ui-iconElement-icon { background-image: url('themes/mediawiki/images/icons/check-progressive.png'); background-image: -webkit-linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-progressive.svg'); - background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-progressive.svg'); - background-image: -o-linear-gradient(transparent, transparent), url('themes/mediawiki/images/icons/check-progressive.png'); + background-image: linear-gradient(transparent, transparent), /* @embed */ url('themes/mediawiki/images/icons/check-progressive.svg'); + background-image: -o-linear-gradient(transparent, transparent), url('themes/mediawiki/images/icons/check-progressive.png'); background-size: contain; background-position: center center; background-repeat: no-repeat; @@ -365,9 +443,9 @@ .oo-ui-toolbar-actions { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-toolbar-tools { display: inline; @@ -388,9 +466,9 @@ .oo-ui-toolbar-actions .oo-ui-popupWidget { -webkit-touch-callout: default; -webkit-user-select: all; - -moz-user-select: all; - -ms-user-select: all; - user-select: all; + -moz-user-select: all; + -ms-user-select: all; + user-select: all; } .oo-ui-toolbar-bar { background-color: #fff; diff --git a/resources/lib/oojs-ui/oojs-ui-toolbars.js b/resources/lib/oojs-ui/oojs-ui-toolbars.js index 665e9dc539..9ef478b475 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( function ( OO ) { @@ -1778,6 +1778,7 @@ OO.ui.BarToolGroup.static.name = 'bar'; * @mixins OO.ui.mixin.IndicatorElement * @mixins OO.ui.mixin.LabelElement * @mixins OO.ui.mixin.TitledElement + * @mixins OO.ui.mixin.FlaggedElement * @mixins OO.ui.mixin.ClippableElement * @mixins OO.ui.mixin.TabIndexedElement * @@ -1795,7 +1796,7 @@ OO.ui.PopupToolGroup = function OoUiPopupToolGroup( toolbar, config ) { // Configuration initialization config = $.extend( { - indicator: toolbar.position === 'bottom' ? 'up' : 'down' + indicator: config.indicator === undefined ? ( toolbar.position === 'bottom' ? 'up' : 'down' ) : config.indicator }, config ); // Parent constructor @@ -1812,6 +1813,7 @@ OO.ui.PopupToolGroup = function OoUiPopupToolGroup( toolbar, config ) { OO.ui.mixin.IndicatorElement.call( this, config ); OO.ui.mixin.LabelElement.call( this, config ); OO.ui.mixin.TitledElement.call( this, config ); + OO.ui.mixin.FlaggedElement.call( this, config ); OO.ui.mixin.ClippableElement.call( this, $.extend( {}, config, { $clippable: this.$group } ) ); OO.ui.mixin.TabIndexedElement.call( this, $.extend( {}, config, { $tabIndexed: this.$handle } ) ); @@ -1826,6 +1828,7 @@ OO.ui.PopupToolGroup = function OoUiPopupToolGroup( toolbar, config ) { // Initialization this.$handle .addClass( 'oo-ui-popupToolGroup-handle' ) + .attr( 'role', 'button' ) .append( this.$icon, this.$label, this.$indicator ); // If the pop-up should have a header, add it to the top of the toolGroup. // Note: If this feature is useful for other widgets, we could abstract it into an @@ -1849,6 +1852,7 @@ OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.IconElement ); OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.IndicatorElement ); OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.LabelElement ); OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.TitledElement ); +OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.FlaggedElement ); OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.ClippableElement ); OO.mixinClass( OO.ui.PopupToolGroup, OO.ui.mixin.TabIndexedElement ); diff --git a/resources/lib/oojs-ui/oojs-ui-widgets-apex.css b/resources/lib/oojs-ui/oojs-ui-widgets-apex.css index 0d517828d9..dc149fbba0 100644 --- a/resources/lib/oojs-ui/oojs-ui-widgets-apex.css +++ b/resources/lib/oojs-ui/oojs-ui-widgets-apex.css @@ -1,25 +1,25 @@ /*! - * OOjs UI v0.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-draggableElement-handle:not( .oo-ui-draggableElement-undraggable ).oo-ui-widget { cursor: move; cursor: url(images/grab.cur ); cursor: -webkit-grab; - cursor: -moz-grab; - cursor: grab; + cursor: -moz-grab; + cursor: grab; } .oo-ui-draggableElement-handle:not( .oo-ui-draggableElement-undraggable ):active { cursor: url(images/grabbing.cur ); cursor: -webkit-grabbing; - cursor: -moz-grabbing; - cursor: grabbing; + cursor: -moz-grabbing; + cursor: grabbing; } .oo-ui-draggableElement-handle.oo-ui-widget-disabled, .oo-ui-widget-disabled .oo-ui-draggableElement-handle { @@ -37,8 +37,8 @@ .oo-ui-bookletLayout-stackLayout > .oo-ui-panelLayout { width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-bookletLayout-outlinePanel-editable > .oo-ui-outlineSelectWidget { position: absolute; @@ -83,8 +83,8 @@ .oo-ui-menuLayout-content { position: absolute; -webkit-transition: all 200ms ease; - -moz-transition: all 200ms ease; - transition: all 200ms ease; + -moz-transition: all 200ms ease; + transition: all 200ms ease; } .oo-ui-menuLayout-menu { height: 18em; @@ -208,10 +208,10 @@ vertical-align: middle; overflow: hidden; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); height: 2em; width: 4em; border-radius: 1em; @@ -221,8 +221,8 @@ background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #ddd), color-stop(100%, #fff)); background-image: -webkit-linear-gradient(top, #ddd 0, #fff 100%); - background-image: -moz-linear-gradient(top, #ddd 0, #fff 100%); - background-image: linear-gradient(to bottom, #ddd 0, #fff 100%); + background-image: -moz-linear-gradient(top, #ddd 0, #fff 100%); + background-image: linear-gradient(to bottom, #ddd 0, #fff 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffdddddd', endColorstr='#ffffffff' )"; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled { @@ -232,8 +232,8 @@ position: absolute; display: block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-toggleSwitchWidget:last-child { margin-right: 0; @@ -255,13 +255,13 @@ box-shadow: 0 0.1em 0.25em rgba(0, 0, 0, 0.1); border: 1px #c9c9c9 solid; -webkit-transition: left 250ms ease, margin-left 250ms ease; - -moz-transition: left 250ms ease, margin-left 250ms ease; - transition: left 250ms ease, margin-left 250ms ease; + -moz-transition: left 250ms ease, margin-left 250ms ease; + transition: left 250ms ease, margin-left 250ms ease; background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #fff), color-stop(100%, #ddd)); background-image: -webkit-linear-gradient(top, #fff 0, #ddd 100%); - background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); - background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); + background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); + background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffffff', endColorstr='#ffdddddd' )"; } .oo-ui-toggleSwitchWidget-glow { @@ -273,19 +273,19 @@ border-radius: 1em; box-shadow: inset 0 1px 4px 0 rgba(0, 0, 0, 0.07); -webkit-transition: opacity 250ms ease; - -moz-transition: opacity 250ms ease; - transition: opacity 250ms ease; + -moz-transition: opacity 250ms ease; + transition: opacity 250ms ease; background-color: #cde7f4; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #b0d9ee), color-stop(100%, #eaf4fa)); background-image: -webkit-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); - background-image: -moz-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); - background-image: linear-gradient(to bottom, #b0d9ee 0, #eaf4fa 100%); + background-image: -moz-linear-gradient(top, #b0d9ee 0, #eaf4fa 100%); + background-image: linear-gradient(to bottom, #b0d9ee 0, #eaf4fa 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb0d9ee', endColorstr='#ffeaf4fa' )"; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-toggleWidget-off .oo-ui-toggleSwitchWidget-glow { opacity: 0; @@ -338,8 +338,8 @@ position: relative; overflow: hidden; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator, .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon { @@ -351,9 +351,9 @@ cursor: default; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-selectFileWidget-label { position: absolute; @@ -441,9 +441,9 @@ .oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-selectFileWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget, @@ -477,8 +477,8 @@ } .oo-ui-selectFileWidget-label { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; left: 0.5em; right: 2.175em; line-height: 2.3em; @@ -575,9 +575,9 @@ .oo-ui-outlineOptionWidget { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; font-size: 1.1em; padding: 0.75em; } @@ -623,8 +623,8 @@ .oo-ui-outlineControlsWidget-movers { float: left; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-outlineControlsWidget > .oo-ui-iconElement-icon { float: left; @@ -714,15 +714,18 @@ .oo-ui-tagMultiselectWidget-content { position: relative; } -.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-content > input { - display: none; -} .oo-ui-tagMultiselectWidget-group { display: inline; } -.oo-ui-tagMultiselectWidget-inputPosition-outline { +.oo-ui-tagMultiselectWidget-outlined { width: 100%; } +.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined .oo-ui-tagMultiselectWidget-handle { + cursor: text; +} +.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-content > input { + display: none; +} .oo-ui-tagMultiselectWidget-focusTrap { display: inline-block; height: 1px; @@ -737,8 +740,8 @@ border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 0.25em; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-tagMultiselectWidget-handle:last-child { margin-right: 0; @@ -817,8 +820,8 @@ width: auto; max-width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; vertical-align: middle; padding: 0 0.4em; margin: 0.1em; @@ -827,8 +830,8 @@ background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #fff), color-stop(100%, #ddd)); background-image: -webkit-linear-gradient(top, #fff 0, #ddd 100%); - background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); - background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); + background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); + background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffffff', endColorstr='#ffdddddd' )"; border: 1px solid #ccc; color: #333; @@ -847,7 +850,7 @@ .oo-ui-tagItemWidget.oo-ui-widget-disabled { opacity: 0.5; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); box-shadow: none; color: #333; background: #eee; @@ -900,8 +903,8 @@ border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 0.25em; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-capsuleMultiselectWidget-handle:last-child { margin-right: 0; @@ -980,8 +983,8 @@ width: auto; max-width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; vertical-align: middle; padding: 0 0.4em; margin: 0.1em; @@ -990,8 +993,8 @@ background-color: #eeeeee; background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0, #fff), color-stop(100%, #ddd)); background-image: -webkit-linear-gradient(top, #fff 0, #ddd 100%); - background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); - background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); + background-image: -moz-linear-gradient(top, #fff 0, #ddd 100%); + background-image: linear-gradient(to bottom, #fff 0, #ddd 100%); -ms-filter: "progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffffff', endColorstr='#ffdddddd' )"; border: 1px solid #ccc; color: #333; @@ -1010,7 +1013,7 @@ .oo-ui-capsuleItemWidget.oo-ui-widget-disabled { opacity: 0.5; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); box-shadow: none; color: #333; background: #eee; diff --git a/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-widgets-mediawiki.css index 25add3d624..9b065737cd 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-draggableElement { padding: 1.0546875em 0.9375em 0.9375em; @@ -15,14 +15,14 @@ cursor: move; cursor: url(images/grab.cur ); cursor: -webkit-grab; - cursor: -moz-grab; - cursor: grab; + cursor: -moz-grab; + cursor: grab; } .oo-ui-draggableElement-handle:not( .oo-ui-draggableElement-undraggable ):active { cursor: url(images/grabbing.cur ); cursor: -webkit-grabbing; - cursor: -moz-grabbing; - cursor: grabbing; + cursor: -moz-grabbing; + cursor: grabbing; } .oo-ui-draggableElement-handle.oo-ui-widget-disabled, .oo-ui-widget-disabled .oo-ui-draggableElement-handle { @@ -45,8 +45,8 @@ .oo-ui-bookletLayout-stackLayout > .oo-ui-panelLayout { width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-bookletLayout-outlinePanel-editable > .oo-ui-outlineSelectWidget { position: absolute; @@ -97,8 +97,8 @@ .oo-ui-menuLayout-content { position: absolute; -webkit-transition: all 200ms ease; - -moz-transition: all 200ms ease; - transition: all 200ms ease; + -moz-transition: all 200ms ease; + transition: all 200ms ease; } .oo-ui-menuLayout-menu { height: 18em; @@ -184,13 +184,13 @@ outline: 0; } .oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget .oo-ui-buttonElement-button { - border-radius: 0; margin-left: -1px; + border-radius: 0; } .oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget:first-child .oo-ui-buttonElement-button { + margin-left: 0; border-bottom-left-radius: 2px; border-top-left-radius: 2px; - margin-left: 0; } .oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget:last-child .oo-ui-buttonElement-button { border-bottom-right-radius: 2px; @@ -200,6 +200,9 @@ .oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget.oo-ui-indicatorElement .oo-ui-indicatorElement-indicator { position: absolute; } +.oo-ui-buttonSelectWidget .oo-ui-buttonOptionWidget.oo-ui-widget-disabled + .oo-ui-widget-disabled > .oo-ui-buttonElement-button { + border-left-color: #fff; +} .oo-ui-buttonSelectWidget.oo-ui-widget-enabled:focus .oo-ui-buttonOptionWidget.oo-ui-optionWidget-selected .oo-ui-buttonElement-button { border-color: #36c; box-shadow: inset 0 0 0 1px #36c, inset 0 0 0 2px #fff; @@ -238,10 +241,10 @@ vertical-align: middle; overflow: hidden; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; -webkit-transform: translateZ(0); - transform: translateZ(0); + transform: translateZ(0); background-color: #f8f9fa; width: 3.5em; min-height: 26px; @@ -250,8 +253,8 @@ border-radius: 1em; margin-right: 0.5em; -webkit-transition: background-color 250ms, border-color 250ms; - -moz-transition: background-color 250ms, border-color 250ms; - transition: background-color 250ms, border-color 250ms; + -moz-transition: background-color 250ms, border-color 250ms; + transition: background-color 250ms, border-color 250ms; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled { cursor: pointer; @@ -260,8 +263,8 @@ position: absolute; display: block; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-toggleSwitchWidget:last-child { margin-right: 0; @@ -278,8 +281,8 @@ border-radius: 1em; z-index: 1; -webkit-transition: border-color 250ms; - -moz-transition: border-color 250ms; - transition: border-color 250ms; + -moz-transition: border-color 250ms; + transition: border-color 250ms; } .oo-ui-toggleSwitchWidget-grip { top: 0.3125em; @@ -289,8 +292,8 @@ height: 1.25em; border-radius: 1.25em; -webkit-transition: background-color 250ms, left 100ms, margin-left 100ms; - -moz-transition: background-color 250ms, left 100ms, margin-left 100ms; - transition: background-color 250ms, left 100ms, margin-left 100ms; + -moz-transition: background-color 250ms, left 100ms, margin-left 100ms; + transition: background-color 250ms, left 100ms, margin-left 100ms; } .oo-ui-toggleSwitchWidget-glow { display: none; @@ -410,8 +413,8 @@ position: relative; overflow: hidden; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator, .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon { @@ -423,9 +426,9 @@ cursor: default; -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-selectFileWidget-label { position: absolute; @@ -513,9 +516,9 @@ .oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-selectFileWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget, @@ -539,18 +542,20 @@ border-right-width: 0; } .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon { + top: -1px; left: 0.46875em; - min-height: 2.4em; + min-height: 2.5em; margin-left: -1px; } .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator { + top: -1px; right: 0.9375em; - min-height: 2.4em; + min-height: 2.5em; } .oo-ui-selectFileWidget-label { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; display: block; right: 2.375em; padding-top: 0.625em; @@ -616,8 +621,8 @@ background-color: #fff; border-style: dashed; -webkit-transition: background-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - -moz-transition: background-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - transition: background-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + -moz-transition: background-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + transition: background-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1); } .oo-ui-selectFileWidget-empty.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover { border-color: #72777d; @@ -626,30 +631,35 @@ background-color: #eaf3ff; color: #36c; } -.oo-ui-selectFileWidget.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, -.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, -.oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget { - background-color: #eaecf0; - border-color: #c8ccd1; -} .oo-ui-selectFileWidget.oo-ui-widget-disabled .oo-ui-selectFileWidget-info, -.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info, -.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-info { +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info { background-color: #eaecf0; color: #72777d; border-color: #c8ccd1; text-shadow: 0 1px 1px #fff; } .oo-ui-selectFileWidget.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon, -.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon, -.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon { +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-iconElement-icon { opacity: 0.51; } .oo-ui-selectFileWidget.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator, -.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator, -.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator { +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled .oo-ui-selectFileWidget-info > .oo-ui-indicatorElement-indicator { opacity: 0.15; } +.oo-ui-selectFileWidget.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, +.oo-ui-selectFileWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget { + background-color: #eaecf0; + border-color: #c8ccd1; +} +.oo-ui-selectFileWidget-notsupported .oo-ui-selectFileWidget-info { + background-color: #eaecf0; + color: #222; + border-color: #c8ccd1; +} +.oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget { + background-color: #eaecf0; + border-color: #c8ccd1; +} .oo-ui-selectFileWidget-notsupported.oo-ui-selectFileWidget-dropTarget .oo-ui-selectFileWidget-label { padding: 1em 0.9375em; } @@ -665,13 +675,13 @@ .oo-ui-outlineOptionWidget { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; padding: 1.0546875em 0.9375em 0.9375em; -webkit-transition: background-color 100ms, color 100ms; - -moz-transition: background-color 100ms, color 100ms; - transition: background-color 100ms, color 100ms; + -moz-transition: background-color 100ms, color 100ms; + transition: background-color 100ms, color 100ms; } .oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted { background-color: #eaecf0; @@ -720,8 +730,8 @@ .oo-ui-outlineControlsWidget-movers { float: left; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-outlineControlsWidget > .oo-ui-iconElement-icon { float: left; @@ -769,8 +779,8 @@ padding: 0.35em 1em; font-weight: bold; -webkit-transition: background-color 100ms, color 100ms; - -moz-transition: background-color 100ms, color 100ms; - transition: background-color 100ms, color 100ms; + -moz-transition: background-color 100ms, color 100ms; + transition: background-color 100ms, color 100ms; } .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover { background-color: rgba(255, 255, 255, 0.3); @@ -810,15 +820,18 @@ .oo-ui-tagMultiselectWidget-content { position: relative; } -.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-content > input { - display: none; -} .oo-ui-tagMultiselectWidget-group { display: inline; } -.oo-ui-tagMultiselectWidget-inputPosition-outline { +.oo-ui-tagMultiselectWidget-outlined { width: 100%; } +.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined .oo-ui-tagMultiselectWidget-handle { + cursor: text; +} +.oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-content > input { + display: none; +} .oo-ui-tagMultiselectWidget-focusTrap { display: inline-block; height: 1px; @@ -831,8 +844,8 @@ border: 1px solid #a2a9b1; border-radius: 2px; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-tagMultiselectWidget-handle:last-child { margin-right: 0; @@ -887,10 +900,9 @@ } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle { background-color: #fff; - cursor: text; -webkit-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled:hover .oo-ui-tagMultiselectWidget-handle { border-color: #72777d; @@ -900,6 +912,19 @@ outline: 0; box-shadow: inset 0 0 0 1px #36c; } +.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagMultiselectWidget-handle { + background-color: #f8f9fa; + border-bottom: 0; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagMultiselectWidget-handle .oo-ui-tagItemWidget.oo-ui-widget-enabled { + background-color: #fff; +} +.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-inputWidget-input { + border-top-left-radius: 0; + border-top-right-radius: 0; +} .oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle { color: #72777d; text-shadow: 0 1px 1px #fff; @@ -918,8 +943,8 @@ cursor: default; white-space: nowrap; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: auto; max-width: 100%; height: 1.7em; @@ -951,8 +976,8 @@ color: #222; padding-right: 1.5375em; -webkit-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-tagItemWidget.oo-ui-widget-enabled:hover { background-color: #fff; @@ -1036,8 +1061,8 @@ border: 1px solid #a2a9b1; border-radius: 2px; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-capsuleMultiselectWidget-handle:last-child { margin-right: 0; @@ -1098,8 +1123,8 @@ background-color: #fff; cursor: text; -webkit-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); - transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + -moz-transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); + transition: border-color 200ms cubic-bezier(0.39, 0.575, 0.565, 1), box-shadow 200ms cubic-bezier(0.39, 0.575, 0.565, 1); } .oo-ui-capsuleMultiselectWidget.oo-ui-widget-enabled:hover .oo-ui-capsuleMultiselectWidget-handle { border-color: #72777d; @@ -1127,8 +1152,8 @@ cursor: default; white-space: nowrap; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; width: auto; max-width: 100%; height: 1.7em; @@ -1150,8 +1175,8 @@ color: #222; padding-right: 1.5375em; -webkit-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; - transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + -moz-transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; + transition: background-color 100ms, color 100ms, border-color 100ms, box-shadow 100ms; } .oo-ui-capsuleItemWidget.oo-ui-widget-enabled:hover { background-color: #fff; diff --git a/resources/lib/oojs-ui/oojs-ui-widgets.js b/resources/lib/oojs-ui/oojs-ui-widgets.js index 2b2f2caa03..a2e6e34137 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( function ( OO ) { @@ -4713,6 +4713,9 @@ OO.ui.TagItemWidget.prototype.isValid = function () { * @constructor * @param {Object} config Configuration object * @cfg {Object} [input] Configuration options for the input widget + * @cfg {OO.ui.InputWidget} [inputWidget] An optional input widget. If given, it will + * replace the input widget used in the TagMultiselectWidget. If not given, + * TagMultiselectWidget creates its own. * @cfg {boolean} [inputPosition='inline'] Position of the input. Options are: * - inline: The input is invisible, but exists inside the tag list, so * the user types into the tag groups to add tags. @@ -4802,14 +4805,17 @@ OO.ui.TagMultiselectWidget = function OoUiTagMultiselectWidget( config ) { // Initialize this.$element .addClass( 'oo-ui-tagMultiselectWidget' ) - .addClass( 'oo-ui-tagMultiselectWidget-inputPosition-' + this.inputPosition ) .append( this.$handle ); if ( this.hasInput ) { - this.input = new OO.ui.TextInputWidget( $.extend( { - placeholder: config.placeholder, - classes: [ 'oo-ui-tagMultiselectWidget-input' ] - }, config.input ) ); + if ( config.inputWidget ) { + this.input = config.inputWidget; + } else { + this.input = new OO.ui.TextInputWidget( $.extend( { + placeholder: config.placeholder, + classes: [ 'oo-ui-tagMultiselectWidget-input' ] + }, config.input ) ); + } this.input.setDisabled( this.isDisabled() ); inputEvents = { @@ -4828,8 +4834,11 @@ OO.ui.TagMultiselectWidget = function OoUiTagMultiselectWidget( config ) { // in the case the widget is outline so it can // stretch all the way if the widet is wide this.input.$element.css( 'max-width', 'inherit' ); - this.$element.append( this.input.$element ); + this.$element + .addClass( 'oo-ui-tagMultiselectWidget-outlined' ) + .append( this.input.$element ); } else { + this.$element.addClass( 'oo-ui-tagMultiselectWidget-inlined' ); // HACK: When the widget is using 'inline' input, the // behavior needs to only use the $input itself // so we style and size it accordingly (otherwise @@ -5155,11 +5164,9 @@ OO.ui.TagMultiselectWidget.prototype.isDuplicateData = function ( data ) { * Check whether a given value is allowed to be added * * @param {string|Object} data Requested value - * @return {boolean} Value exists in the allowed values list + * @return {boolean} Value is allowed */ OO.ui.TagMultiselectWidget.prototype.isAllowedData = function ( data ) { - var hash = OO.getHash( data ); - if ( this.allowArbitrary ) { return true; } @@ -5174,7 +5181,7 @@ OO.ui.TagMultiselectWidget.prototype.isAllowedData = function ( data ) { // Check with allowed values if ( this.getAllowedValues().some( function ( value ) { - return hash === OO.getHash( value ); + return data === value; } ) ) { return true; @@ -5865,11 +5872,15 @@ OO.ui.MenuTagMultiselectWidget.prototype.getMenu = function () { }; /** - * @inheritdoc + * Get the allowed values list + * + * @return {string[]} Allowed data values */ -OO.ui.MenuTagMultiselectWidget.prototype.isAllowedData = function ( data ) { - return OO.ui.MenuTagMultiselectWidget.parent.prototype.isAllowedData.call( this, data ) && - !!this.menu.getItemFromData( data ); +OO.ui.MenuTagMultiselectWidget.prototype.getAllowedValues = function () { + var menuDatas = this.menu.getItems().map( function ( menuItem ) { + return menuItem.getData(); + } ); + return this.allowedValues.concat( menuDatas ); }; /** diff --git a/resources/lib/oojs-ui/oojs-ui-windows-apex.css b/resources/lib/oojs-ui/oojs-ui-windows-apex.css index 013d52d3fb..c9c4c1bc38 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-actionWidget.oo-ui-pendingElement-pending { background-image: /* @embed */ url(themes/apex/images/textures/pending.gif); @@ -17,8 +17,8 @@ } .oo-ui-window-frame { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-window-content { position: absolute; @@ -34,9 +34,9 @@ .oo-ui-window-foot { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-window-body { margin: 0; @@ -56,8 +56,8 @@ left: 0; right: 0; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dialog-content > .oo-ui-window-head { overflow: hidden; @@ -376,19 +376,19 @@ background-color: rgba(255, 255, 255, 0.5); opacity: 0; -webkit-transition: opacity 250ms ease; - -moz-transition: opacity 250ms ease; - transition: opacity 250ms ease; + -moz-transition: opacity 250ms ease; + transition: opacity 250ms ease; } .oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame { background-color: #fff; opacity: 0; -webkit-transform: scale(0.5); - -moz-transform: scale(0.5); - -ms-transform: scale(0.5); - transform: scale(0.5); + -moz-transform: scale(0.5); + -ms-transform: scale(0.5); + transform: scale(0.5); -webkit-transition: all 250ms ease; - -moz-transition: all 250ms ease; - transition: all 250ms ease; + -moz-transition: all 250ms ease; + transition: all 250ms ease; } .oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-setup { opacity: 1; @@ -396,9 +396,9 @@ .oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-ready > .oo-ui-window-frame { opacity: 1; -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); } .oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame { top: 1em; diff --git a/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css b/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css index 1cb55d62f7..f6828e27b9 100644 --- a/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css +++ b/resources/lib/oojs-ui/oojs-ui-windows-mediawiki.css @@ -1,20 +1,20 @@ /*! - * OOjs UI v0.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:10Z + * Date: 2017-04-18T23:32:54Z */ .oo-ui-window { background: transparent; } .oo-ui-window-frame { -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-window-content { position: absolute; @@ -30,9 +30,9 @@ .oo-ui-window-foot { -webkit-touch-callout: none; -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .oo-ui-window-body { margin: 0; @@ -52,8 +52,8 @@ left: 0; right: 0; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .oo-ui-dialog-content > .oo-ui-window-head { overflow: hidden; @@ -144,34 +144,40 @@ margin-right: 0; } .oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-buttonElement-button { + margin-left: 0; + border: 0; border-radius: 0; + padding: 0; } .oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-labelElement .oo-ui-labelElement-label { line-height: 3.4375em; text-align: center; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget:hover { - background-color: rgba(0, 0, 0, 0.05); +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover { + background-color: #f8f9fa; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget:active { - background-color: rgba(0, 0, 0, 0.1); +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:active { + background-color: #c8ccd1; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-progressive:hover, -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-constructive:hover { - background-color: rgba(8, 126, 204, 0.05); +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:focus { + box-shadow: inset 0 0 0 1px #36c, 0 0 0 1px #36c; +} +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive .oo-ui-buttonElement-button:hover, +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive .oo-ui-buttonElement-button:hover { + background-color: #eaf3ff; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-progressive:active, -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-constructive:active { +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive .oo-ui-buttonElement-button:active, +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive .oo-ui-buttonElement-button:active { background-color: rgba(8, 126, 204, 0.1); } -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-progressive .oo-ui-labelElement-label, -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-constructive .oo-ui-labelElement-label { +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive .oo-ui-labelElement-label, +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-constructive .oo-ui-labelElement-label { font-weight: bold; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-destructive:hover { - background-color: rgba(212, 83, 83, 0.05); +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive .oo-ui-buttonElement-button:hover { + background-color: #fbe8e7; } -.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggedElement-destructive:active { +.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive .oo-ui-buttonElement-button:active { background-color: rgba(212, 83, 83, 0.1); } .oo-ui-processDialog-location { @@ -342,19 +348,19 @@ background-color: rgba(255, 255, 255, 0.5); opacity: 0; -webkit-transition: opacity 250ms; - -moz-transition: opacity 250ms; - transition: opacity 250ms; + -moz-transition: opacity 250ms; + transition: opacity 250ms; } .oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame { background-color: #fff; opacity: 0; -webkit-transform: scale(0.5); - -moz-transform: scale(0.5); - -ms-transform: scale(0.5); - transform: scale(0.5); + -moz-transform: scale(0.5); + -ms-transform: scale(0.5); + transform: scale(0.5); -webkit-transition: all 250ms; - -moz-transition: all 250ms; - transition: all 250ms; + -moz-transition: all 250ms; + transition: all 250ms; } .oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-setup { opacity: 1; @@ -362,9 +368,9 @@ .oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-ready > .oo-ui-window-frame { opacity: 1; -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); } .oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame { top: 1em; diff --git a/resources/lib/oojs-ui/oojs-ui-windows.js b/resources/lib/oojs-ui/oojs-ui-windows.js index b23949f123..c955919d91 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.21.0 + * OOjs UI v0.21.1 * https://www.mediawiki.org/wiki/OOjs_UI * * Copyright 2011–2017 OOjs UI Team and other contributors. * Released under the MIT license * http://oojs.mit-license.org * - * Date: 2017-04-11T22:51:05Z + * Date: 2017-04-18T23:32:49Z */ ( function ( OO ) { -- 2.20.1