Closed Bug 1015600 Opened 10 years ago Closed 10 years ago

Mobile Google Play menu does not work on Firefox for Android (pointerdown and pointerup events do not fire even though feature detection indicates support)

Categories

(Web Compatibility :: Site Reports, defect)

Other
Android
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: rjt, Unassigned)

References

()

Details

(Keywords: reproducible, Whiteboard: [notcontactready] [js])

Attachments

(1 file)

User Agent: Mozilla/5.0 (Android; Mobile; rv:30.0) Gecko/30.0 Firefox/30.0 (Nightly/Aurora)
Build ID: 20140520115308

Steps to reproduce:

Visit http://play.google.com/


Actual results:

Page renders OK, but tapping the menu button/link doesn't do anything.


Expected results:

Site's menu should be displayed.
This is reproducible on desktop too when fetching the mobile site with the mobile UA and window resized to phone width. 

https://www.gstatic.com/play/store/web/js/2854893895-jquery_js_compiled_jquery_js.js

Over to web compat
Status: UNCONFIRMED → NEW
Component: General → Mobile
Ever confirmed: true
Keywords: reproducible
Product: Firefox for Android → Tech Evangelism
Summary: New play.google.com mobile site menu doesn't work → Mobile Google Play menu does not work on Firefox for Android
Version: Firefox 30 → Trunk
This works a bit better in Nightly for Android than in the current release: In Nightly it responds to the touch, the page goes dark, but the menu fails to slide in. Opera Classic does exactly the same thing.

Based on that, my best guess is that there is a bug in Fx that either prevents event listeners from being added or events from firing as expected, and this bug is fixed in Nightly - and a bug in the menu code that fails to apply the right styling to slide in the menu.
So, Google Play uses this approach to figure out whether to listen for "touch" or "pointer" events:

function Zt(a){this.f=v(a);this.e=jQuery("body");this.a="onpointerdown"in window;this.b="ontouchstart"in window}

The problem is that 

'onpointerdown' in window

evaluates to true in current release builds even though they per http://jsfiddle.net/Kq3AH/ do NOT actually fire pointer events. That's a pretty stupid bug, because Google's code makes sense - feature detection and defaulting to the "most W3C-standardised" API, the one that's supposed to guarantee most interoperability across devices and input types.

Current nightly builds on Android do fire pointerdown and pointerup events, which is why the menu almost works there.
Summary: Mobile Google Play menu does not work on Firefox for Android → Mobile Google Play menu does not work on Firefox for Android (pointerdown and pointerup events do not fire even though feature detection indicates support)
We have the same bug on Desktop, BTW - this version also shows what the feature detection says: http://jsfiddle.net/Kq3AH/1/
Missing piece of the puzzle is in https://www.gstatic.com/play/store/web/css/3598201214-lowlife_css_ltr.css - look at the -webkit-transform in the .nav-open declaration:

body.phone-optimized.nav-open #wrapper {
    -webkit-transform: translate3d(260px,0,0);
    position: fixed
}
See Also: → 822898
Depends on: 1017086
Adding [notcontactready] until we get bug 1017086 sorted out.
Whiteboard: [notcontactready]
Attached image screenshot.png
Seems to be a whole lot more broken today when viewing the site in Fennec Nightly (5/29).

Their top header is cut-off, content is not formatted to correct width, attempts to open the menu spawn a black transparent overlay that is broken.

A whole lot busted across the board.
(In reply to Aaron Train [:aaronmt] from comment #7)
> Their top header is cut-off, content is not formatted to correct width,

There are some built-in promotions for various apps that are suddenly way wider in Nightly. Maybe UA sniffing that trips over the version number?

> attempts to open the menu spawn a black transparent overlay that is broken.

That's progress, actually - means pointer events are now firing in Nightly and the only missing part to get the menu working is to fix the CSS per comment #5.
This seems improved this week. The menu animation is still incredibly janky, I wonder why?
The issues are a bit random. Sometimes touching the menu is working. Sometimes it's not.
Whiteboard: [notcontactready] → [notcontactready] [js]
The CSS this bug was about seems fixed now. I see the performance leaves something to be desired - quite possibly we should report another bug on slow CSS animations on play.google.com
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WORKSFORME
Product: Tech Evangelism → Web Compatibility
Component: Mobile → Site Reports
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: