Back system button not working on context menu

VERIFIED FIXED in Firefox 10

Status

Fennec Graveyard
General
VERIFIED FIXED
6 years ago
6 years ago

People

(Reporter: Andreea Pod, Assigned: mbrubeck)

Tracking

({regression})

Trunk
Firefox 10
ARM
Android
regression
Dependency tree / graph

Details

Attachments

(2 attachments)

(Reporter)

Description

6 years ago
Mozilla /5.0 (Android;Linux armv7l;rv:9.0a1) Gecko/20111003 Firefox/10.0a1 Fennec/10.0a1
Device" LG Optimus 2X

Steps to reproduce:
1. go to any page 
2. long tap on a link or an image
3. after the context menu appears hit the system back button

Actual results:
nothing happens 

Expected results:
the context menu should close

Updated

6 years ago
Keywords: regression
Perhaps the patch in bug 692071 might fix this, Lucas?
status-firefox10: --- → affected
(Assignee)

Updated

6 years ago
Assignee: nobody → mbrubeck
(Assignee)

Comment 2

6 years ago
Regression from bug 691175.  If I can't find a simple fix for this, I'm starting to think we should back the whole mess out (bug 682017 and its dependencies).
Blocks: 691175, 682017
tracking-fennec: --- → ?
status-firefox9: --- → unaffected
(Assignee)

Comment 3

6 years ago
Created attachment 564959 [details] [diff] [review]
patch

So, we removed our custom JavaScript key event forwarding, and started letting the platform forward key events for us (bug 682017).

This broke keyboard shortcuts, so we restored part of our JavaScript code to pass key events back from content to chrome and re-dispatch them (bug 683736).

The re-dispatching caused handleEscape to get called twice for the same key press in some cases.  We fixed this by making handleEscape wait for events to bubble up to the window, instead of capturing them on the way down.  Then we could stop forwarded events from bubbling (bug 684558).

But this broke cases where the events don't bubble, like in the awesomescreen.  We fixed that by going back to capturing, but ignoring the event the first time, when it's headed toward the browser (bug 691175).

But that doesn't work for cases where the event is heading toward the browser but isn't forwarded to content; then we won't handle the event at all.  So this patch instead handles the event the first time, but ignores it the second time when it's redispatched by KeyFilter.

This fixes the bug, and does not regress any of the related bugs or tests, and is not any hackier than what was here before.  I'll write a new test for this regression before checking in the patch, and I'm still working on understanding the platform logic here and how we need to work with it or fix it.
Attachment #564959 - Flags: review?(mark.finkle)
Comment on attachment 564959 [details] [diff] [review]
patch

Thanks for the summary.

It's the gift that keeps on giving...
Attachment #564959 - Flags: review?(mark.finkle) → review+
(Assignee)

Comment 5

6 years ago
Created attachment 564973 [details] [diff] [review]
test

This browser-chrome test catches the regression in the bug, and passes on desktop (with the fix applied).  Pushed to Try:
https://tbpl.mozilla.org/?tree=Try&rev=482fc583a674
Attachment #564973 - Flags: review?(mark.finkle)
Attachment #564973 - Flags: review?(mark.finkle) → review+
(Assignee)

Updated

6 years ago
Status: NEW → ASSIGNED
Whiteboard: [pushed to try]
(Assignee)

Comment 6

6 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/0e2a6ed2d6c0
https://hg.mozilla.org/integration/mozilla-inbound/rev/4831f64bc4ad
status-firefox10: affected → fixed
Whiteboard: [pushed to try] → [pushed]
Target Milestone: --- → Firefox 10
https://hg.mozilla.org/mozilla-central/rev/0e2a6ed2d6c0
https://hg.mozilla.org/mozilla-central/rev/4831f64bc4ad
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
Whiteboard: [pushed]

Comment 8

6 years ago
Retested bug with:
Mozilla /5.0 (Android;Linux armv7l;rv:10.0a1) Gecko/20111012 Firefox/10.0a1 Fennec/10.0a1
Device: Motorola DROID 2 (Android 2.3)

Bug is no longer reproducible. Context menu is closed properly from system back button.

Verifying bug.
Status: RESOLVED → VERIFIED

Updated

6 years ago
tracking-fennec: ? → ---
You need to log in before you can comment on or make changes to this bug.