Commit Graph

239 Commits

Author SHA1 Message Date
Michał Gołębiowski-Owczarek
0c5becce0e
Widget: Optimize attachment of the _untrackClassesElement listener
jQuery UI 1.13.0 changed the logic attaching the `_untrackClassesElement`
listener in the `_classes` widget method; one of the side effects was calling
`this._on` for each node that needed the listener. That caused a severe
performance degradation for large comboboxes as each `_on` jQuery UI call
causes a jQuery `add` call that calls Sizzle's `uniqueSort` underneath.

Instead, collect the nodes that need the listener and then, outside of the loop,
create a jQuery object out of them and attach the listener once. That's still
slower than the jQuery 1.12 version but only slightly: 936 ms to 1.03s on a very
large list on a recent MacBook Pro, compared to ~30 seconds before this patch.

Fixes gh-2014
Closes gh-2037
2022-01-15 01:26:23 +01: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
9380d2734e
Tests: Accept delayed focusout in IE with jQuery 1.8
In IE with jQuery 1.8 focusout may not happen immediately so some checks
need to be done later.

Closes gh-1952
2021-04-16 23:33:57 +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
milk54
b9ffc34710 Tabs: Remove presentation role
Fixes #10122
Closes gh-1748
2016-09-29 10:15:19 -04:00
Scott González
9d807ba109 Tabs: Remove test for Ajax URLs containing hashes
This hasn't been a problem for a long time and jQuery no longer removes
the hash in 3.0.0, so the test started to fail even though the actual
code is working just fine.

Ref #3627
Ref jquery/jquery#1732
2016-07-06 13:09:15 -04:00
Scott González
fbc79e1bda Tabs: Fix test 2016-05-25 08:41:08 -04:00
Amanpreet Singh
bfcd6358fe Tabs: Shift to use no globals 2016-04-14 00:14:57 +05:30
Scott González
81a002991e Tabs: Handle overly-precise values in tests in IE
Closes gh-1628
2015-10-27 11:06:48 -04:00
Jörn Zaefferer
0bfbd21d4f Tabs: Adjust handling of disabled option, using _setOptionDisabled
Tabs support multiple values to disable individual tabs. Only add the
ui-tabs-disabled class when all tabs are disabled.

Ref #9151
Closes gh-1599
2015-09-25 13:47:27 -04:00
Alexander Schmitz
6c0bb24918 Tabs: Style updates
Ref #14246
2015-09-11 08:29:07 -04:00
Alexander Schmitz
063885f592 Tabs: Style updates
Ref #14246
Ref gh-1588
2015-08-21 08:06:22 -04:00
Alexander Schmitz
18486cb60c Tabs: Move tabs into widgets directory
Ref #13885
2015-08-08 00:29:39 -04:00
Alexander Schmitz
c25a541fc4 Tabs: Remove core event/alias and deprecated module dependencies 2015-05-20 14:27:57 -04:00
Jörn Zaefferer
74ccbc18a4 Tabs: Rename ui-tab class to ui-tabs-tab for consistent prefixes
Fixes #12061
Closes gh-1538
Ref #7053
Ref jquery/api.jqueryui.com#256
2015-04-18 08:58:33 +02:00
Scott González
6231b161b9 Tests: Fix AMD loading in IE8
It appears that we must load require.js via a standard script tag in order
for it to work properly in IE8.
2015-04-17 12:13:38 -04:00
Scott González
bde431bb44 Tests: Rename files
Ref gh-1528
2015-04-09 09:27:00 -04:00
Scott González
dc4b015a8b Tests: Widget test helpers extend the main helper
Ref #10119
Ref gh-1528
2015-04-09 09:26:58 -04:00
Scott González
94f5c15df9 Tabs: Convert tests to new infrastructure
Ref #10119
Ref gh-1528
2015-04-09 09:26:27 -04:00
Scott González
500f6b4992 Tests: Switch to the new qunit-composite module
This module was created from our existing implementation.

Closes gh-1532
2015-04-07 09:03:36 -04:00
Alexander Schmitz
b88a821070 Tabs: Use new has/lacksClasses assertions for all class checks 2015-03-11 16:05:41 -04:00
Alexander Schmitz
aaddfbfa8b Tabs: Add classes option
Ref #7053
Ref gh-1411
2015-03-11 16:05:28 -04:00
Alexander Schmitz
c192d4086d Widget: Add classes option and _add/_remove/_toggleClass methods
Fixes #7053
Closes gh-1411
2015-03-11 16:00:04 -04:00
Jörn Zaefferer
666f051c3a Tests: Reduce timeouts to optimize testsuite runtime 2015-03-04 23:04:07 +01:00
Jörn Zaefferer
2aabd427eb Tests: Fix style issues with missing or multiple line breaks
As pointed out by jscs, after a esformatter run. The latter doesn't
address these, so fixing them manually.
2015-01-24 17:10:20 +01:00
Scott González
6a242ab4eb Tabs: Suppress automatic activation when navigating with COMMAND
Fixes #9621
Closes gh-1383
2014-11-04 12:07:46 -05:00
Mike Sherov
aa425ab95d Build: Pull in jquery.simulate.js from Bower
Fixes #10563
2014-08-22 17:01:50 -04:00
Scott González
c017628e11 Tests: Fix composite tests 2014-08-01 12:25:14 -04:00
Scott González
6df127a0b5 Build: Reorganize external directory
Put each external library into its own directory.
Move jquery.js to external.

Ref gh-1266
2014-06-24 22:45:32 -04:00
David Petersen
f5e8041ebf Tabs: Move aria-expanded from active panel to active tab
Fixes #9622
Closes gh-1251
2014-05-19 11:36:21 -04:00
Jörn Zaefferer
a40647f0e5 All: Rename jquery.js to exclude version in filename 2014-03-05 10:19:11 +01:00
Jörn Zaefferer
822f3cd9d0 Tests: Update to sane QUnit markup 2014-02-20 17:05:02 +01:00
Rafael Xavier de Souza
21154cfa2e All: Rename all files, removing the "jquery.ui." prefix;
- By executing https://gist.github.com/jzaefferer/893fcf70b7eebc1dc271;

Fixes #9464
Closes gh-1029
2014-01-24 18:22:49 -02:00
Scott González
ecd4f95a50 Tabs: Use .uniqueId() for panels and moved isLocal() into the widget prototype. 2013-10-24 09:19:42 -04:00
Bruno M. Custódio
0d5eaab9bb Updating jQuery to 1.10.2.
Adding jQuery 1.10.0, 1.10.1, 1.10.2, 2.0.0, 2.0.1, 2.0.2 and 2.0.3 to the
tests directory.
2013-07-05 08:42:37 -04:00
Scott González
4148acfa9a Tabs: Prevent default action of clicks even when disabled. Fixes #9413 - Tabs: Disabled tabs are still clickable. 2013-07-03 14:38:49 -04:00
Jörn Zaefferer
90135b27f8 Widget tests: Use instance method. Also replace a few instances of $.data in widget implementations. 2013-03-19 16:53:35 +01:00
Scott González
44d07173db Widget: Stop setting ui-state-disabled and aria by default on setting disabled option.
Fixes #5973 - Resizable: disabled should not have the ui-state-disabled class or aria attribute aria-disabled
Fixes #5974 - Draggable: disabled should not have the ui-state-disabled class or aria attribute aria-disabled
Fixes #6039 - Droppable: disabled should not have ui-state-disabled

This reverts commit 23771d38ba.
2013-03-14 19:08:21 -04:00
Scott González
23771d38ba Revert "Widget: Stop setting ui-state-disabled and aria by default on setting disabled option." This needs to wait for a major release.
This reverts commit 4d67f4f349.
2013-03-14 15:07:06 -04:00
Mike Sherov
4d67f4f349 Widget: Stop setting ui-state-disabled and aria by default on setting disabled option.
Fixes #5973 - Resizable: disabled should not have the ui-state-disabled class or aria attribute aria-disabled
Fixes #5974 - Draggable: disabled should not have the ui-state-disabled class or aria attribute aria-disabled
Fixes #6039 - Droppable : disabled should not have ui-state-disabled
2013-03-11 22:08:21 -04:00
Bruno M. Custódio
b440979ba6 Updating 'jQuery' to 1.9.1. 2013-02-05 13:47:59 +00:00
Kris Borchers
34409e7ddd Updating to jQuery 1.9.0 2013-01-17 00:28:41 -06:00
Mike Sherov
5dee8dee30 Dev: Change incorrect references in test suite from #main to #qunit-fixture. 2012-12-08 13:19:36 -05:00
David Petersen
6121683d80 Tabs: Calculate border and padding on tabs container. Fixed #8836: Height overflows parent with heightStyle: 'fill'. 2012-11-26 16:35:07 -05:00
Scott González
23f7e30c77 Tabs: Remove ui-tabs-aria-controls data on destroy. 2012-11-16 16:10:22 -05:00
Scott González
fb6119e182 Upgrade jQuery to 1.8.3. 2012-11-14 15:22:01 -05:00
Scott González
f5870712c1 Updated all widgets to use proper data keys when getting plugin instances. 2012-11-09 13:28:13 -05:00
Scott González
054b208a99 Tabs: Removed all templating features. Fixes #7158 - Tabs: Remove add and remove methods. Fixes #7157 - Tabs: Remove templating (idPrefix, tabTemplate, panelTemplate options). Fixes #7149 - Tabs: Remove use of title attribute. 2012-10-25 06:10:00 -04:00
Scott González
056f83fb01 Tabs: Removed back-compat filter in tests for negative active option. 2012-10-25 06:00:18 -04:00
Scott González
3d6c2a66d4 Tabs: Removed back-compat for load event. Fixes #8731 - Tabs: Remove back-compat for load event. 2012-10-25 05:59:20 -04:00