Commit Graph

593 Commits

Author SHA1 Message Date
Richard Gibson
fe5f04de8f Event: Prevent leverageNative from double-firing focusin
Also, reduce size.

Closes gh-4329
Ref gh-4279
2019-03-25 18:12:08 +01:00
Richard Gibson
669f720edc Event: Leverage native events for focus/blur/click; propagate additional data
Summary of the changes/fixes:
1. Trigger checkbox and radio click events identically (cherry-picked from
   b442abacbb that was reverted before).
2. Manually trigger a native event before checkbox/radio handlers.
3. Add test coverage for triggering namespaced native-backed events.
4. Propagate extra parameters passed when triggering the click event to
   the handlers.
5. Intercept and preserve namespaced native-backed events.
6. Leverage native events for focus and blur.
7. Accept that focusin handlers may fire more than once for now.

Fixes gh-1741
Fixes gh-3423
Fixes gh-3751
Fixes gh-4139
Closes gh-4279
Ref gh-1367
Ref gh-3494
2019-03-20 16:40:16 +01:00
tmybr11
899c56f6ad Event: Add "code" property to Event object
Fixes gh-3978
Closes gh-3998
2018-04-17 17:29:11 -04:00
Timmy Willison
fa793bee20
Tests: fix tests in AMD mode 2018-01-16 12:41:40 -05:00
Jason Bedard
3d732cca6b Core: deprecate jQuery.isFunction
Fixes gh-3609
2018-01-15 09:26:19 -08:00
Timmy Willison
909e0c9925
Core: deprecate jQuery.now
Fixes gh-2959
Close gh-3884
2018-01-08 11:24:45 -05:00
Timmy Willison
4d6b4536b2
Revert "Event: Trigger checkbox and radio click events identically"
This reverts commit b442abacbb.
2017-03-20 12:24:49 -04:00
Timmy Willison
56136897f2
Build: fix tests in AMD mode
- nodeName was included at the wrong spot in dependency lists
2017-03-06 18:31:44 -05:00
karan-96
ac9e301664 Core: Deprecate jQuery.nodeName
Fixes gh-3475
Closes gh-3505
2017-03-01 11:48:11 +01:00
Alex Padilla
b442abacbb Event: Trigger checkbox and radio click events identically
Fixes gh-3423
Closes gh-3494
2017-01-19 16:51:49 -05:00
Timmy Willison
3bbcce68d7
Core: rnotwhite -> rhtmlnotwhite and jQuery.trim -> stripAndCollapse
- Renames and changes rnotwhite to focus on HTML whitespace chars
- Change internal use of jQuery.trim to more accurate strip and collapse
- Adds tests to ensure HTML space characters are retained where valid
- Doesn't add tests where the difference is inconsequential and
  existing tests are adequate.

Fixes gh-3003
Fixes gh-3072
Close gh-3316
2016-09-15 10:40:27 -04:00
Richard Gibson
76c5237cc4 Event: Optimize delegated event processing
Closes gh-3255
2016-08-04 23:52:12 -04:00
Oleg Gaidarenko
e4fd41f8fa Build: Update eslint config and fix associated errors 2016-07-15 21:42:25 +04:00
Scott González
7d21f02b9e Event: Add the most commonly used pointer event properties
Ref gh-3104
Close gh-3152
2016-06-09 13:16:20 -04:00
Dave Methvin
2df590e4ec Event: Allow constructing a jQuery.Event without a target
Fixes gh-3139
Closes gh-3140
2016-06-02 20:56:47 -04:00
Oleg Gaidarenko
94efb79929 Events: don't execute native stop(Immediate)Propagation from simulation
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase prevents receiving focus

Fixes gh-3111
2016-05-19 21:56:39 +04:00
Dave Methvin
f5958085cf Event: Add touch event properties, eliminates need for a plugin
Fixes gh-3104
Closes gh-3108

