Update OOjs UI to v0.1.0-pre (97dbb50137)
authorJames D. Forrester <jforrester@wikimedia.org>
Wed, 16 Jul 2014 22:59:49 +0000 (15:59 -0700)
committerJames D. Forrester <jforrester@wikimedia.org>
Wed, 16 Jul 2014 22:59:53 +0000 (15:59 -0700)
New changes:
54460ce Prevent disabled tools from stealing focus
436ac66 MenuWidget: Add option to specify an extra widget for mouse events
e67bb70 Localisation updates from https://translatewiki.net.
a2ba412 Mellow out the shadows being applied to dialog content
085d3a5 Split toolbar demo in two and add action button demo, with labels
dfd5100 Allow FieldLayouts to have help text
5f30488 Localisation updates from https://translatewiki.net.
d544ffe Remove useless documentation, add more useful documentation
e93e7cd Get OOUI working with mobile again
eb6c68b demos: Add LTR/RTL switcher to icons demo
4b874d4 Use SVG check icon

Change-Id: I03517e3aa026d9bc109dd252e489cdda1c478026

13 files changed:
resources/lib/oojs-ui/i18n/ar.json
resources/lib/oojs-ui/i18n/cs.json
resources/lib/oojs-ui/i18n/et.json
resources/lib/oojs-ui/i18n/it.json
resources/lib/oojs-ui/i18n/lv.json
resources/lib/oojs-ui/i18n/pl.json
resources/lib/oojs-ui/i18n/sr-ec.json
resources/lib/oojs-ui/i18n/sv.json
resources/lib/oojs-ui/i18n/vi.json
resources/lib/oojs-ui/oojs-ui-agora.css
resources/lib/oojs-ui/oojs-ui-apex.css
resources/lib/oojs-ui/oojs-ui.js
resources/lib/oojs-ui/oojs-ui.svg.css

index 34f8972..eb13f59 100644 (file)
@@ -8,11 +8,12 @@
                        "Mido",
                        "OsamaK",
                        "زكريا",
-                       "مشعل الحربي"
+                       "مشعل الحربي",
+                       "ترجمان05"
                ]
        },
-       "ooui-dialog-action-close": "أغلق",
        "ooui-outline-control-move-down": "انقل العنصر للأسفل",
        "ooui-outline-control-move-up": "انقل العنصر للأعلى",
-       "ooui-toolbar-more": "مزيد"
+       "ooui-toolbar-more": "مزيد",
+       "ooui-dialog-process-retry": "حاول مرة أخرى"
 }
index ca6d5b4..a75cf0b 100644 (file)
                        "ශ්වෙත"
                ]
        },
-       "ooui-dialog-action-close": "Zavřít",
        "ooui-outline-control-move-down": "Přesunout položku dolů",
        "ooui-outline-control-move-up": "Přesunout položku nahoru",
        "ooui-outline-control-remove": "Odstranit položku",
        "ooui-toolbar-more": "Další",
-       "ooui-dialog-confirm-title": "Potvrzení",
-       "ooui-dialog-confirm-default-prompt": "Opravdu?",
-       "ooui-dialog-confirm-default-ok": "OK",
-       "ooui-dialog-confirm-default-cancel": "Storno"
+       "ooui-dialog-message-accept": "OK",
+       "ooui-dialog-message-reject": "Storno",
+       "ooui-dialog-process-error": "Něco se pokazilo",
+       "ooui-dialog-process-dismiss": "Zavřít",
+       "ooui-dialog-process-retry": "Zkusit znovu"
 }
index 164685c..ac3af74 100644 (file)
@@ -5,13 +5,13 @@
                        "Pikne"
                ]
        },
-       "ooui-dialog-action-close": "Sule",
        "ooui-outline-control-move-down": "Liiguta üksust allapoole",
        "ooui-outline-control-move-up": "Liiguta üksust ülespoole",
        "ooui-outline-control-remove": "Eemalda üksus",
        "ooui-toolbar-more": "Veel",
-       "ooui-dialog-confirm-title": "Kinnitus",
-       "ooui-dialog-confirm-default-prompt": "Kas oled kindel?",
-       "ooui-dialog-confirm-default-ok": "Sobib",
-       "ooui-dialog-confirm-default-cancel": "Loobu"
+       "ooui-dialog-message-accept": "Sobib",
+       "ooui-dialog-message-reject": "Loobu",
+       "ooui-dialog-process-error": "Midagi läks valesti",
+       "ooui-dialog-process-dismiss": "Hülga",
+       "ooui-dialog-process-retry": "Proovi uuesti"
 }
index 162fa8c..3d4e049 100644 (file)
                        "Ontsed"
                ]
        },
-       "ooui-dialog-action-close": "Chiudi",
        "ooui-outline-control-move-down": "Sposta in basso",
        "ooui-outline-control-move-up": "Sposta in alto",
        "ooui-outline-control-remove": "Rimuovi elemento",
        "ooui-toolbar-more": "Altro",
-       "ooui-dialog-confirm-title": "Conferma",
-       "ooui-dialog-confirm-default-prompt": "Sei sicuro?",
-       "ooui-dialog-confirm-default-ok": "OK",
-       "ooui-dialog-confirm-default-cancel": "Annulla"
+       "ooui-dialog-message-accept": "OK",
+       "ooui-dialog-message-reject": "Annulla",
+       "ooui-dialog-process-error": "Qualcosa è andato storto",
+       "ooui-dialog-process-dismiss": "Nascondi",
+       "ooui-dialog-process-retry": "Riprova"
 }
index 7ad74dc..32fc9fe 100644 (file)
@@ -8,12 +8,10 @@
                        "PeterisP"
                ]
        },
-       "ooui-dialog-action-close": "Aizvērt",
        "ooui-outline-control-move-down": "Pārvietot vienumu uz leju",
        "ooui-outline-control-move-up": "Pārvietot vienumu uz augšu",
        "ooui-toolbar-more": "Vairāk",
-       "ooui-dialog-confirm-title": "Apstiprināt",
-       "ooui-dialog-confirm-default-prompt": "Vai esat pārliecināts?",
-       "ooui-dialog-confirm-default-ok": "Labi",
-       "ooui-dialog-confirm-default-cancel": "Atcelt"
+       "ooui-dialog-message-accept": "Labi",
+       "ooui-dialog-message-reject": "Atcelt",
+       "ooui-dialog-process-retry": "Mēģināt vēlreiz"
 }
index 2431096..7978673 100644 (file)
@@ -26,5 +26,6 @@
        "ooui-dialog-message-accept": "OK",
        "ooui-dialog-message-reject": "Anuluj",
        "ooui-dialog-process-error": "Coś poszło nie tak",
