Commit Graph

18 Commits

Author SHA1 Message Date
Michał Gołębiowski-Owczarek
8cc5bae1ca
Checkboxradio: Don't re-evaluate text labels as HTML
If you generate a Checkboxradio from a checkbox/radio with a label that
contains encoded HTML, e.g. `<em>test</em>` this will work fine
at first. If, however a refresh is triggered on that instance (explicitly or
e.g. by turning it into a `Controlgroup`), the previously escaped HTML will
now be evaluated.

If the label was created based on some user input, this could lead to
unexpected code execution even though the initial output was escaped.

Fixes gh-2101
Closes gh-2102
2022-07-14 20:52:02 +02:00
Michał Gołębiowski-Owczarek
70dae67b73
Build: Migrate from JSHint & JSCS to ESLint
Fixes #15393
Closes gh-1958
2021-06-07 00:58:12 +02:00
Michał Gołębiowski-Owczarek
b61b16b5a8
All: Drop support for jQuery 1.7
Closes gh-1923
2020-07-22 16:04:47 +02:00
Michał Gołębiowski-Owczarek
e7a10c70ae
Tests: Ensure no timers are running at the end of each test (#1920)
This helps fix issues that make tooltip tests sometimes fail when run against
jQuery 3.2 or newer due to timing differences.

Details:
* Add the `moduleAfterEach` function ensuring no timers are running.
* Attach this function via `common.testWidget`.
* Attach this function to most test suites.
* Add a tooltip test helper cleaning up leftover timers.
* Rename legacy `setup`/`teardown` hooks to `beforeEach`/`afterEach`.

Closes gh-1920
2020-05-16 09:16:24 +02:00
Michał Gołębiowski-Owczarek
f4ef03e57e
All: Resolve most jQuery Migrate warnings
Closes gh-1919
2020-05-16 08:36:55 +02:00
Michał Gołębiowski-Owczarek
98b539171b All: Migrate away from deprecated/removed Core APIs
Summary of the changes:

* Build: Add jQuery 3.2.0-3.4.1 to versions UI can be tested against
* Build: Load jQuery & Migrate via HTTPS
* Build: Add package-lock.json to .gitignore
* Build: Update jQuery Migrate from 3.0.0 to 3.1.0
* Build: Allow to run tests against jQuery 3.x-git
* Build: Fix formatting according to JSCS rules
* Build: Disable JSCS for the inlined jQuery Color
* All: Switch from $.isArray to Array.isArray (jQuery.isArray will be
  removed in jQuery 4.0)
* All: Switch from `$.isFunction( x )` to `typeof x === "function"`
  (jQuery.isFunction will be removed in jQuery 4.0)
* All: Inline jQuery.isWindow as it'll be removed in jQuery 4.0
* Effects: Fix a timing issue in a variable declaration. Previously,
  a jQuery object was created, chained & assigned to a variable that
  was then accessed in a callback used inside of this chained
  definition. Due to a timing difference in when the callback fired for
  the first time in latest jQuery master, it was being called before
  the variable was defined.
* Tests: Make dialog & draggable unit tests less strict (newest jQuery
  returns fractional results in some cases, making comparisons fail when
  there's a tiny difference)
* All: Migrate from $.trim to bare String.prototype.trim (jQuery.trim
  will be deprecated in jQuery 3.5)

Closes gh-1901
2019-12-08 22:23:08 +01:00
Alexander Schmitz
abc2a755f9 Checkboxradio: Use new ui-state-checked class in checkboxradio
Using `ui-state-highlight` caused a conflict with dialog

Fixes #14955
Closes gh-1712
Closes gh-1704
2016-06-06 11:34:52 -04:00
Amanpreet Singh
e089b1dd49 Checkboxradio: Shift to use no globals 2016-04-14 00:06:12 +05:30
Scott González
e77fbe5388 Checkboxradio: Properly find radio groups from the associated form
Fixes #9973
Closes gh-1631
2015-10-29 11:19:13 -04:00
Scott González
65f4176249 Checkboxradio: Fix error tests with jQuery 1.7.0 2015-10-28 09:23:28 -04:00
Scott González
926f3c6c3a Checkboxradio: Add compound test suite for all jQuery versions 2015-10-28 09:15:11 -04:00
Scott González
d4b0699578 Checkboxradio: Test cleanup 2015-10-27 16:05:52 -04:00
Jörn Zaefferer
52d9ec6c4d Checkboxradio: Add ui-state-highlight class to icon on create
This was already toggled in _toggleClasses, but that isn't called
on create.
2015-10-08 14:03:00 -04:00
Jörn Zaefferer
44eb0ccba9 Checkboxradio: Fix label option tests by trimming DOM text
IE8 is inconsistent in outputting space through .html() and .text()
methods, but since it renders it correctly, we can just ignore it.
2015-10-08 14:02:59 -04:00
Jörn Zaefferer
dc2bede254 Checkboxradio: Fix invalid markup in core tests 2015-10-08 14:02:59 -04:00
Alexander Schmitz
641c5ed17a Checkboxradio: Style updates 2015-10-08 14:02:56 -04:00
Alexander Schmitz
16abde399d Spinner: Updates for new button widget and classes option 2015-10-08 14:02:35 -04:00
Alexander Schmitz
25d0c85718 Checkboxradio: Initial commit of new widget 2015-10-07 10:57:59 -04:00