See https://github.com/aarongloege/jquery.touchHooks

Other properties are already present thanks to mouse events.

squash! Add targetTouches
2016-05-09 12:23:51 -04:00
Richard Gibson
e8825a529b Event: Cover invalid delegation selector edge cases
Ref 7fd36ea145
2016-05-06 22:12:53 -04:00
Felipe Sateler
7fd36ea145 Event: Evaluate delegate selectors at add time
This ensures that invalid selectors throw right away.

Fixes gh-3071
Closes gh-3097
2016-05-06 22:12:20 -04:00
Dave Methvin
931f45fc38 Event: Remove pageX/pageY fill for event object
Fixes gh-3092
CLoses gh-3106

IE8 was the last major browser missing these.
2016-05-06 15:32:12 -04:00
Jason Bedard
e61fccb9d7 Event: Remove fixHooks, propHooks; switch to ES5 getter with addProp
Fixes gh-3103
Fixes gh-1746
Closes gh-2860

- Removes the copy loop in jQuery.event.fix
- Avoids accessing properties such as client/offset/page/screen X/Y
  which may cause style recalc or layouts
- Simplifies adding property hooks to event object
2016-05-04 15:57:25 -04:00
Damian Senn
9f268caaf4 Event: Make event dispatch optimizable by JavaScript engines
Closes gh-2834

- Do not assign to function parameters
- Do not pass arguments object to other functions
2016-04-27 09:13:16 -04:00
Michał Gołębiowski
305f193aa5 Build: Put all AMD modules in "src/" in strict mode
Fixes gh-3073
2016-04-25 20:25:08 +02:00
Michał Gołębiowski
6072d150d6 Docs: Update support comments to follow the new syntax
The changes follow the spec proposed in:
https://github.com/jquery/contribute.jquery.org/issues/95#issuecomment-69379197
2016-03-30 23:45:17 +02:00
Michał Gołębiowski
9b086888b8 Docs:Tests: Remove obsolete code from tests, update support comments
Support comments that were lacking the final IE/Edge version that exhibits
the bug were checked & updated. Links to the Chromium bug tracker were updated.
Code in tests related to unsupported browsers (like Android 2.3 in non-basic
tests) has been removed.

Fixes gh-2868
Closes gh-2949
2016-03-08 23:26:46 +01:00
Bernhard M. Wiedemann
1de8346729 Docs: use https where possible
Close gh-2875
2016-01-27 10:52:43 -05:00
Devin Wilson
17f0e26ad9 Event: Fix chaining .on() with null handlers
Fixes gh-2846
2016-01-19 12:27:58 -05:00
Dave Methvin
c9935b6d2d Event: Separate trigger/simulate into its own module
Fixes gh-1864
Closes gh-2692

This also pulls the focusin/out special event into its own module, since that
depends on simulate(). NB: The ajax module triggers events pretty heavily.
2015-11-06 09:36:48 -05:00
Dave Methvin
c82a6685bb Event: Fix delegated radio events when arrow keys are used
Fixes gh-2343, gh-2410
Close gh-2617
2015-10-18 13:06:37 -04:00
Gary Ye
03eaadb131 Tests:Docs: Fix various typos
* Changes "baar" to "bar" when used with "foo" in readme
  and comments of js files

* mousenter -> mouseenter

Thanks @garysye, @KimTaehee

Closes gh-2613
Closes gh-2601
2015-10-12 18:08:13 +03:00
Jason Bedard
224271982e Data: Don't expose jQuery.acceptData
jQuery.acceptData is an undocumented internal API that shouldn't be exposed.

Fixes gh-2555
2015-09-08 01:00:31 +02:00
Oleg Gaidarenko
10fdad742a Build: Update jscs and lint files
Fixes gh-2056
2015-09-07 20:03:50 +03:00
Richard Gibson
9d820fbde6 Event: Only check elements for delegation matches
Closes gh-2529
Ref trac-13208
(cherry picked from commit fc2ba2e136)
2015-08-10 10:26:13 -04:00
Michał Gołębiowski
2792845534 Event: Update support comments for mouseenter/mouseleave implementation
Custom mouseenter/mouseleave implementation was needed because of:
1. Safari 6 not implementing mouseenter/mouseleave at all.
2. Chrome sending mouseenter too often.

The second issue has been fixed in Chrome but exists now in Safari 7
(it's fixed in Safari 8) so we have to keep it for now, unfortunately.
2015-07-27 22:29:38 +02:00
Michał Gołębiowski
93bee4701d Core: Adjust comments & tests after dropping Safari 6 support
Support comments that mentioned only Safari < 7 were checked & updated
to account for bugs existing in newer versions as well; Safari 6 support
test results were removed.

Refs gh-2482
2015-07-27 22:14:48 +02:00
Michał Gołębiowski
04a29696e5 Event: Remove an internal argument to the on method
Refs gh-2301
2015-06-14 00:06:51 +02:00
Oleg Gaidarenko
3655c4e190 Event: remove preDispatch hook & simplify "simulate" signature
Closes gh-2358
2015-06-05 22:14:42 +03:00
Oleg Gaidarenko
6df669f0fb Event: remove outdated originalEvent hack
Closes gh-2335
Ref 7475d5debe
2015-05-29 20:32:59 +03:00
Gabriel Schulhof
7475d5debe Event: Remove fake originalEvent from jQuery.Event.simulate
Fixes gh-2300
Closes gh-2303
2015-05-29 19:56:06 +03:00
Oleg Gaidarenko
c074006a69 Event: provide verbose comment for focus(in | out) & rename support prop
Closes gh-2312
2015-05-19 13:43:34 +03:00
Timmy Willison
56bb677725 Data: remove the expando when there's no more data
Fixes gh-1760
Close gh-2271
2015-05-12 10:09:40 -04:00
Oleg Gaidarenko
a873558436 Event: remove redundant guards for the event methods
Fixes gh-2047
Closes gh-2125
2015-05-03 13:56:32 +03:00
Oleg Gaidarenko
85577a348a Core:CSS:Event: simplification of native method signatures
* Remove third argument from "addEventListener"

* Remove third argument from "removeEventListener"

* Remove second argument from "getComputedStyle"

Ref gh-2047
2015-05-03 13:56:32 +03:00
Oleg Gaidarenko
9db9316609 Event: add support comment
Ref gh-2047
2015-05-03 13:28:34 +03:00
Oleg Gaidarenko
fac67a9842 Event: remove guard for falsy handler argument of jQuery#on method
Since we don't have this in off method and its a common perception
that this is a rudiment code

Ref gh-2248
Closes gh-2249
2015-05-03 13:28:27 +03:00
Oleg Gaidarenko
361a0d5150 Event: correct support comment
See discussion in
a5e1c9b44c
2015-03-08 06:23:49 +03:00
Rick Waldron
d702b7637a Data: move element cache to element[expando]
- avoid explicit data.discard() cleanup calls
- explicitly remove the data.events property, only when private data exists
- reduces code footprint

Fixes gh-1734
Close gh-1428
2015-03-04 17:26:47 -05:00
Michał Gołębiowski
a5e1c9b44c Event: Add a note about a mouseenter bug in Chrome
Refs https://code.google.com/p/chromium/issues/detail?id=333868
2015-01-25 01:09:26 +01:00
Dave Methvin
d7e5fcee51 Event: HTML5 drop events inherit from MouseEvent
Fixes gh-2009
Ref gh-1925
2015-01-14 14:34:09 -05:00
Richard Gibson
53aa87f3bf Core: Standardize indexOf comparisons
not present: `< 0`
present: `> -1`
at index: `=== N`

Closes gh-1984
2015-01-10 23:47:01 -05:00