+       "ooui-dialog-process-dismiss": "Ukryj",
        "ooui-dialog-process-retry": "Spróbuj ponownie"
 }
index 308ed84..d653356 100644 (file)
@@ -6,13 +6,13 @@
                        "Милан Јелисавчић"
                ]
        },
-       "ooui-dialog-action-close": "Затвори",
        "ooui-outline-control-move-down": "Премести ставку на доле",
        "ooui-outline-control-move-up": "Премести ставку на горе",
        "ooui-outline-control-remove": "Уклони ставку",
        "ooui-toolbar-more": "Више",
-       "ooui-dialog-confirm-title": "Потврди",
-       "ooui-dialog-confirm-default-prompt": "Јесте ли сигурни?",
-       "ooui-dialog-confirm-default-ok": "У реду",
-       "ooui-dialog-confirm-default-cancel": "Откажи"
+       "ooui-dialog-message-accept": "У реду",
+       "ooui-dialog-message-reject": "Откажи",
+       "ooui-dialog-process-error": "Нешто је пошло наопако",
+       "ooui-dialog-process-dismiss": "Одбаци",
+       "ooui-dialog-process-retry": "Покушај поново"
 }
index fbd03de..40305d0 100644 (file)
                        "Lokal Profil"
                ]
        },
-       "ooui-dialog-action-close": "Stäng",
        "ooui-outline-control-move-down": "Flytta ned objekt",
        "ooui-outline-control-move-up": "Flytta upp objekt",
        "ooui-outline-control-remove": "Ta bort objekt",
        "ooui-toolbar-more": "Mer",
-       "ooui-dialog-confirm-title": "Bekräfta",
-       "ooui-dialog-confirm-default-prompt": "Är du säker?",
-       "ooui-dialog-confirm-default-ok": "OK",
-       "ooui-dialog-confirm-default-cancel": "Avbryt"
+       "ooui-dialog-message-accept": "OK",
+       "ooui-dialog-message-reject": "Avbryt",
+       "ooui-dialog-process-error": "Något gick fel",
+       "ooui-dialog-process-dismiss": "Stäng",
+       "ooui-dialog-process-retry": "Försök igen"
 }
index 9cc4543..205cbe8 100644 (file)
@@ -6,13 +6,13 @@
                        "Minh Nguyen"
                ]
        },
-       "ooui-dialog-action-close": "Đóng",
        "ooui-outline-control-move-down": "Chuyển mục xuống",
        "ooui-outline-control-move-up": "Chuyển mục lên",
        "ooui-outline-control-remove": "Xóa khoản",
        "ooui-toolbar-more": "Thêm",
-       "ooui-dialog-confirm-title": "Xác nhận",
-       "ooui-dialog-confirm-default-prompt": "Bạn có chắc chắn?",
-       "ooui-dialog-confirm-default-ok": "OK",
-       "ooui-dialog-confirm-default-cancel": "Hủy bỏ"
+       "ooui-dialog-message-accept": "OK",
+       "ooui-dialog-message-reject": "Hủy bỏ",
+       "ooui-dialog-process-error": "Đã bị trục trặc",
+       "ooui-dialog-process-dismiss": "Bỏ qua",
+       "ooui-dialog-process-retry": "Thử lại"
 }
index 5b35674..0dfa042 100644 (file)
 /*!
- * OOjs UI v0.1.0-pre (d2451ac748)
+ * OOjs UI v0.1.0-pre (97dbb50137)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: 2014-07-14T16:49:51Z
+ * Date: 2014-07-16T22:59:48Z
  */
