Closed Bug 721787 Opened 13 years ago Closed 13 years ago

Double tap zoom takes too long to respond

Categories

(Firefox for Android Graveyard :: General, defect, P3)

defect

Tracking

(blocking-fennec1.0 beta+, fennec+)

RESOLVED DUPLICATE of bug 741565
Tracking Status
blocking-fennec1.0 --- beta+
fennec + ---

People

(Reporter: wesj, Assigned: kats)

References

Details

When the user double taps to zoom we should start responding instantly. Right now we have to send messages across the bridge and wait for a response with the appropriate rect to zoom to. If there's anything else hogging the queue, that can take seconds. We could start a guessy zoom and then adjust midway through, but that assumes that we hear back from content within a few 10s of ms I think. Since we can't count on that, I think we may need to prioritize these messages. Maybe even write a special no-JSON conversion path for them? Would be good to get some profiling to know exactly where the slowdown is as well.
Assignee: nobody → wjohnston
tracking-fennec: --- → +
Priority: -- → P3
Part of the problem here might also be that the first thing in a double-tap is a onDown, which sends the same Gesture:ShowPress as in bug 741228. I haven't verified this but it shouldn't be too hard to check, I will do that and report back here.
FWIW, Chrome zooms in by a fixed amount on double tap so they don't need to do as much work.
blocking-fennec1.0: --- → ?
It is in fact sending a Gesture:ShowPress on the first touch-down of the double-tap. It also sends a second Gesture:ShowPress on the second touch-down, but fortunately that happens after onDoubleTap (at least on the GN; it might be dependent on how manufacturers have modified the android GestureDetector).
Also, the 200ms delay in the LayerController touch event code is coming into play here.
FWIW, I don't see the JSON serialization taking any significant amount of time here. I don't think that's the problem. It seems to be a combination of waiting the 200ms for the touch event handlers to run (bug 741565), followed by running the Gesture:ShowPress handler (bug 741228) before we get to the Gesture:DoubleTap. The DoubleTap handler itself probably takes a bit of time to run since it also does a anyElementFromPoint call.
Summary: Double tap zoom takes to long to respond → Double tap zoom takes too long to respond
Assignee: wjohnston → bugmail.mozilla
blocking-fennec1.0: ? → beta+
Is bug 741228 the real issue here? Is this bug even a blocker on it's own?
I think fixing 741565 mostly took care of this. It can be improved further, but right now the delay is not really noticeable to the user. Marking as fixed.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Verified/fixed on: Nightly Fennec 15.0a1 (2012-04-25) Device: HTC Desire Z
Status: RESOLVED → VERIFIED
Status: VERIFIED → RESOLVED
Closed: 13 years ago13 years ago
Resolution: FIXED → DUPLICATE
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.