[2.2.x] Regression with focusin handling on Firefox #3111

Closed
avdv opened this Issue May 10, 2016 · 12 comments

Projects

None yet

4 participants

@avdv
avdv commented May 10, 2016

* Description*

The cursor is missing or misplaced in an input box with an focusin handler attached when returning false from the handler.

Affected is Firefox (I'm using 46.1).

See emberjs/ember.js#13112

** Link to test case **

Courtesy of @Serabe (emberjs/ember.js#13112 (comment)):

http://codepen.io/Serabe/pen/PNVXdd?editors=0010

This codepen uses jQuery 2.2.2 but it also breaks with 2.2.3. It works alright with jQuery 2.1.4

@mgol mgol added Bug Event labels May 10, 2016
@mgol mgol added this to the 1.12.4/2.2.4 milestone May 10, 2016
@mgol
Member
mgol commented May 10, 2016

Confirmed. Thanks for the report!

@mgol
Member
mgol commented May 10, 2016

The test case using the dev version of jQuery 2.x: http://codepen.io/mgol/pen/JXzjJV?editors=0010

@mgol mgol self-assigned this May 10, 2016
@mgol
Member
mgol commented May 10, 2016

The first bad commit is 6df669f (cc @markelog).

@mgol mgol removed their assignment May 10, 2016
@mgol
Member
mgol commented May 10, 2016

jQuery 1.12.x is fine: http://codepen.io/mgol/pen/ONqPyO?editors=0010

Perhaps we need to backport the workaround from 37c3d08? We should test that as well.

@mgol mgol added the 2.x-only label May 10, 2016
@mgol
Member
mgol commented May 10, 2016

(by 2.x-only I mean it's broken on master as well: http://codepen.io/mgol/pen/zqbxrO?editors=0010)

@markelog
Member

Will check it out.

Sounds like a blocker?

@mgol
Member
mgol commented May 10, 2016

Yeah, we should get that in 2.2.4 IMO.

@markelog markelog was assigned by timmywil May 11, 2016
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog Events: add stop(Immediate)Propagation to simulated events
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase, can prevent execution of default actions

Fixes gh-3111
d71a684
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog Events: add stop(Immediate)Propagation to simulated events
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase, can prevent execution of default actions

Fixes gh-3111
6065b6b
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog Events: add stop(Immediate)Propagation to simulated events
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase, can prevent execution of default actions

Fixes gh-3111
bcedd2f
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog Events: add stop(Immediate)Propagation to simulated events
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase prevents receiving focus

Fixes gh-3111
875addf
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog Events: add stop(Immediate)Propagation to simulated events
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase prevents receiving focus

Fixes gh-3111
a1d7fc9
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog 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
8057932
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog 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
80fc7f3
@markelog markelog added a commit to markelog/jquery that referenced this issue May 16, 2016
@markelog markelog 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
b005d7d
@markelog markelog added a commit to markelog/jquery that referenced this issue May 17, 2016
@markelog markelog 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
af97a05
@markelog markelog closed this in #3121 May 19, 2016
@markelog markelog added a commit that referenced this issue May 19, 2016
@markelog markelog 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
94efb79
@markelog
Member

Currently, this fix landed only in master branch i.e. 3.x, not sure if this constitutes new 1.x/2.x release.

Marking it for 3.0 only for now

@markelog markelog removed the 2.x-only label May 19, 2016
@markelog markelog modified the milestone: 3.0.0, 1.12.4/2.2.4 May 19, 2016
@timmywil timmywil modified the milestone: 1.12.4/2.2.4, 3.0.0 May 19, 2016
@timmywil
Member
timmywil commented May 19, 2016 edited

While this should also be landed in master, this fix is mainly for the 2.x branch, since it was a regression.

@timmywil timmywil added the 2.x-only label May 19, 2016
@markelog markelog added a commit that referenced this issue May 19, 2016
@markelog markelog Event: don't execute native stop(Immediate)Propagation from simulation
In Firefox, called `stop(Immediate)Propagation` methods,
in capturing phase prevents receiving focus

Cherry-picked from 94efb79
Fixes gh-3111
66b8406
@markelog
Member
markelog commented May 19, 2016 edited

Landed in 2.x too

@markelog
Member

I think 2.x-only is confusing here though

@timmywil
Member

It's just to denote that it does not apply to 1.x. Maybe there's a better name for that, but soon we won't need the label at all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment