Closed
Bug 1196921
Opened 9 years ago
Closed 9 years ago
[Aries][Browser] Touchmove event sent sent for non-moving touches (breaking overlay menu on m.youtube.com)
Categories
(Core :: Panning and Zooming, defect)
Tracking
()
VERIFIED
FIXED
Tracking | Status | |
---|---|---|
b2g-master | --- | verified |
People
(Reporter: AdamA, Assigned: kats)
References
()
Details
(Whiteboard: [2.5-Daily-Testing][Spark][platform])
Attachments
(2 files)
Description: On the mobile youtube site when users press the 3 vertical dots to bring up a menu overlay the cancel button does not work. All of the other buttons in the menu work, just the cancel buttons do not work. Users have to reload the page to use the website. Repro Steps: 1) Update a Aries to 20150820012109 2) Open browser and go to m.youtube.com 3) Select the 3 vertical dots to open a menu overlay 4) Press the cancel button 5) Observe screen Actual: The cancel button does not dismiss the menus on youtube Expected: It is expected that the menu is dismissed when the cancel button is pressed Environmental Variables: Device: Aries 2.5 Build ID: 20150820012109 Gaia: 89e0096a3de0378e3eda77e6a2a0bb5ca03eb8bb Gecko: 29b2df16e961 Gonk: 2916e2368074b5383c80bf5a0fba3fc83ba310bd Version: 43.0a1 (2.5) Firmware Version: D5803_23.1.A.1.28_NCB.ftf User Agent: Mozilla/5.0 (Mobile; rv:43.0) Gecko/43.0 Firefox/43.0 Repro frequency: 10/10 See attached: video clip(https://youtu.be/UYyFJBXzh9c), logcat
Reporter | ||
Comment 1•9 years ago
|
||
This issue DOES NOT occur on Flame 2.5 Environmental Variables: Device: Flame 2.5 [Full Flash] Build ID: 20150820030207 Gaia: 89e0096a3de0378e3eda77e6a2a0bb5ca03eb8bb Gecko: 29b2df16e961 Gonk: c4779d6da0f85894b1f78f0351b43f2949e8decd Version: 43.0a1 (2.5) Firmware Version: v18D User Agent: Mozilla/5.0 (Mobile; rv:43.0) Gecko/43.0 Firefox/43.0 Result: Selecting the cancel button dismisses the menu.
Blocks: Foxfood-papercuts
QA Whiteboard: [QAnalyst-Triage?]
status-b2g-master:
--- → affected
Flags: needinfo?(jmercado)
Whiteboard: [2.5-Daily-Testing][Spark][Systemsfe]
Comment 2•9 years ago
|
||
[Blocking Requested - why for this release]: Broken Youtube functionality. Setting qawanted to check if this worked in earlier Aries builds.
blocking-b2g: --- → 2.5?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
Keywords: qawanted
Updated•9 years ago
|
QA Whiteboard: [QAnalyst-Triage+]
QA Contact: pcheng
Comment 4•9 years ago
|
||
This issue is reproducible on earliest Aries build that we have. Tapping on Cancel button does nothing. Device: Aries BuildID: 20150516110322 Gaia: 4c0f36e9dfe017bf2a698d416a57c8156b43383d Gecko: 0273e9c967ec Gonk: 3af1ede0d0956cfbf9c549df7cd9a6807a9efdf2 Version: 41.0a1 (2.5 Master) Firmware Version: D5803_23.1.A.1.28_NCB.ftf User Agent: Mozilla/5.0 (Mobile; rv:41.0) Gecko/41.0 Firefox/41.0
Updated•9 years ago
|
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
Comment 5•9 years ago
|
||
(In reply to Adam Alldredge [:AdamA] from comment #1) > This issue DOES NOT occur on Flame 2.5 > > Environmental Variables: > Device: Flame 2.5 [Full Flash] > Build ID: 20150820030207 > Gaia: 89e0096a3de0378e3eda77e6a2a0bb5ca03eb8bb > Gecko: 29b2df16e961 > Gonk: c4779d6da0f85894b1f78f0351b43f2949e8decd > Version: 43.0a1 (2.5) > Firmware Version: v18D > User Agent: Mozilla/5.0 (Mobile; rv:43.0) Gecko/43.0 Firefox/43.0 > > Result: > Selecting the cancel button dismisses the menu. Should we mark this as resolved then?
Flags: needinfo?(aalldredge)
Comment 6•9 years ago
|
||
Alberto, that means this bug is Aries specific if it can't be reproduced on Flame.
Flags: needinfo?(aalldredge)
Comment 7•9 years ago
|
||
Let's check if is a regression then. Thanks!
Keywords: regressionwindow-wanted
Comment 8•9 years ago
|
||
Comment 4 states this occurs on earliest Aries build that we have so it's not a regression.
Keywords: regressionwindow-wanted
Comment 9•9 years ago
|
||
Oh! I know why I was so confused... Watching the video, I noticed you guys mean the 3 dots *inside* the youtube app. That code is part of youtube.com, so we can do nothing. I thought you were talking about the 3 dots in the browser chrome, which works fine.
Flags: needinfo?(pcheng)
Comment 10•9 years ago
|
||
Yes it's the vertical 3 dots on youtube website. It looks like we're not handling the overlay that's being brought up correctly? But it seems to only affect the Cancel button, all other buttons on that overlay worked fine.
Flags: needinfo?(pcheng)
Comment 11•9 years ago
|
||
But that overlay is coming from youtube.com, not from gaia... What can we do about it? Not sure why does it work on the flame though. Michael, ideas?
Flags: needinfo?(mhenretty)
Comment 12•9 years ago
|
||
kats, any ideas here? Could this be apz related?
Flags: needinfo?(bugmail.mozilla)
Comment 13•9 years ago
|
||
Yeah, most likely this is not a systems front-end issue.
Flags: needinfo?(mhenretty)
Whiteboard: [2.5-Daily-Testing][Spark][Systemsfe] → [2.5-Daily-Testing][Spark]
Assignee | ||
Comment 14•9 years ago
|
||
This is almost certainly a problem with the webpage. I looked at the page in WebIDE and the Cancel button is actually a <button> with an onclick handler which does something different than clicking on the rest of the items in the list. The code is obfuscated so I'm not going to spend any more time looking into it.
Flags: needinfo?(bugmail.mozilla)
Updated•9 years ago
|
Component: Gaia::Browser → Mobile
Product: Firefox OS → Tech Evangelism
Comment 15•9 years ago
|
||
Yeah, I thought the same, but is weird that it does work on the flame, isn't it? Any idea why?
Flags: needinfo?(bugmail.mozilla)
Assignee | ||
Comment 16•9 years ago
|
||
Not really. A guess is that they're doing something wrong with window.devicePixelRatio since that's the main difference between Flame and Aries.
Flags: needinfo?(bugmail.mozilla)
Comment 17•9 years ago
|
||
We have some "it's unclickable at high resolution because the page cancels touchmove and we interpret that as cancelling click" bugs - might be related?
Assignee | ||
Comment 18•9 years ago
|
||
Maybe. I'm pretty sure I checked that the click event was getting properly dispatched to content, but there might still be content-side code that listens for the touchmove and sets some flag that prevents the click from happening.
Updated•9 years ago
|
Comment 19•9 years ago
|
||
If I spoof as B2G on my Android phone w/ a DPR of 3, Cancel works as expected. But the Aries has DPR of 2, so that's not entirely conclusive evidence.
Comment 20•9 years ago
|
||
OK, after doing some event logging I don't think we're in Tech Evangelism territory any longer. Here's the results of Chrome Mobile, Fennec, and Aries all sending the same B2G (Gecko 43.0) UA string: Chrome Mobile touchstart being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'928_0')" class="_mad _mgf">Cancel</button> touchend being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'928_0')" class="_mad _mgf">Cancel</button> click being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'928_0')" class="_mad _mgf">Cancel</button> VM692:15 focus() [object HTMLButtonElement] Fennec: touchstart being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'698_0')" class="_mad _mgf">Cancel</button> touchend being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'698_0')" class="_mad _mgf">Cancel</button> click being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'698_0')" class="_mad _mgf">Cancel</button> focus() [object HTMLButtonElement] B2G: touchstart being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'62_0')" class="_mad _mgf">Cancel</button> touchmove being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'62_0')" class="_mad _mgf">Cancel</button> touchend being sent to <button id="cancel_button" onclick="return koya.onEvent(arguments[0]||window.event,'62_0')" class="_mad _mgf">Cancel</button> We're never sending the synthetic click in the B2G case (and sending touchmove for some reason?), so onclick="" never has a chance to do anything. Let me see if I can reduce this to something small.
Assignee: nobody → miket
Comment 21•9 years ago
|
||
Essentially what's happening is the following: There's a <div class="_mlc"> that is a parent to all the menu items. It's listening for "touchmove" events and calling e.stopPropagation() when it gets them in g.ol: g.ol = function(a) { g.nl.push(a); a.register(g.Ic("lightbox")); a.A = (0, g.x)(a.Cf, a); Yi(a.A); g.pg(); g.Lc("_mlc").addEventListener("touchmove", Raa, !1); ug(!1); g.Ic("content-container").setAttribute("aria-hidden", !0); a.B = window.document.activeElement; a.Z("lightbox").focus() } The "Raa" event handler is simple: var Raa = function(a) { a.stopPropagation(); return !1 } For whatever reason, the Xperia Z3 is sending a touchmove event between touchstart and touchend, for non-moving touches. Youtube stops the event from propagating down to the menu items that are listening for the synthetic click events, so that's why the Cancel button (or clicking outside the menu) doesn't close the overlay. To verify, visit https://miketaylr.com/bzla/youtube.html and tap where it says "Touch Me". You should never see Red. Chrome Mobile, Fennec, and B2G on my Flame all pass. B2G on the X3C fails.
Summary: [Aries][Browser] User cannot select the cancel button in menus on m.youtube.com → [Aries][Browser] Touchmove event sent sent for non-moving touches (breaking overlay menu on m.youtube.com)
Comment 22•9 years ago
|
||
I'm not actually sure where to move this to. Kats, would this live in B2G or Core?
Assignee: miket → nobody
Flags: needinfo?(bugmail.mozilla)
Assignee | ||
Comment 23•9 years ago
|
||
Thanks for digging into this! So technically I consider it a bug in the content because they don't appear to have a threshold on the touchmove event. But it's the same bug that exists in a lot of content and we'll just have to live with it. We can fix it on our end with bug 1141127, so I'll mark it dependent on that and move it back to Core.
Component: Mobile → Panning and Zooming
Depends on: 1141127
Flags: needinfo?(bugmail.mozilla)
Product: Tech Evangelism → Core
Version: unspecified → Trunk
Updated•9 years ago
|
Whiteboard: [2.5-Daily-Testing][Spark] → [2.5-Daily-Testing][Spark][platform]
I don't see this being practical to work around on our side (e.g., bug 1141127) as a bug - it needs to be handled as a feature request.
blocking-b2g: 2.5+ → 2.5?
Assignee | ||
Comment 26•9 years ago
|
||
This should be fixed now with bug 1141127.
Assignee: nobody → bugmail.mozilla
Status: NEW → RESOLVED
blocking-b2g: 2.5? → ---
Closed: 9 years ago
Resolution: --- → FIXED
Comment 27•9 years ago
|
||
According to the STR of Comment 0, this bug has been verified as pass on latest Aries KK v2.6. Actual results: The menu is dismissed when the cancel button is pressed See attachment: verified_Aries KK v2.6.3gp Reproduce rate: 0/6 Device: Aries KK v2.6 (master) (Pass) Build ID 20151109151826 Gaia Revision 23cab7ea0fcecab7689d340baf604e024e88f9a3 Gaia Date 2015-11-09 06:13:17 Gecko Revision https://hg.mozilla.org/mozilla-central/rev/e1ef2be156de1dad31bb4189a51b178b12b23340 Gecko Version 45.0a1 Device Name aries Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20151109.143842 Firmware Date Mon Nov 9 14:38:50 UTC 2015 Bootloader s1
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+], [MGSEI-Triage+]
You need to log in
before you can comment on or make changes to this bug.
Description
•