Closed
Bug 1301327
Opened 8 years ago
Closed 6 years ago
Enabling `w3c_touch_events` on desktop Firefox is causing major problems with ExtJS6
Categories
(Web Compatibility :: Site Reports, defect, P3)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: egil, Unassigned)
References
Details
(Whiteboard: [sitewait])
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0 Build ID: 20160623154057 Steps to reproduce: 1. Updated Firefox (have 47.0.1 now). Not sure if this was during update, but I notice I have this options changed (don't remember changing them manually): dom.w3c_touch_events.enabled 1 dom.w3c_touch_events.expose false Actual results: All ExJS 6 application stopped working (i.e. no click events seem to go through -- no buttons etc work). Expected results: Everything should work. Maybe fallback to standard events? When I reset both values to defaults ExtJS 6 application work (after reloading the application page).
Reporter | ||
Comment 1•8 years ago
|
||
One more note -- the same problem manifested in Firefox Developer. I'm sure ExtJS6 worked in both last month as I was working on ExtJS6 app last month. Judging from update history I was using FF 47.0 then (I also see FF 48.0.1 update, but status says the update timeout). Seems like I didn't update FF dev then and jumped from 46.0a2 (version working with ExtJS6) to 50.0a2 (not working without reset).
Comment 2•8 years ago
|
||
dom.w3c_touch_events.enabled seems to be 0 by default. Maybe an addon flipped it for you? Stone or Ben, have you run into the problem Maciej reports here?
Flags: needinfo?(sshih)
Flags: needinfo?(bhsu)
Comment 3•8 years ago
|
||
I created a sample app to reproduce this bug. There are two factors cause this bug 1) ExtJS6 use deprecated API 'navigator.pointerEnabled' (see [1]) to check if pointer events are supported. 2) The condition to add mouse events listeners in ext-*.js doesn't work correctly on firefox. It checks (!handledDomEvents.length || (supportsTouchEvents && Ext.isWebKit && Ext.os.is.Desktop)) On my laptop, handledDomEvents.length is 4 because touch is supported. Ext.isWebKit is false. So it won't listen mouse events. I also found window.PointerEvent doesn't work correctly on firefox with my local build. Need to take a look at it. [1] https://msdn.microsoft.com/en-us/library/windows/apps/hh972607.aspx
Flags: needinfo?(sshih)
Comment 4•8 years ago
|
||
Sorry for such a late response, and thanks for Stone's work!
Flags: needinfo?(bhsu)
Comment 5•8 years ago
|
||
Here are some works I would like to follow up. Will post it if any updates. 1) clarify why it works when pointer event is disabled 2) think about is there anything we can do to handle this problem
Comment 6•8 years ago
|
||
I tried to update from 46.0a2 to 50.0a2 and the value of "dom.w3c_touch_events.enabled" remains on 0.
Comment 7•8 years ago
|
||
Stone, since you are going to follow up, I assign this bug to you for now. Thanks for taking care of this :)
Assignee: nobody → sshih
Comment 8•8 years ago
|
||
When the UA supports pointer events or touch events, ext-all-rtl-debug.js wouldn't listen mouse events (except webkit based desktop UA with touch supported). It should consider to add mouse events even touch events are supported because users may still use mouse to control UA.
Comment 10•8 years ago
|
||
I think this is a bug of ExtJS6. I had submitted a bug to ExtJS6 and will track its status.
Flags: needinfo?(sshih)
Comment 11•8 years ago
|
||
(In reply to Ming-Chou Shih [:stone] (PTO 9/24~9/29) from comment #10) > I think this is a bug of ExtJS6. I had submitted a bug to ExtJS6 and will > track its status. Share the link to extjs bug plz
Comment 12•8 years ago
|
||
(In reply to yuri.horus from comment #11) > (In reply to Ming-Chou Shih [:stone] (PTO 9/24~9/29) from comment #10) > > I think this is a bug of ExtJS6. I had submitted a bug to ExtJS6 and will > > track its status. > > Share the link to extjs bug plz https://www.sencha.com/forum/showthread.php?328814-Ext-6-2-0-don-t-listen-mouse-events-when-touch-or-pointer-events-are-supported
Comment 13•7 years ago
|
||
Do we know if this is a bug or if it is tech evangelism? I think it's the same bug described here: https://bugzilla.mozilla.org/show_bug.cgi?id=1321758 which I tracked down to a build with mozregression, but that build could just be the one where this option was enabled by default. It would be nice to either get this fixed or know that it was Extjs and reach out, and get one or both of these issues closed.
Comment 14•7 years ago
|
||
I think it's tech evangelism. Move it to tech evangelism.
Assignee: sshih → nobody
Component: Event Handling → Desktop
Product: Core → Tech Evangelism
Version: 47 Branch → Firefox 47
Comment 15•7 years ago
|
||
Looks like this bug has been diagnosed and outreach is done as per comment 12. Setting whiteboard to sitewait.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Whiteboard: [sitewait]
Comment 18•6 years ago
|
||
Hi Maciej, are you able to test if there's been any changes/fixes here?
Flags: needinfo?(egil)
Priority: -- → P3
Reporter | ||
Comment 19•6 years ago
|
||
Seems like it was fixed in ExtJS 6.5 :-). Steps 1. Open `about:config`. 2. Filter to `touch_events`. 3. Change `dom.w3c_touch_events.enabled` to `1`. 4. Open ExtJS 6.2 e.g. https://examples.sencha.com/extjs/6.2.1/examples/kitchensink/#form-fieldcontainer 5. Click on button (e.g. "Load test data" on that page) -> no effect. 6. Open ExtJS 6.5 e.g. https://examples.sencha.com/extjs/6.5.0/examples/kitchensink/#form-fieldcontainer 7. Click on button (e.g. "Load test data" on that page) -> works fine.
Flags: needinfo?(egil)
Comment 20•6 years ago
|
||
Great, thanks!
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Assignee | ||
Updated•5 years ago
|
Product: Tech Evangelism → Web Compatibility
You need to log in
before you can comment on or make changes to this bug.
Description
•