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