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