-.oo-ui-dialog-content .oo-ui-window-closeButton {
+.oo-ui-dialog-content > .oo-ui-window-head,
+.oo-ui-dialog-content > .oo-ui-window-body,
+.oo-ui-dialog-content > .oo-ui-window-foot {
   position: absolute;
-  top: 0;
+  right: 0;
   left: 0;
+  overflow: hidden;
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
 }
 
-.oo-ui-dialog-content .oo-ui-window-icon {
-  margin-left: 3.35em;
+.oo-ui-dialog-content > .oo-ui-window-head {
+  top: 0;
+  z-index: 1;
 }
 
-.oo-ui-dialog-content .oo-ui-window-body {
-  position: absolute;
-  top: 3.35em;
-  right: 0;
+.oo-ui-dialog-content > .oo-ui-window-body {
+  top: 0;
   bottom: 0;
-  left: 0;
-  overflow-y: auto;
+  z-index: 2;
 }
 
-.oo-ui-dialog-content .oo-ui-window-foot {
-  position: absolute;
-  top: 0;
-  right: 0;
-  height: 3.35em;
+.oo-ui-dialog-content > .oo-ui-window-foot {
+  bottom: 0;
+  z-index: 1;
 }
 
-.oo-ui-dialog-content .oo-ui-window-foot .oo-ui-buttonedElement-button {
-  height: 100%;
+.oo-ui-dialog-content > .oo-ui-window-overlay {
+  z-index: 3;
 }
 
-.oo-ui-dialog-content .oo-ui-window-foot .oo-ui-buttonedElement-button .oo-ui-labeledElement-label {
-  display: inline-block;
-  width: 0;
-  text-indent: -9999px;
+.oo-ui-windowManager-modal > .oo-ui-dialog {
+  background-color: rgba(255, 255, 255, 0.5);
+  opacity: 0;
+  -webkit-transition: opacity 250ms ease-in-out;
+     -moz-transition: opacity 250ms ease-in-out;
+      -ms-transition: opacity 250ms ease-in-out;
+       -o-transition: opacity 250ms ease-in-out;
+          transition: opacity 250ms ease-in-out;
 }
 
-.oo-ui-dialog-medium .oo-ui-window-frame {
-  top: 0;
-  bottom: 0;
-  background-color: white;
+.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
+  top: 1em;
+  bottom: 1em;
+  background-color: #fff;
+  -webkit-transform: translate3d(0, -200%, 0);
+     -moz-transform: translate3d(0, -200%, 0);
+      -ms-transform: translate3d(0, -200%, 0);
+       -o-transform: translate3d(0, -200%, 0);
+          transform: translate3d(0, -200%, 0);
+  -webkit-transition: transform 250ms ease-in-out;
+     -moz-transition: transform 250ms ease-in-out;
+      -ms-transition: transform 250ms ease-in-out;
+       -o-transition: transform 250ms ease-in-out;
+          transition: transform 250ms ease-in-out;
+}
+
+.oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-ready {
+  opacity: 1;
+}
+
+.oo-ui-windowManager-modal > .oo-ui-dialog.oo-ui-window-ready > .oo-ui-window-frame {
+  -webkit-transform: translate3d(0, 0, 0);
+     -moz-transform: translate3d(0, 0, 0);
+      -ms-transform: translate3d(0, 0, 0);
+       -o-transform: translate3d(0, 0, 0);
+          transform: translate3d(0, 0, 0);
+}
+
+.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
+  border: solid 1px #ccc;
+  border-radius: 0.5em;
+  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.3);
+}
+
+.oo-ui-messageDialog-title,
+.oo-ui-messageDialog-message {
+  display: block;
+  padding-top: 0.5em;
+  text-align: center;
+}
+
+.oo-ui-messageDialog-title {
+  font-size: 1.5em;
+  line-height: 1em;
+  color: #000;
+}
+
+.oo-ui-messageDialog-message {
+  font-size: 0.9em;
+  line-height: 1.25em;
+  color: #666;
+}
+
+.oo-ui-messageDialog-message-verbose {
+  font-size: 1.1em;
+  line-height: 1.5em;
+  text-align: left;
+}
+
+.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
+  border-right: solid 1px #e5e5e5;
+}
+
+.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget:last-child {
+  border-right-width: 0;
+}
+
+.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
+  border-bottom: solid 1px #e5e5e5;
+}
+
+.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget:last-child {
+  border-bottom-width: 0;
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-labeledElement-label {
+  padding: 0 2em;
+  line-height: 3.4em;
+  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:active {
+  background-color: rgba(0, 0, 0, 0.1);
 }
 
-.oo-ui-window-head {
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-primary:hover {
+  background-color: rgba(8, 126, 204, 0.05);
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-primary:active {
+  background-color: rgba(8, 126, 204, 0.1);
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-primary .oo-ui-labeledElement-label {
+  font-weight: bold;
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:hover {
+  background-color: rgba(118, 171, 54, 0.05);
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:active {
+  background-color: rgba(118, 171, 54, 0.1);
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:hover {
+  background-color: rgba(212, 83, 83, 0.05);
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:active {
+  background-color: rgba(212, 83, 83, 0.1);
+}
+
+.oo-ui-processDialog-content .oo-ui-window-head {
   height: 3.35em;
   border-bottom: 1px solid #dddddd;
   -webkit-box-sizing: border-box;
           box-sizing: border-box;
 }
 
-.oo-ui-window-body {
-  padding: 2em 3.35em;
+.oo-ui-processDialog-content .oo-ui-window-body {
+  top: 3.35em;
+  padding: 2em 0;
 }
 
-.oo-ui-window-icon {
-  width: 3.35em;
+.oo-ui-processDialog-navigation {
+  position: relative;
   height: 3.35em;
-  background-size: 2em auto;
-  border-left: 1px solid #dddddd;
+  padding: 0 1em;
+}
+
+.oo-ui-processDialog-location {
+  height: 3.35em;
+  padding: 0.25em 0;
+  text-align: center;
+  cursor: default;
+}
+
+.oo-ui-processDialog-title {
+  font-weight: bold;
+  line-height: 1.85em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget .oo-ui-buttonedElement-button,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget .oo-ui-buttonedElement-button,
+.oo-ui-processDialog-actions-other .oo-ui-actionWidget .oo-ui-buttonedElement-button {
+  min-width: 1.85em;
+  min-height: 1.85em;
+  padding-top: 0.75em;
+  padding-bottom: 0.75em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget .oo-ui-labeledElement-label,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget .oo-ui-labeledElement-label,
+.oo-ui-processDialog-actions-other .oo-ui-actionWidget .oo-ui-labeledElement-label {
+  padding: 0 1em;
+  line-height: 1.85em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget .oo-ui-iconedElement-icon,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget .oo-ui-iconedElement-icon,
+.oo-ui-processDialog-actions-other .oo-ui-actionWidget .oo-ui-iconedElement-icon {
+  position: absolute;
+  margin-top: -0.125em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button,
+.oo-ui-processDialog-actions-other .oo-ui-actionWidget.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button {
+  padding: 0;
+  vertical-align: middle;
+}
+
+.oo-ui-processDialog-actions-safe.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button,
+.oo-ui-processDialog-actions-primary.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button {
+  margin: 0.75em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget:hover,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget:hover {
+  background-color: rgba(0, 0, 0, 0.05);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget:active,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget:active {
+  background-color: rgba(0, 0, 0, 0.1);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-primary:hover,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-primary:hover {
+  background-color: rgba(8, 126, 204, 0.05);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-primary:active,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-primary:active {
+  background-color: rgba(8, 126, 204, 0.1);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-primary .oo-ui-labeledElement-label,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-primary .oo-ui-labeledElement-label {
+  font-weight: bold;
 }
 
-.oo-ui-window-title {
-  line-height: 3.35em;
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:hover,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:hover {
+  background-color: rgba(118, 171, 54, 0.05);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:active,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-constructive:active {
+  background-color: rgba(118, 171, 54, 0.1);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:hover,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:hover {
+  background-color: rgba(212, 83, 83, 0.05);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:active,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-flaggableElement-destructive:active {
+  background-color: rgba(212, 83, 83, 0.1);
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-iconedElement-icon {
+  left: 0.5em;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-labeledElement-label {
+  padding-left: 2.25em;
+}
+
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-iconedElement-icon {
+  right: 0.5em;
+}
+
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-labeledElement-label {
+  padding-right: 2.25em;
+}
+
+.oo-ui-processDialog-actions-other:not(:empty) {
+  padding: 0.75em;
+}
+
+.oo-ui-processDialog-actions-other:not(:empty) .oo-ui-actionWidget {
+  margin: 0 0.75em 0 0;
+  border: solid 1px #ccc;
+  border-radius: 0.25em;
+}
+
+.oo-ui-processDialog > .oo-ui-window-frame {
+  min-height: 5em;
+}
+
+.oo-ui-processDialog-errors {
+  padding: 3em 3em 1.5em 3em;
+  text-align: center;
+  background-color: rgba(255, 255, 255, 0.9);
+}
+
+.oo-ui-processDialog-errors .oo-ui-buttonWidget {
+  margin: 2em 1em 2em 1em;
+}
+
+.oo-ui-processDialog-errors-title {
+  margin-bottom: 2em;
+  font-size: 1.5em;
+  color: #000;
+}
+
+.oo-ui-processDialog-error {
+  padding: 1em;
+  margin: 1em;
+  text-align: left;
+  background-color: #fff7f7;
+  border: solid 1px #ff9e9e;
+  border-radius: 0.25em;
 }
 
 .oo-ui-buttonedElement.oo-ui-indicatedElement .oo-ui-buttonedElement-button > .oo-ui-indicatedElement-indicator,
   padding: 0;
 }
 
+.oo-ui-lookupWidget-menu {
+  background-color: #fff;
+}
+
 .oo-ui-menuItemWidget.oo-ui-optionWidget-selected {
   color: #ffffff;
   background: #347bff;
index aeba582..7bc9be8 100644 (file)
@@ -1,12 +1,12 @@
 /*!
- * OOjs UI v0.1.0-pre (d2451ac748)
+ * OOjs UI v0.1.0-pre (97dbb50137)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: 2014-07-14T16:49:51Z
+ * Date: 2014-07-16T22:59:48Z
  */
 .oo-ui-dialog-content > .oo-ui-window-head,
 .oo-ui-dialog-content > .oo-ui-window-body,
   color: #000;
 }
 
-.oo-ui-window > .oo-ui-window-frame {
-  -webkit-box-sizing: border-box;
-     -moz-box-sizing: border-box;
-          box-sizing: border-box;
-}
-
 .oo-ui-window-content {
   background: transparent;
 }
 }
 
 .oo-ui-windowManager-modal > .oo-ui-dialog {
-  background-color: #fff;
   background-color: rgba(255, 255, 255, 0.5);
   opacity: 0;
   -webkit-transition: opacity 250ms ease-in-out;
   top: 1em;
   bottom: 1em;
   background-color: #fff;
-  border: solid 1px #ccc;
-  border-radius: 0.5em;
   -webkit-transform: scale(0.5);
      -moz-transform: scale(0.5);
       -ms-transform: scale(0.5);
        -o-transform: scale(0.5);
           transform: scale(0.5);
-  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.3);
   -webkit-transition: all 250ms ease-in-out;
      -moz-transition: all 250ms ease-in-out;
       -ms-transition: all 250ms ease-in-out;
           transform: scale(1);
 }
 
-.oo-ui-windowManager-fullscreen > .oo-ui-dialog > .oo-ui-window-frame {
-  top: 0;
-  bottom: 0;
-  width: 100%;
-  height: 100%;
-  border: none;
-  border-radius: 0;
-  box-shadow: none;
+.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
+  border: solid 1px #ccc;
+  border-radius: 0.5em;
+  box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.3);
 }
 
-.oo-ui-messageDialog-text.oo-ui-panelLayout {
-  bottom: auto;
+.oo-ui-messageDialog-content .oo-ui-window-body {
+  box-shadow: 0 0 0.33em rgba(0, 0, 0, 0.33);
 }
 
-.oo-ui-messageDialog-title {
+.oo-ui-messageDialog-title,
+.oo-ui-messageDialog-message {
   display: block;
-  padding-top: 0;
+  padding-top: 0.5em;
+  text-align: center;
+}
+
+.oo-ui-messageDialog-title {
   font-size: 1.5em;
+  line-height: 1em;
   color: #000;
-  text-align: center;
 }
 
 .oo-ui-messageDialog-message {
-  display: block;
   font-size: 0.9em;
   line-height: 1.25em;
   color: #666;
-  text-align: center;
 }
 
 .oo-ui-messageDialog-message-verbose {
   text-align: left;
 }
 
-.oo-ui-messageDialog-content > .oo-ui-window-body {
-  bottom: 3.4em;
-  box-shadow: 0 0 0.66em rgba(0, 0, 0, 0.25);
-}
-
-.oo-ui-messageDialog-content > .oo-ui-window-foot {
-  min-height: 3.4em;
-}
-
-.oo-ui-messageDialog-actions-horizontal {
-  display: table;
-  width: 100%;
-  table-layout: fixed;
-}
-
 .oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
-  display: table-cell;
-  width: 1%;
   border-right: solid 1px #e5e5e5;
 }
 
   border-right-width: 0;
 }
 
-.oo-ui-messageDialog-actions-vertical {
-  display: block;
-}
-
 .oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
-  display: block;
-  overflow: hidden;
-  text-overflow: ellipsis;
   border-bottom: solid 1px #e5e5e5;
 }
 
   border-bottom-width: 0;
 }
 
-.oo-ui-messageDialog-actions .oo-ui-actionWidget {
-  position: relative;
-  height: 3.4em;
-  padding: 0;
+.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-labeledElement-label {
+  padding: 0 2em;
+  line-height: 3.4em;
   text-align: center;
 }
 
   background-color: rgba(212, 83, 83, 0.1);
 }
 
-.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-buttonedElement-button {
-  display: block;
-}
-
-.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-labeledElement-label {
-  position: relative;
-  top: auto;
-  bottom: auto;
-  display: inline;
-  padding: 0 2em;
-  line-height: 3.4em;
-  white-space: nowrap;
-}
-
-.oo-ui-processDialog-content > .oo-ui-window-head {
+.oo-ui-processDialog-content .oo-ui-window-head {
   height: 3.4em;
 }
 
-.oo-ui-processDialog-content .oo-ui-window-body {
+.oo-ui-processDialog-content .oo-ui-window-body {
   top: 3.4em;
-  box-shadow: 0 0 0.66em rgba(0, 0, 0, 0.25);
+  box-shadow: 0 0 0.33em rgba(0, 0, 0, 0.33);
 }
 
 .oo-ui-processDialog-navigation {
   position: relative;
   height: 3.4em;
   padding: 0 1em;
-  -webkit-user-select: none;
-     -moz-user-select: none;
-      -ms-user-select: none;
-          user-select: none;
-  -webkit-touch-callout: none;
 }
 
 .oo-ui-processDialog-location {
   height: 1.9em;
   padding: 0.75em 0;
-  overflow: hidden;
   text-align: center;
-  text-overflow: ellipsis;
-  white-space: nowrap;
   cursor: default;
 }
 
-.oo-ui-processDialog-location .oo-ui-labelWidget {
-  display: inline;
-}
-
 .oo-ui-processDialog-title {
   font-weight: bold;
   line-height: 1.9em;
 }
 
-.oo-ui-processDialog-actions-safe .oo-ui-actionWidget,
-.oo-ui-processDialog-actions-primary .oo-ui-actionWidget,
-.oo-ui-processDialog-actions-other .oo-ui-actionWidget {
-  white-space: nowrap;
-}
-
 .oo-ui-processDialog-actions-safe .oo-ui-actionWidget .oo-ui-buttonedElement-button,
 .oo-ui-processDialog-actions-primary .oo-ui-actionWidget .oo-ui-buttonedElement-button,
 .oo-ui-processDialog-actions-other .oo-ui-actionWidget .oo-ui-buttonedElement-button {
   vertical-align: middle;
 }
 
-.oo-ui-processDialog-actions-safe,
-.oo-ui-processDialog-actions-primary {
-  position: absolute;
-  top: 0;
-  bottom: 0;
-}
-
 .oo-ui-processDialog-actions-safe.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button,
 .oo-ui-processDialog-actions-primary.oo-ui-buttonedElement-framed .oo-ui-buttonedElement-button {
   margin: 0.75em;
   background-color: rgba(212, 83, 83, 0.1);
 }
 
-.oo-ui-processDialog-actions-safe {
-  left: 0;
-}
-
 .oo-ui-processDialog-actions-safe .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-iconedElement-icon {
   left: 0.5em;
 }
   padding-left: 2.25em;
 }
 
-.oo-ui-processDialog-actions-primary {
-  right: 0;
-}
-
 .oo-ui-processDialog-actions-primary .oo-ui-actionWidget.oo-ui-iconedElement .oo-ui-iconedElement-icon {
   right: 0.5em;
 }
 }
 
 .oo-ui-processDialog-errors {
-  position: absolute;
-  top: 0;
-  right: 0;
-  bottom: 0;
-  left: 0;
-  z-index: 2;
-  display: none;
   padding: 3em 3em 1.5em 3em;
-  overflow-x: hidden;
-  overflow-y: auto;
   text-align: center;
   background-color: rgba(255, 255, 255, 0.9);
 }
   font-size: 1.5em;
 }
 
-.oo-ui-panelLayout {
-  position: absolute;
-  top: 0;
-  right: 0;
-  bottom: 0;
-  left: 0;
-}
-
 .oo-ui-panelLayout-padded {
   padding: 1.25em;
 }
index 68d4be6..389fb9f 100644 (file)
@@ -1,12 +1,12 @@
 /*!
- * OOjs UI v0.1.0-pre (d2451ac748)
+ * OOjs UI v0.1.0-pre (97dbb50137)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: 2014-07-14T16:49:51Z
+ * Date: 2014-07-16T22:59:48Z
  */
 ( function ( OO ) {
 
@@ -2345,7 +2345,7 @@ OO.ui.WindowManager = function OoUiWindowManager( config ) {
 
        // Properties
        this.factory = config.factory;
-       this.modal = config.modal === undefined ? true : !!config.modal;
+       this.modal = config.modal === undefined || !!config.modal;
        this.windows = {};
        this.opening = null;
        this.opened = null;
@@ -2909,14 +2909,13 @@ OO.ui.WindowManager.prototype.updateWindowSize = function ( win ) {
        }
 
        this.$element.toggleClass( 'oo-ui-windowManager-fullscreen', size === 'full' );
+       this.$element.toggleClass( 'oo-ui-windowManager-floating', size !== 'full' );
        win.setDimensions( sizes[size] );
 
        return this;
 };
 
 /**
- * Process error.
- *
  * @abstract
  * @class
  *
@@ -2931,7 +2930,7 @@ OO.ui.Error = function OoUiElement( message, config ) {
 
        // Properties
        this.message = message instanceof jQuery ? message : String( message );
-       this.recoverable = config.recoverable === undefined ? true : !!config.recoverable;
+       this.recoverable = config.recoverable === undefined || !!config.recoverable;
 };
 
 /* Setup */
@@ -3283,6 +3282,9 @@ OO.ui.ToolGroupFactory.static.getDefaultClasses = function () {
 /**
  * Element with a button.
  *
+ * Buttons are used for controls which can be clicked. They can be configured to use tab indexing
+ * and access keys for accessibility purposes.
+ *
  * @abstract
  * @class
  *
@@ -3902,6 +3904,11 @@ OO.ui.GroupElement.prototype.clearItems = function () {
 /**
  * Element containing an icon.
  *
+ * Icons are graphics, about the size of normal text. They can be used to aid the user in locating
+ * a control or convey information in a more space efficient way. Icons should rarely be used
+ * without labels; such as in a toolbar where space is at a premium or within a context where the
+ * meaning is very clear to the user.
+ *
  * @abstract
  * @class
  *
@@ -3990,6 +3997,11 @@ OO.ui.IconedElement.prototype.getIcon = function () {
 /**
  * Element containing an indicator.
  *
+ * Indicators are graphics, smaller than normal text. They can be used to describe unique status or
+ * behavior. Indicators should only be used in exceptional cases; such as a button that opens a menu
+ * instead of performing an action directly, or an item in a list which has errors that need to be
+ * resolved.
+ *
  * @abstract
  * @class
  *
@@ -4201,7 +4213,7 @@ OO.ui.LabeledElement.prototype.fitLabel = function () {
 };
 
 /**
- * Popuppable element.
+ * Element containing an OO.ui.PopupWidget object.
  *
  * @abstract
  * @class
@@ -4237,6 +4249,9 @@ OO.ui.PopuppableElement.prototype.getPopup = function () {
 /**
  * Element with a title.
  *
+ * Titles are rendered by the browser and are made visible when hovering the element. Titles are
+ * not visible on touch devices.
+ *
  * @abstract
  * @class
  *
@@ -4907,9 +4922,9 @@ OO.ui.ToolGroup.prototype.onMouseDown = function ( e ) {
                        this.getElementDocument().addEventListener(
                                'mouseup', this.onCapturedMouseUpHandler, true
                        );
-                       return false;
                }
        }
+       return false;
 };
 
 /**
@@ -5236,7 +5251,7 @@ OO.ui.MessageDialog.prototype.initialize = function () {
                '$': this.$, 'scrollable': true, 'classes': [ 'oo-ui-messageDialog-container' ]
        } );
        this.text = new OO.ui.PanelLayout( {
-               '$': this.$, 'padded': true, 'classes': [ 'oo-ui-messageDialog-text' ]
+               '$': this.$, 'padded': true, 'expanded': false, 'classes': [ 'oo-ui-messageDialog-text' ]
        } );
        this.message = new OO.ui.LabelWidget( {
                '$': this.$, 'classes': [ 'oo-ui-messageDialog-message' ]
@@ -5545,7 +5560,7 @@ OO.ui.BookletLayout = function OoUiBookletLayout( config ) {
        this.pages = {};
        this.ignoreFocus = false;
        this.stackLayout = new OO.ui.StackLayout( { '$': this.$, 'continuous': !!config.continuous } );
-       this.autoFocus = config.autoFocus === undefined ? true : !!config.autoFocus;
+       this.autoFocus = config.autoFocus === undefined || !!config.autoFocus;
        this.outlineVisible = false;
        this.outlined = !!config.outlined;
        if ( this.outlined ) {
@@ -5961,8 +5976,10 @@ OO.ui.BookletLayout.prototype.updateOutlineWidget = function () {
  * @param {OO.ui.Widget} field Field widget
  * @param {Object} [config] Configuration options
  * @cfg {string} [align='left'] Alignment mode, either 'left', 'right', 'top' or 'inline'
+ * @cfg {string} [help] Explanatory text shown as a '?' icon.
  */
 OO.ui.FieldLayout = function OoUiFieldLayout( field, config ) {
+       var popupButtonWidget;
        // Config initialization
        config = $.extend( { 'align': 'left' }, config );
 
@@ -5970,7 +5987,22 @@ OO.ui.FieldLayout = function OoUiFieldLayout( field, config ) {
        OO.ui.FieldLayout.super.call( this, config );
 
        // Mixin constructors
+       this.$help = this.$( '<div>' );
        OO.ui.LabeledElement.call( this, this.$( '<label>' ), config );
+       if ( config.help ) {
+               popupButtonWidget = new OO.ui.PopupButtonWidget( $.extend(
+                       {
+                               '$': this.$,
+                               'frameless': true,
+                               'icon': 'info',
+                               'title': config.help
+                       },
+                       config,
+                       { label: null }
+               ) );
+               popupButtonWidget.getPopup().$body.append( this.getElementDocument().createTextNode( config.help ) );
+               this.$help = popupButtonWidget.$element;
+       }
 
        // Properties
        this.$field = this.$( '<div>' );
@@ -6041,9 +6073,9 @@ OO.ui.FieldLayout.prototype.setAlignment = function ( value ) {
                }
                // Reorder elements
                if ( value === 'inline' ) {
-                       this.$element.append( this.$field, this.$label );
+                       this.$element.append( this.$field, this.$label, this.$help );
                } else {
-                       this.$element.append( this.$label, this.$field );
+                       this.$element.append( this.$help, this.$label, this.$field );
                }
                // Set classes
                if ( this.align ) {
@@ -6105,7 +6137,7 @@ OO.mixinClass( OO.ui.FieldsetLayout, OO.ui.GroupElement );
 OO.ui.FieldsetLayout.static.tagName = 'div';
 
 /**
- * Form layout.
+ * Layout with an HTML form.
  *
  * @class
  * @extends OO.ui.Layout
@@ -6325,8 +6357,9 @@ OO.ui.GridLayout.prototype.getPanel = function ( x, y ) {
  *
  * @constructor
  * @param {Object} [config] Configuration options
- * @cfg {boolean} [scrollable] Allow vertical scrolling
- * @cfg {boolean} [padded] Pad the content from the edges
+ * @cfg {boolean} [scrollable=false] Allow vertical scrolling
+ * @cfg {boolean} [padded=false] Pad the content from the edges
+ * @cfg {boolean} [expanded=true] Expand size to fill the entire parent element
  */
 OO.ui.PanelLayout = function OoUiPanelLayout( config ) {
        // Config initialization
@@ -6344,6 +6377,10 @@ OO.ui.PanelLayout = function OoUiPanelLayout( config ) {
        if ( config.padded ) {
                this.$element.addClass( 'oo-ui-panelLayout-padded' );
        }
+
+       if ( config.expanded === undefined || config.expanded ) {
+               this.$element.addClass( 'oo-ui-panelLayout-expanded' );
+       }
 };
 
 /* Setup */
@@ -6956,9 +6993,7 @@ OO.ui.PopupTool.prototype.onUpdateState = function () {
 };
 
 /**
- * Group widget.
- *
- * Mixin for OO.ui.Widget subclasses.
+ * Mixin for OO.ui.Widget subclasses to provide OO.ui.GroupElement.
  *
  * Use together with OO.ui.ItemWidget to make disabled state inheritable.
  *
@@ -7007,7 +7042,10 @@ OO.ui.GroupWidget.prototype.setDisabled = function ( disabled ) {
 };
 
 /**
- * Item widget.
+ * Mixin for widgets used as items in widgets that inherit OO.ui.GroupWidget.
+ *
+ * Item widgets have a reference to a OO.ui.GroupWidget while they are attached to the group. This
+ * allows bidrectional communication.
  *
  * Use together with OO.ui.GroupWidget to make disabled state inheritable.
  *
@@ -7052,10 +7090,9 @@ OO.ui.ItemWidget.prototype.setElementGroup = function ( group ) {
 };
 
 /**
- * Lookup input widget.
+ * Mixin that adds a menu showing suggested values for a text input.
  *
- * Mixin that adds a menu showing suggested values to a text input. Subclasses must handle `select`
- * and `choose` events on #lookupMenu to make use of selections.
+ * Subclasses must handle `select` and `choose` events on #lookupMenu to make use of selections.
  *
  * @class
  * @abstract
@@ -7289,11 +7326,14 @@ OO.ui.LookupInputWidget.prototype.getLookupMenuItemsFromData = function () {
 };
 
 /**
- * Creates an OO.ui.OutlineControlsWidget object.
+ * Set of controls for an OO.ui.OutlineWidget.
  *
- * Use together with OO.ui.OutlineWidget.js
+ * Controls include moving items up and down, removing items, and adding different kinds of items.
  *
  * @class
+ * @extends OO.ui.Widget
+ * @mixins OO.ui.GroupElement
+ * @mixins OO.ui.IconedElement
  *
  * @constructor
  * @param {OO.ui.OutlineWidget} outline Outline to control
@@ -7403,9 +7443,7 @@ OO.ui.OutlineControlsWidget.prototype.onOutlineChange = function () {
 };
 
 /**
- * Width with on and off states.
- *
- * Mixin for widgets with a boolean state.
+ * Mixin for widgets with a boolean on/off state.
  *
  * @abstract
  * @class
@@ -7463,7 +7501,7 @@ OO.ui.ToggleWidget.prototype.setValue = function ( value ) {
 };
 
 /**
- * Container for multiple related buttons.
+ * Group widget for multiple related buttons.
  *
  * Use together with OO.ui.ButtonWidget.
  *
@@ -7495,7 +7533,7 @@ OO.inheritClass( OO.ui.ButtonGroupWidget, OO.ui.Widget );
 OO.mixinClass( OO.ui.ButtonGroupWidget, OO.ui.GroupElement );
 
 /**
- * Button widget.
+ * Generic widget for buttons.
  *
  * @class
  * @extends OO.ui.Widget
@@ -7657,7 +7695,7 @@ OO.ui.ButtonWidget.prototype.setTarget = function ( target ) {
 };
 
 /**
- * ActionButton widget.
+ * Button widget that executes an action and is managed by an OO.ui.ActionSet.
  *
  * @class
  * @extends OO.ui.ButtonWidget
@@ -7951,6 +7989,8 @@ OO.ui.IconWidget.static.tagName = 'span';
 /**
  * Indicator widget.
  *
+ * See OO.ui.IndicatedElement for more information.
+ *
  * @class
  * @extends OO.ui.Widget
  * @mixins OO.ui.IndicatedElement
@@ -7987,6 +8027,9 @@ OO.ui.IndicatorWidget.static.tagName = 'span';
 /**
  * Inline menu of options.
  *
+ * Inline menus provide a control for accessing a menu and compose a menu within the widget, which
+ * can be accessed using the #getMenu method.
+ *
  * Use with OO.ui.MenuOptionWidget.
  *
  * @class
@@ -8014,7 +8057,7 @@ OO.ui.InlineMenuWidget = function OoUiInlineMenuWidget( config ) {
        OO.ui.TitledElement.call( this, this.$label, config );
 
        // Properties
-       this.menu = new OO.ui.MenuWidget( $.extend( { '$': this.$ }, config.menu ) );
+       this.menu = new OO.ui.MenuWidget( $.extend( { '$': this.$, 'widget': this }, config.menu ) );
        this.$handle = this.$( '<span>' );
 
        // Events
@@ -8093,7 +8136,7 @@ OO.ui.InlineMenuWidget.prototype.onClick = function ( e ) {
 };
 
 /**
- * Input widget.
+ * Base class for input widgets.
  *
  * @abstract
  * @class
@@ -8300,7 +8343,7 @@ OO.ui.InputWidget.prototype.blur = function () {
 };
 
 /**
- * Checkbox widget.
+ * Checkbox input widget.
  *
  * @class
  * @extends OO.ui.InputWidget
@@ -8368,7 +8411,7 @@ OO.ui.CheckboxInputWidget.prototype.onEdit = function () {
 };
 
 /**
- * Text input widget.
+ * Input widget with a text field.
  *
  * @class
  * @extends OO.ui.InputWidget
@@ -8635,9 +8678,7 @@ OO.ui.LabelWidget.prototype.onClick = function () {
 };
 
 /**
- * Option widget.
- *
- * Use with OO.ui.SelectWidget.
+ * Generic option widget for use with OO.ui.SelectWidget.
  *
  * @class
  * @extends OO.ui.Widget
@@ -8838,7 +8879,7 @@ OO.ui.OptionWidget.prototype.getData = function () {
 };
 
 /**
- * Option with an option icon and indicator.
+ * Option widget with an option icon and indicator.
  *
  * Use together with OO.ui.SelectWidget.
  *
@@ -8924,9 +8965,7 @@ OO.ui.ButtonOptionWidget.prototype.setSelected = function ( state ) {
 };
 
 /**
- * Menu item widget.
- *
- * Use with OO.ui.MenuWidget.
+ * Item of an OO.ui.MenuWidget.
  *
  * @class
  * @extends OO.ui.DecoratedOptionWidget
@@ -8951,9 +8990,7 @@ OO.ui.MenuItemWidget = function OoUiMenuItemWidget( data, config ) {
 OO.inheritClass( OO.ui.MenuItemWidget, OO.ui.DecoratedOptionWidget );
 
 /**
- * Menu section item widget.
- *
- * Use with OO.ui.MenuWidget.
+ * Section to group one or more items in a OO.ui.MenuWidget.
  *
  * @class
  * @extends OO.ui.DecoratedOptionWidget
@@ -8981,9 +9018,7 @@ OO.ui.MenuSectionItemWidget.static.selectable = false;
 OO.ui.MenuSectionItemWidget.static.highlightable = false;
 
 /**
- * Creates an OO.ui.OutlineItemWidget object.
- *
- * Use with OO.ui.OutlineWidget.
+ * Items for an OO.ui.OutlineWidget.
  *
  * @class
  * @extends OO.ui.DecoratedOptionWidget
@@ -9148,7 +9183,7 @@ OO.ui.PopupWidget = function OoUiPopupWidget( config ) {
        this.autoClose = !!config.autoClose;
        this.$autoCloseIgnore = config.$autoCloseIgnore;
        this.transitionTimeout = null;
-       this.anchor = false;
+       this.anchor = null;
        this.width = config.width !== undefined ? config.width : 320;
        this.height = config.height !== undefined ? config.height : null;
        this.align = config.align || 'center';
@@ -9159,7 +9194,7 @@ OO.ui.PopupWidget = function OoUiPopupWidget( config ) {
        this.closeButton.connect( this, { 'click': 'onCloseButtonClick' } );
 
        // Initialization
-       this.toggleAnchor( config.anchor !== undefined ? !!config.anchor : true );
+       this.toggleAnchor( config.anchor === undefined || config.anchor );
        this.$body.addClass( 'oo-ui-popupWidget-body' );
        this.$anchor.addClass( 'oo-ui-popupWidget-anchor' );
        this.$head
@@ -9381,7 +9416,8 @@ OO.ui.PopupWidget.prototype.updateDimensions = function ( transition ) {
 /**
  * Search widget.
  *
- * Combines query and results selection widgets.
+ * Search widgets combine a query input, placed above, and a results selection widget, placed below.
+ * Results are cleared and populated each time the query is changed.
  *
  * @class
  * @extends OO.ui.Widget
@@ -9533,7 +9569,10 @@ OO.ui.SearchWidget.prototype.getResults = function () {
 };
 
 /**
- * Selection of options.
+ * Generic selection of options.
+ *
+ * Items can contain any rendering, and are uniquely identified by a has of thier data. Any widget
+ * that provides options, from which the user must choose one, should be built on this class.
  *
  * Use together with OO.ui.OptionWidget.
  *
@@ -10077,7 +10116,10 @@ OO.ui.ButtonSelectWidget = function OoUiButtonSelectWidget( config ) {
 OO.inheritClass( OO.ui.ButtonSelectWidget, OO.ui.SelectWidget );
 
 /**
- * Menu widget.
+ * Overlaid menu of options.
+ *
+ * Menus are clipped to the visible viewport. They do not provide a control for opening or closing
+ * the menu.
  *
  * Use together with OO.ui.MenuItemWidget.
  *
@@ -10088,6 +10130,7 @@ OO.inheritClass( OO.ui.ButtonSelectWidget, OO.ui.SelectWidget );
  * @constructor
  * @param {Object} [config] Configuration options
  * @cfg {OO.ui.InputWidget} [input] Input to bind keyboard handlers to
+ * @cfg {OO.ui.Widget} [widget] Widget to bind mouse handlers to
  * @cfg {boolean} [autoHide=true] Hide the menu when the mouse is pressed outside the menu
  */
 OO.ui.MenuWidget = function OoUiMenuWidget( config ) {
@@ -10106,6 +10149,7 @@ OO.ui.MenuWidget = function OoUiMenuWidget( config ) {
        this.newItems = null;
        this.autoHide = config.autoHide === undefined || !!config.autoHide;
        this.$input = config.input ? config.input.$input : null;
+       this.$widget = config.widget ? config.widget.$element : null;
        this.$previousFocus = null;
        this.isolated = !config.input;
        this.onKeyDownHandler = OO.ui.bind( this.onKeyDown, this );
@@ -10130,7 +10174,7 @@ OO.mixinClass( OO.ui.MenuWidget, OO.ui.ClippableElement );
  * @param {jQuery.Event} e Key down event
  */
 OO.ui.MenuWidget.prototype.onDocumentMouseDown = function ( e ) {
-       if ( !$.contains( this.$element[0], e.target ) ) {
+       if ( !$.contains( this.$element[0], e.target ) && ( !this.$widget || !$.contains( this.$widget[0], e.target ) ) ) {
                this.toggle( false );
        }
 };
@@ -10321,6 +10365,10 @@ OO.ui.MenuWidget.prototype.toggle = function ( visible ) {
 /**
  * Menu for a text input widget.
  *
+ * This menu is specially designed to be positioned beneeth the text input widget. Even if the input
+ * is in a different frame, the menu's position is automatically calulated and maintained when the
+ * menu is toggled or the window is resized.
+ *
  * @class
  * @extends OO.ui.MenuWidget
  *
@@ -10415,7 +10463,7 @@ OO.ui.TextInputMenuWidget.prototype.position = function () {
 };
 
 /**
- * Create an OO.ui.OutlineWidget object.
+ * Structured list of items.
  *
  * Use with OO.ui.OutlineItemWidget.
  *
index 8c2b3f1..08dffc7 100644 (file)
@@ -1,12 +1,12 @@
 /*!
- * OOjs UI v0.1.0-pre (d2451ac748)
+ * OOjs UI v0.1.0-pre (97dbb50137)
  * https://www.mediawiki.org/wiki/OOjs_UI
  *
  * Copyright 2011–2014 OOjs Team and other contributors.
  * Released under the MIT license
  * http://oojs.mit-license.org
  *
- * Date: 2014-07-14T16:49:51Z
+ * Date: 2014-07-16T22:59:48Z
  */
 /* Textures */
 
   line-height: 1em;
 }
 
-.oo-ui-window-frame > .oo-ui-frame {
+> .oo-ui-window-frame {
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
+}
+
+> .oo-ui-window-frame > .oo-ui-frame {
   width: 100%;
   height: 100%;
 }
   height: 100%;
 }
 
+.oo-ui-windowManager-fullscreen > .oo-ui-dialog > .oo-ui-window-frame {
+  top: 0;
+  bottom: 0;
+  width: 100%;
+  height: 100%;
+}
+
+.oo-ui-messageDialog-actions-horizontal {
+  display: table;
+  width: 100%;
+  table-layout: fixed;
+}
+
+.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
+  display: table-cell;
+  width: 1%;
+}
+
+.oo-ui-messageDialog-actions-vertical {
+  display: block;
+}
+
+.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
+  display: block;
+  overflow: hidden;
+  text-overflow: ellipsis;
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget {
+  position: relative;
+  text-align: center;
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-buttonedElement-button {
+  display: block;
+}
+
+.oo-ui-messageDialog-actions .oo-ui-actionWidget .oo-ui-labeledElement-label {
+  position: relative;
+  top: auto;
+  bottom: auto;
+  display: inline;
+  white-space: nowrap;
+}
+
+.oo-ui-processDialog-location {
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+}
+
+.oo-ui-processDialog-title {
+  display: inline;
+}
+
+.oo-ui-processDialog-actions-safe .oo-ui-actionWidget,
+.oo-ui-processDialog-actions-primary .oo-ui-actionWidget,
+.oo-ui-processDialog-actions-other .oo-ui-actionWidget {
+  white-space: nowrap;
+}
+
+.oo-ui-processDialog-actions-safe,
+.oo-ui-processDialog-actions-primary {
+  position: absolute;
+  top: 0;
+  bottom: 0;
+}
+
+.oo-ui-processDialog-actions-safe {
+  left: 0;
+}
+
+.oo-ui-processDialog-actions-primary {
+  right: 0;
+}
+
+.oo-ui-processDialog-errors {
+  position: absolute;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  z-index: 2;
+  display: none;
+  padding: 3em 3em 1.5em 3em;
+  overflow-x: hidden;
+  overflow-y: auto;
+}
+
 .oo-ui-buttonedElement > .oo-ui-buttonedElement-button {
   display: inline-block;
   vertical-align: middle;
   padding: 0.5em 0;
 }
 
+.oo-ui-fieldLayout > .oo-ui-popupButtonWidget > .oo-ui-buttonedElement-button > .oo-ui-iconedElement-icon {
+  margin-top: 0.25em;
+}
+
+.oo-ui-fieldLayout > .oo-ui-popupButtonWidget > .oo-ui-popupWidget > .oo-ui-popupWidget-popup {
+  z-index: 1;
+}
+
 .oo-ui-fieldsetLayout {
   position: relative;
   padding: 0;
   padding: 0.5em 0;
 }
 
+.oo-ui-panelLayout {
+  position: relative;
+}
+
 .oo-ui-panelLayout-scrollable {
   overflow-y: auto;
 }
 
+.oo-ui-panelLayout-expanded {
+  position: absolute;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+}
+
 .oo-ui-stackLayout > .oo-ui-panelLayout {
   display: none;
 }
 }
 
 .oo-ui-menuToolGroup .oo-ui-tool-active .oo-ui-tool-link .oo-ui-iconedElement-icon {
-  background-image: /* @embed */ url(images/icons/check.png);
+  background-image: /* @embed */ url(images/icons/check.svg);
 }
 
 .oo-ui-menuToolGroup .oo-ui-tool.oo-ui-widget-disabled .oo-ui-tool-link {