Update OOUI to v0.32.1
[lhc/web/wiklou.git] / resources / lib / ooui / History.md
1 # OOUI Release History
2 ## v0.32.1 / 2019-06-04
3 ### Features
4 * Add 'helpInline' support to FieldsetLayout (Ed Sanders)
5
6 ### Styles
7 * Field(set)Layout: Use `cursor:help` in PHP mode (Ed Sanders)
8 * TabSelectWidget: Use right margin for frameless options (Ed Sanders)
9 * Apex theme: Fix NumberInputWidget height issues (Volker E.)
10 * Apex theme: Frameless tabs tweaks (Ed Sanders)
11 * Apex theme: Simplify `line-height` CSS logic (Volker E.)
12 * Apex theme: Unify DropdownWidget label position with buttons and inputs (Volker E.)
13 * icons: Add 'infoFilled' (Volker E.)
14 * icons: Amend 'settings' to align to SVGO output (Volker E.)
15
16 ### Code
17 * ActionFieldLayout: Add `z-index` hack to invalid input element (Volker E.)
18 * Direct users of TabSelectWidget to IndexLayout (Ed Sanders)
19 * DropdownWidget: Make label `display: inline-block` (Volker E.)
20 * Field(set)Layout.php: Don't output config defaults (Ed Sanders)
21 * Make first tab alignment from demo page the default (Ed Sanders)
22 * SelectFileWidget: Behave more like a button in buttonOnly mode (Ed Sanders)
23 * demos: Avoid `$.each` (Ed Sanders)
24 * demos: Copy TabSelectWidget from PHP to JS, and add frameless to both (Ed Sanders)
25 * demos: Fix exception when changing page (Ed Sanders)
26 * demos: Improve `Demo.prototype.getUrlQuery` API (Ed Sanders)
27 * demos: Reduce header height for correct rendering (Volker E.)
28 * demos: Reorder flagged buttons and add inline message (Volker E.)
29 * demos: Set `isMobile` earlier (Ed Sanders)
30 * demos: Use different font stack per theme (Volker E.)
31 * tutorials: Fix a few minor style glitches (Volker E.)
32 * tutorials: Fix footer layout (Volker E.)
33
34
35 ## v0.32.0 / 2019-05-28
36 ### Breaking changes
37 * [BREAKING CHANGE] SelectWidget: Drop depressed class, deprecated since 0.30.4 (James D. Forrester)
38 * [BREAKING CHANGE] Toolbar: Remove support for non-tool buttons (Ed Sanders)
39 * [BREAKING CHANGE] icons: Drop 'web', deprecated in v0.30.4 (James D. Forrester)
40
41 ### Features
42 * Implement frameless mode for TabSelectWidget (Ed Sanders)
43 * LookupElement: Add showSuggestionsOnFocus flag (Ed Sanders)
44
45 ### Styles
46 * WikimediaUI theme: Enable correct DropdownInputWidget styling on IE 8-9 (Volker E.)
47 * Apex theme: Synchronise icons with WikimediaUI (James D. Forrester)
48 * Apex theme: Add text colour to bar tools (Ed Sanders)
49 * icons: Better align 'articleDisambiguation*' and 'articleNotFound*' (Volker E.)
50 * icons: Manually recreate settings.svg icon (Thiemo Kreuz)
51
52 ### Code
53 * DropdownInputWidget: Use native `select` when `isMobile` is true (Volker E.)
54 * DropdownWidget: Alternative ARIA roles and attributes approach (Volker E.)
55 * Make 'Infuse' button behave like a toggle (Ed Sanders)
56 * Revert "Merge "DropDownWidget: Turn handle into `button` and add ARIA attribute"" (Volker E.)
57 * SelectWidget: Fix keyboard accessibility issue with select widgets (Moriel Schottlender)
58 * TabSelectWidget: Horizontally scroll tabs on mobile (Ed Sanders)
59 * build: Upgrade grunt-cssjanus from 0.4.0 to 0.5.0 (James D. Forrester)
60 * demos: Change doc and tutorials link to frameless (Volker E.)
61 * demos: Expand max-width, from mostly-arbitrary 62.5em to 68.5715em (James D. Forrester)
62 * demos: Fix error CSS for demos (Gabriel Birke)
63 * demos: Improve example and console toggle links usability (Volker E.)
64 * demos: Make the spacing in header identical in PHP and JS (Bartosz Dziewoński)
65 * demos: Move 'layouts' to a specific page in demos (Volker E.)
66 * demos: Provide headings for better user orientation (Volker E.)
67 * demos: Use system font stack for demos (Volker E.)
68 * demos: Use tabs for demo page list (Ed Sanders)
69
70
71 ## v0.31.6 / 2019-05-07
72 ### Styles
73 * FieldLayout: Use 'error' icon for error messages (Volker E.)
74 * FieldLayout, FieldsetLayout: Remove bad `z-index` override for help popup (Bartosz Dziewoński)
75 * MenuSelectWidget: Amend value to reflect one option's height (Volker E.)
76 * PopupTool: Fix popup `z-index` override (Bartosz Dziewoński)
77 * icons: Add 'articleDisambiguation*' and 'articleNotFound*' (Volker E.)
78
79 ### Code
80 * WikimediaUI theme: Fix regression of too short menu items (Volker E.)
81 * build: Upgrade eslint-config-wikimedia 0.12.0, drop grunt-jsonlint (James D. Forrester)
82
83
84 ## v0.31.5 / 2019-04-24
85 ### Features
86 * MenuSelectWidget: Fix highlight on re-display (Lucas Werkmeister)
87 * NumberInputWidget: Disable event listeners when disabled or readOnly (Ed Sanders)
88
89 ### Styles
90 * PopupWidget: Fix stacking context problems caused by `filter: drop-shadow` (Bartosz Dziewoński)
91
92 ### Code
93 * docs: {undefined/boolean} -> {undefined|boolean} (Ed Sanders)
94 * icons: Re-crush with 'svgmin' build task (Volker E.)
95
96
97 ## v0.31.4 / 2019-04-16
98 ### Features
99 * Element: Make `scrollIntoView()` more flexible (Ed Sanders)
100 * NumberInputWidget: Disable buttons when read-only (Ed Sanders)
101 * RequestManager: Add `showPendingRequest` option (Ed Sanders)
102 * Toolbar: Support flagged buttons (Ed Sanders)
103
104 ### Styles
105 * CheckboxInputWidget: Fix styling of indeterminate with focus/hover/active (Ed Sanders)
106 * CheckboxMultioptionWidget: Remove full width (Thalia Chan)
107 * PopupWidget: Progressively enhance to use `filter: drop-shadow()` (Volker E.)
108 * RadioOptionWidget: Remove full-width radio buttons to bring consistency with checkboxes (David Barratt)
109 * WikimediaUI theme: Fix popup callout border color (Ed Sanders)
110 * WikimediaUI theme: Fix PHP Checkbox- & RadioInputWidget native appearance (Volker E.)
111
112 ### Code
113 * Fix `'inherit'` value passed to toolbar mixin (Ed Sanders)
114 * MenuSelect-/SelectWidget: Fix eslint `max-len` warnings (Volker E.)
115 * NumberInputWidget: Remove duplicate documentation (Ed Sanders)
116 * OptionWidget: Fix copy-paste from LabelElement (Bartosz Dziewoński)
117 * icons: Point Wikimedia icon in Apex theme to correct file (Stephen Niedzielski)
118 * testsuitegenerator: Do not generate duplicate tests if config options are duplicated (Bartosz Dziewoński)
119
120
121 ## v0.31.3 / 2019-04-03
122 ### Features
123 * SelectFileInputWidget: Support multiple files (Ed Sanders)
124 * WikimediaUI theme: Allow inverted icons to appear anywhere (Roan Kattouw)
125
126 ### Styles
127 * CheckboxMultiselect- & RadioselectInputWidget: Fix infusion reflow (Volker E.)
128 * DropdownInputWidget: Make WikimediaUI version useable for non-JS users (Volker E.)
129 * WikimediaUI theme: Increase and unify widget `line-height` (Volker E.)
130 * WikimediaUI theme: Reduce accessory icon's opacity in non-focussed state (Volker E.)
131 * WikimediaUI theme: Unify inlined FieldLayout padding (Volker E.)
132 * icons: Add 'error' icon to 'alerts' pack (Volker E.)
133 * icons: Amend 'helpNotice' filename (Volker E.)
134 * icons: Make 'error' octagon regular (Ed Sanders)
135
136 ### Code
137 * SelectFile(Input)Widget: Remove addInput and inline setupInput (Ed Sanders)
138 * SelectFileInputWidget: Make 'title' behaviour consistent (Ed Sanders)
139 * build: Bump non-qunit devDependencies to latest where possible (Volker E.)
140 * build: Do not duplicate localisation messages and their docs in JS code (Bartosz Dziewoński)
141 * build: Have 'quick-build' use 'build-code' to include messages (Ed Sanders)
142 * build: Remove unnecessary 'enable-source-maps' task (Bartosz Dziewoński)
143 * build: We distribute icon/indicator/texture manifests, too (James D. Forrester)
144 * demos: Add Vietnamese labels (Volker E.)
145 * demos: Add `title` to LTR/RTL ButtonWidgets (Volker E.)
146 * demos: Re-order PHP TextInput demo to align with the JS demo (Volker E.)
147 * docs: Fix syntax errors in MenuLayout (Huji Lee)
148
149
150 ## v0.31.2 / 2019-03-26
151 ### Features
152 * CheckboxInputWidget: Add support for indeterminate state (Ed Sanders & Bartosz Dziewoński)
153
154 ### Code
155 * DropdownInputWidget: Fix typo in Apex border styles (Ed Sanders)
156 * SelectFileInputWidget: Apply IE11 scrolling fix (Ed Sanders)
157 * TextInputWidget: Remove proprietary vendor UI extensions (Volker E.)
158 * PHP: Tag: Use strict comparison for `array_search` (Ed Sanders)
159 * icons: Identical optimization to both newspaper-ltr… and …rtl.svg icons (Thiemo Kreuz)
160 * icons: Make use of the auto-closing feature in SVG `<path>`s (Thiemo Kreuz)
161 * icons: Remove non-standard offset from web.svg icon (Thiemo Kreuz)
162 * demo: Match PHP toolbar to JS (Ed Sanders)
163 * build: Update package-lock.json (Ed Sanders)
164 * build: Upgrade js-yaml sub-dependency from 3.12.1 to 3.13.0 for DoS fix (James D. Forrester)
165 * packages: Massively trim down which files are in npm and composer packages (James D. Forrester)
166
167
168 ## v0.31.1 / 2019-03-21
169 ### Deprecations
170 * [DEPRECATING CHANGE] core: Remove unused Date.now fallback (Timo Tijhof)
171 * [DEPRECATING CHANGE] textures: Deprecate 'pending.gif' (Volker E.)
172 * [DEPRECATING CHANGE] textures: Deprecate unused 'transparency' (Volker E.)
173
174 ### Features
175 * MenuTagMultiselectWidget: `hideOnChoose` should be set to false (Moriel Schottlender)
176 * MenuTagMultiselectWidget: `highlightOnFilter` only if not `allowArbitrary` (Moriel Schottlender)
177 * MenuTagMultiselectWidget: Fix highlight and scrolling to item behavior (Moriel Schottlender)
178 * SearchInputWidget: Use click handler for indicator (Ed Sanders)
179 * SelectWidget: Allow multiselect mode, add to MenuTagMultiselectWidget (Moriel Schottlender)
180 * SelectFileWidget: Support a button-only mode (Ed Sanders)
181 * SelectFileWidget: Suppress misleading browser default tooltips (Bartosz Dziewoński)
182 * SelectFileInputWidget: Create as a super-class of SelectFileWidget (Ed Sanders)
183 * SelectFileInputWidget: Allow button config to be passed (Ed Sanders)
184 * TagMultiselectWidget: Edit by item label, not data (Moriel Schottlender)
185
186 ### Styles
187 * Separate SelectFileWidget and SelectFileInputWidget styles (Ed Sanders)
188 * themes: Provide `background` needed for PendingElement on inputs (Volker E.)
189 * themes: Replace 'pending.gif' with CSS animation (Volker E.)
190 * icons: Manually rewrite paths of tableMove….svg icons (Thiemo Kreuz)
191 * icons: Recreate settings.svg icon with shorter syntax (Thiemo Kreuz)
192 * icons: Remove invisible parts from web.svg icon (Thiemo Kreuz)
193 * icons: Remove unused dotted borders from imageLayout….svg icons (Thiemo Kreuz)
194 * icons: Use rounded <rect> elements to optimize some SVG icons (Thiemo Kreuz)
195
196 ### Code
197 * MenuSectionOptionWidget: Avoid select events (Gabriel Birke)
198 * SelectFileInputWidget: Rewrite as an ActionFieldLayout (Ed Sanders)
199 * testsuitegenerator: Reduce PHP test count by 40% (Ed Sanders)
200 * testsuitegenerator: Reduce some code duplication (Bartosz Dziewoński)
201 * testsuitegenerator: Use normal methods more instead of lambdas (Bartosz Dziewoński)
202 * docs: Clarify some types in documentation (Bartosz Dziewoński)
203 * docs: Fix missing `;` and typos in documentation examples (Volker E.)
204 * demos: Make demo toolbar narrower (Ed Sanders)
205 * build: Specify library entry (Stephen Niedzielski)
206 * Grunt: Add a quick-build-code task for JS-only quick builds (Ed Sanders)
207
208
209 ## v0.31.0 / 2019-03-13
210 ### Breaking changes
211 * [BREAKING CHANGE] Remove FlaggedElement from InputWidget (Ed Sanders)
212 * [BREAKING CHANGE] Remove method names deprecated in 0.28.3 (Ed Sanders)
213 * [BREAKING CHANGE] indicators: Drop 'search', deprecated in v0.30.0 (James D. Forrester)
214 * [BREAKING CHANGE]: Drop `iconTitle` and `indicatorTitle`, deprecated in v0.30.0 (James D. Forrester)
215
216 ### Features
217 * Add 'success' message type (Volker E.)
218 * Make mixin configs extendable (Ed Sanders)
219 * PanelLayout: Create preserveContent config (Ed Sanders)
220 * SelectFileWidget: Be consistent with showDropTarget requiring droppable (Ed Sanders)
221 * SelectFileWidget: Mixin TabIndexedElement (Ed Sanders)
222 * PHP: Added server-side version of IndexLayout (Cormac Parle)
223 * PHP: Implement MenuLayout (Ed Sanders)
224 * PHP: Implement StackLayout (Ed Sanders)
225 * PHP: Implement TabPanelLayout (Ed Sanders)
226 * PHP: Implement TabSelectWidget/TabOptionWidget (Ed Sanders)
227 * PHP: Preserve content inside PanelLayout and test (Ed Sanders)
228
229 ### Styles
230 * WikimediaUI theme: Fix ComboBoxInputWidget rounded corners (Bartosz Dziewoński)
231 * WikimediaUI theme: Fix toolbar tools' `padding` (Volker E.)
232
233 ### Code
234 * MenuLayout.php: Fix visiblity of properties and default config values (Ed Sanders)
235 * Tag.php: Fix (ap/pre)pendContent to behave like JS DOM (Ed Sanders)
236 * PHP tests: Only test ltr/rtl for 'dir', remove value='b' tests (Ed Sanders)
237 * PHP tests: Only test one string for inputId (Ed Sanders)
238 * demo: Unify demo navigation toolbars (Ed Sanders)
239 * docs: Change docblock style for array elements in $config (Daimona Eaytoy)
240 * build: Upgrade grunt-svg2png to 0.2.7-wmf.2 for audit fixes (James D. Forrester)
241 * build: Upgrade imagemin-zopfli to 6.0.0 for audit fix (James D. Forrester)
242 * build: Upgrade javascript-stringify to 2.0.0 for audit fix (James D. Forrester)
243 * eslint: Enable cache (Ed Sanders)
244
245
246 ## v0.30.4 / 2019-03-06
247 ### Deprecations
248 * [DEPRECATING CHANGE] SelectWidget: Rename '-depressed' to '-unpressed' (Ed Sanders)
249 * [DEPRECATING CHANGE] icons: Deprecate 'web' from 'editing-citation' (Volker E.)
250
251 ### Features
252 * Implement 'error' flag and 'warning' type messages (Volker E.)
253 * MenuSelectWidget: Add 'filterMode' (Moriel Schottlender)
254
255 ### Styles
256 * Apex theme: Bring icons and layout styles from WikimediaUI theme (Volker E.)
257 * ButtonElement: Add styling for disabled active framed buttons (Bartosz Dziewoński)
258 * icons: Snap 'camera' icon's frame to pixel grid (Ed Sanders)
259 * icons: Add 'articleAdd' to 'content' pack (Volker E.)
260 * icons: Add 'imageLayout…' icons to 'editing-advanced' pack (Volker E.)
261 * WikimediaUI theme: De-emphasize `opacity` on TextInputWidget icons (Volker E.)
262 * WikimediaUI theme: Give user messages more whitespace (Volker E.)
263 * WikimediaUI theme: Place icons at top of message (Volker E.)
264 * themes: Fix TagItemWidget's vertical alignment in Safari (Volker E.)
265 * themes: Fix `padding` of label in DropdownWidget (Volker E.)
266 * themes: Provide 'emphasized' color for messages (Volker E.)
267
268 ### Code
269 * Consistently spell "access key" (Bartosz Dziewoński)
270 * Follow-up I5991001e257: Add missing function call to normalize query (Ed Sanders)
271 * Follow-up I5991001e: Do not filter item if query is empty (Moriel Schottlender)
272 * MenuTagMultiselectWidget: Use 'highlightOnFilter' flag in MenuSelectWidget (Ed Sanders)
273 * SelectWidget: Rewrite getItemMatcher without regular expressions (Ed Sanders)
274 * Tag.php: Prevent duplicates in class list (Ed Sanders)
275 * TextInputWidget: Reduce selector where applicable (Volker E.)
276 * themes: Unify TextInput selector code (Volker E.)
277 * build: Consistently indent .eslintrc.json files with tabs (Bartosz Dziewoński)
278 * build: Enable eslint 'max-len' in code and fix (James D. Forrester)
279 * build: Remove obsolete stylelint overrides (Volker E.)
280 * build: Update eslint-config-wikimedia to 0.11.0 (Ed Sanders)
281 * docs: Unify key names in documentation (Volker E.)
282 * icons: Manually optimize the SVG code of some icons (Thiemo Kreuz)
283 * icons: Re-crush with 'svgmin' build task (Volker E.)
284 * icons: Remove redundant `ry="…"` SVG attribute when identical to `rx="…"` (Thiemo Kreuz)
285
286
287 ## v0.30.3 / 2019-02-20
288 ### Styles
289 * WikimediaUI theme: Align TagItemWidget's close icon correctly (Volker E.)
290 * WikimediaUI theme: Provide single-line TextInputWidgets with a distinct height (Volker E.)
291 * WikimediaUI theme: Unify `padding-top` and `padding-bottom` values (Volker E.)
292 * WikimediaUI theme: Use consistent base size for TagMultiselectWidget's input (Volker E.)
293 * WikimediaUI theme: Use distinct `height` for NumberInputWidget's widgets (Volker E.)
294
295 ### Code
296 * Deprecation warnings for this.$ (Bartosz Dziewoński)
297 * ComboBoxInputWidget: Disable controls when widget is set to read-only (Ed Sanders)
298 * MenuSelectWidget: Documentation fix (Ed Sanders)
299 * ProgressBarWidget: Fix irregularities in indeterminate styling (Bartosz Dziewoński)
300 * TagMultiselectWidget: Populate input with item label on Backspace key press (Thalia Chan)
301 * Update getScrollLeft from upstream (Ed Sanders)
302 * themes: Replace element by class attribute selector (Volker E.)
303 * WikimediaUI theme: Remove variables with duplicated values (Volker E.)
304 * build: Enforce selector prefixes in tutorials by stylelint (Ed Sanders)
305 * build: Update eslint-config-wikimedia from 0.10.0 to 0.10.1 (James D. Forrester)
306 * build: Updating mediawiki/mediawiki-codesniffer to 24.0.0 (libraryupgrader)
307 * demos: Address oversized ButtonWidget (icon-only) in IE & Edge (Volker E.)
308 * demos: Render demo header cleaner from top (Volker E.)
309 * demos: Use `demo-root` class in PHP demos as well (Volker E.)
310 * docs: Fix URI in description (Volker E.)
311
312
313 ## v0.30.2 / 2019-01-22
314 ### Features
315 * Allow dropdown menu items to be disabled (Sam Wilson)
316
317 ### Styles
318 * Align new icons to pixel grid (Bartosz Dziewoński)
319 * Fix transparency of 'unFlag' icon in RTL (Bartosz Dziewoński)
320 * themes: Use 'clear' icon for clearing SelectFileWidget's input (Volker E.)
321 * icons: Add Wikidata logo to 'Wikimedia' pack (James D. Forrester)
322 * icons: Add Wikimedia logo to 'Wikimedia' pack (James D. Forrester)
323 * icons: Use complete glyph for 'musicalScore' icon (Ed Sanders)
324 * icons: Update 'referenceExisting' and 'references' (Volker E.)
325
326 ### Code
327 * DropdownWidget: `$handle` needs to carry `type="button"` (Volker E.)
328 * GroupElement: Make add/remove operations no-ops if items is empty (Kosta Harlan)
329 * WikimediaUI theme: Prevent z-index leaks for radios and checkboxes (Bartosz Dziewoński)
330 * build: Fix colorize SVG regression on icon `title` elements (Volker E.)
331 * build: Enable eslint-plugin-html to lint JS in HTML files (Ed Sanders)
332 * build: Enable eslint reportUnusedDisableDirectives (Ed Sanders)
333 * build: Enforce stylelint selector prefixes in code and demos (Ed Sanders)
334 * build: Update package-lock.json (James D. Forrester)
335 * icons: Add missing `<title>` to 'web' icon (Bartosz Dziewoński)
336 * icons: Enable invert & progressive flag on 'editing-citation' pack (Volker E.)
337 * icons: Remove `fill` from 'robot' to enable colorizing it (Volker E.)
338 * icons: Remove invisible path from 'unBlock' icon (Bartosz Dziewoński)
339 * icons: Remove unnecessary `fill-rule` attribute from icon code (Bartosz Dziewoński)
340 * icons: Remove unused code from 'camera' icon (Bartosz Dziewoński)
341
342
343 ## v0.30.1 / 2019-01-09
344 ### Deprecations
345 * [DEPRECATING CHANGE]: Deprecate `iconTitle` and `indicatorTitle` (Volker E.)
346
347 ### Styles
348 * icons: Decrease 'close' size marginally (Volker E.)
349 * themes: Fine tune library 'close' icon usages (Volker E.)
350
351 ### Code
352 * Add TitledElement mixin to all main widgets where useful (Volker E.)
353 * Clean up handling of `aria-expanded` attribute (Bartosz Dziewoński)
354 * DropdownInputWidget: Fix mixing in TitledElement twice (Bartosz Dziewoński)
355 * MultilineTextInputWidget: Move `styleHeight` property into widget from parent (Volker E.)
356 * Replace double TitledElement mixins in several widgets (Volker E.)
357 * build: Commit package-lock.json (James D. Forrester)
358 * build: Bump various devDependencies to latest (Volker E.)
359 * build: Update eslint-config-wikimedia to 0.10.0 (Volker E.)
360 * build: Upgrade grunt-banana-checker from 0.6.0 to 0.7.0 (James D. Forrester)
361 * demos: Replace most unicode LTR markers with CSS rule (Volker E.)
362 * docs: Bump copyright year for 2019 (James D. Forrester)
363 * docs: Unify code examples and describe MultilineText- & SearchInputWidget (Volker E.)
364 * tests: Make JS/PHP comparison tests async (Bartosz Dziewoński)
365 * tests: Reduce code duplication in JS/PHP comparison tests (Bartosz Dziewoński)
366 * tests: Unbreak JS/PHP tests for DropdownInputWidget (Bartosz Dziewoński)
367
368
369 ## v0.30.0 / 2018-12-19
370 ### Breaking changes
371 * [BREAKING CHANGE] Make non-continuous StackLayouts non-scrollable (Ed Sanders)
372 * [BREAKING CHANGE] icons: Drop 'advanced' icon, deprecated in v0.28.1 (Volker E.)
373
374 ### Features
375 * DropdownInputWidget: Add `title` config option to handle (Volker E.)
376
377 ### Deprecations
378 * [DEPRECATING CHANGE] Deprecate passing string IDs to infuse (Ed Sanders)
379 * [DEPRECATING CHANGE] PopupTagMultiselectWidget: Deprecate widget (Volker E.)
380 * [DEPRECATING CHANGE] indicators: Flag unused 'search' indicator as to be removed (Volker E.)
381
382 ### Styles
383 * WikimediaUI theme: Make up for inner 'down' indicator distance (Volker E.)
384 * Apex theme: Align functionality of ComboBoxInputWidget with WikimediaUI theme (Volker E.)
385 * Apex theme: DropdownWidget align CSS code to WikimediaUI theme (Volker E.)
386 * Apex theme: Unify distance on icon and label TextInputWidget (Volker E.)
387 * Apex theme: Use variable for `text-shadow` and unify (Volker E.)
388 * icons: Add 'robot' icon to 'content' pack (Volker E.)
389 * icons: Add localized 'bold' and 'italic' for Urdu (Tulsi Bhagat)
390 * build: Update 'wikimedia-ui-base' to latest (Volker E.)
391
392 ### Code
393 * Avoid HTML parsing (Ed Sanders)
394 * Avoid deprecated OO.ui.infuse( id ) (Ed Sanders)
395 * Use `-webkit-overflow-scrolling: touch` for scrollable things (Bartosz Dziewoński)
396 * ComboBoxInputWidget: Add 'label' and `aria-controls` attribute to button (Volker E.)
397 * ComboBoxInputWidget: `aria-expanded` needs to be set from intialization (Volker E.)
398 * DropDownWidget: Turn handle into `button` and add ARIA attribute (Volker E.)
399 * LookupElement: `aria-expanded` needs to be set from intialization (Volker E.)
400 * MenuTagMultiselectWidget: Clear input before adding tag (Thalia Chan)
401 * TagMultiselectWidget: Resize input when enabling (Thalia Chan)
402 * WindowManager: Move inline CSS to a class (Bartosz Dziewoński)
403 * Hygiene: Don't put a space after mixin names when defining them (Bartosz Dziewoński)
404 * i18n: Fix 'tooltip' in qqq descriptions (Volker E.)
405 * build: Bump various devDependencies to latest (James D. Forrester)
406 * build: Fix case of 'LESS' in comments (Volker E.)
407 * tests: Unbreak unit tests (Bartosz Dziewoński)
408 * demos: Add ARIA `role="main"` to PHP demo (Volker E.)
409 * demos: Add labels to remaining DropdownWidgets (Volker E.)
410 * demos: Don't showcase 'indicator' only buttons explicitly (Volker E.)
411 * demos: Ensure color contrast on special, non-production summary example (Volker E.)
412 * demos: Avoid implicit globals in infusion demo (Ed Sanders)
413 * demos: Let buttons in PHP demo carry screen reader labels (Volker E.)
414 * demos: Make the interface usable on mobile (Bartosz Dziewoński)
415 * demos: Reorder icons and indicators (Volker E.)
416 * demos: Use appropriate 'helpNotice' icon for location (Volker E.)
417 * demos: Use system monospace font stack following Style Guide (Volker E.)
418 * tutorials: Center box shadows (Ed Sanders)
419 * tutorials: Replace $(document).ready with $(fn) (Ed Sanders)
420 * tutorials: Select current page in dropdown (Ed Sanders)
421 * tutorials: Use CSS transitions for scroller (Ed Sanders)
422 * tutorials: Use system monospace font stack following Style Guide (Volker E.)
423
424
425 ## v0.29.6 / 2018-12-04
426 ### Styles
427 * Match BookletLayout menu's width and animations to Dialog's (Bartosz Dziewoński)
428 * WikimediaUI theme: Ensure `transition` of PopupToolGroup in actions toolbar (Volker E.)
429 * icons: Union the paths in 'undo' and 'redo' (Ed Sanders)
430 * icons: Use correct 'settings' title (Volker E.)
431
432 ### Code
433 * BrokenDialog: Remove superfluous and broken second parent call (Roan Kattouw)
434 * MenuTagMultiselectWidget: Allow adding arbitrary values (Moriel Schottlender)
435 * ProcessDialog: Fit label (dialog title) when it changes (Bartosz Dziewoński)
436 * Remove 'jQuery' alias (Ed Sanders)
437 * TagItemWidget: Fix operator precendence (James D. Forrester)
438 * eslint: Drop 'dot-notation' rule (James D. Forrester)
439 * eslint: Enable jquery/no-(show/hide/toggle) rules (Ed Sanders)
440 * eslint: Fix config extends, and move 'no-void' rule overrides inline (Ed Sanders)
441 * build: Enable 'at-rule-empty-line-before' stylelint rule and make pass (Volker E.)
442 * build: Reintroduce icons to dist images-theme CSS files (Volker E.)
443 * build: Remove over-ride for max-len in build code (James D. Forrester)
444 * build: Update 'eslint-config-wikimedia' to v0.9.0 and make pass (Volker E.)
445 * build: Update mediawiki/mediawiki-codesniffer to 23.0.0 (libraryupgrader)
446 * build: Update stylelint-config-wikimedia to 0.5.0 and make pass (James D. Forrester)
447 * docs: JSDuck: Use same font-size as elsewhere (Volker E.)
448 * demos: Add `rel="noopener"` to accessibility explanation links (Volker E.)
449 * demos: CSS fixes for mobile dialogs demo (Bartosz Dziewoński)
450 * demos: Use better icons (Volker E.)
451
452
453 ## v0.29.5 / 2018-11-08
454 ### Code
455 * MenuTagMultiselectWidget: Clear input if adding valid tag (Thalia Chan)
456 * TagMultiselectWidget: Rename `limit` config to `tagLimit` (Thalia Chan)
457
458
459 ## v0.29.4 / 2018-11-06
460 ### Features
461 * TagMultiSelectWidget: Add a `limit` configuration option (Moriel Schottlender)
462 * TagMultiselectWidget: Make widget invalid if there's text in input (Moriel Schottlender)
463
464 ### Styles
465 * PopupTool: Prevent flipping the popup opposite to the toolbar position (Bartosz Dziewoński)
466 * WindowManager: Better avoid content shifting when disabling page scrollbars (Bartosz Dziewoński)
467 * WikimediaUI theme: Tame cut-off letter issue (Volker E.)
468
469 ### Code
470 * Dialog.detachActions: Make this method chainable, as documented (James D. Forrester)
471 * FloatableElement: Remove check for `needsCustomPosition` (Bartosz Dziewoński)
472 * build: Enable `valid-jsdoc` (James D. Forrester)
473 * demos: Use consistent options descriptions (Volker E.)
474 * Fix errors flagged by ESLint's `valid-jsdoc` option (Volker E.)
475 * doc: Add documentation for event handlers (James D. Forrester)
476 * doc: ButtonWidget.setHref: Add chainable documentation (James D. Forrester)
477 * doc: Duplicate `@chainable` with manual `@return` comment (James D. Forrester)
478 * doc: Ensure consistent PHP-DOC annotation (Volker E.)
479 * doc: TagItemWidget.isFixed: Add return documentation (James D. Forrester)
480 * doc: WindowManager.openWindow: Explcitly disable `valid-jsdoc` for private parameters (Volker E.)
481
482
483 ## v0.29.3 / 2018-10-31
484 ### Features
485 * LabelElement: Allow invisible accessibility labels (Bartosz Dziewoński)
486 * PanelLayouts: Add #resetScroll method, and implement in complex layouts (Ed Sanders)
487
488 ### Styles
489 * Allow ButtonGroupWidget/SelectWidget buttons to spill on to new lines (Bartosz Dziewoński)
490 * icons: Visually center 'next' and 'previous' horizontally (Volker E.)
491 * themes: Use base color for DecoratedOption-/MenuOptionWidget (Volker E.)
492 * WikimediaUI theme: Make TagItemWidgets slightly less obstrusive (Volker E.)
493
494 ### Code
495 * Add missing default for a localisation message (Bartosz Dziewoński)
496 * Allow setting the label to "0" in PHP (Bartosz Dziewoński)
497 * DropdownWidget: Fix keypress handling when menu is closed (Bartosz Dziewoński)
498 * DropdownWidget: Fix vertical alignment with other widgets in some layouts (Volker E.)
499 * FloatableElement: Fix typo in a condition causing it to always be true (Bartosz Dziewoński)
500 * WikimediaUI theme: Fix specificity of IndexLayout override (Ed Sanders)
501 * demos: Add ActionLayout with DropdownWidget demo (Volker E.)
502 * demos: Restore lost PHP demos (Bartosz Dziewoński)
503 * demos: Use 'previous' icon for one of the ToggleButtonWidgets (Volker E.)
504 * tutorials: Fix navigation items position (Volker E.)
505 * tutorials: Follow Wikimedia color in body default choice (Volker E.)
506
507
508 ## v0.29.2 / 2018-10-08
509 ### Code
510 * Follow-up Ib00d6720: Fix KeyDown listener name in MenuSelectWidget (Ed Sanders)
511 * Pass panels to MenuLayout (Ed Sanders)
512 * demos: Fix selected values in MenuTagMultiselectWidget demo (Bartosz Dziewoński)
513
514
515 ## v0.29.1 / 2018-10-03
516 ### Styles
517 * TabOptionWidget: Increase contrast between normal & selected states (Volker E.)
518
519 ### Code
520 * MultilineTextInputWidget: Fix fatal (Bartosz Dziewoński)
521 * build: Fail in CI if there are uncommited build artefacts (James D. Forrester)
522 * tests: Commit JS/PHP comparison test suite (Bartosz Dziewoński)
523 * tests: Ensure consistent order in JSPHP-suite.json (Bartosz Dziewoński)
524 * tests: Ensure we write LF newlines to JSPHP-suite.json, even on Windows (Bartosz Dziewoński)
525 * tests: Fix generation of JS/PHP comparison test suite (Bartosz Dziewoński)
526 * tests: Increase Karma tests timeout so that they actually finish (Bartosz Dziewoński)
527
528
529 ## v0.29.0 / 2018-10-02
530 ### Breaking changes
531 * [BREAKING CHANGE] Consistently name document listeners (Ed Sanders)
532 * [BREAKING CHANGE] Drop CapsuleMultiselectWidget, deprecated since v0.27.5 (James D. Forrester)
533 * [BREAKING CHANGE] Formally require PHP 7 (5.6.99+) (James D. Forrester)
534 * [BREAKING CHANGE] TextInputWidget: Drop support for `multiline: true` (James D. Forrester)
535 * [BREAKING CHANGE] Upgrade jQuery from 3.2.1 to 3.3.1 (James D. Forrester)
536 * [BREAKING CHANGE] Use PHP 5.6 variadic function syntax (Bartosz Dziewoński)
537 * [BREAKING CHANGE] Use PHP 7 "\u{NNNN}" Unicode codepoint escapes (Bartosz Dziewoński)
538 * [BREAKING CHANGE] Use PHP 7 '??' operator instead of '?:' with 'isset()' (Bartosz Dziewoński)
539
540 ### Features
541 * Use jQuery 3.3.x class feature (Ed Sanders)
542
543 ### Styles
544 * icons: Refine 'userAvatar' slightly (Volker E.)
545
546 ### Code
547 * Avoid including the `/**` comment from WikimediaUI Base in our output (Bartosz Dziewoński)
548 * Centralize the definition of which classes belong in which module (Bartosz Dziewoński)
549 * Remove unnecessary empty-theme.less (Bartosz Dziewoński)
550 * WikimediaUI theme: Correct several code comments (Volker E.)
551 * WikimediaUI theme: Remove vars covered by WikimediaUI Base vars (Volker E.)
552 * build: Bump eslint-config and grunt-karma devDependencies to latest (James D. Forrester)
553 * build: Updating mediawiki/mediawiki-codesniffer to 22.0.0 (James D. Forrester)
554 * demos: Unbreak from reliance on removed CapsuleMultiselectWidget (James D. Forrester)
555
556
557 ## v0.28.2 / 2018-09-11
558 ### Deprecations
559 * [DEPRECATING CHANGE]: icons: Rename 'advanced' to 'settings' (Volker E.)
560
561 ### Features
562 * NumberInputWidget: Rethink 'step' semantics (Bartosz Dziewoński)
563
564 ### Styles
565 * WikimediaUI theme: Slightly reduce 'close' icon in PopupWidget's popup (Volker E.)
566 * icons: Add 'globe' to 'location' pack (Volker E.)
567 * icons: Add 'helpNotice' to 'interactions' pack (Volker E.)
568
569 ### Code
570 * build: Bump devDependencies to latest where possible (James D. Forrester)
571 * docs: Revert "docs: Don't refer to a renamed icon 'settings', use 'advanced'" (James D. Forrester)
572
573
574 ## v0.28.1 / 2018-09-04
575 ### Styles
576 * icons: Add several 'editing-advanced' and 'media' pack icons (Volker E.)
577 * icons: Make 'camera' visible in demos (Volker E.)
578 * icons: Swap LTR and RTL versions of 'stripeToC' (Roan Kattouw)
579 * icons: Use 'lightbulb' in Arabic in place of 'info' (Volker E.)
580 * Apex theme: Fix NumberInputWidget button width (Volker E.)
581
582 ### Code
583 * Improve PHPCS performance by not listing ignored files (Bartosz Dziewoński)
584 * Restore missing icons and fix broken docs link in OOUI tutorials toolbar (Hagar Shilo)
585 * themes: Cleanup `@min-size` & remove `*-numberinput` variables (Volker E.)
586 * build: Bump wikimedia-ui-base (James D. Forrester)
587 * icons: Update 'pageSettings' SVG title (Volker E.)
588 * docs: Correct documentation for Window#open and Window#close (Bartosz Dziewoński)
589 * docs: Don't refer to a renamed icon 'settings', use 'advanced' (James D. Forrester)
590 * demos: Don't try to use the removed 'comment' icon (Bartosz Dziewoński)
591 * demos: Remove some irrelevant icons in toolbars demo (Bartosz Dziewoński)
592 * demos: Use renamed 'pageSettings' icon (Volker E.)
593 * tests: Add tests for Tag::appendContent, Tag::prependContent, Tag::clearContent (Bartosz Dziewoński)
594
595
596 ## v0.28.0 / 2018-08-14
597 ### Breaking changes
598 * [BREAKING CHANGE] icons: Drop 'find' icon, deprecated in v0.26.2 (James D. Forrester)
599 * [BREAKING CHANGE] icons: Drop 'settings' icon, deprecated in v0.27.0 (James D. Forrester)
600 * [BREAKING CHANGE] icons: Drop cite icons, renamed and deprecated in v0.27.0 (James D. Forrester)
601 * [BREAKING CHANGE] icons: Remove 'clip' & 'unClip', deprecated in v0.26.1 (Volker E.)
602 * [BREAKING CHANGE] icons: Remove 'comment', deprecated in v0.26.1 (James D. Forrester)
603 * [BREAKING CHANGE] icons: Remove deprecated 'userActive'/'userInactive' (Volker E.)
604
605 ### Styles
606 * FieldLayout inline help: Move help after field when align=top (Ed Sanders)
607
608 ### Code
609 * DropdownInputWidget: Add support for $overlay (Alangi Derick)
610 * LookupElement: Fix empty search result menu (Tim Eulitz)
611 * PopupTools & ToolGroupTools: Emit active events from PopupTools & ToolGroupTools (Ed Sanders)
612 * Toolbar: Emit events to let user know if toolbar popups are visible (Ed Sanders)
613 * Revert "FieldLayout: Avoid unclickable gap between widget and label in 'inline' align" (Bartosz Dziewoński)
614 * Apex theme: Align `@transition` vars naming with WikimediaUI theme (Volker E.)
615 * Apex theme: Rename `@destructive` var to naming convention (Volker E.)
616 * Apex theme: Rename `@progressive*` vars to naming convention (Volker E.)
617 * WikimediaUI theme: Fix regression on SelectFileWidget icon/indicator visibility (Volker E.)
618 * WikimediaUI theme: Make use of further WikimediaUI Base variables (Volker E.)
619 * docs: Always use the correct casing for MediaWiki (James D. Forrester)
620 * tutorials Create 2 OOUI tutorials and an index page (Hagar Shilo)
621 * tutorials: Don't load duplicate CSS (Bartosz Dziewoński)
622 * tutorials: Fix CSS links (Moriel Schottlender)
623 * build: Bump eslint-config-wikimedia to v0.7.2, disabling failing rules (James D. Forrester)
624 * build: Bump grunt-contrib-less to v2.0.0 and enable javascriptEnabled (James D. Forrester)
625 * build: Bump non-qunit devDependencies to latest where possible (James D. Forrester)
626 * build: Bump OOjs to v2.2.2 (James D. Forrester)
627 * build: Bump qunit-related devDependencies to latest (James D. Forrester)
628 * build: Bump wikimedia-ui-base to v0.11.0 (Volker E.)
629 * tests: Enable `qunit/no-assert-equal` and make pass (James D. Forrester)
630 * tests: Enable `qunit/no-negated-ok` and make pass (James D. Forrester)
631 * tests: Enable `qunit/no-ok-equality` and make pass (James D. Forrester)
632 * tests: Enable `qunit/require-expect` and make pass (James D. Forrester)
633
634
635 ## v0.27.6 / 2018-08-01
636 ### Styles
637 * WikimediaUI theme: Fix styling for focussed multiline text inputs in invalid state (Bartosz Dziewoński)
638 * Apex theme: Fix regression on ToggleSwitchWidget `border` (Volker E.)
639 * Apex theme: Further unify `border-radius` (Volker E.)
640
641 ### Code
642 * MenuTagMultiselectWidget: Cascade disable state to menu (Moriel Schottlender)
643 * MultilineTextInputWidget: Remove 'name' and 'id' from $clone (Prateek Saxena)
644
645
646 ## v0.27.5 / 2018-07-11
647 ### Deprecations
648 * [DEPRECATING CHANGE] CapsuleMultiselectWidget: Deprecate widget (Volker E.)
649
650 ### Styles
651 * CheckboxInputWidget, RadioInputWidget: Use `display: inline-block` in all themes (Bartosz Dziewoński)
652 * MessageDialog: Replace special button treatment with framed buttons (Volker E.)
653 * WikimediaUI theme: Apply new `ease-out` variable to dialogs (Volker E.)
654 * WikimediaUI theme: Replace and remove cubic bezier `transition` option (Volker E.)
655 * WikimediaUI theme: Replace hard-coded value with var (Volker E.)
656 * Apex theme: Make button faux 3D effect more subtle (Volker E.)
657 * Apex theme: Restore space between inline FieldLayout field and label (Bartosz Dziewoński)
658 * Apex theme: Unify `border` values (Volker E.)
659 * Apex theme: Unify close `border-radius` values (Volker E.)
660
661 ### Code
662 * Add taint annotations for phan-taint-check (Brian Wolff)
663 * Ensure window ready process runs after window is made visible (Bartosz Dziewoński)
664 * FieldLayout: Avoid unclickable gap between widget and label in 'inline' align (Bartosz Dziewoński)
665 * IndexLayout (TabPanelLayouts): Apply correct ARIA roles & attributes (Volker E.)
666 * MenuSelectWidget: Remove checks for unchanged input from updateItemVisibility() (Bartosz Dziewoński)
667 * build: Update eslint config to 0.6.0 (Ed Sanders)
668
669
670 ## v0.27.4 / 2018-06-27
671 ### Styles
672 * icons: Add destructive variant for subtract icon (Sam Wilson)
673 * WikimediaUI theme: Remove some unused CSS (Bartosz Dziewoński)
674 * Apex theme: Actually display the icon of MenuToolGroup tools (Bartosz Dziewoński)
675 * Apex theme: Don't hide icons in elements nested in selected MenuOptionWidget (Bartosz Dziewoński)
676 * Apex theme: Fix placement of icon in DecoratedOptionWidget (Bartosz Dziewoński)
677
678 ### Code
679 * Allow JS/PHP comparison tests for FieldLayout 'help' config option (Bartosz Dziewoński)
680 * Avoid mentioning 'iconTitle' config option in doc examples (Bartosz Dziewoński)
681 * Dialog: Create getActionWidget(Config) to simplify customisation (Ed Sanders)
682 * FieldLayout: Add `for` attribute to inline help label (Prateek Saxena)
683 * FieldLayout: Reduce clutter in initialization function (Prateek Saxena)
684 * Follow-up I90a0a787: Add 'helpInline' to PHP FieldLayout (Ed Sanders)
685 * IconElement/IndicatorElement: Reduce specificity of basic styles (Bartosz Dziewoński)
686 * MenuSelectWidget: Move 'highlight first item' to end of operation (Moriel Schottlender)
687 * PopupWidget: Add setter for $autoCloseIgnore (Roan Kattouw)
688 * PopupWidget: Allow automatic width (not hardcoded) (Bartosz Dziewoński)
689 * PopupWidget: Listen to 'click' for 'mousedown' events in iOS (Moriel Schottlender)
690 * ProcessDialog: Use cached value of isMobile (Ed Sanders)
691 * Refactor how we apply `display: none` to unused icons and indicators (Bartosz Dziewoński)
692 * WindowManager: Only set `aria-hidden="true"` for modal managers (Bartosz Dziewoński)
693 * build: Exclude 'demos/vendor' from stylelint (Volker E.)
694 * build: Fix 'copy:fastcomposerdemos' task (Bartosz Dziewoński)
695 * styles: Remove proprietary IE 8 & 9 `-ms-filter` properties (Volker E.)
696 * themes: Improve top `padding` and `line-height` in MessageDialogs (Volker E.)
697
698
699 ## v0.27.3 / 2018-06-07 (special release)
700 ### Styles
701 * ActionFieldLayout: Improve `z-index` overrides on focus/hover (Bartosz Dziewoński)
702 * WikimediaUI theme: Remove label baseline dissonance (Volker E.)
703 * WikimediaUI theme: Reset SelectFileWidget's LabelElement-label (Volker E.)
704
705 ### Code
706 * PopupButtonWidget: Remove `aria-haspopup` attribute (Volker E.)
707
708
709 ## v0.27.2 / 2018-06-05
710 ### Features
711 * Allow passing config objects to OO.ui.infuse (Ed Sanders)
712 * FieldLayout: Add 'helpInline' config (Prateek Saxena)
713 * LookupElement: Allow menu config to be passed in (Ed Sanders)
714 * MenuSelectWidget: Support starting positions other than 'below' (Ed Sanders)
715 * MenuTagMultiselectWidget: Allow icons in dropdown menus (Volker E.)
716 * TagMultiselectWidget: Make sure 'fixed' items can't be removed (Moriel Schottlender)
717
718 ### Styles
719 * ActionFieldLayout: Visually combine inputs and their buttons (Volker E.)
720 * MenuLayout: Avoid `transition: all`, be precise (Bartosz Dziewoński)
721 * icons: Make bold-cyrl-palochka.svg perfectly symmetrical (Bartosz Dziewoński)
722 * WikimediaUI theme: Apply distinct “pill” appearance to tags (Volker E.)
723 * WikimediaUI theme: Improve TagMultiselect spacing & distance code (Volker E.)
724 * WikimediaUI theme: Move label `line-height` to LabelElement (Volker E.)
725 * WikimediaUI theme: Reduce `line-height` varieties across widgets (Volker E.)
726 * WikimediaUI theme: Use 'progressive' icons for pressed/selected MenuOptionWidget (Bartosz Dziewoński)
727 * Apex theme: Remove vertical padding from label widget (Ed Sanders)
728
729
730 ## v0.27.1 / 2018-05-29
731 ### Deprecations
732 * [DEPRECATING CHANGE] Toolbar: Add a required 'name' property to toolgroup configs (Ed Sanders)
733
734 ### Styles
735 * Add bold icon for Chechen language (Ed Sanders)
736 * FieldLayout: Give help icon space when align=left (Prateek Saxena)
737 * MenuSelectWidget: Allow dropdown menus to be larger than their handles (Ed Sanders)
738 * themes: Clarify and align focus on TabselectWidget's selected tab (Volker E.)
739 * WikimediaUI theme: Replace fixed value with dedicated LESS var (Volker E.)
740 * WikimediaUI theme: Align DecoratedOptionWidget's icon opacity to other widgets (Volker E.)
741 * WikimediaUI theme: Fix PopupButtonWidget position (Volker E.)
742 * WikimediaUI theme: Fix regression on Safari bug (Volker E.)
743 * WikimediaUI theme: Fix unbalanced focus state in action toolbar (Volker E.)
744 * Apex theme: Reduce accumulated white-space in form fields (Volker E.)
745
746 ### Code
747 * Don't auto-focus a booklet layout page when scrolling (Ed Sanders)
748 * OutlineControlsWidget: Remove 'add' icon (Bartosz Dziewoński)
749 * PopupToolGroup: Allow tabbing to the tools in the popup again (Bartosz Dziewoński)
750 * PopupToolGroup: Fix disappearing dropdown on very narrow screens (Bartosz Dziewoński)
751 * Toolbar: Remove unused .groups property (Ed Sanders)
752 * Toolbar: Rename a variable from 'group' to 'groupConfig' (Ed Sanders)
753 * build: Amend 'grunt-svgmin' options and re-crush SVGs (Volker E.)
754 * build: Updating mediawiki/mediawiki-codesniffer to 19.0.0 (libraryupgrader)
755 * build: Use .map.json extension for source maps (Bartosz Dziewoński)
756 * demos: Remove deprecated 'comment' icon (Volker E.)
757
758
759 ## v0.27.0 / 2018-05-08
760 ### Breaking changes
761 * [BREAKING CHANGE] GroupElement: Remove getItem(s)FromData (Prateek Saxena)
762 * [BREAKING CHANGE] MultiSelectWidget: Remove getSelectedItems and getSelectedItemsData (Prateek Saxena)
763 * [BREAKING CHANGE] SelectWidget: Remove getSelectedItem (Prateek Saxena)
764 * [BREAKING CHANGE] TagItemWidget: Replace 'disabled' items with 'fixed' (Moriel Schottlender)
765 * [BREAKING CHANGE] indicators: Remove 'alert', deprecated in v0.25.2 (James D. Forrester)
766
767 ### Deprecations
768 * [DEPRECATING CHANGE] icons: Deprecate 'editing-citation' icons from 'content' (Volker E.)
769 * [DEPRECATING CHANGE] icons: Rename 'settings' to 'pageSettings' (Volker E.)
770
771 ### Features
772 * Add an infusable PHP implementation of the NumberInputWidget (mainframe98)
773
774 ### Styles
775 * TextInputWidget: Hide IE10+'s clear button when it conflicts with labels (Thiemo Kreuz)
776 * WikimediaUI theme: Don't add icon `padding` to menu tools with no icons (Ed Sanders)
777 * WikimediaUI theme: Fix TagItem's label and close position (Volker E.)
778 * WikimediaUI theme: Fix visual regression on toolbar menu border (Volker E.)
779 * Apex theme: Fix position of help icon in FieldLayout align=top (Ed Sanders)
780 * icons: Add 'editing-citation' pack (Volker E.)
781 * icons: Add `title` elements to new icons in 'editing-citation' pack (Volker E.)
782
783 ### Code
784 * FieldLayout: Provide label to 'help' PopupButtonWidget in JS (Volker E.)
785 * MenuTagMultiselect: Use default onTagSelect if allowArbitrary (Daimona Eaytoy)
786 * NumberInputWidget: Add `aria-hidden` to buttons (Volker E.)
787 * ProcessDialog: Fix footer height when actions or dialog size changes (Bartosz Dziewoński)
788 * SelectFileWidget: Use `<label>` for select ButtonElement (Moriel Schottlender)
789 * Harmonize icon JSONs code (Volker E.)
790 * Improve test output in case of failures (Bartosz Dziewoński)
791 * demos: Add ellipsis to “Publish changes” to follow production (Volker E.)
792
793
794 ## v0.26.5 / 2018-04-24
795 ### Styles
796 * Add `overflow:hidden;` to dialog content (Ed Sanders)
797 * TagItemWidget: Make applying cutoff and ellipsis actually work (Bartosz Dziewoński)
798 * Use `vertical-align:top;` for check/radio label alignment (Ed Sanders)
799 * WikimediaUI theme: De-emphasize toolgroup borders (Volker E.)
800 * Apex theme: Ensure consistent height of PopupToolGroup handle (not zero) (Bartosz Dziewoński)
801 * Apex theme: Remove drop shadow from framed PanelLayout (Ed Sanders)
802
803 ### Code
804 * MenuSelectWidget: Start positioning before starting to handle events (Bartosz Dziewoński)
805 * NumberInputWidget: Set inputs to empty if their DOM value is empty (Sam Wilson)
806 * PopupTool: Set active state depending on whether popup is open (Bartosz Dziewoński)
807 * Toolbar: Put all popups (from PopupToolGroup and PopupTool) into an overlay (Bartosz Dziewoński)
808 * build: Switch QUnit package from deprecated 'qunitjs' to 'qunit' (James D. Forrester)
809
810
811 ## v0.26.4 / 2018-04-17
812 ### Code
813 * Apex theme: Point pending.gif texture to a directory that exists (Kunal Mehta)
814 * Remove white canvases from table move icons (Ed Sanders)
815 * WindowManager: Return focus to element after resize (Prateek Saxena)
816 * build: Updating mediawiki/mediawiki-codesniffer to 18.0.0 (libraryupgrader)
817
818
819 ## v0.26.3 / 2018-04-10
820 ### Styles
821 * WikimediaUI theme: Restore background-size transition when checking a checkbox (Bartosz Dziewoński)
822 * icons: Add 'tableMoveColumn*' & 'tableMoveRow*' icons (Volker E.)
823
824 ### Code
825 * CheckboxInputWidget: Don't specify icon in CSS (Bartosz Dziewoński)
826 * DropdownInput-/RadioSelectInputWidget: Fix support for 'tabIndex' (Bartosz Dziewoński)
827 * MenuOptionWidget: Don't specify icon in CSS (Bartosz Dziewoński)
828 * MenuToolGroup: Don't specify icon in CSS (Bartosz Dziewoński)
829 * PopupTagMultiselectWidget: Use `padding` in popup by default (Ed Sanders)
830 * Remove icon overrides for 'en-ca', 'en-gb' when 'en' suffices (Bartosz Dziewoński)
831 * Apex icons: Replace entire set with WikimediaUI theme's (Ed Sanders)
832 * WikimediaUI theme: Don't override selected MenuToolGroup tools' icon (Bartosz Dziewoński)
833 * build: Bump devDependencies to latest (James D. Forrester)
834 * demos: Update word processor toolbar styling from VisualEditor (Bartosz Dziewoński)
835
836
837 ## v0.26.2 / 2018-04-04
838 ### Deprecations
839 * [DEPRECATING CHANGE] icons: Add 'userAnonymous', and deprecate 'userActive'/'userInactive' (Volker E.)
840 * [DEPRECATING CHANGE] icons: Deprecate 'find' of 'editing-advanced' pack (Volker E.)
841
842 ### Styles
843 * Blank theme: Use sizes of default theme WikimediaUI (Volker E.)
844 * WikimediaUI theme: Fix FieldSetLayout & FieldLayout's help icon position (Volker E.)
845 * WikimediaUI theme: Fix FieldLayout with help and align left/right (Bartosz Dziewoński)
846 * WikimediaUI theme: Fix miscalculated frameless button's icon position (Volker E.)
847 * WikimediaUI theme: Fix tool icons in popup toolgroups (Bartosz Dziewoński)
848 * WikimediaUI theme: Replace fixed spacing values with vars (Volker E.)
849 * WikimediaUI theme: Simplify SelectFileWidget's CSS (Volker E.)
850
851 ### Code
852 * MultilineTextInputWidget: Allow `resize` except for on autosize (Prateek Saxena)
853 * TagMultiselectWidget: Fix arrow movement in inline input (Moriel Schottlender)
854 * Update OOjs to v2.2.0 (James D. Forrester)
855 * build: Updating mediawiki/mediawiki-codesniffer to 17.0.0 (libraryupgrader)
856 * build: colorize-svg.js – reorder functions to avoid forward references (Fomafix)
857 * demos: Add theme body classes in PHP demo (Volker E.)
858 * demos: Fix icon wrapping (Ed Sanders)
859 * icons: Fix size and position of most language variant styling icons (Ed Sanders)
860 * icons: Provide RTL 'help' icon for Arabic scripts (Volker E.)
861 * icons: Use correct glyphs for bold-a, italic-a, and strikethrough-a (Ed Sanders)
862 * icons: Use 'underline-u' in German (Ed Sanders)
863 * themes: Remove dash from variable prefix `@ooui` (Volker E.)
864
865
866 ## v0.26.1 / 2018-03-23
867 ### Deprecations
868 * [DEPRECATING CHANGE] icons: Flag 'comment' as to be removed (James D. Forrester)
869 * [DEPRECATING CHANGE] icons: Rename 'clip'/'unClip' to 'bookmark'/'bookmarkOutline' (Volker E.)
870
871 ### Styles
872 * ButtonElement (framed): Remove `padding` on icon + indicator variant (Volker E.)
873 * WikimediaUI theme: Reduce distance of Tools in BarToolGroup (Volker E.)
874 * WikimediaUI theme: Reduce necessary widths for narrow toolbar elements (Volker E.)
875 * WikimediaUI icons: Amend 'help' icon to address feedback (Volker E.)
876 * WikimediaUI icons: Fix 'speechBubbles' icons (Volker E.)
877 * WikimediaUI icons: Fix 'underline-a' icon to be an 'a', not a 'u' (Ed Sanders)
878 * WikimediaUI icons: Slightly adapted size of 'clip'/'unClip' for algnment to other icons (Volker E.)
879 * WikimediaUI icons: Swap 'advanced' and 'settings' icons (Volker E.)
880
881 ### Code
882 * WikimediaUI theme: Remove unused RTL variants of alignLeft/Right icons (Ed Sanders)
883 * WikimediaUI theme: Fix/remove unused icon files (Bartosz Dziewoński)
884 * demos: Add alert popout to toolbars demos (Volker E.)
885 * demos: Add specialCharacter terminal tool to toolbars demos (James D. Forrester)
886 * docs: Add Demos to JSDuck navigation menu (Timo Tijhof)
887 * build: Replace grunt-image with grunt-imagemin (James D. Forrester)
888 * icons: Re-crush SVGs (James D. Forrester)
889
890 ## v0.26.0 / 2018-03-20
891 ### Breaking changes
892 * [BREAKING CHANGE] WikimediaUI: Unify available variants across icon packs (Ed Sanders)
893 * [BREAKING CHANGE] icons: Remove 'alignCentre', renamed in v0.24.2 (James D. Forrester)
894 * [BREAKING CHANGE] icons: Remove 'arrowLast', deprecated since v0.25.0 (James D. Forrester)
895 * [BREAKING CHANGE] icons: Remove 'bellOn', deprecated in v0.25.0 (James D. Forrester)
896 * [BREAKING CHANGE] icons: Remove 'quotesAdd', deprecated in v0.24.4 (James D. Forrester)
897 * [BREAKING CHANGE] icons: Remove 'redirect', renamed in v0.24.4 (James D. Forrester)
898 * [BREAKING CHANGE] indicators: Remove 'next' and 'previous', deprecated in v0.25.0 (James D. Forrester)
899
900 ### Features
901 * FieldLayout: Use better icons for warning/error messages (Bartosz Dziewoński)
902 * MenuTagMultiselectWidget: Check for empty inputValue in addTagFromInput (Prateek Saxena)
903 * TagMultiselectWidget: Handle disabled items (Moriel Schottlender)
904
905 ### Styles
906 * WikimediaUI theme: Add additional 'interactions' & 'media' pack icons (Volker E.)
907 * WikimediaUI theme: Align refined WikimediaUI icons in size and position (Volker E.)
908 * WikimediaUI theme: Apply `translateZ` hack to full canvas icons (Volker E.)
909 * WikimediaUI theme: Fix regression on accelerator key alignment (Volker E.)
910 * WikimediaUI theme: Fix toolbar buttonGroup (Ed Sanders)
911 * WikimediaUI theme: Harmonize `padding` on FieldLayout messages (Volker E.)
912 * WikimediaUI theme: Unify and refine WikimediaUI icons (Volker E.)
913 * WikimediaUI theme: Use `14px` base font size & amend positioning/sizing (Volker E.)
914 * Apex theme: Fix toolbar buttonGroup (Ed Sanders)
915 * Apex theme: Make Apex also use 20px canvas icons (Bartosz Dziewoński)
916
917 ### Code
918 * Use theme rules to define which tools should get blue icons, not flags (Ed Sanders)
919 * build: Make the copy task for the WikimediaUI less vars less confusing (James D. Forrester)
920 * build: Stop using 'grunt-image' for optimising PNGs, at least for now (James D. Forrester)
921 * build: Switch SVG optimization to 'grunt-svgmin' (Volker E.)
922 * build: Temporarily disable running unit tests in Firefox due to timeouts (James D. Forrester)
923 * build: Update devDependencies to latest (James D. Forrester)
924 * build: Updating jakub-onderka/php-parallel-lint to 1.0.0 (libraryupgrader)
925 * build: Acknowledge in package.json that grunt-exec 3.0.0 exists, but we don't want it (Bartosz Dziewoński)
926 * demos: Include editor switch menu in toolbars menu (Volker E.)
927 * demos: Increase base `font-size` to `14px` (Volker E.)
928 * demos: Re-enable bigger base size on mobile breakpoint (Volker E.)
929 * demos: Use `0.8em` body font size for Apex (Bartosz Dziewoński)
930 * dist: Distribute History.md so people can see what's changed (James D. Forrester)
931
932
933 ## v0.25.3 / 2018-03-06
934 ### Features
935 * DropdownInputWidget: Extract menu item creation (Gabriel Birke)
936 * MenuTagMultiselectWidget: Highlight first item when filtering (Moriel Schottlender)
937 * demos: Use individual oojs-ui-* JS files for sourcemap support (Moriel Schottlender)
938
939 ### Styles
940 * WikimediaUI theme: Align action toolbar primary button focus state (Volker E.)
941 * WikimediaUI theme: Align toolbar items' focus to widgets elsewhere (Volker E.)
942
943 ### Code
944 * Imply `inline-block` on toolbar item labels (Volker E.)
945 * CheckboxMultiselectInputWidget: Fix handling of 'name' config option in JS (Bartosz Dziewoński)
946 * TagMultiselectWidget: Only apply `onMouseDown` if not in input (Moriel Schottlender)
947 * Gruntfile: Remove reference to long-absent at-ease PHP library (James D. Forrester)
948 * build: Add jakub-onderka/php-console-highlighter (Umherirrender)
949 * build: Adding MinusX (Kunal Mehta)
950 * build: Updating mediawiki/mediawiki-codesniffer to 16.0.1 (libraryupgrader)
951 * build: Updating phpunit/phpunit to 4.8.36 || ^6.5 (libraryupgrader)
952 * build: pass --ansi --no-progress to composer (Antoine Musso)
953 * demos: Add monospace hack for `code` element (Volker E.)
954 * demos: Only claim ARIA `main` role on the first toolbar demo (Volker E.)
955 * demos: Replace “Save” by “Publish changes” (Volker E.)
956
957
958 ## v0.25.2 / 2018-02-06
959 ### Deprecations
960 * [DEPRECATING CHANGE] icons: Flag indicator 'alert' as to be removed (Volker E.)
961
962 ### Features
963 * Element: Fix infusion edge case (Bartosz Dziewoński)
964 * InputWidget and subclasses: Remember original value when creating the widget (Bartosz Dziewoński)
965 * MultilineTextInputWidget: Emit 'enter' for Ctrl+Enter (Ed Sanders)
966 * MenuTagMultiselectWidget: Erase the input when a menu option is chosen (Prateek Saxena)
967 * OptionWidget: Option is still selectable/highlightable/pressable if its parent is disabled (Bartosz Dziewoński)
968 * RadioSelectInputWidget: Prevent exceptions when trying to set unavailable options (Bartosz Dziewoński)
969
970 ### Styles
971 * FieldLayout: Fix help icon negative margin in Apex (Ed Sanders)
972 * LabelElement: Switch `box-sizing` to `border-box` (srishakatux)
973 * ListToolGroup: Correctly point the collapse/expand icon on bottom toolbars (Volker E.)
974 * RadioSelectInputWidget, CheckboxMultiselectInputWidget: Fix spacing between options in PHP (Apex theme) (Bartosz Dziewoński)
975
976 ### Code
977 * Avoid having to call `.setValue()` in some widgets' constructors multiple times (Bartosz Dziewoński)
978 * CheckboxMultiselectInputWidget: Turn inline event handler into a method (Bartosz Dziewoński)
979 * DraggableElement: Replace 'OOjs-UI' with 'OOUI' for code hygiene (Volker E.)
980 * TextInputWidget: Move previously forgotten methods to Multiline (Bartosz Dziewoński)
981 * Follow-up b28e99712: Remove `mediawiki/at-ease` dependancy (Sam Reed)
982 * Reduce code duplication between `#setValue` and `#setOptions` (Bartosz Dziewoński)
983 * Remove duplicate documentation between TextInputWidget and Multiline (Bartosz Dziewoński)
984 * TextInputWidget: Document that 'maxLength' counts UTF-16 code units (Bartosz Dziewoński)
985 * Toolbars: Replace `$.width` with `clientWidth`/`offsetWidth` (Ed Sanders)
986 * Use child selectors for menuLayout (Ed Sanders)
987 * build: Don't lint a generated JSON file for validity before it's rebuilt (James D. Forrester)
988 * build: Update Rubocop config for deprecations (Bartosz Dziewoński)
989 * demos, docs: Replace 'alert' indicator, as it's deprecated (Volker E.)
990 * demos: Bring “Word processor toolbar” demos closer to VE (Volker E.)
991 * demos: Provide more space at bottom of page (Volker E.)
992 * tests: Do not use obviously fake data when testing infusion (Bartosz Dziewoński)
993 * testsuitegenerator: Test some 'value' parameters that match 'options' parameters (Bartosz Dziewoński)
994
995
996 ## v0.25.1 / 2018-01-16
997 ### Code
998 * Allow other stuff to handle the event when we call `simulateLabelClick()` (Bartosz Dziewoński)
999 * Follow-Up I0f1d9c1f: Update usages of `getSelectedItem` -> `findSelectedItem` (Ed Sanders)
1000 * PanelLayout: Remove buggy `translateZ` performance hack (Volker E.)
1001 * PopupToolGroup: Revert "Fix popup direction changing…" (Bartosz Dziewoński)
1002 * Rename prefixes of unique IDs to not mention "OOjs" (Bartosz Dziewoński)
1003 * build, demos, docs: Use “OOUI” as unified name (Volker E.)
1004 * demos: Use MultilineTextInputWidget in PHP demos (Ed Sanders)
1005 * docs: Clarify `required` true handling with `indicator: 'required'` (Volker E.)
1006 * docs: Use “OOUI” as unified name in code comments (Volker E.)
1007
1008
1009 ## v0.25.0 / 2018-01-09
1010 ### Breaking changes
1011 * [BREAKING CHANGE] Drop the `constructive` flag entirely (James D. Forrester)
1012 * [BREAKING CHANGE] Remove `BookletLayout#getClosestPage` (James D. Forrester)
1013 * [BREAKING CHANGE] SelectWidget: Remove `getFirstSelectableItem` (Prateek Saxena)
1014 * [BREAKING CHANGE] SelectWidget: Remove `getHighlightedItem` (Prateek Saxena)
1015 * [BREAKING CHANGE] SelectWidget: Remove `getRelativeSelectableItem` (Prateek Saxena)
1016 * [BREAKING CHANGE] icons: Drop 'watchlist', deprecated in v0.23.1 (James D. Forrester)
1017
1018 ### Deprecations
1019 * [DEPRECATING CHANGE] GroupElement: Rename getItem(s)FromData to findItem(s)FromData (Prateek Saxena)
1020 * [DEPRECATING CHANGE] MultiSelectWidget: Rename getters (Prateek Saxena)
1021 * [DEPRECATING CHANGE] SelectWidget: Rename `getSelectedItem` to `findSelectedItem` (Prateek Saxena)
1022 * [DEPRECATING CHANGE] icons: Flag indicators 'previous' & 'next' as to be removed (Volker E.)
1023 * [DEPRECATING CHANGE] icons: Rename 'arrowLast' to 'arrowPrevious' (James D. Forrester)
1024
1025 ### Features
1026 * MenuTagMultiselectWidget: Erase the input when tag is selected if filtering (Moriel Schottlender)
1027
1028 ### Styles
1029 * Add `margin-bottom` for widgets which are part of OOUI HorizontalLayout (Phantom42)
1030 * FieldLayout: Improve alignment of multiline labels with 'help' button (Bartosz Dziewoński)
1031 * WikimediaUI theme: Align 'transparency' icon to WikimedaUI color palette (Volker E.)
1032 * WikimediaUI theme: Remove obsolete global flag for 'layout' icon pack (Volker E.)
1033 * WikimediaUI theme: Remove obsolete icon flags (Volker E.)
1034 * Apex theme: Align readonly TextInputWidget across themes (Volker E.)
1035 * Apex theme: Apply `opacity` button transition and ensure Chrome support (Volker E.)
1036 * Apex theme: Remove unused, obsolete 'logo-wikimediaDiscovery' icon (Volker E.)
1037 * icons: Remove obsolete 'bookmark' icon remainders (Volker E.)
1038 * icons: Remove obsolete 'watchlist' icon remainders (Volker E.)
1039 * icons: Shorten 'accessibility' pack invert hex color (Volker E.)
1040
1041 ### Code
1042 * Clarify `.oo-ui-force-gpu-composite-layer()` mixin comment (Volker E.)
1043 * Fix blurry text on PanelLayout promoted to GPU in Safari (Volker E.)
1044 * Fix popup direction changing when the "anchor" is partially offscreen (Bartosz Dziewoński)
1045 * MenuTagMultiselectWidget: Don't use overlay for `$autoCloseIgnore` (Moriel Schottlender)
1046 * MultilineTextInputWidget: Correct documentation for `config.maxRows` (Roan Kattouw)
1047 * PHP TextInputWidget: Remove remaining type 'search' specific code (Volker E.)
1048 * Use findItem(s)FromData instead of getItem(s)FromData (Prateek Saxena)
1049 * demos: Override OO.ui.getViewportSpacing in infused PHP demo too (Bartosz Dziewoński)
1050 * demos: Promote icons page IndicatorWidget to GPU layer (Volker E.)
1051 * docs: Bump copyright year (James D. Forrester)
1052 * docs: TagMultiselectWidget: Remove wrong link to MediaWiki documentation (Prateek Saxena)
1053 * build: Update .gitattributes for .phpcs.xml file move (Kunal Mehta)
1054 * build: Add rake to Gemfile (Antoine Musso)
1055 * build: Don't include Gemfile* in composer zipballs (Kunal Mehta)
1056 * build: Update RuboCop Ruby gem (Željko Filipin)
1057 * build: Updating mediawiki/mediawiki-codesniffer to 15.0.0 (libraryupgrader)
1058 * build: Use SVGO option of 'grunt-image' for distribution (Volker E.)
1059
1060
1061 ## v0.24.4 / 2017-12-20 special release
1062 ### Deprecations
1063 * [DEPRECATING CHANGE] icons: Flag unused 'bellOn' icon as to be removed (Volker E.)
1064 * [DEPRECATING CHANGE] icons: Flag unused 'quotesAdd' & 'redirect' as to be removed (Volker E.)
1065
1066 ### Features
1067 * Introduce `OO.ui.getDefaultOverlay` (Bartosz Dziewoński)
1068 * Put menus/popups of infused PHP widgets into the default overlay (Bartosz Dziewoński)
1069
1070 ### Styles
1071 * icons: Add 'lightbulb' icon (Prateek Saxena)
1072 * icons: Add 'stop' icon to Apex theme (Volker E.)
1073
1074 ### Code
1075 * ClippableElement: Fix JS error when Floatable is mixed in but disabled (Roan Kattouw)
1076 * DropdownWidget: Remove stray use of `this.$()` (Bartosz Dziewoński)
1077
1078
1079 ## v0.24.3 / 2017-11-28
1080 ### Features
1081 * Allow adding virtual viewport spacing (Bartosz Dziewoński)
1082 * ClippableElement: Allow clipping with top or left edge (Bartosz Dziewoński)
1083 * DropdownInputWidget: Generate a hidden `<select>` in JS (Bartosz Dziewoński)
1084 * FieldsetLayout: Hide header when there is no icon or label (Bartosz Dziewoński)
1085 * MenuSelectWidget, PopupWidget: Automatically change popup direction if there is no space (Bartosz Dziewoński)
1086 * PopupToolGroup: Set clipping edges to fix clipping edge (heh) cases (Bartosz Dziewoński)
1087 * TextInputWidget: support spellcheck attribute (David Lynch)
1088
1089 ### Styles
1090 * themes: Fix PHP ComboboxInputWidget indicator position (Volker E.)
1091 * WikimediaUI theme: Restore `:hover:focus` border color on TextInputWidgets (Volker E.)
1092 * oo-ui-background-image: Drop `-o-linear-gradient` fallback (James D. Forrester)
1093 * oo-ui-background-image: Drop `-webkit-linear-gradient` fallback (James D. Forrester)
1094
1095 ### Code
1096 * PHP DropdownInputWidget: Workaround for Firefox 57 ignoring attr selector with whitespace (Volker E.)
1097 * DraggableGroupElement: Don't try to access non-existent property (Bartosz Dziewoński)
1098 * DropdownInputWidget: Remove duplicate TitledElement mixin (Bartosz Dziewoński)
1099 * README: Add "Community" section (Prateek Saxena)
1100 * README: Re-arrange intro section (Prateek Saxena)
1101 * build: Bump wikimedia-ui-base (Volker E.)
1102 * git.wikimedia.org -> phab (Zach)
1103
1104
1105 ## v0.24.2 / 2017-11-07
1106 ### Deprecations
1107 * [DEPRECATING CHANGE] Use en-US spelling for icon names for consistency (Ed Sanders)
1108
1109 ### Code
1110 * README: Consistently refer to OOUI as library (Volker E.)
1111 * README: Fix Doxygen rendering (Volker E.)
1112 * README: Simplify “Quick start” and “Contributing” section (Volker E.)
1113 * demos: Correct and simplify SimpleWidget styles (Bartosz Dziewoński)
1114 * docs: onMenuToggle: `isVisible` is the state of the menu (Prateek Saxena)
1115
1116
1117 ## v0.24.1 / 2017-10-31
1118 ### Features
1119 * DropdownWidget: Allow pressing Space to close the widget, as well as open (Bartosz Dziewoński)
1120
1121 ### Styles
1122 * WikimediaUI theme: Visually improve MenuSectionOptionWidget MenuOptions (Volker E.)
1123
1124 ### Code
1125 * ComboBoxInputWidget: Add `.oo-ui-comboBoxInputWidget-open` class to widget (Volker E.)
1126 * Generate clover.xml with code coverage results (Kunal Mehta)
1127 * WikimediaUI theme: Use child selectors for styling toolbar action buttons (Bartosz Dziewoński)
1128 * README: Simplify and move “Versioning” section (Volker E.)
1129 * README: Simplify “Contributing” section slightly and add LESS lint hint (Volker E.)
1130 * build: Bump stylelint devDependencies (James D. Forrester)
1131 * build: Bump various devDependencies to latest (James D. Forrester)
1132 * build: Downgrade 'grunt-exec' to 1.0.1 (again) (Bartosz Dziewoński)
1133 * build: Update grunt-image to version 4.0.0 (Ed Sanders)
1134 * build: Update mediawiki/mediawiki-codesniffer to 14.1.0 (libraryupgrader)
1135 * icons: Unify SVG markup (Volker E.)
1136
1137
1138 ## v0.24.0 / 2017-10-17
1139 ### Breaking changes
1140 * [BREAKING CHANGE] Drop 'MediaWiki' backwards-compatibility theme (James D. Forrester)
1141 * [BREAKING CHANGE] icons: Drop 'stripeSideMenu', renamed in v0.22.2 (James D. Forrester)
1142 * [BREAKING CHANGE] icons: Remove 'eye'/'eyeClosed' icons, deprecated in v0.23.0 (Volker E.)
1143 * [BREAKING CHANGE] icons: Remove 'signature' icon, deprecated in v0.23.0 (Volker E.)
1144 * [BREAKING CHANGE] icons: Remove 'sun', deprecated in v0.23.0 (James D. Forrester)
1145
1146 ### Styles
1147 * themes: Unify icon/indicator visibility (Volker E.)
1148 * WikimediaUI theme: Ensure hover feedback on TextInputWidget & descendants (Volker E.)
1149
1150 ### Code
1151 * Fix `.oo-ui-selectable()` mixin to actually undo `.oo-ui-unselectable()` (Bartosz Dziewoński)
1152 * WikimediaUI theme: Fix selector in PopupWidget styles (Bartosz Dziewoński)
1153
1154
1155 ## v0.23.5 / 2017-10-12
1156 ### Code
1157 * PHP MultilineTextInputWidget, SearchInputWidget: Remove duplicate `use` statements (Bartosz Dziewoński)
1158 * PHP Theme: Fix check for IconElement/IndicatorElement for inherited traits (Bartosz Dziewoński)
1159
1160
1161 ## v0.23.4 / 2017-10-11
1162 ### Styles
1163 * IndexLayout: Handle long lists of tabs (Bartosz Dziewoński)
1164 * icons: Provide a 'reload' icon in the 'interactions' pack (Ed Sanders)
1165 * Apex theme: Fix PopupToolGroup active box size (Volker E.)
1166 * Apex theme: Fix SelectFileWidget (no browser support)‎ `padding` (Volker E.)
1167 * Generalize icon and indicator positioning & visibility (Volker E.)
1168 * WikimediaUI theme: Reduce Checkbox*- & RadioSelectInputWidget vertical space (Volker E.)
1169 * WikimediaUI theme: Reduce FieldLayout `margin-top` slightly (Volker E.)
1170 * WikimediaUI theme: Streamlining icon/indicator visibility (Volker E.)
1171
1172 ### Code
1173 * Only store initialConfig in demo mode (Ed Sanders)
1174 * SearchInputWidget: Prevent extra `oo-ui-textInputWidget-type-text` class (Bartosz Dziewoński)
1175 * TextInputWidget: Use child selector for icons/indicators/labels (Ed Sanders)
1176 * Do not call `.offset()` on `$( 'html' )` (Bartosz Dziewoński)
1177 * PHP: Implement MultilineTextInputWidget, deprecate multiline option (Prateek Saxena)
1178 * PHP: Implement SearchInputWidget, deprecate search option (Bartosz Dziewoński)
1179 * build: Downgrade 'grunt-exec' to 1.0.1 (Bartosz Dziewoński)
1180 * demos: Adding missing `:hover` (Volker E.)
1181
1182
1183 ## v0.23.3 / 2017-10-03
1184 ### Styles
1185 * PopupToolGroup: Move accelerator keys `padding` to themes (Volker E.)
1186 * WikimediaUI theme: Align PopupToolGroup header styles (Volker E.)
1187 * WikimediaUI theme: Fix border on narrow bottom toolbars (Volker E.)
1188 * WikimediaUI theme: Fix flagged elements' icon `opacity` (Volker E.)
1189 * WikimediaUI theme: Improve PopupToolGroup's indicator vertical alignment (Volker E.)
1190 * WikimediaUI theme: Make toolbar active element highlights visually equal (Volker E.)
1191 * WikimediaUI theme: Remove `box-shadow` not in design (Volker E.)
1192 * WikimediaUI theme: Replace BookletLayout menu `border-color` (Volker E.)
1193 * WikimediaUI theme: Unify positioning and sizing of tools, toolgroups and menus (Volker E.)
1194 * WindowManager: Remove `overflow: hidden` to enhance styling flexibility (Volker E.)
1195
1196 ### Code
1197 * Follow-up I576f3175: highlightQuery: Handle case when query is not found (Ed Sanders)
1198 * IndexLayout, BookletLayout: Don't scroll panels if not scrollable (Bartosz Dziewoński)
1199 * LabelElement: Add tests for setHighlightedQuery (Ed Sanders)
1200 * SelectWidget: Allow focussing things inside OptionWidget labels (Bartosz Dziewoński)
1201 * WikimediaUI theme: Simplify action toolbar buttons selectors (Volker E.)
1202 * demos: Remove unnecessary button demo widgets (Volker E.)
1203
1204
1205 ## v0.23.2 / 2017-09-26
1206 ### Deprecations
1207 * [DEPRECATING CHANGE]: Apex theme: Begin killing `constructive` flag (James D. Forrester)
1208
1209 ### Features
1210 * LabelElement#highlightQuery: Support locale comparison (Ed Sanders)
1211 * MenuLayout, BookletLayout, IndexLayout: Support `expanded: false` (Bartosz Dziewoński)
1212 * WindowManager: Set `aria-hidden` by default and change toggleAriaIsolation behavior (Prateek Saxena)
1213
1214 ### Code
1215 * MenuLayout: Rewrite support for `expanded: false` (Bartosz Dziewoński)
1216 * TextInputWidget: Reduce CSS output by enhancing unselectable behaviour (Volker E.)
1217 * themes: Align DropdownWidget `&-handle` selectors for code hygiene (Volker E.)
1218 * Apex theme: Simplify Radio- & Checkbox*optionWidget label rules (Volker E.)
1219 * Remove duplicated `outline` property (Volker E.)
1220 * Remove LESS vars covered by WikimediaUI Base (Volker E.)
1221 * demos: Expand long dialog title to actually test things (James D. Forrester)
1222 * demos: Restrict `opacity` to non-flagged icons only (Volker E.)
1223
1224
1225 ## v0.23.1 / 2017-09-19
1226 ### Deprecations
1227 * [DEPRECATING CHANGE] SelectWidget: Rename `getFirstSelectableItem` to `findFirstSelectableItem` (Prateek Saxena)
1228 * [DEPRECATING CHANGE] SelectWidget: Rename `getHighlightedItem` to `findHighlightedItem` (Prateek Saxena)
1229 * [DEPRECATING CHANGE] SelectWidget: Rename `getRelativeSelectableItem` to `findRelativeSelectableItem` (Prateek Saxena)
1230 * [DEPRECATING CHANGE] icons: Flag unused 'watchlist' icon as to be removed (Volker E.)
1231
1232 ### Styles
1233 * RadioOptionWidget, CheckboxMultioptionWidget: Support very long labels (Bartosz Dziewoński)
1234 * WikimediaUI theme: Harmonize toolbar icon/indicator opacity (Volker E.)
1235 * WikimediaUI theme: Improve ListToolGroup's color and opacity handling (Volker E.)
1236 * WikimediaUI theme: Simplify disabled tool opacity rules (Volker E.)
1237
1238 ### Code
1239 * BookletLayout#getClosestPage: Fix version number of deprecation (Prateek Saxena)
1240 * HtmlSnippet: Throw exception if given non-string content (Bartosz Dziewoński)
1241 * Use `findFirstSelectableItem` instead of `getFirstSelectableItem` (Prateek Saxena)
1242 * Use `findHighlightedItem` instead of `getHighlightedItem` (Prateek Saxena)
1243 * Use `findRelativeSelectableItem` instead of `getRelativeSelectableItem` (Prateek Saxena)
1244 * WikimediaUI theme: Concatenate constructive & progressive selectors (Volker E.)
1245 * WikimediaUI theme: Remove unnecessary properties (Volker E.)
1246 * demos: Add examples of FieldLayout with very long labels (Bartosz Dziewoński)
1247 * demos: Avoid menu's `box-shadow` from lurkin into toolbar (Volker E.)
1248
1249
1250 ## v0.23.0 / 2017-09-05
1251 ### Breaking changes
1252 * [BREAKING CHANGE] Remove CardLayout and references in IndexLayout (Volker E.)
1253 * [BREAKING CHANGE] Remove FloatingMenuSelectWidget (Volker E.)
1254 * [BREAKING CHANGE] Remove back-compat `OO.ui` prefix assumption in infusion code (Prateek Saxena)
1255 * [BREAKING CHANGE] icons: Remove 'caret' icons, deprecated in v0.21.3 (James D. Forrester)
1256 * [BREAKING CHANGE] icons: Remove 'wikitrail' icon, renamed in v0.20.1 (James D. Forrester)
1257
1258 ### Deprecations
1259 * [DEPRECATING CHANGE] BookletLayout: Rename `getClosestPage()` to `findClosestPage()` (Prateek Saxena)
1260 * [DEPRECATING CHANGE] icons: Flag unused 'sun' icon as to be removed (James D. Forrester)
1261 * [DEPRECATING CHANGE] icons: Move 'eye'/'eyeClosed' to 'accessibility' (Volker E.)
1262 * [DEPRECATING CHANGE] icons: Move 'signature' to 'editing-advanced' (Volker E.)
1263
1264 ### Features
1265 * Element: Improve error message when the widget being infused is missing (Bartosz Dziewoński)
1266
1267 ### Styles
1268 * Apex theme: Only apply `margin` to label if visible (Ed Sanders)
1269 * WikimediaUI theme: Fix frameless indicator combination buttons' appearance (Volker E.)
1270 * ButtonInputWidget: Fix Safari-specific intrinsic `margin` (Volker E.)
1271
1272 ### Code
1273 * Ensure only options belonging to the SelectWidget can be clicked (Ed Sanders)
1274 * SelectFileWidget: Rename `getTargetItem()` to `findTargetItem()` (Prateek Saxena)
1275 * Toolgroup: Rename `getTargetTool()` to `findTargetTool()` (Prateek Saxena)
1276 * WikimediaUI theme: Simplify `transition` code and remove obsolete (Volker E.)
1277 * build: Add 'accessibility' icon pack in Apex to build module definition (Volker E.)
1278 * build: Update eslint-config-wikimedia 0.4->0.5 (Ed Sanders)
1279 * build: Updating mediawiki/mediawiki-codesniffer to 0.12.0 (libraryupgrader)
1280 * tests: Make MockWidget filename match class name (Kunal Mehta)
1281
1282
1283 ## v0.22.5 / 2017-08-22
1284 ### Features
1285 * Add `title` attribute to the 'remove' button in TagItemWidget (Moriel Schottlender)
1286
1287 ### Styles
1288 * WikimediaUI theme: Fix regression on disabled border (Volker E.)
1289
1290 ### Code
1291 * Align vars to WikimediaUI Base and remove them as OOjs UI vars (Volker E.)
1292 * DraggableElement: Make toggling draggability consistent (Bartosz Dziewoński)
1293 * Follow-up 022f532: Don't crash if TitledElement initializes before AccessKeyedElement (Roan Kattouw)
1294 * WikimediaUI theme: Make checkbox/radio code leaner (Volker E.)
1295 * WikimediaUI theme: Remove unnecessary selector in CheckboxInputWidget (Volker E.)
1296 * docs: Align code comment references to Phabricator tasks (Volker E.)
1297 * build: Upgrade devDependencies to latest and make pass (James D. Forrester)
1298 * build: Update mediawiki-codesniffer to v0.10.1 and fix issues (WMDE-Fisch)
1299 * build: Update mediawiki-codesniffer to v0.11.0 and fix issues (WMDE-Fisch)
1300 * tests: Prepare for qunit 2.x (James D. Forrester)
1301
1302
1303 ## v0.22.4 / 2017-08-01
1304 ### Features
1305 * CheckboxMultiselectInputWidget: setValue when CheckboxMultiselect changes (Prateek Saxena)
1306 * FieldLayout: Show widget's access key in our title (Bartosz Dziewoński)
1307 * TextInputWidget: When positioning label, don't clear padding if we will set it again (Bartosz Dziewoński)
1308 * TitledElement: When an AccessKeyedElement, show access key in the title (Bartosz Dziewoński)
1309
1310 ### Styles
1311 * icons: Vertically align 'play' & 'stop' icons (Volker E.)
1312 * Apex theme: Add focus styles to Tag-/CapsuleMultiselectWidget (Volker E.)
1313 * Apex theme: Add focus styles to frameless buttons (Volker E.)
1314 * Apex theme: Add play icon (copied from WikimediaUI theme) (Roan Kattouw)
1315 * Apex theme: Align ButtonGroup-/ButtonSelectWidget focus logic to WikimediaUI (Volker E.)
1316 * Apex theme: Align Dropdown*Widget's focus state with other widgets (Volker E.)
1317 * Apex theme: Align TextInputWidget focus to variablized way (Volker E.)
1318 * Apex theme: Align ToggleSwitchWidget focus style to other widgets (Volker E.)
1319 * Apex theme: Improve alignment of TextInputWidget and its elements (Volker E.)
1320 * Apex theme: Introduce framed button focus indication (Volker E.)
1321 * Apex theme: Replace and unify `border-radius` with variables (Volker E.)
1322 * WikimediaUI theme: Set ButtonElement's height per default (Volker E.)
1323 * WikimediaUI theme: Work around a Firefox rendering bug for checkboxes and radios (Bartosz Dziewoński)
1324
1325 ### Code
1326 * DraggableGroupElement: Remove ARIA roles & attributes (Volker E.)
1327 * FieldsetLayout: Use `<legend>` now that Chrome 55 bug is less important (James D. Forrester)
1328 * Apex theme: Align remaining values to coding convention (Volker E.)
1329 * WikimediaUI theme: Align `*-fallback` var with notation elsewhere (Volker E.)
1330 * WikimediaUI theme: Code comment hygiene (Volker E.)
1331 * WikimediaUI theme: Directly use the Less values rather than via copy-paste (James D. Forrester)
1332 * demos: Add examples of TextInputWidget with dynamic label (Bartosz Dziewoński)
1333 * demos: Demo.DraggableItemWidget should not inherit from OO.ui.OptionWidget (Bartosz Dziewoński)
1334 * demos: Show example link on `:focus` (Volker E.)
1335 * docs: Fix some PHPDoc `@return` tags (Ricordisamoa)
1336 * build: Add a script to print the dependency tree of everything (Bartosz Dziewoński)
1337
1338
1339 ## v0.22.3 / 2017-07-11
1340 ### Features
1341 * Tag-/CapsuleMultiselectWidget: Avoid visual focusTrap feedback (Volker E.)
1342 * WindowManager: Avoid inconsistent state due to asynchronous promise resolution (Bartosz Dziewoński)
1343 * WindowManager: fix closing promise state check (David Lynch)
1344
1345 ### Styles
1346 * icons: Align ongoingConversation to grid (Ed Sanders)
1347 * icons: Replace the puzzle icon, using the one from VisualEditor (James D. Forrester)
1348 * icons: Vertically center mapPin icon (Volker E.)
1349 * Apex theme: Add 'article' icon, copied from WikimediaUI (Moriel Schottlender)
1350
1351 ### Code
1352 * DropdownWidget, MenuSelectWidget: Set `aria-expanded` attribute (Prateek Saxena)
1353 * FieldLayout: Add `role='alert'` for error messages (Prateek Saxena)
1354 * FieldLayout: Set `aria-describedby` on the fieldWidget (Prateek Saxena)
1355 * PopupWidget: Update function name in a comment (Bartosz Dziewoński)
1356 * TagMultiselectWidget: Skip `updateInputSize()` for invisible inputs (Roan Kattouw)
1357 * Toolbar: Add comment for greppability of dynamic CSS classes (Bartosz Dziewoński)
1358 * themes: Align read-only variable names to pseudo-class selector scheme (Volker E.)
1359 * themes: Align variable names to WikimediaUI Base scheme (Volker E.)
1360 * WikimediaUI theme: Align `@opacity-icon*` variable names to WikimediaUI Base (Volker E.)
1361 * WikimediaUI theme: Align checked variable names to pseudo-class scheme (Volker E.)
1362 * WikimediaUI theme: Align disabled variable names to pseudo-class scheme (Volker E.)
1363 * WikimediaUI theme: Align variable pseudo classes names to WikimediaUI Base (Volker E.)
1364 * WikimediaUI theme: Replace `@color-base-light` with `@color-base--inverted` (Volker E.)
1365 * WikimediaUI theme: Variablize PopupWidget values (Volker E.)
1366 * WikimediaUI theme: Pull in the upstream WikimediaUI package (James D. Forrester)
1367 * build: Updating mediawiki/mediawiki-codesniffer to 0.10.0 (Kunal Mehta)
1368 * phpcs: Enable more rules, or document why they are disabled (Bartosz Dziewoński)
1369 * testsuitegenerator: Blacklist deprecated `multiline` config option (Bartosz Dziewoński)
1370
1371
1372 ## v0.22.2 / 2017-06-28
1373 ### Deprecations
1374 * [DEPRECATING CHANGE] TextInputWidget: Move multi-line support out (Prateek Saxena)
1375 * [DEPRECATING CHANGE] icons: Move and rename 'stripeSideMenu' to 'draggable' (Volker E.)
1376
1377 ### Features
1378 * DropdownInputWidget: Unbreak setting 'value' via config options (Bartosz Dziewoński)
1379 * Element: Work around browsers that set fractional scrollTop values (Roan Kattouw)
1380
1381 ### Styles
1382 * BookletLayout: Workaround for horizontal scrollbars on menu when editable (Bartosz Dziewoński)
1383 * icons: Let's stop referring to removed icons, hmm? (James D. Forrester)
1384 * Rewrite all styling for "outline controls" (Bartosz Dziewoński)
1385 * Apex theme: Align appearance of tags' close icon to WikimediaUI theme (Volker E.)
1386 * Apex theme: Fix HorizontalLayout containing FieldLayouts (Bartosz Dziewoński)
1387 * WikimediaUI theme: Remove default DraggableElement styling (Ed Sanders)
1388 * WikimediaUI theme: Use icon instead of indicator in Tag-/CapsuleItemWidget (Volker E.)
1389 * WikimediaUI: Strengthen Radio*Widget's `:checked` state (Volker E.)
1390
1391 ### Code
1392 * MenuSelectWidget: Fix item hiding when menu contents change (Roan Kattouw)
1393 * MultilineTextInputWidget: Fix autosizing (Bartosz Dziewoński)
1394 * PopupWidget: Replace CSS with Less comments for smaller dist (Volker E.)
1395 * SearchInputWidget: Fix ability to clear the input (Bartosz Dziewoński)
1396 * TabIndexedElement: Fix validation and make consistent in PHP and JS (Bartosz Dziewoński)
1397 * Use javascript-stringify instead of JSON.stringify (Ed Sanders)
1398 * Apex theme: Fix order of selectors for :first-child FieldLayout (Bartosz Dziewoński)
1399 * demos: Add links to documentation from code examples (Prateek Saxena)
1400 * demos: Allow linking to specific widgets (Bartosz Dziewoński)
1401 * demos: Indicate code toggle clearer (Volker E.)
1402 * demos: Pull out all links to docs/sources to the top of the code (Bartosz Dziewoński)
1403 * demos: Simplify code generation, now that we use javascript-stringify (Bartosz Dziewoński)
1404 * demos: Use URL 'query' part for linking to demo sections rather than URL 'fragment' (Bartosz Dziewoński)
1405 * docs: Fix some typos in documentation (Bartosz Dziewoński)
1406 * docparser: Fix handling for fake trait constructors (Bartosz Dziewoński)
1407 * docparser: Make matching '(default: ...)' case-insensitive (Bartosz Dziewoński)
1408 * docparser: Tighter check for 'use' statements in PHP (Bartosz Dziewoński)
1409
1410
1411 ## v0.22.1 / 2017-05-31
1412 ### Code
1413 * WindowManager: Do not use return value of `#closeWindow` as promise (Bartosz Dziewoński)
1414 * WindowManager: Fix check for a window already closing (Bartosz Dziewoński)
1415 * WindowManager: Fix error handling for `#openWindow` with string argument (Bartosz Dziewoński)
1416 * WindowManager: Fix important typo in deprecation warning (Bartosz Dziewoński)
1417 * WindowManager: Fix incorrect checks for promise state (Bartosz Dziewoński)
1418 * WindowManager: Provide other `jQuery.Promise` methods on the b/c promise too (Bartosz Dziewoński)
1419 * demos: Clarify code comment (Bartosz Dziewoński)
1420 * demos: Clean up the global window manager too when destroying (Bartosz Dziewoński)
1421 * demos: Load icon packs in the PHP demo (Bartosz Dziewoński)
1422 * demos: Replace abandoned icon name 'remove' to current one 'trash' (Volker E.)
1423
1424 ## v0.22.0 / 2017-05-30
1425 ### Breaking changes
1426 * [BREAKING CHANGE] TextInputWidget: Remove search related methods (Prateek Saxena)
1427 * [BREAKING CHANGE] icons: Drop the core icon pack (James D. Forrester)
1428 * [BREAKING CHANGE] icons: Remove unused 'bookmark' icon (Volker E.)
1429 * [BREAKING CHANGE] Depend on OOjs v2.1.0, up from v2.0.0 (James D. Forrester)
1430
1431 ### Deprecations
1432 * [DEPRECATING CHANGE] Rename the 'MediaWiki' theme to 'WikimediaUI' (James D. Forrester)
1433 * [DEPRECATING CHANGE] WindowManager: Deprecate using `openWindow`/`closeWindow` returns as promises (Bartosz Dziewoński)
1434
1435 ### Features
1436 * Add HiddenInputWidget to generate hidden input (Victor Barbu)
1437 * InputWidget: Introduce `#setInputId` and `inputId` config option (Bartosz Dziewoński)
1438 * MenuTagMultiselectWidget: Clear text field after adding an item from it (Bartosz Dziewoński)
1439 * MenuTagMultiselectWidget: Handle the 'selected' config option (Bartosz Dziewoński)
1440 * NumberInputWidget: Use icons instead of labels (Volker E.)
1441 * PopupButtonWidget: Handle empty configuration (Bartosz Dziewoński)
1442 * PopupWidget: Position close button in head absolutely (David Lynch)
1443 * PopupWidget: Sensibly position anchor-less popups (Roan Kattouw)
1444 * WindowManager: Add `WindowInstance` - a Promise-based lifecycle object (Timo Tijhof)
1445 * WindowManager: Handle errors better in `#closeWindow` (Bartosz Dziewoński)
1446
1447 * Allow *even more* widgets to be focussed programatically (Bartosz Dziewoński)
1448 * Only cancel mouse down event if tool in toolgroup clicked on (Ed Sanders)
1449 * Re-introduce `.simulateLabelClick()` as a separate method from .focus() (Bartosz Dziewoński)
1450
1451 ### Styles
1452 * themes: Field*Layout help position perfectly aligned (Volker E.)
1453 * themes: Improve frameless button in size and behaviour (Volker E.)
1454 * themes: Increase FieldsetLayout header's `font-size` (Volker E.)
1455 * Apex theme: Ensure vertical centering of ButtonElement's icon (Volker E.)
1456 * Apex theme: Make OptionWidget icon override more specific (Moriel Schottlender)
1457 * Apex theme: Start Apex's 'user' icon pack, with just 'userAvatar' for now (Ed Sanders)
1458 * WikimediaUI theme: Align `@background-color-destructive` to WikimediaUI Base (Volker E.)
1459 * WikimediaUI theme: Align ButtonInputWidget's `line-height` to ButtonWidget (Volker E.)
1460 * WikimediaUI theme: Align inline label's position (Volker E.)
1461 * WikimediaUI theme: Ensure icon aligns in dropdown menu (Volker E.)
1462 * WikimediaUI theme: Remove incorrect comments (Volker E.)
1463
1464 ### Code
1465 * MenuTagMultiselectWidget: Add test for 'selected' config option (Bartosz Dziewoński)
1466 * windows: Add tests for OO.ui.alert/confirm/prompt (Timo Tijhof)
1467 * AUTHORS: Update for the past two years' work (James D. Forrester)
1468 * build: Add the README/AUTHORS/LICENCE files to dist (James D. Forrester)
1469 * demos: Add TextInputWidget examples with inline labels but no indicators (Ed Sanders)
1470 * demos: Add viewport meta tag to PHP demo too (Volker E.)
1471 * demos: Avoid inline CSS for the overlay (Bartosz Dziewoński)
1472 * demos: Fix code generation for more complicated cases (Bartosz Dziewoński)
1473 * demos: Fix up a couple of minor things in demo widgets (Bartosz Dziewoński)
1474 * demos: Fix `z-index` with fixed demo header (Volker E.)
1475 * demos: Increase and strengthen responsive support (Volker E.)
1476 * demos: Indicate widgets clearer by sections (Volker E.)
1477 * demos: Make disabled progress bar in demo determinate (Ed Sanders)
1478 * demos: Show code that can be used to create the widget (Prateek Saxena)
1479 * testsuitegenerator: Handle classes with no constructor (Bartosz Dziewoński)
1480
1481
1482 ## v0.21.4 / 2017-05-16
1483 ### Features
1484 * Allow more widgets to be focussed programatically (Bartosz Dziewoński)
1485 * Generalize `.getInputId()` for all widgets (Bartosz Dziewoński)
1486 * Use `.focus()` method when possible instead of looking inside widgets (Bartosz Dziewoński)
1487 * TagMultiselectWidget: Fix Control+Backspace keys to delete last item (Bartosz Dziewoński)
1488 * TagMultiselectWidget: Fix order of checks for `allowArbitrary`/`allowDuplicates` (Bartosz Dziewoński)
1489
1490 ### Styles
1491 * MediaWiki theme: Separate two active ToggleButton siblings visually (Volker E)
1492
1493 ### Code
1494 * LabelWidget: Fix label click handling (Bartosz Dziewoński)
1495 * RadioSelectInputWidget: When generating a unique 'name', don't make it random (Bartosz Dziewoński)
1496 * Use glaringly wrong tags for elements that are supposed to be unused (Bartosz Dziewoński)
1497 * README: Clarify and simplify descriptions (Volker E)
1498 * build: Upgrade eslint-config-wikimedia from 0.3.0 to 0.4.0 and make pass (James D. Forrester)
1499 * demos: Add ARIA roles (Volker E)
1500 * demos: Clean up the window manager when destroying the dialogs demo (Bartosz Dziewoński)
1501 * demos: Preserve scroll position when changing non-page options (Bartosz Dziewoński)
1502 * demos: Rename deprecated Card to current TabPanel (Volker E)
1503 * demos: Tame buggy mobile browser behaviour on `position: fixed` (Volker E)
1504 * demos: Turn the menu into a fixed header (Bartosz Dziewoński)
1505 * docs: Fix `OO.ui.IndexLayout` example (Volker E)
1506 * tests: Order the `attributes` object keys, for less noisy diffs (Bartosz Dziewoński)
1507
1508
1509 ## v0.21.3 / 2017-05-09
1510 ### Deprecations
1511 * [DEPRECATING CHANGE] Merge functionality of FloatingMenuSelectWidget into MenuSelectWidget (Bartosz Dziewoński)
1512 * [DEPRECATING CHANGE] Rename CardLayout to TabPanelLayout (Prateek Saxena)
1513 * [DEPRECATING CHANGE] icons: Deprecate 'bookmark' icon (Volker E)
1514 * [DEPRECATING CHANGE] icons: Merge 'caret' into regular movement icons (James D. Forrester)
1515
1516 ### Styles
1517 * OptionWidget: Use parent selector for icon/indicator/label styles (Roan Kattouw)
1518 * Apex theme: Follow same FieldLayout `margin` logic as MediaWiki theme (Volker E)
1519 * MediaWiki theme: Bring styling to design spec in Safari/iOS (Volker E)
1520 * MediaWiki theme: Fix ButtonInputWidget appearance in Saf/iOS (Volker E)
1521 * MediaWiki theme: Fix `padding` for frameless buttons in ProcessDialogs (Ed Sanders)
1522 * MediaWiki theme: Provide focus indicator to TagMultiselectWidget (Volker E)
1523 * MediaWiki theme: Unify and harmonize `padding`/position of Tag*Widgets (Volker E)
1524
1525 ### Code
1526 * Fix some errors flagged by ESLint's 'valid-jsdoc' option (Bartosz Dziewoński)
1527 * NumberInputWidget: Followup db801c55f0 – clean up backward compat vars (Moriel Schottlender)
1528 * MenuSectionOptionWidget: Remove unsupported ARIA attribute (Volker E)
1529 * MenuSelectWidget: Scroll to the top if filtering and no exact match (David Lynch)
1530 * MenuSelectWidgets: Don't unconditionally hide all descendant inputs (Roan Kattouw)
1531 * TagMultiselectWidget: Actually use the focus trapping element (Bartosz Dziewoński)
1532 * TagMultiselectWidget: Fix `#addTag` return value to match docs (Bartosz Dziewoński)
1533 * TagMultiselectWidget: Fix keyboard navigation between items (Bartosz Dziewoński)
1534 * ToggleButtonWidget: Remove misleading `aria-checked` attribute (Volker E)
1535 * Unbreak FloatingMenuSelectWidget when `$container` is not given (Bartosz Dziewoński)
1536 * build: Fix invalid ecmaVersion setting (Timo Tijhof)
1537 * build: Use source maps in coverage report (James D. Forrester)
1538 * icons: Add first/last to complement previous/next in movement pack (Ed Sanders)
1539 * icons: Provide 'clip', 'unClip', and 'pushPin' in moderation (James D. Forrester)
1540 * tests: Do not set `QUnit.config.requireExpects = true` (Bartosz Dziewoński)
1541
1542
1543 ## v0.21.2 / 2017-04-25
1544 ### Features
1545 * Element: New method `#getElementId` (Bartosz Dziewoński)
1546 * NumberInputWidget: Remake as an actual TextInputWidget child (Moriel Schottlender)
1547
1548 ### Styles
1549 * ProgressBarWidget: Switch to `box-sizing: border-box` (Volker E)
1550 * TabOptionWidget: Cleanup & align paddings/position to dialog environment (Volker E)
1551 * MediaWiki theme: Decrease selector specificity and fix invalid appearance (Volker E)
1552 * MediaWiki theme: Fix IE 7 oversized buttons (Volker E)
1553 * MediaWiki theme: Improve SearchWidget design (Volker E)
1554
1555 ### Code
1556 * Do not use `role=menu`/`menuitem` for MenuSelectWidget/MenuOptionWidget (Bartosz Dziewoński)
1557 * PopupTagMultiselectWidget: Update popup position on resize (Prateek Saxena)
1558 * ProcessDialog: Display error messages on top of footer action buttons (Bartosz Dziewoński)
1559 * SelectWidget/MenuSelectWidget: Maintain `aria-activedescendant` attribute on focus owner (Bartosz Dziewoński)
1560 * Set ARIA `role=combobox` on DropdownWidget and LookupElement too (Bartosz Dziewoński)
1561 * Set `aria-owns` for everything with a dropdown list (ARIA `role=combobox`) (Bartosz Dziewoński)
1562 * Follow-up d22d23311: Don't reference OO.ui.ToolGroup blindly (James D. Forrester)
1563 * build: Bump grunt-stylelint, bring in stylelint explicitly (James D. Forrester)
1564 * demos: Add some more examples with 'accessKey' (Bartosz Dziewoński)
1565 * docs: Document Window#$overlay property (Bartosz Dziewoński)
1566 * tests: Drop unnecessary hints to qunit about the number of tests (James D. Forrester)
1567
1568
1569 ## v0.21.1 / 2017-04-18
1570 ### Styles
1571 * PopupWidget: Do not leave space for anchor if there's no anchor (Bartosz Dziewoński)
1572 * MediaWiki theme: Ensure WCAG level AA contrast on unsupported SelectFileWidget (Volker E)
1573 * MediaWiki theme: Fit icon/indicator & label in DecoratedOptionWidget (Volker E)
1574 * MediaWiki theme: Fix standalone, disabled sibling ButtonWidgets (Volker E)
1575 * MediaWiki theme: Fix white `border-color` of frameless buttons (Volker E)
1576 * MediaWiki theme: Make readonly TextInputWidget appearance clearer (Volker E)
1577 * MediaWiki theme: TagMultiselectWidget outlined UI improvements (Volker E)
1578 * MenuOptionWidget: Remove theme-independent 'check' icon (Prateek Saxena)
1579
1580 ### Code
1581 * environment: Upgrade jQuery from 1.11.3 to 3.2.1 (James D. Forrester)
1582 * DropdownInput-/RadioSelectInputWidget: Remove unnecessary ARIA attributes (Volker E)
1583 * Element: Use `JSON.parse` rather than the deprecated `$.parseJSON` (James D. Forrester)
1584 * Fix typo in frameless button mixin (David Lynch)
1585 * FloatingMenuSelectWidget: Add 'ready' event after menu is clipped (Moriel Schottlender)
1586 * MediaWiki theme: Clarify `@min-height-widget-default` usage (Volker E)
1587 * PopupToolGroup: Mixin flaggable (David Lynch)
1588 * TagMultiselectWidget: Allow preset InputWidget (Moriel Schottlender)
1589 * TagMultiselectWidget: Redo data validation for Tag* and Menu* (Moriel Schottlender)
1590 * themes: Align `@size-*-min` variable to naming scheme and rename (Volker E)
1591 * build: Drop the csscomb task (James D. Forrester)
1592 * docs: Fix numbering in Quick start (Kartik Mistry)
1593 * demos: Polish demo labels, styles and add frameless button tests (Volker E)
1594 * tests: Update OO.ui.Process tests for jQuery 3 compatibility (Bartosz Dziewoński)
1595
1596
1597 ## v0.21.0 / 2017-04-11
1598 ### Breaking changes
1599 * [BREAKING CHANGE] ActionWidget: Remove resize event (IvanFon)
1600 * [BREAKING CHANGE] dependencies: Drop support for ES3 browsers via es5-shim (James D. Forrester)
1601
1602 ### Features
1603 * Create a TagMultiselectWidget (Moriel Schottlender)
1604 * FloatingMenuSelectWidget: Add `width` config option (Moriel Schottlender)
1605 * MenuSelectWidget: Add `config.$autoCloseIgnore` (Roan Kattouw)
1606
1607 ### Styles
1608 * PopupWidget: Center the anchor for vertical (above/below) popups too (Bartosz Dziewoński)
1609 * MediaWiki theme: Add separator when toolbar items break on narrow (Volker E)
1610 * MediaWiki theme: Fix IE < 11 icon/indicator position in SelectFileWidget (Volker E)
1611 * MediaWiki theme: Fix overflow ellipsis on small DropdownWidget sizes (Volker E)
1612 * MediaWiki theme: Fix selector regression on DraggableElement (Volker E)
1613 * MediaWiki theme: Fix Toolbars containing ButtonGroups (David Lynch)
1614 * MediaWiki theme: Replace arrows with chevrons and increase contrast (Volker E)
1615 * MediaWiki theme: Unify `padding` across widgets and variablize (Volker E)
1616 * MediaWiki theme: Unify `padding` on ButtonElement (Volker E)
1617 * MediaWiki theme: Unify `padding` on DecoratedOptionWidget and descendants (Volker E)
1618 * Follow-up eceb6f20: MediaWiki theme: Remove unused indicator flags (Volker E)
1619
1620 ### Code
1621 * Remove remnants of PHP-5.3-style `array()` literals (Bartosz Dziewoński)
1622 * ClippableElement: Fix progressive width loss bug (Roan Kattouw)
1623 * ComboBoxInputWidget: Fix minor JS/PHP differences (Bartosz Dziewoński)
1624 * ComboBoxInputWidget: Redo the 'down' indicator in PHP (Bartosz Dziewoński)
1625 * DraggableElement: Only apply focus when widget is not disabled (Moriel Schottlender)
1626 * DraggableElement: Toggle style on `$handle`, not `$element` (Andrew Green)
1627 * DropdownInputWidget: Only allow setting values actually in the dropdown (Bartosz Dziewoński)
1628 * MenuSelectWidget: Highlight the first result when searching (Moriel Schottlender)
1629 * MessageDialog: Accept proposed size dialog on `getSetupProcess` (Ebrahim Byagowi)
1630 * TextInputWidget: Reduce unnecessary duplicated CSS output (Volker E)
1631 * TextInputWidget: Use `.prop()` rather than `.attr()` for 'required' (Bartosz Dziewoński)
1632 * Apex theme: Align coding style to conventions (Volker E)
1633 * Apex theme: Simplify color usage through Less variables (Volker E)
1634 * demos: Remove scaling restrictions (Volker E)
1635 * docparser: Improve trait/mixin handling (Bartosz Dziewoński)
1636 * docparser: Properly handle default values in PHP (Bartosz Dziewoński)
1637 * docs: Add detail to documentation of core.js utilities (Ed Sanders)
1638 * docs: Minor documentation tweaks (Bartosz Dziewoński)
1639 * tests: Comparison tests for infusing previously untestable classes (Bartosz Dziewoński)
1640
1641
1642 ## v0.20.2 / 2017-03-30
1643 ### Styles
1644 * DraggableElement: Fix regression on selectors (Volker E)
1645
1646 ### Code
1647 * GroupElement: Fix insertion bugs (Bartosz Dziewoński)
1648 * icons: Drop unused 'invert' variant from Apex 'icons-interactions' pack (Bartosz Dziewoński)
1649 * build: Add exec:composer and add it to `_ci` (Prateek Saxena)
1650
1651
1652 ## v0.20.1 / 2017-03-28
1653 ### Deprecations
1654 * [DEPRECATING CHANGE] icons: Deprecate and/or move all the core icons (James D. Forrester)
1655 * [DEPRECATING CHANGE] icons: Rename 'wikitrail' to 'mapTrail' (Volker E)
1656 * Follow-up b12205ac: Add deprecation notices to icons moved in v0.16.2 (James D. Forrester)
1657 * Follow-up da8d99af: Add deprecation notice to icon moved in v0.14.0 (James D. Forrester)
1658
1659 ### Features
1660 * DraggableGroupElement: Make draggable conditional (Moriel Schottlender)
1661 * build: Implement `grunt add-theme` task to ease theme creation (Bartosz Dziewoński)
1662
1663 ### Styles
1664 * ButtonElement: Normalize appearance in Firefox (Volker E)
1665 * Blank theme: Fix up the 'blank' theme (Bartosz Dziewoński)
1666 * MediaWiki theme: Position PopupToolGroup indicator similar to other widgets (Volker E)
1667
1668 ### Code
1669 * Element: Add special case for document root in getClosestScrollableContainer (Bartosz Dziewoński)
1670 * FloatableElement: Abort positioning if no longer attached (David Lynch)
1671 * GroupElement: Transform to be an OO.EmitterList mixin (Moriel Schottlender)
1672 * MenuOptionWidget: Remove inherited, duplicated property (Volker E)
1673 * OO.ui.isFocusableElement: Update for jQuery 3 deprecations (Bartosz Dziewoński)
1674 * PopupWidget: Add 'ready' event when the popup is ready (Moriel Schottlender)
1675 * Use Node.DOCUMENT_NODE rather than magic number (Bartosz Dziewoński)
1676 * Follow-up 4bc67351c5: Unbreak FloatableElement positioning (Roan Kattouw)
1677 * Follow-up Iaa7dffc13: *Actually* allow `$returnFocusTo` to be `null` (Ed Sanders)
1678 * themes: Reorder Less rules alphabetically (Volker E)
1679 * MediaWiki theme: Remove obsolete ButtonOptionWidget styles (Volker E)
1680 * MediaWiki theme: Remove unnecessary OptionWiget `border` property (Volker E)
1681 * build: Add a new jenkins script (Prateek Saxena)
1682 * build: Bump grunt-cssjanus to master (Volker E)
1683 * build: Match file order between tests/index and karma (Timo Tijhof)
1684 * build/demos: Generalize demos and build so that it's easier to add new themes (Bartosz Dziewoński)
1685
1686
1687 ## v0.20.0 / 2017-03-15
1688 ### Breaking changes
1689 * [BREAKING CHANGE] Element#scrollIntoView: Drop `complete` config option (James D. Forrester)
1690 * [BREAKING CHANGE] Element#scrollIntoView: Remove deprecated `complete` config parameter (James D. Forrester)
1691 * [BREAKING CHANGE] LabelElement: Remove deprecated `fitLabel` function (James D. Forrester)
1692 * [BREAKING CHANGE] MessageDialog: Drop the deprecated '`verbose`' flag (James D. Forrester)
1693 * [BREAKING CHANGE] PopupWidget#setAlignment: Remove backwards-compatibility (James D. Forrester)
1694 * [BREAKING CHANGE] Remove CapsuleMultiSelectWidget (James D. Forrester)
1695 * [BREAKING CHANGE] Remove TextInputMenuSelectWidget (James D. Forrester)
1696 * [BREAKING CHANGE] TextInputWidget: Remove `type=date`/`month` support (Geoffrey Mon)
1697 * [BREAKING CHANGE] icons: Drop '…Undo' icons, deprecated in 0.18.3 (James D. Forrester)
1698 * [BREAKING CHANGE] icons: Drop 'beta' and 'ribbonPrize', deprecated in 0.18.3 (James D. Forrester)
1699 * [BREAKING CHANGE] icons: Drop 'betaLaunch', deprecated in 0.18.3 (James D. Forrester)
1700 * [BREAKING CHANGE] icons: Drop status flags from Wikimedia (logos) icon pack (Volker E)
1701
1702 ### Deprecations
1703 * [DEPRECATING CHANGE] ActionWidget/Set: Warn for methods using the `resize` event (Prateek Saxena)
1704
1705 ### Features
1706 * Use `<span>` rather than `<div>` for inline-ish widgets (Bartosz Dziewoński)
1707 * CapsuleMultiselectWidget: Call `updateInputSize` when adding, removing items (Prateek Saxena)
1708 * DropdownInputWidget: Add support for `optgroup` (Prateek Saxena)
1709 * FieldLayout: Use `<span>` rather than `<div>` when possible (Bartosz Dziewoński)
1710
1711 ### Styles
1712 * DropdownInputWidget: Tweak PHP widget's disabled styling (Bartosz Dziewoński)
1713 * NumberInputWidget: Set input to 100% height (Volker E)
1714 * MediaWiki theme: Add unit to `line-height` for Chrome (Volker E)
1715 * MediaWiki theme: Align “framed” ButtonWidgets cross-browser (Volker E)
1716 * MediaWiki theme: Ensure theme color in disabled TextInputWidget on Safari (Volker E)
1717 * MediaWiki theme: Ensure vertical alignment of dialog top bar items (Volker E)
1718 * MediaWiki theme: Fix TextInputWidget's IconElement `max-height` (Volker E)
1719 * MediaWiki theme: Fix appearance of ComboBoxInputWidget PHP (Volker E)
1720 * MediaWiki theme: Use color palette color for dialog top bar (Volker E)
1721 * MediaWiki theme: Vertically align label in SelectFileWidget (Volker E)
1722
1723 ### Code
1724 * DropdownInputWidget: Remove accidental patterned background in PHP (Bartosz Dziewoński)
1725 * MediaWiki theme: Align WindowManager to CSS Coding Guidelines (Volker E)
1726 * MediaWiki theme: Indicators shouldn't provide global `progressive` flag (Volker E)
1727 * MediaWiki theme: Simplify Radio- & Checkbox…optionWidget label rules (Volker E)
1728 * build: Bump various devDependencies to master (James D. Forrester)
1729 * build: Exclude demos/vendor from composer test too (James D. Forrester)
1730 * demos: Add ButtonGroupWidget (icon and text) demo (Volker E)
1731 * demos: Add disabled DropdownInputWidget demo (Bartosz Dziewoński)
1732
1733
1734 ## v0.19.5 / 2017-03-07
1735 ### Deprecations
1736 * [DEPRECATING CHANGE] icons: Move 'add' from core to 'interactions' pack (James D. Forrester)
1737
1738 ### Features
1739 * FloatableElement: Add config for `hideWhenOutOfView` (Moriel Schottlender)
1740
1741 ### Styles
1742 * MediaWiki theme: Add visual feedback on focussed Outlined Booklet Dialog (Volker E)
1743 * OutlinedBookletDialog: Bring visual order into levels (Volker E)
1744 * icons: Add 'highlight' to 'editing-styling' pack (Moriel Schottlender)
1745 * icons: Add 'substract' icon, in interactions pack (Volker E)
1746 * icons: Fix vertical alignment of 'journal' (Volker E)
1747 * icons: Remove 'teardrop' from MediaWiki theme 'close' icon (Volker E)
1748
1749 ### Code
1750 * CapsuleMultiselectWidget: Update popup position if height changed (Prateek Saxena)
1751 * ComboBoxInputWidget: Improve documentation example (Bartosz Dziewoński)
1752 * ListToolGroup: Re-clip when expanding/collapsing (Roan Kattouw)
1753 * MenuSelectWidget#filterFromInput: Clear MenuSectionOptionWidgets if empty (Roan Kattouw)
1754 * PopupElement: Set `$floatableContainer` to `this.$element` by default (Roan Kattouw)
1755 * PopupTool: For bottom toolbars, make the popup go up, like toolgroups (Bartosz Dziewoński)
1756 * PopupWidget: Make popups able to actually pop *up*, as well as sideways (Roan Kattouw)
1757 * PopupWidget: Position anchor relative to popup, not popup relative to anchor (Roan Kattouw)
1758 * TextInputWidget: Fix documentation for 'maxRows' type (Bartosz Dziewoński)
1759 * Use `options` in ComboBoxInputWidget demo (Moriel Schottlender)
1760 * Follow-up 442ffe73, 7f21350d, 9dfa5dd5: Mention in icon definitions they're deprecated (James D. Forrester)
1761 * demos: Make demo consoles LTR, even in the RTL demo (Roan Kattouw)
1762 * demos: Add demo/test for PopupWidget/PopupButtonWidget placements (Bartosz Dziewoński)
1763 * demos: Add sections to dialogs demo (Bartosz Dziewoński)
1764 * demos: Extract widgets, dialogs and layouts from dialogs.js (Bartosz Dziewoński)
1765 * demos: Reuse some widgets in the dialogs demo (Bartosz Dziewoński)
1766 * styles: Replace stylelint block with inline comments everywhere (Volker E)
1767
1768
1769 ## v0.19.4 / 2017-02-28
1770 ### Features
1771 * Add `OO.ui.Element.static.getScrollLeft` (Bartosz Dziewoński)
1772 * FloatableElement: Support positioning relative to all edges (Roan Kattouw)
1773
1774 ### Styles
1775 * MediaWiki theme: Align DraggableElement focus with standard appearance (Volker E)
1776 * MediaWiki theme: Align appearance of PHP DropdownInputWidget to JS (Volker E)
1777 * MediaWiki theme: Fix TextInputWidget inline label misalignment (Volker E)
1778 * MediaWiki theme: Fix ToolGroupTool's label alignment (Volker E)
1779 * MediaWiki theme: Fix button layout in ButtonGroup-/SelectWidgets in IE 9 (Volker E)
1780 * MediaWiki theme: Fix styling for FieldLayout inside HorizontalLayout (Bartosz Dziewoński)
1781 * styles: Improve vertical alignment of elements' & widgets' icons (Ed Sanders/Volker E)
1782 * icons: Add 'feedback' icon, in interactions pack (Roan Kattouw)
1783 * icons: Add 'searchDiacritic' icon, in editing-advanced pack (Ed Sanders)
1784
1785 ### Code
1786 * Make generic placeholder pseudo-class browser-prefix mixin (Ed Sanders)
1787 * BookletLayout: When continuous, properly make the inner PageLayouts non-scrollable (Bartosz Dziewoński)
1788 * Element: Fix `scrollLeft()` for body/html/window (Roan Kattouw)
1789 * OutlineOptionWidget: Remove unused and misplaced values (Volker E)
1790 * PopupWidget: Remove `left: 0;` breaking floatable popups (Roan Kattouw)
1791 * MediaWiki theme: Remove obsolete ComboBoxInputWidget selectors (Volker E)
1792 * README: Encourage direct release in the instructions (James D. Forrester)
1793 * build: Test the 'minify' task in CI (James D. Forrester)
1794 * demos: Add 'label' to ToolGroupTool example (Bartosz Dziewoński)
1795 * demos: Extract ButtonStyleShowcaseWidget from the demo code (Bartosz Dziewoński)
1796 * demos: Extract CapsuleNumberPopupMultiselectWidget from the demo code (Bartosz Dziewoński)
1797 * demos: Extract remaining widgets from widgets.js (Bartosz Dziewoński)
1798
1799
1800 ## v0.19.3 / 2017-02-21
1801 ### Features
1802 * FieldLayout, FieldsetLayout: Add support for `$overlay` for help popups (Bartosz Dziewoński)
1803 * MenuSelectWidget: Add config option to not close on choose (Roan Kattouw)
1804
1805 ### Styles
1806 * MediaWiki theme: Make CapsuleItemWidget behave similar to other widgets (Volker E)
1807 * MediaWiki theme: SelectFileWidget drop target aligned to UX patterns (Volker E)
1808
1809 ### Code
1810 * BookletLayout: Remove unnecessary overrides (Bartosz Dziewoński)
1811 * Element#getClosestScrollableContainer: Update code comment (Bartosz Dziewoński)
1812 * FieldLayout, LabelWidget: If input has no ID, focus on element on label click (Prateek Saxena)
1813 * PopupWidget (and similar): Document why it is unwise to show unattached widgets, and emit warnings (Bartosz Dziewoński)
1814 * build: Bump stylelint and make pass (James D. Forrester)
1815 * demos: Add DropdownWidget (with MenuSectionOptionWidget) (Prateek Saxena)
1816 * demos: Further improve responsive layout (Volker E)
1817 * demos: Minor tweaks for button style showcase code (Bartosz Dziewoński)
1818 * demos: Rename OO.ui.Demo to just Demo (Bartosz Dziewoński)
1819 * demos: Replace `table` in button style showcase with responsive layout (Volker E)
1820 * demos: Set the default page in demo.js (Bartosz Dziewoński)
1821
1822
1823 ## v0.19.2 / 2017-02-14
1824 ### Features
1825 * CapsuleMultiselectWidget: Make labels work (Prateek Saxena)
1826 * FloatableElement, PopupWidget: Do positioning from the right in RTL (Roan Kattouw)
1827 * TextInputWidget: getValidity: Check browser validation first (Prateek Saxena)
1828
1829 ### Styles
1830 * icons: Fix vertical alignment of eye icon (Ed Sanders)
1831
1832 ### Code
1833 * core: Do not clear unrelated flags when clearing 'progressive' (Bartosz Dziewoński)
1834 * ActionWidget: Remove event listening code for widget's 'resize' event (Prateek Saxena)
1835 * ClippableElement: Order matters (inexplicably) (Bartosz Dziewoński)
1836 * demos: Use longer text in popup in $overlay demo (Bartosz Dziewoński)
1837
1838
1839 ## v0.19.1 / 2017-02-07
1840 ### Features
1841 * Dialog: Support Meta as well as Control for modifier on Enter key (David Lynch)
1842
1843 ### Styles
1844 * FieldLayout: Fix styling for disabled widgets in PHP (Bartosz Dziewoński)
1845 * MediaWiki theme: Align tab navigation to color palette (Volker E)
1846 * MediaWiki theme: Fix RTL version of largerText icon to be, well, RTL (James D. Forrester)
1847 * MediaWiki theme: Fix direction of shadow on position:bottom toolbars (Ed Sanders)
1848 * MediaWiki theme: Use correct `border-color` on PopupWidget anchor (Volker E)
1849 * MediaWiki theme: Fix focus inset to overlap scrollbars (Volker E)
1850 * icons: Provide a 'halfStar' vertical split star (codynguyen1116)
1851
1852 ### Code
1853 * CheckboxMultiselectInputWidget: Allow disabling specific options (Huji Lee)
1854 * DraggableGroupElement: Add mandatory ARIA role (Volker E)
1855 * FieldLayout: Move `<label>` from `$body` to `$label` (Bartosz Dziewoński)
1856 * FieldLayout: Remove the need for `simulateLabelClick` (Prateek Saxena)
1857 * InputWidget: Fix 'id' attribute setting for `<label>` (Bartosz Dziewoński)
1858 * LabelWidget: Remove the need for `simulateLabelClick` (Prateek Saxena)
1859 * Toolbar: Make toolbar position selectors more specific (Ed Sanders)
1860 * WindowManager: Clarify `#addWindows` documentation (Bartosz Dziewoński)
1861 * Windows: Use the "recommended" `WindowManager#addWindows` usage (Bartosz Dziewoński)
1862 * Apex theme: Get rid of toolbar-shadow div (only used by Apex) (Ed Sanders)
1863 * MediaWiki theme: Remove unnecessary `font-weight` property (Volker E)
1864 * build: Bump various dev dependencies to latest (James D. Forrester)
1865 * colorize-svg: Colorize using a method compatible with rsvg (Bartosz Dziewoński)
1866 * demos: Load icons stylesheets with correct directionality (LTR/RTL) (Bartosz Dziewoński)
1867 * demos: Follow-up a02979ad: Load the icons-content pack in the PHP demo (James D. Forrester)
1868 * demos: Remove 'Constructive' button from the icons page (Prateek Saxena)
1869 * demos: Add link to documentation (Prateek Saxena)
1870 * demos: Fix regression on toolbars demo (Volker E)
1871 * docs: Add quotes around `PROJECT_NAME` setting (Ricordisamoa)
1872 * docs: Document for JSDuck various overridden inherited properties (Bartosz Dziewoński)
1873 * docs: Fix `OO.ui.prompt()` documentation (Bartosz Dziewoński)
1874 * docs: Set `.static.name` in all dialog examples that need it (Bartosz Dziewoński)
1875
1876
1877 ## v0.19.0 / 2017-01-31
1878 ### Breaking changes
1879 * [BREAKING CHANGE] ButtonWidget: Switch `box-sizing` over to `border-box` (Volker E)
1880 * [BREAKING CHANGE] LabelElement: Drop no-op fitLabel() method. (James D. Forrester)
1881 * [BREAKING CHANGE] WindowManager: Error if `.static.name` is not defined when adding a window (Bartosz Dziewoński)
1882
1883 ### Features
1884 * PopupButtonWidget: Add `$overlay` config option (Bartosz Dziewoński)
1885 * SelectWidget: Allow OptionWidget subclasses to provide custom match text (Roan Kattouw)
1886 * Toolbar: Support `position:bottom` (Ed Sanders)
1887
1888 ### Styles
1889 * CapsuleMultiselectWidget: Fix focussing when inside BookletLayout with popup (Bartosz Dziewoński)
1890 * CapsuleMultiselectWidget: Styling tweaks related to popups (Bartosz Dziewoński)
1891 * MenuSelectWidget: Override ClippableElement's `min-height` (Bartosz Dziewoński)
1892 * PopupWidgets: Unify paddings and line-height (Bartosz Dziewoński)
1893 * TextInputWidget/MediaWiki theme: Revert "Improve Less code and align labels" (Bartosz Dziewoński)
1894 * PanelLayout/Apex theme: Revert regression (Volker E)
1895
1896 ### Code
1897 * CapsuleMultiSelectWidget: Call correct parent constructor (Ricordisamoa)
1898 * CapsuleMultiselectWidget: Make popup really work with $overlay (Bartosz Dziewoński)
1899 * FieldsetLayout: Swap 'max-width' and 'width' (Bartosz Dziewoński)
1900 * FloatableElement: More correctly decide if we need custom position (Bartosz Dziewoński)
1901 * MenuSelectWidget: Hide menu if all items are hidden (Bartosz Dziewoński)
1902 * ProcessDialog: Account for `config.flags` being undefined (Ed Sanders)
1903 * Follow-up 1dc6a45: {Booklet,Index}Layout: Avoid deprecated `config.complete` (Roan Kattouw)
1904 * Follow-up d21cf8a: unbreak popups with no $floatableContainer (Roan Kattouw)
1905 * PHP: Avoid unique ID conflicts between PHP and JS code (Bartosz Dziewoński)
1906 * demos: Failing demo for DropdownWidget with an overlay (Roan Kattouw)
1907 * demos: Fix vertical spacing in icons demo (Bartosz Dziewoński)
1908 * demos: Improve layout on mobile and fix various glitches (Volker E)
1909 * demos: Make the icon page easier to use (Prateek Saxena)
1910 * demos: Use longer text in PopupWidgets to showcase line wrapping (Bartosz Dziewoński)
1911
1912
1913 ## v0.18.4 / 2017-01-17
1914 ### Deprecations
1915 * [DEPRECATING CHANGE] MessageDialog: Default 'verbose' option to true (James D. Forrester)
1916 * Follow-up 1dc6a45: Emit deprecations from Element#scrollIntoView callback (James D. Forrester)
1917 * Follow-up 4518bcf: Emit deprecation warnings for LabelElement#fitLabel (James D. Forrester)
1918 * Follow-up 574fd34: Emit deprecations for use of CapsuleMultiSelectWidget (James D. Forrester)
1919 * Follow-up ea9a4ac: Throw deprecation warnings for TextInputMenuSelectWidget (James D. Forrester)
1920 * Follow-up f69a2ad: Emit deprecations for old PopupWidget#setAlignment values (James D. Forrester)
1921
1922 ### Features
1923 * CapsuleMultiSelectWidget: Add allowDuplicates option (Brad Jorsch)
1924 * CapsuleMultiSelectWidget: Remove onFocusForPopup, call focus directly (Roan Kattouw)
1925 * ClippableElement: Add `min-height` for usability in edge cases (Volker E)
1926 * TextInputWidget: Disable hiding focus when clicking indicator/label (Volker E)
1927
1928 ### Styles
1929 * ActionFieldLayout: Limit the 'max-width: 50em' to align: top (Bartosz Dziewoński)
1930 * ButtonGroupWidget: Limit default cursor to active ButtonWidgets (Volker E)
1931 * FieldLayout, FieldsetLayout: Limit width of label+help to 50em (Bartosz Dziewoński)
1932 * FieldLayout: Correct styling regressions for align: 'inline' (Bartosz Dziewoński)
1933 * FieldLayout: Fix positioning of 'help' with align: left/right (Bartosz Dziewoński)
1934 * MediaWiki theme: Unify box-shadows to one visual appearance (Volker E)
1935 * PanelLayout: Remove 3D appearance of framed panels and harmonise padding (Volker E)
1936 * PopupWidget: Change margins to prevent click blocking (Ed Sanders)
1937
1938 ### Code
1939 * ClippableElement: Also clean up `maxWidth`, `maxHeight` when turning clipping off (Bartosz Dziewoński)
1940 * Element#updateThemeClasses: Batch `setTimeout()` calls (Bartosz Dziewoński)
1941 * MediaWiki theme: Use variable for disabled ProgressBar (Volker E)
1942 * PopupWidget#setAlignment: Tweak docs to indicate default parameter value (James D. Forrester)
1943 * PHP: Add method Tag::generateElementId() to match JS OO.ui.generateElementId() (Bartosz Dziewoński)
1944 * styles: Improve and clarify GPU composite layer mixin (Volker E)
1945 * demos: Add a LabelWidget that has a corresponding TextInputWidget (Prateek Saxena)
1946 * demos: Add lots more FieldLayout demos (Bartosz Dziewoński)
1947 * demos: Add test for ClippableElements at the bottom of their containers (Prateek Saxena)
1948 * docs: Use 'an' instead of 'a' before 'HTML' (Prateek Saxena)
1949 * docs: Include an i18n example in OO.ui.msg documentation (David Lynch)
1950 * tests: Improve ignoring expected differences in JS/PHP comparison tests (Bartosz Dziewoński)
1951 * tests: Tweaks to the display of failed tests (Bartosz Dziewoński)
1952 * testsuitegenerator: Allow testing LabelWidget's 'input' (Bartosz Dziewoński)
1953 * testsuitegenerator: Specify sensible values to test for 'align' (Bartosz Dziewoński)
1954 * testsuitegenerator: Test FieldLayout etc. also with TextInputWidget (Bartosz Dziewoński)
1955
1956
1957 ## v0.18.3 / 2017-01-03
1958 ### Deprecations
1959 * [DEPRECATING CHANGE] icons: Deprecate the 'beta' and 'ribbonPrize' icons (James D. Forrester)
1960 * [DEPRECATING CHANGE] icons: Rename '*Undo' to 'un*' (James D. Forrester)
1961 * [DEPRECATING CHANGE] icons: Rename 'betaLaunch' to 'logoWikimediaDiscovery', move pack (James D. Forrester)
1962
1963 ### Features
1964 * ComboBoxInputWidget: Make it impossible to set `multiline` to true (Prateek Saxena)
1965 * Introduce `OO.ui.isMobile()` (Ed Sanders)
1966 * Provide `OO.ui.prompt()` method to complement `confirm()`/`alert()` (Ed Sanders)
1967
1968 ### Styles
1969 * FloatableElement: Replace superfluous class with general one (Volker E)
1970 * MediaWiki theme: Change custom error border color to `destructive` (Volker E)
1971 * MediaWiki theme: Change error/invalid color to alias of `destructive` (Volker E)
1972 * MediaWiki theme: Fix PHP CheckboxMultiselectInputWidget/RadioSelectInputWidget option spacing (Bartosz Dziewoński)
1973 * MediaWiki theme: Indicate normal, flagged ButtonWidgets' `:hover` clearer (Volker E)
1974 * MediaWiki theme: Set `line-height` explicitly on legends and labels (Volker E)
1975
1976 ### Code
1977 * BarToolGroup: Remove obsolete CSS selectors (Volker E)
1978 * ClippableElement: Compatibility with jQuery 3 (Bartosz Dziewoński)
1979 * Element: Do not try to scroll invisible/unattached elements into view (Bartosz Dziewoński)
1980 * LabelWidget: Properly hide labels if they are set to null (Ed Sanders)
1981 * NumberInputWidget: Avoid bitwise tricks when checking for integers (Bartosz Dziewoński)
1982 * PopupButtonWidget: Remove unnecessary CSS property (Volker E)
1983 * ProgressBarWidget: Use CSS transforms for indeterminate widget (Bartosz Dziewoński)
1984 * TextInputWidget: Do nothing in `#adjustSize`/`#positionLabel` if not attached (Bartosz Dziewoński)
1985 * TextInputWidget: Only call `#onElementAttach` on focus if it wasn't called (Bartosz Dziewoński)
1986 * TextInputWidget: Use `Element#isElementAttached` (Bartosz Dziewoński)
1987 * styles: Replace `transform` with dedicated mixin (Volker E)
1988 * MediaWiki theme: Make `box-shadow` LESS vars follow naming scheme (Volker E)
1989 * MediaWiki theme: Simplify frameless ButtonWidget selectors (Volker E)
1990 * performance: Apply webkit GPU hack to scrollable panels (Ed Sanders)
1991 * demos: Add disabled Progress bar (Volker E)
1992 * demos: Add examples for `OO.ui.alert()`/`confirm()`/`prompt()` (Bartosz Dziewoński)
1993 * demos: Avoid using 'required' as a test indicator (Ed Sanders)
1994 * build: Bump file copyright notices for 2017 (James D. Forrester)
1995 * docs: Fix small typo (Amir Sarabadani)
1996
1997
1998 ## v0.18.2 / 2016-12-06
1999 ### Styles
2000 * MediaWiki theme: Address sub-pixel rendering issues of RadioInputWidgets (Volker E)
2001 * MediaWiki theme: Improve `:active:focus` states on ButtonElements (Volker E)
2002 * MediaWiki theme: Reduce MapPin icons' hole for better recognisability (Volker E)
2003
2004 ### Code
2005 * FieldsetLayout: Temporarily remove use of `<legend>` due to Chrome 55 bug (Bartosz Dziewoński)
2006 * TextInputWidget/MediaWiki theme: Improve Less code and align labels (Volker E)
2007
2008
2009 ## v0.18.1 / 2016-11-29
2010 ### Features
2011 * PopupElement: Allow $autoCloseIgnore to be overridden (Roan Kattouw)
2012 * WindowManager: Allow $returnFocusTo to be null (Ed Sanders)
2013
2014 ### Styles
2015 * MediaWiki theme: Reduce, align `margin` and `padding` of form elements (Volker E)
2016 * MediaWiki theme: Replace color function with palette color (Volker E)
2017 * MediaWiki theme: Standard placeholder colours for CapsuleMultiselectWidget too (Bartosz Dziewoński)
2018 * MediaWiki theme: Tweak destructive red for background-independent contrast (Volker E)
2019
2020 ### Code
2021 * Field & Fieldset: Make help popup code consistent (Ed Sanders)
2022 * PopupWidget: Consistently use OO.ui.contains() for auto-closing (Roan Kattouw)
2023 * build: Bump eslint-config-wikimedia to v0.3.0 and make pass (James D. Forrester)
2024 * eslint: Re-enable wrap-iife and partially enable dot-notation (Ed Sanders)
2025
2026
2027 ## v0.18.0 / 2016-11-08
2028 ### Breaking changes
2029 * [BREAKING CHANGE] ComboBoxWidget: Remove this deprecated alias for ComboBoxInputWidget (James D. Forrester)
2030 * [BREAKING CHANGE] core: Remove {add|remove}CaptureEventListener (James D. Forrester)
2031 * [BREAKING CHANGE] icons: Remove deprecated alias 'photoGallery' (Ed Sanders)
2032 * [BREAKING CHANGE] InputWidget: Remove deprecated #setRTL function (James D. Forrester)
2033 * [BREAKING CHANGE] MediaWiki theme: Remove deprecated `constructive` variables (Volker E)
2034 * [BREAKING CHANGE] TextInputWidget: remove isValid() method, deprecated since v0.12.3 (Ricordisamoa)
2035
2036 ### Deprecations
2037 * [DEPRECATING CHANGE] Break out parts of TextInputWidget into a new SearchInputWidget (Prateek Saxena)
2038
2039 ### Features
2040 * ButtonElement: Add `role="button"` only when needed (Prateek Saxena)
2041 * ButtonWidget: Remove code to not let the button get focus after clicking (Prateek Saxena)
2042 * CapsuleMultiselectWidget: Add placeholder option (Prateek Saxena)
2043 * CapsuleMultiselectWidget: Don't discard current input value when editing an item (Bartosz Dziewoński)
2044 * ComboBoxInputWidget: Hide dropdown indicator when there is no dropdown (Volker E)
2045 * TextInputWidget: Add methods #setRequired / #isRequired (Bartosz Dziewoński)
2046 * TextInputWidget: Allow type="month" (Geoffrey Mon)
2047 * WindowManager: Add a $returnFocusTo property (Prateek Saxena)
2048 * Add OO.ui.warnDeprecation method (Prateek Saxena)
2049
2050 ### Styles
2051 * ButtonElement: Normalize `:focus` appearance in Firefox (Volker E)
2052 * ButtonGroupWidget: Change `cursor` on `.oo-ui-buttonElement-active` (Volker E)
2053 * CapsuleItemWidget: Make interactivity of label clearer (Volker E)
2054 * ComboBoxInputWidget: Align to design specification (Volker E)
2055 * PopupToolGroup: Fix border colour (Ed Sanders)
2056 * MessageDialog: Improve `-actions` buttons by resetting `border-radius` (Volker E)
2057 * SelectFileWidget: Don't show action-indicating cursor on empty state (Volker E)
2058 * MediaWiki theme: Fix border colours in toolbar (Ed Sanders)
2059 * MediaWiki theme: Address subpixel rendering errors in buttoned widgets (Volker E)
2060 * MediaWiki theme: Align readonly TextInputWidget to overhauled color palette (Volker E)
2061 * MediaWiki theme: Fix `:hover` in ComboBoxInput- & CapsuleMultiselectWidget (Volker E)
2062 * MediaWiki theme: Fix ButtonElement's `:active:focus` state visually (Volker E)
2063 * MediaWiki theme: Fix FieldsetLayouts' icon position (Volker E)
2064 * MediaWiki theme: Fix SelectFileWidget's label visibility in IE11 (Volker E)
2065 * MediaWiki theme: Fix visual glitch CheckboxInputWidget's `:active` state (Volker E)
2066 * MediaWiki theme: Fix visual glitch on `:active:focus` widgets state (Volker E)
2067 * MediaWiki theme: Fix wrong colored `box-shadow` on ToggleSwitchWidget (Volker E)
2068 * MediaWiki theme: Make colors follow color palette (Volker E)
2069 * MediaWiki theme: Make placeholder follow WCAG 2.0 level AA contrast ratio (Volker E)
2070 * MediaWiki theme: Replace abandoned color from early palette iteration (Volker E)
2071 * MediaWiki theme: Use `@color-progressive` for progress bar (Volker E)
2072 * MediaWiki theme: Use `color-progressive` for switched-on binary inputs (Volker E)
2073 * icons: Replace bigger/smaller with more obvious forms (Ed Sanders)
2074
2075 ### Code
2076 * CapsuleMultiSelectWidget: Always keep input as wide as placeholder text (Prateek Saxena)
2077 * CapsuleMultiselectWidget: Fix crash on right-click when no input (Moriel Schottlender)
2078 * OutlineOptionWidget: Follow-up de9058299f: don't duplicate parent's logic (Roan Kattouw)
2079 * Toolbar: Defer computation of the narrow threshold (Roan Kattouw)
2080 * Window: Update `-content` CSS so that child elements can give it focus (Prateek Saxena)
2081 * Window#withoutSizeTransitions: Build transition property using sub-properties (Prateek Saxena)
2082 * WindowManager: Warn if .static.name is not defined when adding a window (Bartosz Dziewoński)
2083 * Tag: Generate valid HTML for self-closing tags (Bartosz Dziewoński)
2084 * OO.ui.warnDeprecation: Fix how we use getProp (Prateek Saxena)
2085 * MediaWiki theme: Add W3C Standards Notation for placeholder pseudo class (Volker E)
2086 * MediaWiki theme: Clarify usage of `@max-width-*` Less variables (Volker E)
2087 * MediaWiki theme: Refactor z-index inside ButtonSelectWidget/ButtonGroupWidget (Bartosz Dziewoński)
2088 * demo: Add FieldsetLayout with icon (Bartosz Dziewoński)
2089 * demo: Align to color palette (Volker E)
2090 * demo: Fix for IE 9 (Bartosz Dziewoński)
2091 * demo: Remove deprecated TextInputWidget (type=search) (Volker E)
2092 * demo: Fix PHP demo directionality (Bartosz Dziewoński)
2093 * demo: Remove PHP 5.3 compatibility, version check and PHPCS exception (Bartosz Dziewoński)
2094 * build: Make MediaWiki the default theme in doc live previews (Ed Sanders)
2095 * build: Remove obsolete csscomb rules (Volker E)
2096 * build: Remove upstreamed rules and fix documentation (Ed Sanders)
2097 * build: Update eslint-config-wikimedia to v0.2.0 (Ed Sanders)
2098
2099 ## v0.17.10 / 2016-10-03 (special release)
2100 ### Styles
2101 * FieldsetLayout: Styling fixes for `<legend>` labels (Bartosz Dziewoński)
2102 * FieldsetLayout: Work around positioning problems in Firefox (Bartosz Dziewoński)
2103
2104 ## v0.17.9 / 2016-09-13
2105 ### Features
2106 * DropdownWidget: Add CSS class to widgets with open dropdown menus (Volker E)
2107 * SelectFileWidget: Remove MIME type information (Volker E)
2108 * TextInputWidget: Make disabled fields' inner labels unselectable (Volker E)
2109
2110 ### Styles
2111 * ActionToolGroup: Show left border, instead of right (Ed Sanders)
2112 * ButtonElement: Centralize styling properties (Volker E)
2113 * ButtonOptionWidget: Make active state carry default cursor (Volker E)
2114 * Radio- and CheckboxInputWidget: Fix visual disabled state on labels (Volker E)
2115 * ToggleButtonWidget: Use inverted variant when initially active (Leszek Manicki)
2116
2117 * MediaWiki theme: Adjust CheckboxInputWidget to match M30 design (Volker E)
2118 * MediaWiki theme: Adjust RadioInputWidget to match M29 design (Volker E)
2119 * MediaWiki theme: Align Dropdown- & CapsuleMultiSelectWidget `:focus` state (Volker E)
2120 * MediaWiki theme: Align disabled text contrast to WCAG compliance (Volker E)
2121 * MediaWiki theme: Enhance button styles and align them to new color palette (Volker E)
2122 * MediaWiki theme: Fix ButtonElement-active on flagged & primary buttons (Volker E)
2123 * MediaWiki theme: Fix `:hover` state of ComboBoxInputWidget (Volker E)
2124 * MediaWiki theme: Fix regression on `border` of active (selected) buttons (Volker E)
2125 * MediaWiki theme: Improve appearance of CapsuleMultiselectWidget with child (Volker E)
2126 * MediaWiki theme: Make ToggleSwitchWidget's disabled state follow enabled (Volker E)
2127 * MediaWiki theme: Make colors' contrast compliant to WCAG 2.0 level AA (Volker E)
2128 * MediaWiki theme: Toolbar: Use progressive colors for active and active-hover (Prateek Saxena)
2129 * MediaWiki theme: Unify `-pressed` and `-emphasized` color var (Volker E)
2130 * MediaWiki theme: Unify different widgets' selected menu state (Volker E)
2131 * MediaWiki theme: Use a solid border for disabled SelectFile drop target (Volker E)
2132
2133 ### Code
2134 * FieldsetLayout: Make use of `<fieldset>` and `<legend>` tags (Volker E)
2135 * NumberInputWidget: Clean-up Less code & remove style properties (Volker E)
2136 * NumberInputWidget: Simplify CSS selectors & fix button text alignment (Volker E)
2137 * TextInputWidget: Treat `rows: 0` the same in PHP and in JS (Bartosz Dziewoński)
2138 * Toolbar: Simplify and concatenate selectors (Volker E)
2139 * MediaWiki theme: Align tools' variables to common vars naming convention (Volker E)
2140 * MediaWiki theme: Clean-up unnecessary properties in ToolGroup (Volker E)
2141 * build: Align csscomb configuration with CSS coding conventions (Volker E)
2142 * build: Introduce eslint to replace jshint and jscs (James D. Forrester)
2143 * build: Limit the file list of jsonlint (Ed Sanders)
2144 * build: Remove jshint and jscs, now done in eslint (James D. Forrester)
2145 * docs: IndexLayout: Fix ReferenceError in code sample (Prateek Saxena)
2146 * git: Add .idea directory to .gitignore (Florian)
2147 * testsuitegenerator: Also support 'int' and 'bool' (Bartosz Dziewoński)
2148 * testsuitegenerator: Simplify code generating all possible config options (Bartosz Dziewoński)
2149
2150
2151 ## v0.17.8 / 2016-08-16
2152 ### Features
2153 * ProgressBarWidget: Do not make zero progress indeterminate (Leszek Manicki)
2154 * ProgressBarWidget: Add PHP version (Leszek Manicki)
2155 * TextInputWidget: Show state as valid (no matter the case) on focus (Prateek Saxena)
2156
2157 ### Styles
2158 * ButtonElement: Fix 'active' state icon variants in MediaWiki theme (Bartosz Dziewoński)
2159 * FieldLayout: Use saner line-height for errors/notices (Bartosz Dziewoński)
2160 * SelectFileWidget: Improve thumbnail appearance (Volker E)
2161 * styles: Inherit specific `font` properties, not all (Volker E)
2162 * MediaWiki theme: Clear border on selected framed buttons (Volker E)
2163 * MediaWiki theme: Fix ButtonWidget (frameless, indicator) `:focus` appearance (Volker E)
2164 * MediaWiki theme: Fix ToggleSwitchWidget's sub-pixel rounding errors (Volker E)
2165
2166
2167 ### Code
2168 * MediaWiki theme: Improve CapsuleMultiselectWidget Less code and behaviour (Volker E)
2169 * MediaWiki theme: Improve DropdownWidget Less code and behaviour (Volker E)
2170 * MediaWiki theme: Removing never applied styles on BarToolGroup (Volker E)
2171 * MediaWiki theme: Simplify ToolGroup selectors (Volker E)
2172 * testsuitegenerator: Specify sensible values to test for 'progress' (Bartosz Dziewoński)
2173
2174
2175 ## v0.17.7 / 2016-08-03
2176 ### Styles
2177 * MediaWiki theme: Apply `border-color` on `:hover` to textInputWidgets (Volker E)
2178 * MediaWiki theme: Decrease `margin`/`padding` on `legend` replacement (Volker E)
2179 * MediaWiki theme: Decrease distance between label and Checkbox*-/Radio*Widget (Volker E)
2180 * MediaWiki theme: Improve UX on ToggleSwitchWidget (Volker E)
2181 * icons: Fix vertical alignment of 'bell' by moving up 1px (Ed Sanders)
2182 * icons: Provide a 'tray' icon in alerts pack (James D. Forrester)
2183 * icons: Provide the alerts pack for Apex theme too (James D. Forrester)
2184
2185 ### Code
2186 * CheckboxMultiselectWidget: Rewrite Shift-clicking code (Bartosz Dziewoński)
2187 * NumberInputWidget: Merge object literals being passed as config for buttons (Prateek Saxena)
2188 * SelectFileWidget: Reduce div soup when 'showDropTarget' is enabled (Prateek Saxena)
2189 * styles: Replace unprefixed `box-sizing` property with mixin (Volker E)
2190 * MediaWiki theme: Disable vendor UI extensions on every `type=number` input (Volker E)
2191 * MediaWiki theme: Remove unnecessary toolGroup selector (Volker E)
2192 * MediaWiki theme: Replace `border` property values with Less variables (Volker E)
2193 * MediaWiki theme: Replace static `color` value with Less variable (Volker E)
2194 * build: Add 'prep-test' task to be run before running tests in the browser (Prateek Saxena)
2195 * build: Align to stylelint-config-wikimedia for `!important` (James D. Forrester)
2196 * build: Align to stylelint-config-wikimedia for string quotes (James D. Forrester)
2197 * build: Bump stylelint-related devDependencies to latest (James D. Forrester)
2198 * build: Downgrade grunt-jscs to 2.8.0 to avoid cst bug (James D. Forrester)
2199 * docs: Correct some code comments in PHP mixins (Bartosz Dziewoński)
2200 * standalone tests: Correct error message (Bartosz Dziewoński)
2201
2202
2203 ## v0.17.6 / 2016-07-12
2204 ### Features
2205 * CapsuleMultiselectWidget: Allow ignoring user input for 'allowArbitrary' widgets (Bartosz Dziewoński)
2206 * Dialog: Set the 'title' attribute on the title LabelWidget (Prateek Saxena)
2207 * ToolFactory: Allow '\*' as an item in a toolgroup include list (Ed Sanders)
2208 * Window: make the focus trap smarter (David Lynch)
2209
2210 ### Styles
2211 * Add aria-hidden to several Layouts (David Lynch)
2212 * Add dialog transition duration to theme JS file (Ed Sanders)
2213 * ButtonGroupWidget: Fix border on button's CSS states (Volker E)
2214 * MediaWiki theme: Normalize [placeholder] appearance x-browser and ensure a11y (Volker E)
2215 * MediaWiki theme: Unify ButtonWidget focus `border-radius` values (Volker E)
2216 * styles: Set `line-height` to unitless values to follow best practice (Volker E)
2217 * icons: Give "Stop" a filled background, aligned with others in the pack (Volker E)
2218 * icons: Unify cross-out lines direction to top-left/bottom-right (Volker E)
2219
2220 ### Code
2221 * README: Replace git.wikimedia.org URL with Phabricator one (Paladox)
2222 * build: Bump stylelint devDependencies to latest (James D. Forrester)
2223 * build: Update karma and karma-coverage to latest (Paladox)
2224 * demo: Dialogs: Removing title from SimpleDialog as it'll never show (Prateek Saxena)
2225 * docs: Remove self-closing tag syntax in comments and demos (Volker E)
2226 * docs: LabelWidget: Add TitledElement mixin (Prateek Saxena)
2227 * package: Replace git.wikimedia.org url with diffusion url (Paladox)
2228
2229
2230 ## v0.17.5 / 2016-06-19
2231 ### Styles
2232 * Dropdown,SelectFileWidget: Improve user experience on disabled widgets (Volker E)
2233 * MediaWiki theme: Fix ToggleSwitchWidget's grip circle shape (Volker E)
2234 * MediaWiki theme: Fix focus states of ActionWidget's buttons (Volker E)
2235 * MediaWiki theme: Improve focus states of primary buttons & ToggleSwitchWidget (Volker E)
2236
2237 ### Code
2238 * DraggableGroupWidget: Remove unnecessary `cursor` property (Volker E)
2239 * GroupElement#removeItems: Fix to actually unbind events (Ed Sanders)
2240 * ProcessDialog: Change DOM ordering of actions (David Lynch)
2241 * MediaWiki theme: Remove `line-height` from TextInputWidget `input` (Volker E)
2242 * MediaWiki theme: Remove obsolete `color` property, which never gets applied (Volker E)
2243 * build: Bump devDependencies to latest and make pass (James D. Forrester)
2244 * composer: Exclude copied demo PHP from phpcs test (James D. Forrester)
2245 * demos: Add descriptive hints on navigation types to dialog names (Volker E)
2246
2247
2248 ## v0.17.4 / 2016-05-31
2249 ### Features
2250 * DropdownWidget: Handle type-to-search when menu is not expanded (Bartosz Dziewoński)
2251 * Implement MultiselectWidget, CheckboxMultiselectWidget and CheckboxMultiselectInputWidget (Bartosz Dziewoński)
2252 * SelectWidget: Improve focus behaviour (Bartosz Dziewoński)
2253
2254 ### Styles
2255 * icons: Use B/I/S/U icons for British and Candian English variants (Ed Sanders)
2256 * MediaWiki theme: Provide an adjacent disabled ButtonGroup/SelectWidget button border (Volker E)
2257 * MediaWiki theme: Make iconed and non-iconed buttons have the same height (Roan Kattouw)
2258
2259 ### Code
2260 * ButtonElement: Remove unnecessary inheritance duplication of `display` (Volker E)
2261 * GroupWidget: Mix in GroupElement, rather than inherit from it (Bartosz Dziewoński)
2262 * LookupElement: Add missing `@mixins` documentation (Bartosz Dziewoński)
2263 * SelectWidget: Implement `#getFirstSelectableItem` in terms of `#getRelativeSelectableItem` (Bartosz Dziewoński)
2264 * SelectWidget: Optimize `#getRelativeSelectableItem` without filter (Bartosz Dziewoński)
2265 * styles: Remove unnecessary CSS rules on disabled buttons (Volker E)
2266 * styles: Simplify disabled `.oo-ui-tool-link` rules (Volker E)
2267
2268
2269 ## v0.17.3 / 2016-05-24
2270 ### Deprecations
2271 * [DEPRECATING CHANGE] CapsuleMultiSelectWidget: Rename to CapsuleMultiselectWidget (Bartosz Dziewoński)
2272
2273 ### Features
2274 * SelectWidget/OptionWidget: Implement selecting by access key (Bartosz Dziewoński)
2275 * TextInputWidget: Stop returning 'multiline' from 'getSaneType' (Prateek Saxena)
2276
2277 ### Styles
2278 * SelectFileWidget: Improve consistency to other widgets (Volker E)
2279 * MediaWiki theme: Align styles of normal and not-supported SelectFileWidgets (Volker E)
2280
2281 ### Code
2282 * CapsuleMultiselectWidget: Prefer Array#map to jQuery.map (Bartosz Dziewoński)
2283 * CapsuleMultiselectWidget: Use OO.ui.findFocusable() (Bartosz Dziewoński)
2284 * dependencies: Update es5-shim to v4.5.8 (James D. Forrester)
2285 * build: Bump grunt-stylelint to v0.3.0 (James D. Forrester)
2286 * build: Bump various devDependencies to latest (James D. Forrester)
2287 * build: Fix watch path for css (Ed Sanders)
2288 * build: Remove grunt-cli (Ed Sanders)
2289 * build: Upgrade stylelint-config-wikimedia to 0.2.0 and make pass (James D. Forrester)
2290 * build: Use stylelint instead of csslint (Volker E)
2291 * docs: Add some missing @mixins documentation (Bartosz Dziewoński)
2292 * stylelint: Add `@` whitespace and name case rules (Volker E)
2293 * stylelint: Add `@media` whitespace rules (Volker E)
2294 * stylelint: Add block formatting rules (Volker E)
2295 * stylelint: Add font rules (Volker E)
2296 * stylelint: Add no duplicate property rule (Volker E)
2297 * stylelint: Add selector whitespace (Volker E)
2298 * stylelint: Add whitespace rules (Volker E)
2299 * stylelint: Change to use central Wikimedia configuration (Volker E)
2300 * stylelint: Use null instead of false to disable rules (Ed Sanders)
2301
2302
2303 ## v0.17.2 / 2016-05-10
2304 ### Features
2305 * ButtonWidget: Implement, document and demonstrate the 'active' config option (Bartosz Dziewoński)
2306
2307 ### Styles
2308 * ToggleSwitchWidget: Align focus state with other widgets (Volker E)
2309 * MediaWiki theme: Remove `border-radius` from disabled numberInputWidget buttons (Volker E)
2310
2311 ### Code
2312 * TextInputWidget: Remove proprietary `<input results>` attribute styles (Volker E)
2313 * MediaWiki theme: Align `input` & `textarea` coding style to Less way (Volker E)
2314
2315
2316 ## v0.17.1 / 2016-05-03
2317 ### Styles
2318 * CapsuleMultiSelectWidget: Fix cross-browser inconsistencies and improve UX (Volker E)
2319 * SelectFileWidget: Add `no-drop` cursor where it belongs (Volker E)
2320 * MediaWiki theme: Align focus state of capsuleItemWidget with other widgets (Volker E)
2321 * MediaWiki theme: Custom `:focus` state for SelectWidgets (Bartosz Dziewoński)
2322 * MediaWiki theme: Standardize `:focus` states of ButtonWidgets (Volker E)
2323
2324 ### Code
2325 * DraggableGroupElement: Simplify and improve drag logic (Ed Sanders)
2326
2327
2328 ## v0.17.0 / 2016-04-26
2329 ### Breaking changes
2330 * [BREAKING CHANGE] PHP: Use traits instead of custom mixin system (Kunal Mehta)
2331 * [BREAKING CHANGE] TitledElement.php: Remove $element::$title fallback (Kunal Mehta)
2332
2333 ### Styles
2334 * MenuToolGroup: Correct display of checkmarks (Bartosz Dziewoński)
2335 * OutlineOptionWidget: Correct the size of the icons (David Lynch)
2336 * OutlineOptionWidget: Don't apply italics to "placeholder" status (James D. Forrester)
2337 * SelectFileWidget: Fix UI glitches on over-long filenames (Volker E)
2338 * TabOptionWidget: Disabled OptionWidget should receive default cursor (Volker E)
2339 * styles: Add fullScreen icon to media group (Ed Sanders)
2340
2341 ### Code
2342 * ButtonElement.php: Fix toggleFramed() to actually be chainable (Bartosz Dziewoński)
2343 * GroupElement::$targetPropertyName: Remove, no longer needed (Kunal Mehta)
2344 * IconElement.php: Rename protected "icon" property (Kunal Mehta)
2345 * IndicatorElement.php: Rename protected "indicator" property (Kunal Mehta)
2346 * LabelElement.php: Rename protected "label" property (Kunal Mehta)
2347 * build: Update grunt-svg2png to v0.2.7-wmf.1 (Paladox)
2348 * demos: Split off demos.php from widgets.php (Bartosz Dziewoński)
2349 * docparser: Remove commented-out line of code (Bartosz Dziewoński)
2350 * styles: Factor out `max-width-input-default` variable (Volker E)
2351
2352
2353 ## v0.16.6 / 2016-04-19
2354 ### Features
2355 * ButtonOptionWidget: Inherit OptionWidget, not DecoratedOptionWidget (Bartosz Dziewoński)
2356 * ClippableElement: Gracefully handle failure to call clip() after natural height change (Roan Kattouw)
2357 * NumberInputWidget: Disable onWheel action unless the widget has focus (Bartosz Dziewoński)
2358 * NumberInputWidget: Disable onWheel action when the widget is disabled (Prateek Saxena)
2359 * NumberInputWidget: Use input type="number" (Prateek Saxena)
2360 * TextInputWidget: Allow type="number" (Prateek Saxena)
2361 * TextInputWidget: Set step to 'any' if the type is set to 'number' (Prateek Saxena)
2362 * styles: Give icons, indicators `min-width/-height` for cross-browser support (Volker E)
2363
2364 ### Styles
2365 * Apex, MediaWiki themes: Properly center PopupButtonWidget anchors (Roan Kattouw)
2366 * MediaWiki theme: Use disabled color variable for disabled label (Volker E)
2367 * styles: Use transparent rather than white in icons (Bartosz Dziewoński)
2368
2369 ### Code
2370 * SelectFileWidget: Merge identical CSS rules (Volker E)
2371 * SelectFileWidget: Simplify CSS selector specificity (Volker E)
2372 * TextInputWidget: Clarify comment about affected browsers (Volker E)
2373 * TextInputWidget: Consolidate selectors with the same property rules (Volker E)
2374 * TextInputWidget: Stop claiming to fire non existent events in the documentation (Prateek Saxena)
2375 * styles: Centralise the width/height properties of icons and indicators (Volker E)
2376 * Apex theme: Change variable names to match MediaWiki theme (Bartosz Dziewoński)
2377 * README: Update with new build process (Matthew Flaschen)
2378 * typo: texfield -> textfield (Derk-Jan Hartman)
2379
2380
2381 ## v0.16.5 / 2016-04-07
2382 ### Styles
2383 * Prevent modal windows from exceeding available height on Firefox (Bartosz Dziewoński)
2384 * Apex, MediaWiki themes: Add "articles" icon (Marc A. Pelletier)
2385 * DropdownInputWidget: Give un-infused widget cursor:pointer (Ed Sanders)
2386 * RadioSelectInputWidget: Match PHP styling to JS (Bartosz Dziewoński)
2387
2388 ### Code
2389 * ComboBoxInputWidget: Disable autocomplete by default (James D. Forrester)
2390 * GroupElement: Add change event (Prateek Saxena)
2391 * GroupElement.php: Use strict mode in array_search (James D. Forrester)
2392 * styles: Lower specifity of CSS type attribute selectors (Volker E)
2393 * styles: Minor cleanup and unification of values and comments (Volker E)
2394 * styles: Remove unnecessary `resize` property from `select` (Volker E)
2395 * MediaWiki theme: Exchange `rgba()` with hex CSS colors to support IE 8 (Volker E)
2396 * MediaWiki theme: Replace fixed CSS property values with variables (Volker E)
2397 * RadioSelectInputWidget: Don't try to reuse DOM when infusing (Bartosz Dziewoński)
2398 * TextInputWidget: Use getValidity in demos (Ricordisamoa)
2399 * Window: Correct documentation (Bartosz Dziewoński)
2400 * build: Add browserNoActivityTimeout to karma (Paladox)
2401 * build: For grunt-svg2png use a tag instead of git hash (Paladox)
2402 * build: Update demos script to also run grunt publish-build (Paladox)
2403 * build: Use a version of grunt-svg2png without a rate-limited CDN (Paladox)
2404
2405
2406 ## v0.16.4 / 2016-03-22
2407 ### Features
2408 * NumberInputWidget: Optionally don't show the increment buttons (Thalia Chan)
2409
2410 ### Styles
2411 * NumberInputWidget: Fix rounded corners when showButtons=false (Ed Sanders)
2412
2413 ### Code
2414 * core: Add tests for throttle (David Lynch)
2415 * Tag: Allow appendContent and prependContent to accept an array (Moriel Schottlender)
2416 * LabelElement: Cast label to string before check if it is empty (Florian)
2417 * README.md: Add note about needing composer, clean up more generally (James D. Forrester)
2418 * build: Bump grunt-karma to 0.12.2 (Paladox)
2419 * build: Drop the 'npm prepublish' task which runs pre-install as well (James D. Forrester)
2420 * demos: Restore constructive widgets (James D. Forrester)
2421 * rubocop: Re-run todos, upgrade to newer rule names (James D. Forrester)
2422 * rubocop: Review todos (Bartosz Dziewoński)
2423
2424
2425 ## v0.16.3 / 2016-03-16
2426 ### Features
2427 * core: Add `#throttle` to complement `#debounce` (David Lynch)
2428 * ClippableElement: Never exceed the dimensions of the browser viewport (Bartosz Dziewoński)
2429 * FloatableElement: Hide if the anchor element is outside viewport (Bartosz Dziewoński)
2430
2431 ### Styles
2432 * Apex, MediaWiki themes: Fix vertical alignment of close icon (Ed Sanders)
2433 * MediaWiki theme: Disabled ButtonElement icon should not be colored (Bartosz Dziewoński)
2434
2435 ### Code
2436 * ButtonInputWidget: Actually disallow non-plaintext labels in 'useInputTag' mode (Bartosz Dziewoński)
2437 * Element: Preserve `OOUI\HtmlSnippet( '' )` when infusing (Bartosz Dziewoński)
2438 * InputWidget: Actually reuse parts of the DOM when infusing (Bartosz Dziewoński)
2439 * MediaWiki theme: Remove broken remnant of d6b05bc0 (Bartosz Dziewoński)
2440 * TextInputWidget: Treat empty placeholder the same in PHP and JS (Bartosz Dziewoński)
2441 * TitledElement: Treat empty title the same in PHP and JS (Bartosz Dziewoński)
2442 * build: Bump devDependencies to latest (James D. Forrester)
2443 * build: Bump devDependencies to latest (Paladox)
2444 * build: Update grunt-svg2png to commit 2fe1dad07eaec4b655263f8b487a672df4b668b4 (Paladox)
2445 * demo: Expand the dialog $overlay demo for testing scrolling things off-screen (Bartosz Dziewoński)
2446 * tests: Emulated setTimeout for unit testing (David Chan)
2447 * testsuitegenerator: Always test empty values for 'string' type, not just for 'label' (Bartosz Dziewoński)
2448 * testsuitegenerator: Change values tested for 'flags' config options (Bartosz Dziewoński)
2449 * testsuitegenerator: Test 'HtmlSnippet' type (mostly for labels) (Bartosz Dziewoński)
2450
2451
2452 ## v0.16.2 / 2016-03-08
2453 ### Deprecations
2454 * [DEPRECATING CHANGE] MediaWiki theme: Scrap `constructive` flag (Volker E)
2455 * [DEPRECATING CHANGE] Move some editing icons from core to editing-* (James D. Forrester)
2456
2457 ### Features
2458 * Dialog: trigger the primary action with Control+Enter (David Lynch)
2459 * TextInputWidget: Allow type="date" (Geoffrey Mon)
2460
2461 ### Styles
2462 * Apex, MediaWiki themes: Add markup '<>' icon in editing-advanced (Ed Sanders)
2463 * Apex, MediaWiki themes: Drop padding from buttons in MessageDialogs (James D. Forrester)
2464 * editing-styling pack: Have uk fallback to use ru bold and italic icons (Paladox)
2465 * styles: Remove superflous pseudo-class and unitize comments (Volker E)
2466
2467 ### Code
2468 * CapsuleMultiSelectWidget: Emit 'resize' when widget height changes (Bartosz Dziewoński)
2469 * TextInputWidget: Prevent uncaught errors when using #selectRange in IE (Ed Sanders)
2470 * TextInputWidget: Update comment about Blink height miscalculation (Bartosz Dziewoński)
2471 * Follow-up I0667fbc: Fix draggable element CSS (Ed Sanders)
2472 * Add Element::configFromHtmlAttributes() helper method (Bartosz Dziewoński)
2473 * Clean-up duplicate properties across widgets (Volker E)
2474 * docs: Clarify the lack of `.oo-ui-box-shadow()` mixin (Volker E)
2475
2476
2477 ## v0.16.1 / 2016-03-01
2478 ### Styles
2479 * CapsuleItemWidget: Revert regression on "remove" button in Firefox (Volker E)
2480
2481 ### Code
2482 * ActionFieldLayout: Add max-width: 50em; (Florian)
2483 * DraggableGroupElement: Don't emit reorder event when action is a no-op (Ed Sanders)
2484 * Element: Fix #gatherPreInfuseState called incorrectly, causing TypeErrors (Thiemo Kreuz)
2485 * NumberInputWidget: fix example (Ricordisamoa)
2486 * SelectWidget: fix incorrect `@return` that should be `@param` (Ricordisamoa)
2487 * build: Compress PNGs with Zopfli etc. after they are built (James D. Forrester)
2488 * build: Enable all passing jscs jsDoc rules (Ricordisamoa)
2489 * build: Enable jscs jsDoc rule 'checkAnnotations' and make pass (Ricordisamoa)
2490 * build: Enable jscs jsDoc rule 'checkParamNames' and make pass (Ricordisamoa)
2491 * build: Enable jscs jsDoc rule 'checkTypes' and make pass (Ricordisamoa)
2492 * build: Enable jscs jsDoc rule 'requireNewlineAfterDescription' and make pass (Ricordisamoa)
2493 * build: Enable jscs jsDoc rule 'requireReturnTypes' and make pass (Ricordisamoa)
2494 * demos: Display a nicer error message on old PHP versions (Kunal Mehta)
2495
2496
2497 ## v0.16.0 / 2016-02-22
2498 ### Breaking changes
2499 * [BREAKING CHANGE] DraggableGroupElement: Add default implementation of reorder (Ed Sanders)
2500 * [BREAKING CHANGE] Remove 'noimages' distribution (Bartosz Dziewoński)
2501 * [BREAKING CHANGE] Require PHP 5.5.9+; drop old array syntax (James D. Forrester)
2502 * [BREAKING CHANGE] SelectFileWidget: Remove deprecated config 'dragDropUI' (Prateek Saxena)
2503
2504 ### Deprecations
2505 * [DEPRECATING CHANGE] MenuOptionsWidgets: Drop jQuery autoEllipsis support (Bartosz Dziewoński)
2506
2507 ### Features
2508 * core#debounce: If an immediate timeout is already waiting, don't re-set it (Bartosz Dziewoński)
2509 * LabelElement: Bring in highlightQuery method from VE (Ed Sanders)
2510 * DraggableElement: Defer adding of -dragging class so it isn't applied to copy (Ed Sanders)
2511 * DraggableElement: Introduce $handle config option (Ed Sanders)
2512 * DraggableGroupElement: Live reorder list while dragging (Ed Sanders)
2513 * DraggableGroupElement: Only show meaningful drop positions (Ed Sanders)
2514
2515 ### Styles
2516 * CapsuleItemWidget: Tweak styles for the "remove" button (Bartosz Dziewoński)
2517 * MenuSelectWidget: Bring some sanity styling when inside different widgets (Bartosz Dziewoński)
2518 * NumberInputWidget: Apex: Round the correct corners in the disabled state (Prateek Saxena)
2519 * styles: Use block rather than inline-block to avoid line height issues (Bartosz Dziewoński)
2520 * MediaWiki theme: Restore non-broken version of eye.svg (Bartosz Dziewoński)
2521
2522 ### Code
2523 * Avoid parsing HTML when creating <input> nodes (Bartosz Dziewoński)
2524 * tests: Actually run core test suite in standalone mode (Bartosz Dziewoński)
2525 * Compress PNGs with zopflipng (Ori Livneh)
2526 * DraggableGroupElement: Cache directionality (Ed Sanders)
2527 * DraggableGroupElement: Fix offset calculation (Ed Sanders)
2528 * DraggableGroupElement: Reduce flicker when dragging (Ed Sanders)
2529 * TextInputWidget: Don't call #updatePosition if there's no label to position (Bartosz Dziewoński)
2530 * PHP: Take advantage of PHP 5.5 understanding ( new Foo )->foo (Bartosz Dziewoński)
2531 * README: Update Phabricator URL broken by upgrade (James D. Forrester)
2532 * build: Bump grunt-svg2png to a newer (still personal) version; lots faster (James D. Forrester)
2533
2534 ## v0.15.4 / 2016-02-16
2535 ### Deprecations
2536 * [DEPRECATING CHANGE] Element#scrollIntoView: Replace callback with promise (Ed Sanders)
2537
2538 ### Features
2539 * SelectWidget: Prevent mouse highlighting while typing-to-select (Bartosz Dziewoński)
2540
2541 ### Styles
2542 * PHP DropdownInputWidget: Match height of <option> to JS MenuOptionWidget (Bartosz Dziewoński)
2543
2544 ### Code
2545 * DraggableElement: Remove 'HACK' comment, this isn't a hack (Bartosz Dziewoński)
2546 * Element: Expand variable names in scrollIntoView (Ed Sanders)
2547 * Element, ListToolGroup: Add some missing documentation (Ed Sanders)
2548 * Element#scrollIntoView: Make the promise version actually work (Bartosz Dziewoński)
2549 * PopupWidget: Only build head and footer if we're going to use it (Bartosz Dziewoński)
2550 * PopupWidget: Tweak some comments (Bartosz Dziewoński)
2551 * styles: Remove initial value `ease` from `transition` (Volker E)
2552
2553 ## v0.15.3 / 2016-02-09
2554 ### Features
2555 * CapsuleItemWidget: Let user tab through items, edit and delete them (Prateek Saxena)
2556 * CapsuleMultiSelectWidget: Edit instead of remove on Backspace (Prateek Saxena)
2557 * CapsuleWidgets: Edit on click and remove on Ctrl+Backspace (Prateek Saxena)
2558 * CapsuleWidgets: Toggle through capsules and the input with arrow keys (Prateek Saxena)
2559 * DropdownWidget: Open menu on up and down arrow keys (Prateek Saxena)
2560 * MenuSelectWidget: Ensure currently selected element is visible when menu opens (Bartosz Dziewoński)
2561 * SelectFileWidget: Show thumbnail when dropTarget is shown (Prateek Saxena)
2562 * Really preserve dynamic state of widgets when infusing (Bartosz Dziewoński)
2563
2564 ### Styles
2565 * MediaWiki, Apex themes: Replace 'language' icon with tweaked version (Mun May Tee)
2566
2567 ### Code
2568 * CapsuleItemWidget: Use Button instead of an Indicator (Prateek Saxena)
2569 * CapsuleMultiSelectWidget: Extend config instead of when setting property (Prateek Saxena)
2570 * InputWidget: Remove the 'setAccessKey' method (Prateek Saxena)
2571 * SelectWidget: Really prevent default action during type-to-select (Bartosz Dziewoński)
2572 * Put '@keyframes' rules inside a mixin to avoid duplicating them (Bartosz Dziewoński)
2573 * Apex theme: Remove unnecessary '@keyframes' prefixing (Bartosz Dziewoński)
2574 * MediaWiki theme: Align button mixins/states to CSS guidelines/standard (Volker E)
2575 * Correct code using plain DOM events documented as jQuery events (Bartosz Dziewoński)
2576 * demo: Add a long DropdownInputWidget demo (Bartosz Dziewoński)
2577 * demo: In PHP demo, load oojs-ui-core only instead of whole oojs-ui (Bartosz Dziewoński)
2578 * demo: Measure time needed to construct the demo (Bartosz Dziewoński)
2579 * demo: widgets: OO.ui.CapsuleMultiSelectWidget: Remove non-existent 'values' config (Prateek Saxena)
2580 * docparser: Recognize and ignore '@uses' (Bartosz Dziewoński)
2581 * docs: OO.ui.CapsuleMultiSelectWidget: Config options (Prateek Saxena)
2582 * docs: OO.ui.CapsuleMultiSelectWidget: Link to the widget it uses (Prateek Saxena)
2583 * docs: OO.ui.SelectFileWidget: Minor language change (Prateek Saxena)
2584
2585
2586 ## v0.15.2 / 2016-02-02
2587 ### Features
2588 * DropdownWidget: Prevent label from overflowing the handle (Bartosz Dziewoński)
2589
2590 ### Styles
2591 * Ensure gradient filter rendering on IE 8&9 (Bartosz Dziewoński)
2592 * Remove unused CSS classes .oo-ui-ltr and .oo-ui-rtl (Bartosz Dziewoński)
2593 * Update `.oo-ui-vertical-gradient` mixin to modern times (Volker E)
2594
2595 ### Code
2596 * Unify SVG icon color values to CSS/Less coding standards (Volker E)
2597 * ComboBoxInputWidget: Don't make the 'datalist' infusable (Bartosz Dziewoński)
2598 * Move OO.ui.alert and OO.ui.confirm methods to separate file (Bartosz Dziewoński)
2599 * README: Add "Loading the library" wherein we apologise for the mess that is the dist/ directory (Bartosz Dziewoński)
2600 * build: Actually check that all required files are not missing (Bartosz Dziewoński)
2601 * build: Add intro.js.txt and outro.js.txt to all distribution JS files (Bartosz Dziewoński)
2602 * build: De-duplicate per-theme modules lists (Bartosz Dziewoński)
2603 * build: Only define one 'less' task, not one per-distribution (Bartosz Dziewoński)
2604 * build: Remove unused 'ieCompat' options from 'less' (Bartosz Dziewoński)
2605 * build: Remove unused 'report' options from 'less' (Bartosz Dziewoński)
2606 * build: Small modules.yaml tweaks (Bartosz Dziewoński)
2607 * build: Split the library into four parts (Bartosz Dziewoński)
2608 * build: Switch modules.json to YAML to document some of the weird stuff we've put in there (Bartosz Dziewoński)
2609 * build: Unbreak `grunt build --graphics=vector` (Bartosz Dziewoński)
2610 * build: Update phpunit/phpunit to 4.8 (Paladox)
2611 * docparser: Parse '@class Foo' annotations, not just '@class' (Bartosz Dziewoński)
2612
2613
2614 ## v0.15.1 / 2016-01-26
2615 ### Features
2616 * Really filter out unsafe URLs, but don't throw silly exceptions (Bartosz Dziewoński)
2617 * ClippableElement: Try to prevent unnecessary scrollbars (Bartosz Dziewoński)
2618 * Dialog: Don't set `overflow:hidden;` on `.oo-ui-window-body` elements (Alex Monk)
2619 * TextInputWidget: Don't fail if 'validate' function returns null (Bartosz Dziewoński)
2620
2621 ### Styles
2622 * WindowManager: Only apply `top: 1em; bottom: 1em;` to non-fullscreen windows (Bartosz Dziewoński)
2623 * Align mixin whitespace to CSS/Less coding guidelines (Volker E)
2624 * Enable `cursor: pointer` just on enabled widgets (Volker E)
2625 * Apex, MediaWiki themes: Fix size of templateAdd icon (Ed Sanders)
2626 * Apex, MediaWiki themes: Quotes icon fixes (Ed Sanders)
2627 * Apex, MediaWiki themes: Re-crush SVGs, removing useless ID values and empty groups (James D. Forrester)
2628 * Apex theme: Fix FieldLayout padding in inline mode (Ed Sanders)
2629 * Apex theme: NumberInputWidget: Fix width of +/- buttons (Ed Sanders)
2630 * MediaWiki theme: Add invert variant to 'accessibility' icon pack icons (Bartosz Dziewoński)
2631 * MediaWiki theme: Align `@input-*` vars to coding guidelines (Volker E)
2632 * MediaWiki theme: Align `rgba()` values to CSS/Less guidelines (Volker E)
2633 * MediaWiki theme: Align size variables to CSS/Less guidelines (Volker E)
2634 * MediaWiki theme: Consolidate emphasized color values into variable (Volker E)
2635 * MediaWiki theme: Establish new `@border-default` variable (Volker E)
2636 * MediaWiki theme: Make icon variants actually work for all icons (Bartosz Dziewoński)
2637 * MediaWiki theme: Make transition of text input fields smoother (Volker E)
2638 * MediaWiki theme: Merge `@oo-ui-toolbar-bar-text` & `@color-default` vars (Volker E)
2639 * MediaWiki theme: Replace fixed & consolidate disabled values with vars (Volker E)
2640 * MediaWiki theme: Update avatar icon (Pau Giner)
2641
2642 ### Code
2643 * NumberInputWidget: Replace `box-sizing` property with mixin as anywhere else (Volker E)
2644 * SelectFileWidget: Order name and type spans in the order they are shown (Prateek Saxena)
2645 * TextInputWidget: Simplify `#getValidity` (Bartosz Dziewoński)
2646 * README: Add a 'Contributing' section (James D. Forrester)
2647 * build: Don't generate .min.js and .min.css files by default (Bartosz Dziewoński)
2648 * build: Only build one graphics distribution (mixed/vector/raster), not all (Bartosz Dziewoński)
2649 * build: Update jakub-onderka/php-parallel-lint to 0.9.2 (Paladox)
2650 * build: Update mediawiki/mediawiki-codesniffer to 0.5.1 (Paladox)
2651 * demo: Extend compounded form in widget.js demo (Volker E)
2652
2653 ## v0.15.0 / 2016-01-12
2654 ### Breaking changes
2655 * [BREAKING CHANGE] Drop Internet Explorer 8 support from JavaScript code (Ricordisamoa)
2656 * [BREAKING CHANGE] Delete deprecated aliases 'picture' and 'insert' (Ed Sanders)
2657
2658 ### Deprecations
2659 * [DEPRECATING CHANGE] Create single icon for language/translation (Ed Sanders)
2660 * [DEPRECATING CHANGE] Move 'redirect' icon to 'articleRedirect' and cleanup (Ed Sanders)
2661 * [DEPRECATING CHANGE] core: Deprecate add/removeCaptureEventListener (Bartosz Dziewoński)
2662
2663 ### Features
2664 * Send Escape key cancel events through action handler (Alex Monk)
2665
2666 ### Styles
2667 * MediaWiki theme: Align variable values & properties to CSS/Less guidelines (Volker E)
2668 * MediaWiki theme: Align `@neutral-button-border` to CSS/Less guidelines (Volker E)
2669 * MediaWiki theme: Align `transition` variables with coding guidelines (Volker E)
2670 * MediaWiki theme: Change color value to Less variable (Volker E)
2671 * MediaWiki theme: Clarify `@active` variable by renaming it (Volker E)
2672 * MediaWiki theme: Clarify `@background` var by renaming it (Volker E)
2673 * MediaWiki theme: Clarify `@select` variable by renaming it (Volker E)
2674 * MediaWiki theme: Clarify `@text` variable by renaming it (Volker E)
2675 * MediaWiki theme: Consolidate stray `margin` and `padding` properties (Volker E)
2676 * MediaWiki theme: Remove unnecessary `@-ms-keyframes` vendor rule (Volker E)
2677 * MediaWiki theme: Replace fixed `invalid` color value with variable (Volker E)
2678 * MediaWiki theme: Unify `border` property values (Volker E)
2679 * MediaWiki theme: Unify `border-radius` values (Volker E)
2680 * MediaWiki theme: Unify `-disabled` variables usage (Volker E)
2681
2682 ### Code
2683 * core: Add constants for MouseEvent.which button codes (Ed Sanders)
2684 * demo: Remove IE 8 support (Bartosz Dziewoński)
2685 * build: Fix typos ("overridden") (Ed Sanders)
2686 * build: Bump file copyright notices for 2016 (James D. Forrester)
2687 * build: Update most devDependencies to latest (James D. Forrester)
2688 * build: Updating development dependencies (Kunal Mehta)
2689
2690 ## v0.14.1 / 2015-12-08
2691
2692 ### Features
2693 * Implement OO.ui.alert() and OO.ui.confirm() (Bartosz Dziewoński)
2694
2695 ### Styles
2696 * CapsuleMultiSelectWidget: Interface tweaks (Bartosz Dziewoński)
2697 * CapsuleMultiSelectWidget: Make the text field span all available area (Bartosz Dziewoński)
2698 * CapsuleMultiSelectWidget: Update menu position when typing (Bartosz Dziewoński)
2699 * HorizontalLayout: Synchronise behaviour between themes (Bartosz Dziewoński)
2700 * Apex theme: Enlarge 'search' icon (Bartosz Dziewoński)
2701 * MediaWiki theme: Correct text color in MessageDialog, TabOptionWidget (Volker E)
2702
2703 ### Code
2704 * Tool*: Consolidate and cross-link some documentation (Bartosz Dziewoński)
2705 * Tool*: Expand, correct docs for #onUpdateState and the related event (Bartosz Dziewoński)
2706 * core.js: Extract a large chunk of the file incorrectly in a closure (Bartosz Dziewoński)
2707 * Apex, MediaWiki themes: Standardize XML structure for various 'search' images (Bartosz Dziewoński)
2708 * MediaWiki theme: Add missing theme mixin placeholder (no-op) (Bartosz Dziewoński)
2709 * build: Test PHP documentation with Doxygen via composer and make pass (James D. Forrester)
2710 * demo: Quit using the 'image' icon in documentation examples (Bartosz Dziewoński)
2711
2712 ## v0.14.0 / 2015-11-24
2713 ### Breaking changes
2714 * [BREAKING CHANGE] Depend on OOjs v1.1.10, up from v1.1.9 (James D. Forrester)
2715 * [BREAKING CHANGE] TextInputWidget: Remove old deprecated alias #setPosition (Ed Sanders)
2716
2717 ### Deprecations
2718 * [DEPRECATING CHANGE] De-duplicate 'trash' and 'remove' icons (James D. Forrester)
2719
2720 ### Features
2721 * TextInputWidget: Add insertContent method (Thalia Chan)
2722 * TextInputWidget: Add encapsulateContent method to insert new content around a selection (Thalia Chan)
2723
2724 ### Styles
2725 * Apex theme: Provide the 'interactions' icon pack (James D. Forrester)
2726 * MediaWiki theme: Make dialog and panel box-shadows outset rather than inset (Ed Sanders)
2727
2728 ### Code
2729 * FlaggedElement.php: Fix type hint (Reedy)
2730 * SelectFileWidget: Remove sometimes-incorrect 'title' on the <input> (Bartosz Dziewoński)
2731 * SelectFileWidget: Use i18n string for button label (Ed Sanders)
2732 * TextInputWidget: Fix documentation of insertContent method (Thalia Chan)
2733 * \*.php: Replace `@chainable` jsduck-ism with `@return` $this (Reedy)
2734 * .gitattributes: Ignore both `/doc` and `/docs` directories (James D. Forrester)
2735 * AUTHORS: Update for the past few months' work (James D. Forrester)
2736 * build: Added Rakefile (Željko Filipin)
2737
2738 ## v0.13.3 / 2015-11-17
2739 ### Deprecations
2740 * [DEPRECATING CHANGE] Duplicate icons: Unify 'picture' and 'image' (Ed Sanders)
2741
2742 ### Features
2743 * RequestManager: Introduce a mixin for widgets that need to do API calls (David Lynch)
2744 * TextInputWidget: Add getRange method (Ed Sanders)
2745 * WindowManager: Allow getSetup/ReadyProcess to reject (Ed Sanders)
2746 * WindowManager: Fade in overlay after 'setup' not 'ready' (Ed Sanders)
2747
2748 ### Styles
2749 * MediaWiki, Apex themes: Remove small 0.1em vertical margin from buttons (Bartosz Dziewoński)
2750 * MediaWiki theme: Add destructive variant to the 'cancel' icon (James D. Forrester)
2751 * MediaWiki theme: Reduce whitespace between FieldLayouts (Bartosz Dziewoński)
2752
2753 ### Code
2754 * TitledElement: Behave like its docs say it should (David Lynch)
2755 * Use null for abstract methods and correct documentation (Ed Sanders)
2756 * demo: Make button style showcase a table (Bartosz Dziewoński)
2757
2758 ## v0.13.2 / 2015-11-10
2759 ### Deprecations
2760 * [DEPRECATING CHANGE] ComboBoxWidget: Refactor into ComboBoxInputWidget (Bartosz Dziewoński)
2761 * [DEPRECATING CHANGE] MediaWiki, Apex themes: Unify add/insert icons (Ed Sanders)
2762
2763 ### Features
2764 * ComboBoxInputWidget: Implement PHP version (Bartosz Dziewoński)
2765 * LookupElement: Make auto-highlighting the first term configurable (Florian)
2766
2767 ### Styles
2768 * Add some missing white backgrounds and use variables when possible (Bartosz Dziewoński)
2769 * MediaWiki theme: Make the menu icon identical to Apex's (Ed Sanders)
2770 * MediaWiki theme: Specify 'line-height' for DropdownWidget's handle (Bartosz Dziewoński)
2771 * WikiText icon: Make slightly narrower (Ed Sanders)
2772
2773 ### Code
2774 * Apex theme: Remove dead styles for ComboBoxWidget (Bartosz Dziewoński)
2775 * build: Make copy:fastcomposerdemos work again (Bartosz Dziewoński)
2776
2777 ## v0.13.1 / 2015-11-03
2778 ### Deprecations
2779 * [DEPRECATING CHANGE] InputWidget: Replace `#setRTL` with `#setDir` (Ed Sanders)
2780
2781 ### Features
2782 * Allow widgets to re-use parts of the DOM when infusing; use for InputWidget's `$input` (Bartosz Dziewoński)
2783 * FieldLayout: Allow setting errors and notices dynamically (Bartosz Dziewoński)
2784 * InputWidget: Add '`dir`' to config (Ed Sanders)
2785
2786 ### Styles
2787 * TextInputWidget: Account for scroll bar width when positioning indicators/labels (Ed Sanders)
2788 * TextInputWidget: Ensure icon+indicator+label are top aligned in multi-line mode (Ed Sanders)
2789
2790 ### Code
2791 * FieldLayout: Mark `#makeMessage` as `@protected` (Bartosz Dziewoński)
2792 * History.md: wrap `<select>` tag in backticks (Ricordisamoa)
2793 * tests: Refactor property->attribute copying (Ed Sanders)
2794
2795 ## v0.13.0 / 2015-10-27
2796 ### Breaking changes
2797 * [BREAKING CHANGE] Remove aliases for OO.ui.mixins, deprecated in 0.11.4 (C. Scott Ananian)
2798 * [BREAKING CHANGE] Turn Element#gatherPreInfuseState into a static method (Bartosz Dziewoński)
2799
2800 ### Features
2801 * Update outline widget when current item is scrolled out of view (Ed Sanders)
2802 * TextInputWidget: Emit 'resize' events (Ed Sanders)
2803 * TextInputWidget: Fix scrollbars in `<textarea>`s in IE8-11 (Ed Sanders)
2804 * TextInputWidget: Improve selection API (Ed Sanders)
2805
2806 ### Styles
2807 * MediaWiki theme: Adjust ToggleSwitchWidget to match M61 design (Volker E)
2808 * Follow-up I54f1e3c92: Fix placement of cursors on checkbox/radio widgets (Volker E)
2809 * Follow-up I598e7b25a: Apply MenuToolGroup missing styles fix to Apex theme (Ed Sanders)
2810
2811 ### Code
2812 * Consistently use '`//`' rather than '`/* */`' for Less comments (Bartosz Dziewoński)
2813 * Remove obsolete Opera<12.1 vendor prefixes (Volker E)
2814 * Remove unnecessary IE10beta vendor-prefixes from OOjs UI (Volker E)
2815 * build: Switch back to upstream version of grunt-contrib-concat (Timo Tijhof)
2816 * build: Updating development dependencies (Kunal Mehta)
2817 * build: Use my Gmail address for attribution (Timo Tijhof)
2818
2819 ## v0.12.12 / 2015-10-13
2820 ### Features
2821 * CapsuleMultiSelectWidget: When 'allowArbitrary' is true, don't require 'Enter' to confirm (Bartosz Dziewoński)
2822 * SelectFileWidget: Add a focus method (Ed Sanders)
2823
2824 ### Styles
2825 * CapsuleMultiSelectWidget: Set 'background-color' rather than 'background' (Bartosz Dziewoński)
2826 * DropdownWidget: Fix vertical alignment of handle's text (Volker E)
2827 * MediaWiki theme: Get transitions on ButtonWidget's `:hover` states in sync (Volker E)
2828 * MediaWiki theme: Unbreak checkbox/radio 'cursor: pointer' (Bartosz Dziewoński)
2829 * MediaWiki theme: Use inverted icon for 'active' buttons (Ed Sanders)
2830
2831 ### Code
2832 * ButtonElement: Actually use 'active' property and add getter (Ed Sanders)
2833 * Element: Document $element config option (Thalia)
2834 * composer.json: Add author names & e-mails (Alangi Derick)
2835 * demo: Correct some typos (Bartosz Dziewoński)
2836
2837 ## v0.12.11 / 2015-10-06
2838 ### Styles
2839 * MediaWiki theme: Make shadows translucent black instead of light grey (Ed Sanders)
2840 * MediaWiki theme: Make PHP DropdownInputWidget look closer to JS version (Bartosz Dziewoński)
2841
2842 ### Code
2843 * Follow-up I4acbe69420: BookletLayout: Fix focus of page switching (Ed Sanders)
2844 * IndexLayout: Fix focus of panel switching (Ed Sanders)
2845 * TextInputWidget: Remove 'autocomplete' attribute on page navigation (Bartosz Dziewoński)
2846 * build: Bump es5-shim and various devDependencies to master (James D. Forrester)
2847
2848 ## v0.12.10 / 2015-09-29
2849 ### Styles
2850 * Fix icon/indicator padding on TextInputWidget/SelectFileWidget (Ed Sanders)
2851
2852 ### Code
2853 * CapsuleItemWidget: Remove 'click' event preventing (Bartosz Dziewoński)
2854 * FloatableElement: Don't try unbinding events before we bind them (Bartosz Dziewoński)
2855 * SelectWidget: Ensure 'choose' never emits null (Ed Sanders)
2856 * Remove old textInputWidget-decorated classes (Ed Sanders)
2857 * build: Upgrade MediaWiki-Codesniffer to 0.4.0 (Kunal Mehta)
2858
2859 ## v0.12.9 / 2015-09-22
2860 ### Features
2861 * BookletLayout, IndexLayout: Make autoFocus and focussing more reliable (Bartosz Dziewoński)
2862 * CapsuleMultiSelectWidget: Allow using CapsuleItemWidget subclasses (Bartosz Dziewoński)
2863 * CardLayout: Add a 'label' config option (Ed Sanders)
2864 * FloatableElement: Introduce mixin (Bartosz Dziewoński)
2865 * FloatingMenuSelectWidget: Update position of menus within overlay while scrolling (Bartosz Dziewoński)
2866 * IndexLayout: Add 'expanded' option, passed through to StackLayout (Ed Sanders)
2867 * MenuLayout: Use child selectors to allow nesting menus (Ed Sanders)
2868 * Re-attempt I31ab2bace4: Try to stop user from tabbing outside of open dialog box (Ed Sanders)
2869
2870 ### Styles
2871 * SelectFileWidget: Move file type over to the right in secondary text colour (Ed Sanders)
2872 * Fix focus styles on disabled widgets (Volker E)
2873 * Apex, MediaWiki themes: Make most borders on table icon thinner (Ed Sanders)
2874 * Apex, MediaWiki themes: Make picture icon border thinner (Ed Sanders)
2875 * MediaWiki theme: Alter buttons' padding and position icons absolutely (nirzar)
2876 * MediaWiki theme: Fix height of IndexLayout tab widget (Ed Sanders)
2877 * MediaWiki theme: Unify box-shadows for PopupWidget and DropdownWidget (Volker E)
2878
2879 ### Code
2880 * #isFocusableElement: Rewrite for performance and correctness (Ed Sanders)
2881 * BookletLayout: Remove unnecessary JSHint override (Bartosz Dziewoński)
2882 * DropdownWidget: Update example doc to show #getMenu usage (Ed Sanders)
2883 * Follow-up bf1497be: Fix PopupToolGroup use of renamed Clippable property (Ed Sanders)
2884 * PopupWidget: Add missing `@mixins` doc entry (Bartosz Dziewoński)
2885 * SelectFileWidget: Fix DOM order of file type label (Ed Sanders)
2886 * Widget: Fix docs for disable event (Ed Sanders)
2887 * docs: Remove excess empty lines in comments (Bartosz Dziewoński)
2888 * docs: Add quotes around PROJECT_BRIEF setting (Timo Tijhof)
2889
2890 ## v0.12.8.1 / 2015-09-18 (special release)
2891 ### Code
2892 * build: Update version requirement for mediawiki/at-ease: 1.0.0 → 1.1.0 (Ori Livneh)
2893
2894 ## v0.12.8 / 2015-09-08
2895 ### Styles
2896 * SelectFileWidget: Overflow and ellipsis for label (Ed Sanders)
2897 * Apex theme: Move transition timing to common variables (Prateek Saxena)
2898 * MediaWiki theme: Move window transition to `@medium-ease` variable (Prateek Saxena)
2899 * MediaWiki theme: Add missing `width` and `height` attributes to icons (Ed Sanders)
2900 * Clean up CSS values in .oo-ui-transition calls (Timo Tijhof)
2901 * Use 'ease' instead of 'ease-in-out' for CSS transitions (Timo Tijhof)
2902
2903 ### Code
2904 * Toolbar: Prevent double initialization (Roan Kattouw)
2905 * build: Bump grunt-contrib-jshint from 0.11.2 to 0.11.3 to fix upstream issue (James D. Forrester)
2906 * build: Upgrade grunt-banana-checker to v0.3.0 (James D. Forrester)
2907
2908 ## v0.12.7 / 2015-09-01
2909 ### Deprecations
2910 * [DEPRECATING CHANGE] SelectFileWidget: Re-design to use a clearly clickable button (Ed Sanders)
2911
2912 ### Styles
2913 * FieldLayout: Don't add `margin-bottom` when in a HorizontalLayout (Florian)
2914 * SelectFileWidget: Use gray for hover and `@progressive-fade` for drop active (Prateek Saxena)
2915 * Apex, MediaWiki themes: Fix scale of external link icon (Ed Sanders)
2916 * Apex, MediaWiki themes: Re-crush all SVG files with SVGO (James D. Forrester)
2917 * Apex, MediaWiki themes: Reduce size of 'close' icon by 1px (Ed Sanders)
2918 * Apex, MediaWiki themes: Remove Inkscape-ism from SVG files (James D. Forrester)
2919 * Apex, MediaWiki themes: Standardise XML prolog for SVG files (Bartosz Dziewoński)
2920 * MediaWiki theme: Fix viewBox of arrow indicators (Ed Sanders)
2921 * MediaWiki theme: Fix viewBox of several icons (James D. Forrester)
2922
2923 ### Code
2924 * LookupElement: Really disallow editing of `readOnly` TextInputWidgets (Bartosz Dziewoński)
2925 * SelectFileWidget: Fix drop and drop hover exception in Firefox (Ed Sanders)
2926 * SelectFileWidget: Improve type checking (Ed Sanders)
2927
2928 ## v0.12.6 / 2015-08-25
2929 ### Features
2930 * AccessKeyedElement: Introduce (Florian)
2931 * ButtonOptionWidget: Mixin TitledElement (Bartosz Dziewoński)
2932 * ClippableElement: Allow $clippableContainer to be different from $clippable (Roan Kattouw)
2933 * Dialog: Listen for Escape key on $element, not document (Roan Kattouw)
2934 * InputWidget: Add TitledElement and AccessKeyedElement mixins (Florian)
2935 * PopupWidget: Make it possible to add static footers (Moriel Schottlender)
2936 * SelectFileWidget: Add drag drop UI as a config (Prateek Saxena)
2937 * TextInputWidget: Add moveCursorToEnd() (Roan Kattouw)
2938
2939 ### Styles
2940 * MenuToolGroup: Add some missing styles for tools' 'check' icons (Bartosz Dziewoński)
2941 * PopupWidget: don't apply header styles to footer (Roan Kattouw)
2942 * SelectFileWidget: Mute the drag and drop design (Ed Sanders)
2943 * Add colour to neutral state of MW frameless buttons (Ed Sanders)
2944 * Editing-advanced icon pack: Add 'calendar' (Bartosz Dziewoński)
2945
2946 ### Code
2947 * DropdownInputWidget: Allow users to pass config options to DropdownWidget (Alex Monk)
2948 * Theme: Add theme classes to $icon and $indicator only (Bartosz Dziewoński)
2949 * Use OO.ui.debounce() for Element#updateThemeClasses (Roan Kattouw)
2950 * Document browser-specific code with support comments (Timo Tijhof)
2951 * Update OOjs to v1.1.9 (James D. Forrester)
2952 * Fix file permissions (Southparkfan)
2953 * Fix inArray test in drag handler (Ed Sanders)
2954 * Prefer ES5 over jQuery methods (Bartosz Dziewoński)
2955 * build: Enable jscs rule 'requireSpacesInsideBrackets' and make pass (James D. Forrester)
2956 * build: Enable jscs rule 'requireVarDeclFirst' and make pass (James D. Forrester)
2957 * build: Make `quick-build` build the 'mixed' distribution (James D. Forrester)
2958 * build: Update jscs devDependency from 1.8.0 to 2.1.0 (James D. Forrester)
2959 * build: Update various devDependencies to latest (James D. Forrester)
2960 * core: Remove spurious "[description]" placeholder from documentation (Timo Tijhof)
2961 * demos, tests: Use es5-shim for IE8 compatibility (Bartosz Dziewoński)
2962 * phpcs.xml: Ignore JS demo files in the PHP distribution (James D. Forrester)
2963 * testsuitegenerator: Do not generate nonsensical tests for 'maxLength' (Bartosz Dziewoński)
2964
2965 ## v0.12.5 / 2015-08-18
2966 ### Features
2967 * CapsuleMultiSelectWidget: Unbreak $overlay config option (Bartosz Dziewoński)
2968 * FloatingMenuSelectWidget: Introduce, based on TextInputMenuSelectWidget (Bartosz Dziewoński)
2969 * FieldLayout: Throw an error if no widget is provided (Prateek Saxena)
2970 * MessageDialog: Focus primary action button when the dialog opens (Prateek Saxena)
2971
2972 ### Styles
2973 * DropdownWidget: Remove additional vertical margin, for consistency (Bartosz Dziewoński)
2974 * FieldLayout: Correct rendering of multiline messages in MediaWiki theme (Bartosz Dziewoński)
2975 * Move base icon/indicator styles out of themes (Roan Kattouw)
2976 * MediaWiki theme: Correct styling of nested buttons (Bartosz Dziewoński)
2977
2978 ### Code
2979 * DropdownWidget: Add $overlay config option (Bartosz Dziewoński)
2980 * IconElement, IndicatorElement: Apply base styles to the right selector (Bartosz Dziewoński)
2981 * Add background-repeat: no-repeat; to default icon/indicator styles (Roan Kattouw)
2982 * Remove redundant background rules for icons/indicators (Roan Kattouw)
2983 * Revert "TextInputWidget: Update doc'ed requirements for validate function" (Prtksxna)
2984 * Don't directly use #addEventListener for compatibility with IE 8 (Bartosz Dziewoński)
2985 * demos: Add a demo of the $overlay config option of various widgets (Bartosz Dziewoński)
2986
2987 ## v0.12.4 / 2015-08-13
2988 ### Styles
2989 * CapsuleMultiSelectWidget: Style tweaks (Ed Sanders)
2990
2991 ### Code
2992 * MenuSelectWidget: Call #updateItemVisibility in more cases (Bartosz Dziewoński)
2993 * PopupWidget: Remove 'focusout' handling again, limit to CapsuleMultiSelectWidget (Bartosz Dziewoński)
2994
2995 ## v0.12.3 / 2015-08-11
2996 ### Deprecations
2997 * [DEPRECATING CHANGE] TextInputWidget: Add getValidity function, deprecate isValid (Prateek Saxena)
2998
2999 ### Features
3000 * Add OO.ui.isSafeUrl() to make sure url targets are safe client-side (Kunal Mehta)
3001 * CapsuleMultiSelectWidget: Introduce (Brad Jorsch)
3002 * FieldLayout: Allow displaying errors or notices next to fields (Bartosz Dziewoński)
3003 * HorizontalLayout: Introduce (Bartosz Dziewoński)
3004 * If ProcessDialog#fitLabel is called before dialog is open, defer (Ed Sanders)
3005 * Mixin TitledElement into DropdownInputWidget and FieldLayout (Florian)
3006 * Preserve dynamic state of widgets when infusing (Bartosz Dziewoński)
3007 * TextInputWidget: Don't forget to positionLabel() after it's been unset (Bartosz Dziewoński)
3008
3009 ### Styles
3010 * FieldLayout: Kill 'list-style-image' too for messages list (Bartosz Dziewoński)
3011 * PopupToolGroup: Handle popup position on very narrow screens (Ed Sanders)
3012 * ToggleSwitchWidget: Update according to spec (Prateek Saxena)
3013 * MediaWiki, Apex themes: Fix height of frameless toolbar button (Ed Sanders)
3014 * Apex theme: Correct disabled iconed button tool's text colour (Ed Sanders)
3015 * Revert "Dialog: Increase z-index of .oo-ui-dialog to 1000+" (Ed Sanders)
3016
3017 ### Code
3018 * ButtonOptionWidget: Make it more difficult to set an inappropriate 'tabIndex' (Bartosz Dziewoński)
3019 * TextInputWidget: Update doc'ed requirements for validate function (Prateek Saxena)
3020 * TextInputWidget: Use getValidity in setValidityFlag (Prateek Saxena)
3021 * Element: DWIM when repeatedly infusing the same node (Bartosz Dziewoński)
3022 * Element: Preserve 'classes' config option through infusion (Bartosz Dziewoński)
3023 * demo: Make compatible with IE 8 (Bartosz Dziewoński)
3024 * build: Exclude irrelevant files from Composer PHP package (Timo Tijhof)
3025 * build: Move phpcs config from composer.json to phpcs.xml (Timo Tijhof)
3026 * build: Output doxygen to "doc" for consistency with other PHP libraries (Kunal Mehta)
3027 * build: Switch svg2png to personal build which fixes long lines (James D. Forrester)
3028 * demos, tests: Use `.parent` instead of `.super` (Bartosz Dziewoński)
3029 * docparser: Add rudimentary error handling (Bartosz Dziewoński)
3030 * doxygen: Use default directory for HTML_OUTPUT (Kunal Mehta)
3031 * tests: Twist the time in comparison tests in a different manner (Bartosz Dziewoński)
3032 * testsuitegenerator: Output the number of generated test cases (Bartosz Dziewoński)
3033
3034 ## v0.12.2 / 2015-07-28
3035
3036 ### Styles
3037 * Dialog: Increase z-index of .oo-ui-dialog to 1000+ (Prateek Saxena)
3038 * MediaWiki theme: Create new 'accessibility' icon pack (Violetto)
3039
3040 ### Code
3041 * SelectWidget: Fix @mixins documentation (Roan Kattouw)
3042 * Update OOjs to v1.1.8 (James D. Forrester)
3043
3044 ## v0.12.1 / 2015-07-22
3045
3046 ### Features
3047 * PendingElement: Make this actually useful (Roan Kattouw)
3048 * TextInputWidget: Handle required: true better (Bartosz Dziewoński)
3049 * TextInputWidget: Handle type: 'search' better (Bartosz Dziewoński)
3050
3051 ### Styles
3052 * PanelLayout: Add some vertical margin when 'padded' and 'framed' (Bartosz Dziewoński)
3053 * MediaWiki, Apex themes: Add 'clear' indicator (Bartosz Dziewoński)
3054 * MediaWiki theme: Align colour of toolbar and dropdown buttons (Prateek Saxena)
3055
3056 ### Code
3057 * Window: Compute directionality only when needed (Roan Kattouw)
3058 * Standardise some common comments (Bartosz Dziewoński)
3059 * build: Add clean:demos task (Bartosz Dziewoński)
3060 * build: Add clean:tests task (Bartosz Dziewoński)
3061 * build: Have copyright header reference "OOjs UI" team (Kunal Mehta)
3062 * build: Use new grunt-tyops package rather than local original (James D. Forrester)
3063 * Gruntfile: Fix 'pgk' to 'pkg' and add to typos list (James D. Forrester)
3064 * package.json: Use proper SPDX license notation (Derk-Jan Hartman)
3065
3066 ## v0.12.0 / 2015-07-13
3067 ### Breaking changes
3068 * [BREAKING CHANGE] SearchWidget: Remove deprecated event re-emission (Ed Sanders)
3069
3070 ### Features
3071 * Allow infusion of widgets in other namespaces (Kunal Mehta)
3072 * Only allow construction of classes that extend OO.ui.Element in infusion (Kunal Mehta)
3073 * ButtonInputWidget: Disable generating `<label>` elements (Bartosz Dziewoński)
3074 * FieldLayout: Support HTML help messages through HtmlSnippet (Kunal Mehta)
3075 * RadioSelectWidget: Improve accessibility (Bartosz Dziewoński)
3076 * SelectWidget: Call #chooseItem instead of #selectItem when enter is pressed (Ed Sanders)
3077
3078 ### Styles
3079 * MediaWiki, Apex themes: Add a 'notice' icon, same as the 'alert' indicator (James D. Forrester)
3080 * MediaWiki, Apex themes: Re-crush with svgo 0.5.3 (James D. Forrester)
3081 * PopupWidget: Use child selectors to apply rules correctly (Ed Sanders)
3082 * TextInputWidget: Use 'text' cursor for icon/indicator rather than 'pointer' (Bartosz Dziewoński)
3083 * Set Scots to use bold-b and italic-i (baud/italeec) (Ed Sanders)
3084
3085 ### Code
3086 * ClippableElement: Fix horizontal clipping in nested scrollable elements (Roan Kattouw)
3087 * ClippableElement: Only call reconsiderScrollbars() if we actually *stopped* clipping (Roan Kattouw)
3088 * Follow-up 3ddb3603: unbreak nesting of autosizing or labeled TextInputWidgets (Roan Kattouw)
3089 * InputWidget: Add additional `<span/>` only for subclasses that need it (Bartosz Dziewoński)
3090 * LookupElement: Disallow editing of readOnly TextInputWidgets (Bartosz Dziewoński)
3091 * History: Re-write into new B/D/F/S/C format and clean up (James D. Forrester)
3092 * build: Don't run phpcs over demos/php (Kunal Mehta)
3093 * build: Update development dependencies (James D. Forrester)
3094 * build: Update watch rules (Kunal Mehta)
3095
3096 ## v0.11.8 / 2015-07-07
3097 ### Features
3098 * DropdownInputWidget, RadioSelectInputWidget: Consistently call `#cleanUpValue` (Bartosz Dziewoński)
3099 * TextInputWidget: Allow setting the HTML autocomplete attribute (Florian)
3100 * TextInputWidget: Support `rows` option when in multiline mode (Kunal Mehta)
3101 * Make scroll into view work in scrollable divs in Firefox (Roan Kattouw)
3102
3103 ### Styles
3104 * MediaWiki theme: Remove support for frameless primary buttons (Bartosz Dziewoński)
3105
3106 ### Code
3107 * Use at-ease instead of PHP's @ (Kunal Mehta)
3108 * Use composer's autoloader in exec:phpGenerateJSPHPForKarma (Kunal Mehta)
3109 * build: Don't lint demos/{dist,node_modules,vendor} (Kunal Mehta)
3110 * build: Build demos as part of `grunt build` too (Kunal Mehta)
3111 * build: Build demos as part of `grunt quick-build` (Kunal Mehta)
3112 * build: Only build test files (`build-tests` task) when going to run tests (Bartosz Dziewoński)
3113 * demos: Make self-contained in demos/ directory (Kunal Mehta)
3114 * tests: Provide better output when running infusion test under Karma (Bartosz Dziewoński)
3115
3116 ## v0.11.7 / 2015-07-01
3117 ### Features
3118 * Element.php: Strip all namespaces from infused PHP widgets (Kunal Mehta)
3119 * OptionWidget: Explicitly set aria-selected to `false` on init (Bartosz Dziewoński)
3120
3121 ### Styles
3122 * MediaWiki theme: Add support for frameless primary buttons (Ed Sanders)
3123 * MediaWiki theme: Align and center the advanced icon (Roan Kattouw)
3124 * MediaWiki, Apex themes: Fix styling for frameless process dialog actions (Ed Sanders)
3125
3126 ### Code
3127 * Element.php: Add test case to verify class name in infused widgets (Kunal Mehta)
3128 * Element.php: Only variables may be passed by reference (Kunal Mehta)
3129 * Theme.php: Actually make abstract in PHP (Kunal Mehta)
3130 * Theme.php: Add missing doc comments (Kunal Mehta)
3131 * documentation: Use bold in comments instead of h4 (Ed Sanders)
3132
3133 ## v0.11.6 / 2015-06-23
3134 ### Features
3135 * NumberInputWidget: Don't use `Math.sign()` (Brad Jorsch)
3136 * SelectWidget: Fix invalid escape sequence `\s` (Roan Kattouw)
3137
3138 ### Styles
3139 * DropdownWidget: Add white background in MediaWiki theme (Prateek Saxena)
3140 * SelectFileWidget: Add white background in MediaWiki theme (Prateek Saxena)
3141 * MediaWiki theme: Add constructive variants for star and unStar icons (Roan Kattouw)
3142 * MediaWiki theme: Add invert variant to all icons (Roan Kattouw)
3143 * MediaWiki theme: Add progressive variant to ongoingConversation icon (Stephane Bisson)
3144
3145 ### Code
3146 * Use `.parent` instead of `.super` (Stephane Bisson)
3147 * build: Updating development dependencies (Kunal Mehta)
3148
3149 ## v0.11.5 / 2015-06-16
3150 ### Features
3151 * ButtonInputWidget: Render frameless button correctly (Bartosz Dziewoński)
3152 * ComboBoxWidget: Add a getter method for text inputs (Mr. Stradivarius)
3153 * FieldsetLayout: Make rule for disabled label color more precise (Bartosz Dziewoński)
3154 * MenuSelectWidget: Explain what the widget config option is for (Roan Kattouw)
3155 * RadioSelectInputWidget: Unbreak form submission in JS version (Bartosz Dziewoński)
3156
3157 ### Styles
3158 * MediaWiki theme: Add destructive variant to check icon (Matthew Flaschen)
3159 * MediaWiki, Apex themes: Add ongoingConversation icon (Matthew Flaschen)
3160
3161 ### Code
3162 * build: Configure jsonlint (Kunal Mehta)
3163
3164 ## v0.11.4 / 2015-06-09
3165 ### Deprecations
3166 * [DEPRECATING CHANGE] Introduce oo.ui.mixin namespace for mixins, and put them src/mixins (C. Scott Ananian)
3167
3168 ### Features
3169 * ActionFieldLayout: Add PHP version (Bartosz Dziewoński)
3170 * ButtonWidget: Fix not having tabindex updated when enabled/disabled (Brad Jorsch)
3171 * ClippableElement: Fix behavior of clippables in nested scrollables (Bartosz Dziewoński)
3172 * ClippableElement: Fix behavior of long clippables (Bartosz Dziewoński)
3173 * Dialog: Label in aria terms (Prateek Saxena)
3174 * DropdownWidget: Adjust height to other widgets (Bartosz Dziewoński)
3175 * DropdownWidget: Blank widget when no item is selected (Brad Jorsch)
3176 * Element#reconsiderScrollbars: Preserve scroll position (Bartosz Dziewoński)
3177 * GroupElement: pass correct event name to disconnect() from aggregate() (Roan Kattouw)
3178 * NumberInputWidget: Create, for numeric input (Brad Jorsch)
3179 * NumberInputWidget: Use keydown, not keypress (Brad Jorsch)
3180 * ProcessDialog: Don't center the title label if there's not enough space (Bartosz Dziewoński)
3181 * RadioOptionWidget: Control focus more strictly (Bartosz Dziewoński)
3182 * RadioSelectInputWidget: Create (Bartosz Dziewoński)
3183 * SelectFileWidget: Create (Brad Jorsch)
3184 * SelectWidget: Listen to keypresses and jump to matching items (Brad Jorsch)
3185 * TextInputWidget: Adjust height to other widgets (Bartosz Dziewoński)
3186 * Widget: Add `#supportsSimpleLabel` static property to control `<label>` usage (Bartosz Dziewoński)
3187 * Window: Clear margins for actions in horizontal/vertical groups (Ed Sanders)
3188 * `OOUI\Tag`: Avoid 'Potentially unsafe "href" attribute value' exceptions for relative URLs (Bartosz Dziewoński)
3189
3190 ### Styles
3191 * MessageDialog: Remove unintentional action button margin (Bartosz Dziewoński)
3192 * styles: Change gradient mixin syntax to W3C standards' syntax (Volker E)
3193 * styles: Remove obsolete "-ms-linear-gradient" declaration (Volker E)
3194 * Apex theme: Use matching 'lock' and 'unLock' icons (Bartosz Dziewoński)
3195 * MediaWiki and Apex themes: Force background color of `<select>` to white (Ed Sanders)
3196 * MediaWiki and Apex themes: Re-crush SVG files (James D. Forrester)
3197
3198 ### Code
3199 * ActionFieldLayout: Dead code removal and cleanup (Bartosz Dziewoński)
3200 * BarToolGroup: Add description and example (Kirsten Menger-Anderson)
3201 * ButtonInputWidget and TextInputWidget: Document and enforce allowed types (Bartosz Dziewoński)
3202 * DropdownInputWidget: Tweak documentation (Bartosz Dziewoński)
3203 * InputWidget#getInputElement: Mark as `@protected`, not `@private` (Bartosz Dziewoński)
3204 * ListToolGroup: Add description and example (Kirsten Menger-Anderson)
3205 * MenuToolGroup: Add description, example and mark private method (Kirsten Menger-Anderson)
3206 * PendingElement: Add description (Kirsten Menger-Anderson)
3207 * PopupTool: Add description and example (Kirsten Menger-Anderson)
3208 * PopupToolGroup: Add description and mark protected methods (Kirsten Menger-Anderson)
3209 * Tool: Add description (Kirsten Menger-Anderson)
3210 * ToolFactory: Add description (Kirsten Menger-Anderson)
3211 * ToolGroup: Add description and mark protected methods (Kirsten Menger-Anderson)
3212 * ToolGroupFactory: Add description (Kirsten Menger-Anderson)
3213 * ToolGroupTool: Add description and example (Kirsten Menger-Anderson)
3214 * Toolbar: Add description (Kirsten Menger-Anderson)
3215 * `OOUI\Element::mixins`: Improve doc comment (Kunal Mehta)
3216 * `OOUI\Tag`: Add basic phpunit tests (Kunal Mehta)
3217 * build: Update MediaWiki codesniffer to 0.2.0 (Kunal Mehta)
3218 * build: Updating development dependencies (James D. Forrester)
3219 * demo: Add 'layout' variable to the consoles (Bartosz Dziewoński)
3220 * demo: Link JS and PHP demos (Bartosz Dziewoński)
3221 * docs: Update name of upstream OOjs project in jsduck documentation (C. Scott Ananian)
3222 * mailmap: Add an additional e-mail for Bartosz per request (James D. Forrester)
3223 * test: Use -p option to phpcs instead of -v (Kunal Mehta)
3224
3225 ## v0.11.3 / 2015-05-12
3226 ### Features
3227 * BarToolGroup: Don't use "pointer" cursor for disabled tools in enabled toolgroups (Bartosz Dziewoński)
3228 * Tool: Support icon+label in bar tool groups (Bartosz Dziewoński)
3229 * ToolGroupTool: Correct opacity of disabled nested tool group handle (Bartosz Dziewoński)
3230 * ToolGroupTool: Synchronize inner ToolGroup disabledness state (Bartosz Dziewoński)
3231
3232 ### Styles
3233 * MediaWiki theme: Add a powerful default text color for tools (Trevor Parscal)
3234 * MediaWiki theme: Adjust quotes icon to match other icons (nirzar)
3235 * MediaWiki theme: Give names to some more toolbar colours (Bartosz Dziewoński)
3236 * MediaWiki theme: Provide all variants of the 'tag' icon (James D. Forrester)
3237 * MediaWiki theme: Rejigger some toolbar coloring (Bartosz Dziewoński)
3238 * MediaWiki theme: Remove box-shadow from nested toolbars (Bartosz Dziewoński)
3239 * MediaWiki theme: Remove unusued toolbar shadow (Trevor Parscal)
3240 * MediaWiki theme: Update button specification (nirzar)
3241
3242 ## v0.11.2 / 2015-05-11
3243 ### Features
3244 * Don't select lookup items on initialize (Ed Sanders)
3245 * ListToolGroup, MenuToolGroup: Set accelTooltips = false (Bartosz Dziewoński)
3246 * PopupWidget: Add setAlignment (Moriel Schottlender)
3247 * Simplify default action prevention in buttons and forms (Bartosz Dziewoński)
3248 * TextInputWidget: Allow override of #setValidityFlag (Ed Sanders)
3249 * TextInputWidget: Use aria-required along with the required attribute (Prateek Saxena)
3250
3251 ### Styles
3252 * TabOptionWidget: Fix disabled styles to not react to hover/select (Ed Sanders)
3253 * Toolbar: Fix shadow styling (Bartosz Dziewoński)
3254 * Toolbar: Remove some useless code from the example (Bartosz Dziewoński)
3255 * Toolbar: Rework example and add 'menu' tool group example (Bartosz Dziewoński)
3256 * MediaWiki theme: Change highlight color for selected menu option (nirzar)
3257 * MediaWiki theme: Polish the toolbar design (nirzar)
3258 * MediaWiki theme: Remove accidentally duplicated styles for SelectWidget (Bartosz Dziewoński)
3259
3260 ### Code
3261 * SelectWidget: Mark as @abstract, which it is (Bartosz Dziewoński)
3262 * Toolbar: Move some tweaks from demo to actual implementation (Bartosz Dziewoński)
3263
3264 ## v0.11.1 / 2015-05-04
3265 ### Features
3266 * Add IndexLayout (Trevor Parscal)
3267 * SelectWidget: Add #selectItemByData method (Moriel Schottlender)
3268 * TextInputWidget: Annotate input validation with aria-invalid (Prateek Saxena)
3269 * TextInputWidget: Don't set 'invalid' flag on first focus, even if invalid (Bartosz Dziewoński)
3270 * TextInputWidget: Support 'required' config option in PHP (Bartosz Dziewoński)
3271
3272 ### Styles
3273 * MediaWiki theme: Add 'destructive' variant to block icon (Moriel Schottlender)
3274 * MediaWiki theme: Better vertical alignment of 'search' icon (Ed Sanders)
3275 * MediaWiki theme: Tweak 'search' icon size (Ed Sanders)
3276 * MediaWiki theme: Use variable for transition time and easing function (Prateek Saxena)
3277 * MediaWiki theme: input: Use variable for transition time and easing function (Prateek Saxena)
3278 * MediaWiki theme: radio/checkbox: Use variable for transition time and easing function (Prateek Saxena)
3279 * MediaWiki, Apex themes: Switch icons: clear → cancel, closeInput → clear (Bartosz Dziewoński)
3280 * MediaWiki, Apex themes: Switch over 'magnifyingGlass' icon to be 'search' (James D. Forrester)
3281
3282 ### Code
3283 * CardLayout: Fix typo (Kirsten Menger-Anderson)
3284 * LabelElement: Document that label config option can take an HtmlSnippet (Roan Kattouw)
3285 * PopupButtonWidget: Update align config in example (Kirsten Menger-Anderson)
3286 * Remove GridLayout remnants (Bartosz Dziewoński)
3287 * TabOptionWidget: Change link to card layout (Kirsten Menger-Anderson)
3288 * build: Add clean:doc task (Bartosz Dziewoński)
3289 * build: Bump grunt-jscs to latest version (James D. Forrester)
3290 * core: Add OO.ui.debounce() utility (Roan Kattouw)
3291 * demo: Add icons with variants to icons demo (Bartosz Dziewoński)
3292
3293 ## v0.11.0 / 2015-04-29
3294 ### Breaking changes
3295 * [BREAKING CHANGE] Do not set font-size: 0.8em anywhere in the library (Bartosz Dziewoński)
3296
3297 ### Deprecations
3298 * [DEPRECATING CHANGE] Create rtl-ready alignments in PopupWidget (Moriel Schottlender)
3299
3300 ### Features
3301 * MediaWiki theme: Adding variants to several icons (Moriel Schottlender)
3302 * TextInputWidget: Allow functions to be passed as 'validate' config option (Bartosz Dziewoński)
3303
3304 ### Styles
3305 * TextInputWidget: Styles for 'invalid' flag (Bartosz Dziewoński)
3306
3307 ### Code
3308 * Update OOjs to v1.1.7 (James D. Forrester)
3309 * Update jQuery from v1.11.1 to v1.11.3 (James D. Forrester)
3310 * build: Use jquery and oojs from npm instead of embedded lib (Timo Tijhof)
3311
3312 ## v0.10.1 / 2015-04-27
3313 ### Features
3314 * Correct `tabindex` attribute setting (Bartosz Dziewoński)
3315 * Make toolbars keyboard-accessible (Bartosz Dziewoński)
3316
3317 ### Code
3318 * ToggleButtonWidget: Unbreak horizontal alignment (Bartosz Dziewoński)
3319
3320 ## v0.10.0 / 2015-04-22
3321 ### Breaking changes
3322 * [BREAKING CHANGE] ButtonWidget: remove deprecated `nofollow` option alias (C. Scott Ananian)
3323 * [BREAKING CHANGE] Convert ToggleWidget from a mixin to an abstract class (Bartosz Dziewoński)
3324 * [BREAKING CHANGE] MenuLayout: Reimplement without inline styles (Bartosz Dziewoński)
3325
3326 ### Deprecations
3327
3328 ### Features
3329 * BarToolGroup: Allow tools with labels instead of icons (Bartosz Dziewoński)
3330 * BookletLayout: Find first focusable element and add focusable utility (Moriel Schottlender)
3331 * ButtonWidget: Remove href to make unclickable when disabled (Bartosz Dziewoński)
3332
3333 ### Styles
3334 * MediaWiki, Apex themes: Add viewCompact, viewDetails, visionSimulator icons (Mun May Tee)
3335
3336 ### Code
3337 * ButtonInputWidget: Don't double-mixin FlaggedElement (Bartosz Dziewoński)
3338 * ButtonWidget: Remove pointless #isHyperlink property (Bartosz Dziewoński)
3339 * FormLayout: Better document how this works with InputWidgets (Bartosz Dziewoński)
3340 * MenuLayout: Add example (Kirsten Menger-Anderson)
3341 * MenuLayout: Fix initialization order (Bartosz Dziewoński)
3342 * PHP: More useful debugging information on unsafe tag attributes (Chad Horohoe)
3343 * SelectWidget#getTargetItem: Simplify (Ed Sanders)
3344 * Toolbar: Add example (Bartosz Dziewoński)
3345 * demo: Remove VisualEditor references from toolbar demo, use generic icons (Ed Sanders)
3346 * demo: Remove outline controls from outlined BookletLayout demo (Bartosz Dziewoński)
3347 * demo: Simplify ButtonGroupWidget and ButtonSelectWidget examples (Bartosz Dziewoński)
3348
3349 ## v0.9.8 / 2015-04-12
3350 ### Features
3351 * BookletLayout: Allow focus on any item (Moriel Schottlender)
3352
3353 ### Styles
3354 * Apex theme: Correctly position popups in RTL; follows-up v0.9.5 (Moriel Schottlender)
3355 * Apex, MediaWiki themes: Correct or delete unused SVG files (James D. Forrester)
3356
3357 ### Code
3358 * Error: Add description (Kirsten Menger-Anderson)
3359 * ProcessDialog: Remove stray `this.$` from documentation code example (Roan Kattouw)
3360 * ProgressBarWidget: Remove spurious styles from CSS output (Bartosz Dziewoński)
3361
3362 * build: Add explicit dependency upon grunt-cli (Kunal Mehta)
3363 * build: Move coverage output from "/dist/coverage" to "/coverage" (Timo Tijhof)
3364 * build: Run lint before build in grunt-test (Timo Tijhof)
3365 * colorize-svg: Generate language-specific rules for images even if equal to default ones (Bartosz Dziewoński)
3366 * colorize-svg: Sprinkle `/* @noflip */` on language-specific rules (Bartosz Dziewoński)
3367 * demo: Change html dir property when direction changes (Moriel Schottlender)
3368
3369 ## v0.9.7 / 2015-04-03
3370 ### Code
3371 * build: Generate correct paths to fallback images (Bartosz Dziewoński)
3372
3373 ## v0.9.5 / 2015-04-02
3374 ### Deprecations
3375 * [DEPRECATING CHANGE] Deprecate search widget event re-emission (Ed Sanders)
3376
3377 ### Features
3378 * Process: Allow rejecting with single Error (Matthew Flaschen)
3379 * Correctly position popups in RTL (Moriel Schottlender)
3380
3381 ### Styles
3382 * ButtonElement: Increase specificity of icon and indicator styles (Bartosz Dziewoński)
3383 * DecoratedOptionWidget: Fix opacity of icons/indicators when disabled (Ed Sanders)
3384
3385 * Balance padding now that focus highlight is balanced (Ed Sanders)
3386 * Remove line height reset for windows (Ed Sanders)
3387 * Restore font family definitions to form elements (Ed Sanders)
3388
3389 * Apex theme: Tweak `check.svg` syntax (Bartosz Dziewoński)
3390 * MediaWiki, Apex themes: Bring in remaining VisualEditor icons (James D. Forrester)
3391 * MediaWiki, Apex themes: Provide an RTL variant for the help icon (James D. Forrester)
3392 * MediaWiki theme: Add vertical spacing to RadioSelectWidget (Ed Sanders)
3393 * MediaWiki theme: Allow intention flags for non-buttons (Andrew Garrett)
3394 * MediaWiki theme: Fix icon opacity for disabled ButtonOptionWidgets (Bartosz Dziewoński)
3395 * MediaWiki theme: Revert "Syncing some button styles with MediaWiki UI" (Bartosz Dziewoński)
3396 * MediaWiki theme: Use checkbox icon per mockups (Bartosz Dziewoński)
3397
3398 ### Code
3399 * ActionFieldLayout: Add description and example (Kirsten Menger-Anderson)
3400 * BookletLayout: Add description and example (Kirsten Menger-Anderson)
3401 * IconWidget: Mix in FlaggedElement (Bartosz Dziewoński)
3402 * MenuLayout: Correct documentation (Bartosz Dziewoński)
3403 * OutlineOption: Add description (Kirsten Menger-Anderson)
3404 * PageLayout: Add description (Kirsten Menger-Anderson)
3405 * Process: Add description (Kirsten Menger-Anderson)
3406 * StackLayout: Add description and example (Kirsten Menger-Anderson)
3407 * Choose can't emit with a null item (Ed Sanders)
3408 * Refactor icon handling again (Bartosz Dziewoński)
3409 * build: Add a 'generated automatically' banner to demo.rtl.css (Bartosz Dziewoński)
3410 * build: Generate prettier task names for 'colorizeSvg' (Bartosz Dziewoński)
3411 * build: Have separate 'cssjanus' target for demo.rtl.css (Bartosz Dziewoński)
3412 * build: Make colorize-svg.js actually work more often (Bartosz Dziewoński)
3413 * build: Properly support LTR/RTL icon versions in colorize-svg.js (Bartosz Dziewoński)
3414 * build: Simplify 'fileExists' task configuration (Bartosz Dziewoński)
3415 * build: Support (poorly) per-language icon versions in colorize-svg.js (Bartosz Dziewoński)
3416 * build: Update grunt-banana-checker to v0.2.1 (James D. Forrester)
3417
3418 ## v0.9.4 / 2015-03-25
3419 ### Breaking changes
3420
3421 ### Deprecations
3422
3423 ### Features
3424 * ProcessDialog#executeAction: Don't eat parent's return value (Roan Kattouw)
3425 * Compensate for loss of margin when opening modals (Ed Sanders)
3426 * Make outline controls' abilities configurable (Trevor Parscal)
3427
3428 ### Styles
3429 * MediaWiki theme: Reduce thickness of toolbar border (Ed Sanders)
3430
3431 ### Code
3432 * ButtonElement: Clarify description (Kirsten Menger-Anderson)
3433 * ButtonElement: Disable line wrapping on buttons (Ed Sanders)
3434 * FieldLayout: Clarify description and mark private methods (Kirsten Menger-Anderson)
3435 * FieldsetLayout: Add description and example (Kirsten Menger-Anderson)
3436 * FormLayout: Add description, example, and mark private method (Kirsten Menger-Anderson)
3437 * Layout: Add description (Kirsten Menger-Anderson)
3438 * LookupElement: Add description and mark private and protected methods (Kirsten Menger-Anderson)
3439 * LookupElement: Fix typo in docs (Bartosz Dziewoński)
3440 * MenuLayout: Reorder styles (Bartosz Dziewoński)
3441 * MenuSectionOptionWidget: Add description and example (Kirsten Menger-Anderson)
3442 * PanelLayout: Add description and example (Kirsten Menger-Anderson)
3443 * SearchWidget: Add description and mark private methods (Kirsten Menger-Anderson)
3444 * TabIndexElement: Mark private method (Kirsten Menger-Anderson)
3445
3446 ## v0.9.3 / 2015-03-19
3447 ### Features
3448 * LookupElement: Add optional config field for suggestions when empty (Matthew Flaschen)
3449 * ProcessDialog: send an array to showErrors in failed executeAction (Moriel Schottlender)
3450
3451 ### Code
3452 * Dialog: Fix links to static properties (Kirsten Menger-Anderson)
3453 * DraggableGroupElement: Clarify description and mark private methods (Kirsten Menger-Anderson)
3454 * Fix code style in `@examples` (Ed Sanders)
3455 * FlaggedElement: Add example and clarify description (Kirsten Menger-Anderson)
3456 * GroupElement: Clarify description (Kirsten Menger-Anderson)
3457 * IndicatorElement: Clarify description (Kirsten Menger-Anderson)
3458 * MenuSelectWidget: Clarify description (Kirsten Menger-Anderson)
3459 * TabIndexedElement: Clarify description (Kirsten Menger-Anderson)
3460 * TitledElement: Clarify description (Kirsten Menger-Anderson)
3461 * Widget: Clarify description (Kirsten Menger-Anderson)
3462 * Window: Clarify description of setDimensions method (Kirsten Menger-Anderson)
3463 * WindowManager: Clarify description and mark private methods (Kirsten Menger-Anderson)
3464 * Update OOjs to v1.1.6 (James D. Forrester)
3465 * Add .mailmap file (Roan Kattouw)
3466 * Add Kirsten to AUTHORS.txt (Roan Kattouw)
3467 * demo: Add one more toolbars demo (Bartosz Dziewoński)
3468
3469 ## v0.9.2 / 2015-03-12
3470 ### Styles
3471 * Toolbar: Be less aggressive with `white-space: nowrap` (Bartosz Dziewoński)
3472
3473 ### Code
3474 * Window: Revert changes from 521061dd (Bartosz Dziewoński)
3475
3476 ## v0.9.1 / 2015-03-11
3477 ### Features
3478 * PanelLayout: Add `framed` config option (Bartosz Dziewoński)
3479 * TextInputWidget: Use MutationObserver for #onElementAttach support (Bartosz Dziewoński)
3480 * Only prevent default for handled keypresses (Brad Jorsch)
3481
3482 ### Styles
3483 * Toolbar: Tighten whitespace on narrow displays (Bartosz Dziewoński)
3484 * MediaWiki theme: Add the progressive variant to the check icon (Prateek Saxena)
3485 * MediaWiki theme: Add warning variant to icon set (Mark Holmquist)
3486 * MediaWiki theme: Add "Wikicon" icons (Mun May Tee)
3487 * MediaWiki theme: Synchronise button styles between OOJS and MW (nirzar)
3488 * MediaWiki theme: Syncing some button styles with MediaWiki UI (kaldari)
3489 * MediaWiki theme: textInputWidget: Update focus state (Prateek Saxena)
3490
3491 ### Code
3492 * ActionSet: Add description for events and clarify method descriptions (Kirsten Menger-Anderson)
3493 * ActionSet: Clarify description (Kirsten Menger-Anderson)
3494 * ActionWidget: Clarify description and mark private method (Kirsten Menger-Anderson)
3495 * ActionWidget: Fix bad copy-paste in documentation (Bartosz Dziewoński)
3496 * ButtonElement: Use #setButtonElement correctly (Bartosz Dziewoński)
3497 * ButtonInputWidget: Clarify description of configs and methods (Kirsten Menger-Anderson)
3498 * Dialog: Mark private methods and add description of methods and configs (Kirsten Menger-Anderson)
3499 * InputWidget: Clarify description (Kirsten Menger-Anderson)
3500 * MessageDialog: Add description, example, and mark private methods (Kirsten Menger-Anderson)
3501 * OutlineControlsWidget: Add description (Kirsten Menger-Anderson)
3502 * OutlineSelectWidget: Add description (Kirsten Menger-Anderson)
3503 * ProcessDialog: Add description and example and mark private methods (Kirsten Menger-Anderson)
3504 * TextInputMenuSelectWidget: Add description and mark private methods (Kirsten Menger-Anderson)
3505 * TextInputWidget: Adjust size and label on first focus, too (Bartosz Dziewoński)
3506 * Window: Clarify descriptions of methods and configs (Kirsten Menger-Anderson)
3507 * WindowManager: Documentation typo (Ed Sanders)
3508 * Icon width should only be applied if there is an icon (Moriel Schottlender)
3509 * Remove half-baked touch event handling (Bartosz Dziewoński)
3510 * Remove remnants of window isolation (Bartosz Dziewoński)
3511 * AUTHORS: Add Derk-Jan Hartman (Derk-Jan Hartman)
3512 * build: Implement basic image flipping support in colorize-svg (Bartosz Dziewoński)
3513 * build: Move pre/post 'doc' task into package.json (Timo Tijhof)
3514 * build: Remove obsolete 'build' task from grunt-doc (Timo Tijhof)
3515 * build: Set 'generateExactDuplicates: true' for CSSJanus (Bartosz Dziewoński)
3516 * demo: Fix typo in toolbars demo (Bartosz Dziewoński)
3517 * demo: Load styles before building demo widgets (not asynchronously) (Bartosz Dziewoński)
3518 * demo: Simplify `@media` styles (Bartosz Dziewoński)
3519 * demo: Use popup with head in the toolbars demo (Bartosz Dziewoński)
3520 * jsduck: Add MouseEvent and KeyboardEvent to externals (Timo Tijhof)
3521 * jsduck: Set --processes=0 to fix warnings-exit-nonzero (Timo Tijhof)
3522 * package.json: Bump grunt-svg2png to 0.2.7 (Bartosz Dziewoński)
3523
3524 ## v0.9.0 / 2015-03-04
3525 ### Breaking changes
3526 * [BREAKING CHANGE] Remove innerOverlay (Ed Sanders)
3527 * [BREAKING CHANGE] TextInputWidget: Remove `icon` and `indicator` events (Bartosz Dziewoński)
3528 * [BREAKING CHANGE] Remove deprecated LookupInputWidget (Bartosz Dziewoński)
3529 * [BREAKING CHANGE] Remove deprecated GridLayout (Bartosz Dziewoński)
3530
3531 ### Features
3532 * Move `OO.ui.infuse` to `OO.ui.Element.static.infuse`. (C. Scott Ananian)
3533 * Fake toolbar group nesting (Bartosz Dziewoński)
3534 * Infer retry button action flags from symbolic name (Trevor Parscal)
3535 * InputWidget: Focus checkboxes and radios, too, when the label is clicked (Bartosz Dziewoński)
3536 * ProcessDialog: Dismiss errors on teardown (Moriel Schottlender)
3537
3538 ### Styles
3539 * Make icon and indicator container sizes consistent (Ed Sanders)
3540 * Restore previous toolbar items margins and padding (Bartosz Dziewoński)
3541 * Use the correct color for gray buttons (Prateek Saxena)
3542
3543 ### Code
3544 * CheckboxInputWidget: Add description and example (Kirsten Menger-Anderson)
3545 * ComboBoxWidget: Add description, example, and mark private methods (Kirsten Menger-Anderson)
3546 * DecoratedOptionWidget: Add description and example (Kirsten Menger-Anderson)
3547 * DropdownInputWidget: Add description, example, and mark private method (Kirsten Menger-Anderson)
3548 * FieldLayout: Fix display of documentation's bulleted list (Kirsten Menger-Anderson)
3549 * GroupWidget and ItemWidget: Mark `private` (Kirsten Menger-Anderson)
3550 * IndicatorWidget: Add description and example (Kirsten Menger-Anderson)
3551 * LabelElement: Don't call constructor twice for ActionFieldLayouts (Roan Kattouw)
3552 * LabelWidget: Add description, example, and mark private method (Kirsten Menger-Anderson)
3553 * PopupElement: Add description (Kirsten Menger-Anderson)
3554 * PopupTool: Tool constructor takes a toolGroup, not a toolbar (Bartosz Dziewoński)
3555 * PopupWidget: Add description, example, and mark private methods (Kirsten Menger-Anderson)
3556 * PopupWidget: Add keydown listener and hide popup on ESC (Prateek Saxena)
3557 * ProgressBar: Add description and example (Kirsten Menger-Anderson)
3558 * RadioInputWidget: Add description and example (Kirsten Menger-Anderson)
3559 * SelectWidget: Add example and link to decorated option widget (Kirsten Menger-Anderson)
3560 * SelectWidget: Marked protected methods and clarified choose/press descriptions (Kirsten Menger-Anderson)
3561 * TextInputWidget: Add description, example, and mark private methods (Kirsten Menger-Anderson)
3562 * ToggleButtonWidget: Add description, example, and mark private method (Kirsten Menger-Anderson)
3563 * ToggleSwitchWidget: Add description, example, and mark private methods (Kirsten Menger-Anderson)
3564 * ToggleWidget: Add description (Kirsten Menger-Anderson)
3565 * Fix invalid use of border shorthand syntax (Timo Tijhof)
3566 * Only modify body class when first/last window opens/closes (Ed Sanders)
3567 * Use only two variables each for each semantic color (Prateek Saxena)
3568 * build: Add disconnect tolerance to karma config (James D. Forrester)
3569 * build: Remove footer override from jsduck (Timo Tijhof)
3570 * demo: Add PopupTool to toolbar demo (Bartosz Dziewoński)
3571 * demo: Call Toolbar#initialize in toolbar demo (Bartosz Dziewoński)
3572 * tests: Add infusion tests (Bartosz Dziewoński)
3573 * tests: Run JS/PHP tests for widgets with required parameters, too (Bartosz Dziewoński)
3574
3575 ## v0.8.3 / 2015-02-26
3576 ### Features
3577 * Revert "Unbreak form submission in JavaScript" (Bartosz Dziewoński)
3578
3579 ## v0.8.2 / 2015-02-26
3580 ### Features
3581 * PHP TitledElement: Actually set $this->title (Bartosz Dziewoński)
3582 * PHP PanelLayout: Fix getConfig() for `expanded` config option (Bartosz Dziewoński)
3583
3584 ### Code
3585 * testsuitegenerator: Exclude 'text' parameter from tests, like 'content' (Bartosz Dziewoński)
3586 * WindowManager: Don't pass `this` to window factory method (Bartosz Dziewoński)
3587
3588 ## v0.8.1 / 2015-02-25
3589 ### Deprecations
3590 * [DEPRECATING CHANGE] Rename setPosition to setLabelPosition (Ed Sanders)
3591
3592 ### Features
3593 * Allow passing positional parameters inside the config object (Bartosz Dziewoński)
3594 * ComboBox: Use combobox role (Derk-Jan Hartman)
3595 * Element.php: Add "data" property (C. Scott Ananian)
3596 * Element.php: Add "text" configuration option (C. Scott Ananian)
3597 * Element: Add `content` config option, matching PHP side. (C. Scott Ananian)
3598 * FormLayout: Allow adding child layouts via config (Bartosz Dziewoński)
3599 * Implement OO.ui.infuse to reconstitute PHP widgets in client-side JS (C. Scott Ananian)
3600 * Serialize PHP widget state into data-ooui attribute (C. Scott Ananian)
3601 * TextInputWidget: Fix appearance of icons and labels when disabled (Ed Sanders)
3602 * Unbreak form submission in JavaScript (Bartosz Dziewoński)
3603
3604 ### Styles
3605 * Set proper spacing between interleaved FieldsetLayouts and FormLayouts (Bartosz Dziewoński)
3606 * MediaWiki theme: Drop unnecessary pseudo-element of CheckboxInputWidget (Timo Tijhof)
3607 * MediaWiki theme: Drop unnecessary pseudo-element of RadioInputWidget (Timo Tijhof)
3608 * MediaWiki theme: Simplify spacing of checkboxes/radios in FieldLayouts (Bartosz Dziewoński)
3609
3610 ### Code
3611 * ButtonOptionWidget: Add description (Kirsten Menger-Anderson)
3612 * ButtonSelectWidget: Add description and example (Kirsten Menger-Anderson)
3613 * DraggableElement: Mark private methods and add description to events (Kirsten Menger-Anderson)
3614 * Element.php: Tweak docs (Bartosz Dziewoński)
3615 * Element: Add description for configs and static property (Kirsten Menger-Anderson)
3616 * Error: Fix function name (Bartosz Dziewoński)
3617 * Fix typo: contian → contain (Bartosz Dziewoński)
3618 * FlaggedElement: Add description of event and config option (Kirsten Menger-Anderson)
3619 * Follow-up bade83bfdfc: actually remove ../ (Roan Kattouw)
3620 * IconElement: Add description for config options (Kirsten Menger-Anderson)
3621 * IconElement: Add description of methods (Kirsten Menger-Anderson)
3622 * IndicatorElement: Add description for configs and static properties (Kirsten Menger-Anderson)
3623 * LabelElement: Add description, config description, static property description (Kirsten Menger-Anderson)
3624 * MenuOptionWidget: Add description (Kirsten Menger-Anderson)
3625 * MenuSelectWidget: Add description and mark protected method (Kirsten Menger-Anderson)
3626 * Move toggle() from Widget to Element (Moriel Schottlender)
3627 * OptionWidget: Add description and descriptions of methods (Kirsten Menger-Anderson)
3628 * PopupButtonWidget: Add description and example and mark private method (Kirsten Menger-Anderson)
3629 * Prefer OO.isPlainObject to $.isPlainObject (Bartosz Dziewoński)
3630 * RadioOptionWidget: Add description (Kirsten Menger-Anderson)
3631 * RadioOptionWidget: Make disabling single options work (Bartosz Dziewoński)
3632 * RadioSelectWidget: Add description and example (Kirsten Menger-Anderson)
3633 * Remove '$: this.$' from code examples (Bartosz Dziewoński)
3634 * Remove loop length check (Ed Sanders)
3635 * SelectWidget: Add description for config, methods, events (Kirsten Menger-Anderson)
3636 * TabIndexelement: Add description, example, and mark private method (Kirsten Menger-Anderson)
3637 * TitledElement: Add description and config and static descriptions (Kirsten Menger-Anderson)
3638 * Update OOjs to v1.1.5 (James D. Forrester)
3639 * Work around Safari 8 mis-rendering checkboxes in SVG-only distribution (Bartosz Dziewoński)
3640 * build: Give docparser.rb Ruby 1.9.3 compatibility (Bartosz Dziewoński)
3641 * build: Include 'lib' and 'dist' in jsduck output (Timo Tijhof)
3642 * build: Teach docparser about `@member`, `@see`, and PHP pass-by-reference (`&$foo`). (C. Scott Ananian)
3643 * build: Unbreak docparser.rb (Bartosz Dziewoński)
3644 * build: Use grunt-contrib-copy instead of custom 'copy' task (Timo Tijhof)
3645 * composer.json: Add description field (Kunal Mehta)
3646 * demo: Add disabled RadioInputWidget to demo (Bartosz Dziewoński)
3647 * tests: Add "composer test" command to lint PHP files and run phpcs (Kunal Mehta)
3648 * tests: Reduce timeout in Process test from 100 to 10 (Timo Tijhof)
3649 * tests: Run JS/PHP comparison tests using karma (Bartosz Dziewoński)
3650
3651 ## v0.8.0 / 2015-02-18
3652 ### Breaking changes
3653 * [BREAKING CHANGE] Make default distribution provide SVG with PNG fallback (Bartosz Dziewoński)
3654
3655 ### Deprecations
3656 * [DEPRECATING CHANGE] ButtonWidget: Rename nofollow config option to noFollow (C. Scott Ananian)
3657 * [DEPRECATING CHANGE] TextInputWidget: Deprecate `icon` and `indicator` events (Bartosz Dziewoński)
3658
3659 ### Features
3660 * TabIndexedElement: Allow tabIndex property to be null (C. Scott Ananian)
3661 * TextInputWidget: Allow maxLength of 0 in JS (matching PHP) (Bartosz Dziewoński)
3662
3663 ### Styles
3664 * MediaWiki theme: Add focus state for frameless button (Prateek Saxena)
3665 * MediaWiki theme: Fix border width for frameless buttons' focus state (Prateek Saxena)
3666 * MediaWiki theme: Resynchronize PHP with JS (Bartosz Dziewoński)
3667 * MediaWiki theme: Use white icons for disabled buttons (Bartosz Dziewoński)
3668
3669 ### Code
3670 * ActionSet: Add `@private` to onActionChange method (Kirsten Menger-Anderson)
3671 * ActionSet: Add description and example (Kirsten Menger-Anderson)
3672 * ActionSet: Add description for specialFlags property (Kirsten Menger-Anderson)
3673 * ActionWidget: Add description (Kirsten Menger-Anderson)
3674 * Add missing ButtonInputWidget.less and corresponding mixin (Bartosz Dziewoński)
3675 * ButtonElement: Add description (Kirsten Menger-Anderson)
3676 * ButtonElement: add `protected` to event handlers (Kirsten Menger-Anderson)
3677 * ButtonGroupWidget: Add description and example (Kirsten Menger-Anderson)
3678 * ButtonInputWidget: Add description and example (Kirsten Menger-Anderson)
3679 * ButtonWidget: Add example and link (Kirsten Menger-Anderson)
3680 * Dialog: Add description and example (Kirsten Menger-Anderson)
3681 * DraggableElement: Add description (Kirsten Menger-Anderson)
3682 * DraggableGroupElement: Add description (Kirsten Menger-Anderson)
3683 * DropdownWidget: Add `@private` to private methods (Kirsten Menger-Anderson)
3684 * DropdownWidget: Add description and example (Kirsten Menger-Anderson)
3685 * DropdownWidget: Simplify redundant code (Bartosz Dziewoński)
3686 * Element: Add description (Kirsten Menger-Anderson)
3687 * FieldLayout: Add description (Kirsten Menger-Anderson)
3688 * FieldLayout: Clean up and remove lies (Bartosz Dziewoński)
3689 * FlaggedElement: Add description (Kirsten Menger-Anderson)
3690 * Follow-up 6a6bb90ab: Update CSS file path in eg-iframe.html (Roan Kattouw)
3691 * Follow-up c762da42: fix ProcessDialog error handling (Roan Kattouw)
3692 * GroupElement: Add description (Kirsten Menger-Anderson)
3693 * IconElement: Add description (Kirsten Menger-Anderson)
3694 * IconElement: Add description and fix display of static properties (Kirsten Menger-Anderson)
3695 * IconWidget: Add description and example (Kirsten Menger-Anderson)
3696 * IndicatorElement: Add description (Kirsten Menger-Anderson)
3697 * InputWidget: Add description (Kirsten Menger-Anderson)
3698 * PHP: Remove redundant documentation for getInputElement() (Bartosz Dziewoński)
3699 * Refactor keyboard accessibility of SelectWidgets (Bartosz Dziewoński)
3700 * SelectWidget: Add description (Kirsten Menger-Anderson)
3701 * Some documentation tweaks (Bartosz Dziewoński)
3702 * TextInputWidget: Add missing LabelElement mixin documentation (Ed Sanders)
3703 * TextInputWidget: Don't add label position classes when there's no label (Bartosz Dziewoński)
3704 * TextInputWidget: Hide mixin components when unused (Ed Sanders)
3705 * TextInputWidget: Only put $label in the DOM if needed (Bartosz Dziewoński)
3706 * TextInputWidget: Use margins for moving the label (Ed Sanders)
3707 * Update PHP widgets for accessibility-related changes in JS widgets (Bartosz Dziewoński)
3708 * Use Array.isArray instead of $.isArray (C. Scott Ananian)
3709 * Various fixes to the PHP implementation (C. Scott Ananian)
3710 * Widget: Add description (Kirsten Menger-Anderson)
3711 * Window: Add description (Kirsten Menger-Anderson)
3712 * WindowManager: Add description (Kirsten Menger-Anderson)
3713 * build: Pass RuboCop, customize settings (Bartosz Dziewoński)
3714 * demo: Add horizontal alignment test (Bartosz Dziewoński)
3715 * PHP demo: Correct path to CSS files (Bartosz Dziewoński)
3716 * tests: Update JS/PHP comparison test suite (Bartosz Dziewoński)
3717 * docparser: Add support for `protected` methods (Bartosz Dziewoński)
3718 * docs: Make `@example` documentation tag work (Roan Kattouw)
3719 * tests: Fix the check for properties (Bartosz Dziewoński)
3720 * testsuitegenerator: Only test every pair of config options rather than every triple (Bartosz Dziewoński)
3721
3722 ## v0.7.0 / 2015-02-11
3723 ### Breaking changes
3724 * [BREAKING CHANGE] Remove window isolation (Trevor Parscal)
3725
3726 ### Deprecations
3727 * [DEPRECATING CHANGE] GridLayout should no longer be used, instead use MenuLayout (Bartosz Dziewoński)
3728
3729 ### Features
3730 * ButtonWidget: Add `nofollow` option (C. Scott Ananian)
3731 * ButtonWidget: Better handle non-string parameters in setHref/setTarget (C. Scott Ananian)
3732 * PopupWidget: Set $clippable only once, correctly (Bartosz Dziewoński)
3733 * SelectWidget: `listbox` wrapper role, `aria-selected` state on contents (Derk-Jan Hartman)
3734 * TabIndexedElement: Actually allow tabIndex of -1 (Bartosz Dziewoński)
3735 * TextInputWidget: Add required attribute on the basis of required config (Prateek Saxena)
3736 * TextInputWidget: Use aria-hidden for extra autosize textarea (Prateek Saxena)
3737 * ToggleSwitchWidget: Accessibility improvements (Bartosz Dziewoński)
3738
3739 ### Styles
3740 * FieldsetLayout: Tweak positioning of help icon (Bartosz Dziewoński)
3741 * Fade in window frames separately from window overlays (Ed Sanders)
3742 * MediaWiki theme: Consistent toggle button `active` state (Bartosz Dziewoński)
3743 * MediaWiki theme: Correct flagged primary button text color when pressed (Bartosz Dziewoński)
3744 * MediaWiki theme: Fix background color for disabled buttons (Prateek Saxena)
3745 * MediaWiki theme: Fix non-clickability of radios and checkboxes (Bartosz Dziewoński)
3746 * MediaWiki theme: Rename `@active` to `@pressed` in button mixins (Prateek Saxena)
3747 * MediaWiki theme: Rename `@highlight` to `@active` (Prateek Saxena)
3748 * MediaWiki theme: Rename active-* variables to pressed-* (Prateek Saxena)
3749 * MediaWiki theme: Use darker color for frameless buttons (Prateek Saxena)
3750 * MediaWiki theme: Use distribution's image type for backgrounds (Bartosz Dziewoński)
3751
3752 ### Code
3753 * ButtonWidget: Add documentation (Kirsten Menger-Anderson)
3754 * {Checkbox,Radio}InputWidget: Add missing configuration initialization (Bartosz Dziewoński)
3755 * DraggableGroupElement: Cleanup unreachable code (Moriel Schottlender)
3756 * DraggableGroupElement: Make sure it supports button widgets (Moriel Schottlender)
3757 * DraggableGroupElement: Unset dragged item when dropped (Moriel Schottlender)
3758 * Delete unused src/themes/apex/{raster,vector}.less (Bartosz Dziewoński)
3759 * DropdownInputWidget: Fix undefined variable in PHP (Bartosz Dziewoński)
3760 * DropdownWidget, ComboBoxWidget: Make keyboard-accessible (Bartosz Dziewoński)
3761 * Fix initialisation of window visible (Ed Sanders)
3762 * Fix text input auto-height calculation (Ed Sanders)
3763 * ListToolGroup: Remove hack for jQuery's .show()/.hide() (Bartosz Dziewoński)
3764 * MenuSelectWidget: Codify current behavior of Tab closing the menu (Bartosz Dziewoński)
3765 * MenuSelectWidget: Don't clobber other events when unbinding (Bartosz Dziewoński)
3766 * MenuSelectWidget: Remove dead code (Bartosz Dziewoński)
3767 * OptionWidgets: Make better use of `scrollIntoViewOnSelect` (Bartosz Dziewoński)
3768 * PopupElement: Correct documentation (Bartosz Dziewoński)
3769 * RadioOptionWidget: Make it a `<label />` (Bartosz Dziewoński)
3770 * Refactor clickability of buttons (Bartosz Dziewoński)
3771 * Remove usage of `this.$` and `config.$` (Trevor Parscal)
3772 * Stop treating ApexTheme class unfairly and make it proper (Bartosz Dziewoński)
3773 * TextInputMenuSelectWidget: Correct documentation (Bartosz Dziewoński)
3774 * build: Bump various devDependencies (James D. Forrester)
3775 * demo: Add button style showcase from PHP demo (Bartosz Dziewoński)
3776 * demo: Reorder widgets into somewhat logical groupings (Bartosz Dziewoński)
3777 * demo: Stop inline consoles from generating white space (Bartosz Dziewoński)
3778 * demo: Use properties instead of attributes for `<link>` (Timo Tijhof)
3779 * PHP demo: Add Vector/Raster and MediaWiki/Apex controls (Bartosz Dziewoński)
3780 * PHP demo: Just echo the autoload error message, don't trigger_error() (Bartosz Dziewoński)
3781 * PHP demo: Resynchronize with JS demo (Bartosz Dziewoński)
3782 * History: Fix date typos (James D. Forrester)
3783 * tests: Just echo the autoload error message, don't trigger_error() (Bartosz Dziewoński)
3784 * tools.less: Use distribution's image type and path for background (Prateek Saxena)
3785
3786 ## v0.6.6 / 2015-02-04
3787 ### Features
3788 * BookletLayout#toggleOutline: Fix to use MenuLayout method (Ed Sanders)
3789 * Remove disabled elements from keyboard navigation flow (Derk-Jan Hartman)
3790 * TextInputWidget: Mostly revert "Don't try adjusting size when detached" (Bartosz Dziewoński)
3791 * Use CSS overriding trick to support RTL in menu layouts (Ed Sanders)
3792
3793 ### Styles
3794 * Use standard border colours for progress bars (Ed Sanders)
3795
3796 ### Code
3797 * Use css class instead of jQuery .show()/hide()/toggle() (Moriel Schottlender)
3798 * build: Use karma to v0.12.31 (Timo Tijhof)
3799
3800 ## v0.6.5 / 2015-02-01
3801 ### Code
3802 * ButtonElement: Unbreak 'pressed' state (Bartosz Dziewoński)
3803 * Make BookletLayout inherit from MenuLayout instead of embedding a GridLayout (Ed Sanders)
3804
3805 ## v0.6.4 / 2015-01-30
3806 ### Features
3807 * Add inline labels to text widgets (Ed Sanders)
3808 * BookletLayout: Make sure there is a page before focusing (Moriel Schottlender)
3809 * DropdownInputWidget: Introduce (Bartosz Dziewoński)
3810 * InputWidget: Resynchronize our internal .value with DOM .value in #getValue (eranroz)
3811 * Seriously work around the Chromium scrollbar bug for good this time (Bartosz Dziewoński)
3812 * TabIndexedElement: Introduce and use (Bartosz Dziewoński)
3813 * TextInputWidget: Accept `maxLength` configuration option (Bartosz Dziewoński)
3814 * MenuLayout: Introduce (Ed Sanders)
3815 * Window#updateSize: Add simpler API (Ed Sanders)
3816
3817 ### Styles
3818 * ActionFieldLayout: Add `nowrap` to the button (Moriel Schottlender)
3819 * FieldsetLayout: Add help icon (Moriel Schottlender)
3820 * Fix opening/closing animation on windows (Roan Kattouw)
3821 * OptionWidget: Unbreak 'pressed' state (Bartosz Dziewoński)
3822 * Provide default margins for buttons and other widgets (Bartosz Dziewoński)
3823 * MenuSelectWidget and OptionWidget: Remove the 'flash' feature (Bartosz Dziewoński)
3824 * MediaWiki theme: Adjust ButtonSelectWidget, ButtonGroupWidget highlights (Prateek Saxena)
3825 * MediaWiki theme: Adjust MenuOptionWidget selected state (Bartosz Dziewoński)
3826 * MediaWiki theme: Fix background issues with disabled buttons (Roan Kattouw)
3827 * MediaWiki theme: Reduce size of checkboxes and radio buttons by 20% (Ed Sanders)
3828 * MediaWiki theme: Remove SearchWidget's border now dialogs have outline (Ed Sanders)
3829 * MediaWiki theme: Tweak some more border-radii (Bartosz Dziewoński)
3830 * MediaWiki theme: Unbreak disabled buttons (Bartosz Dziewoński)
3831
3832 ### Code
3833 * ButtonOptionWidget: Add the TabIndexedElement mixin (Derk-Jan Hartman)
3834 * InputWidget: Clarify documentation of #getInputElement (Bartosz Dziewoński)
3835 * PopupButtonWidget: Set aria-haspopup to true (Prateek Saxena)
3836 * Remove labelPosition check (Ed Sanders)
3837 * Set input direction in html prop rather than css rule (Moriel Schottlender)
3838 * TextInputWidget: Don't try adjusting size when detached (Bartosz Dziewoński)
3839 * TextInputWidget: Remove superfluous role=textbox (Derk-Jan Hartman)
3840 * ToggleButtonWidget: Set aria-pressed when changing value (Derk-Jan Hartman)
3841 * ToggleWidget: Use aria-checked (Prateek Saxena)
3842 * Twiddle things (Ed Sanders)
3843 * Update OOjs to v1.1.4 and switch to the jQuery-optimised version (James D. Forrester)
3844 * Widget: Set aria-disabled too in #setDisabled (Derk-Jan Hartman)
3845 * AUTHORS: Update for the last six months' work (James D. Forrester)
3846 * build: Bump devDependencies and fix up (James D. Forrester)
3847 * demo: Have multiline text in multiline widgets (Bartosz Dziewoński)
3848 * demo: Remove nonexistent 'align' config option for a DropdownWidget (Bartosz Dziewoński)
3849
3850 ## v0.6.3 / 2015-01-14
3851 ### Deprecations
3852 * [DEPRECATING CHANGE] LookupInputWidget should no longer be used, instead use LookupElement
3853
3854 ### Features
3855 * Add an ActionFieldLayout (Moriel Schottlender)
3856 * Replace old&busted LookupInputWidget with new&hot LookupElement (Bartosz Dziewoński)
3857
3858 ### Styles
3859 * dialog: Provide a 'larger' size for things for which 'large' isn't enough (James D. Forrester)
3860 * Synchronize ComboBoxWidget and DropdownWidget styles (Bartosz Dziewoński)
3861 * MediaWiki theme: Adjust toolbar popups' border and shadows (Bartosz Dziewoński)
3862 * MediaWiki theme: Don't use 'box-shadow' to produce thin grey lines in dialogs (Bartosz Dziewoński)
3863
3864 ### Code
3865 * Toolbar: Update #initialize docs (Bartosz Dziewoński)
3866 * demo: Switch the default theme from 'Apex' to 'MediaWiki' (Ricordisamoa)
3867
3868 ## v0.6.2 / 2015-01-09
3869 ### Features
3870 * Clear windows when destroying window manager (Ed Sanders)
3871 * Element: Add support for 'id' config option (Bartosz Dziewoński)
3872 * TextInputWidget: Add support for 'autofocus' config option (Bartosz Dziewoński)
3873
3874 ### Styles
3875 * Add 'lock' icon (Trevor Parscal)
3876 * Make `@anchor-size` a LESS variable and calculate borders from it (Ed Sanders)
3877 * MediaWiki theme: Slightly reduce size of indicator arrows (Ed Sanders)
3878 * MediaWiki theme: Remove text-shadow on button (Prateek Saxena)
3879 * MediaWiki theme: Fix focus state for buttons (Prateek Saxena)
3880 * MediaWiki theme: Add state change transition to checkbox (Prateek Saxena)
3881 * MediaWiki theme: Fix disabled state of buttons (Prateek Saxena)
3882 * MediaWiki theme: Fix overlap between hover and active states (Prateek Saxena)
3883
3884 ### Code
3885 * Don't test abstract classes (Bartosz Dziewoński)
3886 * PHP LabelElement: Actually allow non-plaintext labels (Bartosz Dziewoński)
3887 * Synchronize `@abstract` class annotations between PHP and JS (Bartosz Dziewoński)
3888 * WindowManager#removeWindows: Documentation fix (Ed Sanders)
3889 * tests: Don't overwrite 'id' attribute (Bartosz Dziewoński)
3890 * testsuitegenerator.rb: Handle inheritance chains (Bartosz Dziewoński)
3891
3892 ## v0.6.1 / 2015-01-05
3893 ### Styles
3894 * FieldsetLayout: Shrink size of label and bump the weight to compensate (James D. Forrester)
3895
3896 ### Code
3897 * Remove use of `Math.round()` for offset and position pixel values (Bartosz Dziewoński)
3898 * ButtonElement: Inherit all 'font' styles, not only 'font-family' (Bartosz Dziewoński)
3899 * IndicatorElement: Fix 'indicatorTitle' config option (Bartosz Dziewoński)
3900 * Error: Unmark as `@abstract` (Bartosz Dziewoński)
3901 * JSPHP-suite.json: Update (Bartosz Dziewoński)
3902 * build: Update various devDependencies (James D. Forrester)
3903 * readme: Update badges (Timo Tijhof)
3904 * readme: No need to put the same heading in twice (James D. Forrester)
3905
3906 ## v0.6.0 / 2014-12-16
3907 ### Breaking changes
3908 * [BREAKING CHANGE] PopupToolGroup and friends: Pay off technical debt (Bartosz Dziewoński)
3909
3910 ### Features
3911 * Prevent parent window scroll in modal mode using overflow hidden (Ed Sanders)
3912 * ClippableElement: Handle clipping with left edge (Bartosz Dziewoński)
3913
3914 ### Styles
3915 * ButtonGroupWidget: Remove weird margin-bottom: -1px; from theme styles (Bartosz Dziewoński)
3916 * MediaWiki theme: RadioInputWidget tweaks (Bartosz Dziewoński)
3917
3918 ### Code
3919 * Sprinkle some child selectors around in BookletLayout styles (Roan Kattouw)
3920
3921 ## v0.5.0 / 2014-12-12
3922 ### Breaking changes
3923 * [BREAKING CHANGE] FieldLayout: Handle 'inline' alignment better (Bartosz Dziewoński)
3924 * [BREAKING CHANGE] Split primary flag into primary and progressive (Trevor Parscal)
3925 * [BREAKING CHANGE] CheckboxInputWidget: Allow setting HTML 'value' attribute (Bartosz Dziewoński)
3926
3927 ### Features
3928 * Element.getClosestScrollableContainer: Use 'body' or 'documentElement' based on browser (Prateek Saxena)
3929 * Give non-isolated windows a tabIndex for selection holding (Ed Sanders)
3930 * Call .off() correctly in setButtonElement() (Roan Kattouw)
3931
3932 ### Styles
3933 * FieldLayout: In styles, don't assume that label is given (Bartosz Dziewoński)
3934 * PopupWidget: Remove box-shadow rule that generates invisible shadow (Bartosz Dziewoński)
3935 * TextInputWidget: Set vertical-align: middle, like buttons (Bartosz Dziewoński)
3936 * MediaWiki theme: Add hover state to listToolGroup (Trevor Parscal)
3937 * MediaWiki theme: Add radio buttons (Prateek Saxena)
3938 * MediaWiki theme: Add state transition to radio buttons (Prateek Saxena)
3939 * MediaWiki theme: Add thematic border to the bottom of toolbars (Bartosz Dziewoński)
3940 * MediaWiki theme: Copy .theme-oo-ui-outline{Controls,Option}Widget from Apex (Bartosz Dziewoński)
3941 * MediaWiki theme: Extract @active-color variable (Bartosz Dziewoński)
3942 * MediaWiki theme: Improve search widget styling (Trevor Parscal)
3943 * MediaWiki theme: Make button sizes match Apex (Trevor Parscal)
3944 * MediaWiki theme: Use gray instead of blue for select and highlight (Trevor Parscal)
3945 * MediaWiki theme: checkbox: Fix states according to spec (Prateek Saxena)
3946
3947 ### Code
3948 * Account for `<html>` rather than `<body>` being the scrollable root in Chrome (Bartosz Dziewoński)
3949 * ClippableElement: 7 is a better number than 10 (Bartosz Dziewoński)
3950 * Don't set line-height of unset button labels (Bartosz Dziewoński)
3951 * FieldLayout: Synchronise PHP with JS (Bartosz Dziewoński)
3952 * FieldLayout: Use `<label>` for this.$body, not this.$element (Bartosz Dziewoński)
3953 * Fix primary button description text (Niklas Laxström)
3954 * GridLayout: Don't round to 1% (Bartosz Dziewoński)
3955 * Kill the Escape keydown event after handling a window close (Ed Sanders)
3956 * RadioInputWidget: Remove documentation lies (Bartosz Dziewoński)
3957 * Temporarily remove position:absolute on body when resizing (Ed Sanders)
3958 * build: Use String#slice instead of discouraged String#substr (Timo Tijhof)
3959 * testsuitegenerator: Actually filter out non-unique combinations (Bartosz Dziewoński)
3960 * README.md: Drop localisation update auto-commits from release notes (James D. Forrester)
3961 * README.md: Point to Phabricator, not Bugzilla (James D. Forrester)
3962
3963 ## v0.4.0 / 2014-12-05
3964 ### Breaking changes
3965 * [BREAKING CHANGE] Remove deprecated Element#onDOMEvent and #offDOMEvent (Bartosz Dziewoński)
3966 * [BREAKING CHANGE] Make a number of Element getters static (Bartosz Dziewoński)
3967 * [BREAKING CHANGE] Rename BookletLayout#getPageName → #getCurrentPageName (Bartosz Dziewoński)
3968
3969 ### Features
3970 * IconElement: Add missing #getIconTitle (Bartosz Dziewoński)
3971
3972 ### Styles
3973 * Follow-up I859ff276e: Add cursor files to repo (Trevor Parscal)
3974
3975 ### Code
3976 * SelectWidget: Rewrite #getRelativeSelectableItem (Bartosz Dziewoński)
3977 * demo: Don't put buttons in a FieldsetLayout without FieldLayouts around them (Bartosz Dziewoński)
3978
3979 ## v0.3.0 / 2014-12-04
3980 ### Breaking changes
3981 * [BREAKING CHANGE] ButtonWidget: Don't default 'target' to 'blank' (Bartosz Dziewoński)
3982
3983 ### Features
3984 * InputWidget: Update DOM value before firing 'change' event (Bartosz Dziewoński)
3985
3986 ### Styles
3987 * MediaWiki theme: Reduce indentation in theme-oo-ui-checkboxInputWidget (Prateek Saxena)
3988
3989 ### Code
3990 * Adding DraggableGroupElement and DraggableElement mixins (Moriel Schottlender)
3991 * Remove window even if closing promise rejects (Ed Sanders)
3992 * TextInputWidget: Reuse a single clone instead of appending and removing new ones (Prateek Saxena)
3993 * Fix lies in documentation (Trevor Parscal)
3994 * build: Have grunt watch run 'quick-build' instead of 'build' (Prateek Saxena)
3995
3996 ## v0.2.4 / 2014-12-02
3997 ### Features
3998 * MessageDialog: Fit actions again when the dialog is resized (Bartosz Dziewoński)
3999 * Window: Avoid height flickering when resizing dialogs (Bartosz Dziewoński)
4000
4001 ### Code
4002 * TextInputWidget: Use .css( propertyName, value ) instead of .css( properties) for single property (Prateek Saxena)
4003 * TextInputWidget: Stop adjustSize if the value of the textarea is the same (Prateek Saxena)
4004
4005 ## v0.2.3 / 2014-11-26
4006 ### Features
4007 * BookletLayout: Make #focus not crash when there are zero pages or when there is no outline (Roan Kattouw)
4008 * Dialog: Only handle escape events when open (Alex Monk)
4009 * Pass original event with TextInputWidget#enter (Ed Sanders)
4010 * MessageDialog: Add Firefox hack for scrollbars when sizing dialogs (Bartosz Dziewoński)
4011 * MessageDialog: Actually correctly calculate and set height (Bartosz Dziewoński)
4012 * Window: Disable transitions when changing window height to calculate content height (Bartosz Dziewoński)
4013
4014 ### Code
4015 * Add missing documentation to ToolFactory (Ed Sanders)
4016 * Fix RadioOptionWidget demos (Trevor Parscal)
4017 * RadioOptionWidget: Remove lies from documentation (Trevor Parscal)
4018 * RadioOptionWidget: Increase rule specificity to match OptionWidget (Bartosz Dziewoński)
4019
4020 ## v0.2.2 / 2014-11-25
4021 ### Features
4022 * MessageDialog: Fit actions after updating window size, not before (Bartosz Dziewoński)
4023 * ProcessDialog, MessageDialog: Support iconed actions (Bartosz Dziewoński)
4024
4025 ### Styles
4026 * Remove padding from undecorated option widgets (Ed Sanders)
4027
4028 ### Code
4029 * LabelWidget: Add missing documentation for input configuration option (Ed Sanders)
4030 * MessageDialog: Use the right superclass (Bartosz Dziewoński)
4031 * build: Add .npmignore (Timo Tijhof)
4032
4033 ## v0.2.1 / 2014-11-24
4034
4035 ### Features
4036 * Add focus method to BookletLayout (Roan Kattouw)
4037 * Start the window opening transition before ready, not after (Roan Kattouw)
4038
4039 ### Code
4040 * LabelElement: Kill inline styles (Bartosz Dziewoński)
4041 * Add missing History.md file now we're a proper repo (James D. Forrester)
4042 * readme: Update introduction, badges, advice (James D. Forrester)
4043 * composer: Rename package to 'oojs-ui' and require php 5.3.3 (Timo Tijhof)
4044
4045 ## v0.2.0 / 2014-11-17
4046 * First versioned release
4047
4048 ## v0.1.0 / 2013-11-13
4049 * Initial export of repo