Closed
Bug 713729
Opened 14 years ago
Closed 14 years ago
FlingRunnable runs constantly after panning and releasing without flinging
Categories
(Firefox for Android Graveyard :: General, defect, P2)
Tracking
(firefox11 fixed, fennec11+)
RESOLVED
FIXED
Firefox 12
People
(Reporter: kats, Assigned: kats)
References
Details
(Keywords: regression)
Attachments
(1 file)
|
2.52 KB,
patch
|
pcwalton
:
review+
akeybl
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
While investigating some other bugs, I found a bug in the current FlingRunnable. If you touch down a finger, pan, and then touch up (such that the onTouchEnd happens in state PANNING_HOLD_LOCKED or PANNING_HOLD), this causes the FlingRunnable to continue running forever. This can be seen by sticking a printout in FlingRunnable's run method at the very top and watching logcat.
This appears to be because the mX and mY variables are put into state stopped, but the "flinging with an appreciable velocity" code doesn't take this into account, and bails out of the FlingRunnable too early. Therefore the animation timer never gets stopped and the runnable keeps getting scheduled.
Patch forthcoming.
| Assignee | ||
Comment 1•14 years ago
|
||
Btw, this happens partly because the axes are put into FlingStates.STOPPED if the velocity vector has magnitude < 4.0 (as per stopped()) but in the FlingRunnable.run(), it uses the 0.1f threshold when there's no significant overscroll. This patch just moves that velocity check into the if condition, so that it doesn't run unless a fling is actually in progress.
Attachment #584474 -
Flags: review?(pwalton)
| Assignee | ||
Updated•14 years ago
|
status-firefox11:
--- → affected
Keywords: regression
Comment 2•14 years ago
|
||
Comment on attachment 584474 [details] [diff] [review]
Don't let the FlingRunnable run forever
Review of attachment 584474 [details] [diff] [review]:
-----------------------------------------------------------------
r=me
Attachment #584474 -
Flags: review?(pwalton) → review+
Updated•14 years ago
|
Priority: -- → P2
| Assignee | ||
Comment 3•14 years ago
|
||
Try run showed green: https://tbpl.mozilla.org/?tree=Try&rev=d9f8a97679fa
Landed on m-i: https://hg.mozilla.org/integration/mozilla-inbound/rev/bcfe95e5f7bd
Whiteboard: [inbound], [leave open after inbound merge]
Whiteboard: [inbound], [leave open after inbound merge]
| Assignee | ||
Updated•14 years ago
|
Target Milestone: --- → Firefox 12
| Assignee | ||
Updated•14 years ago
|
Attachment #584474 -
Flags: approval-mozilla-aurora?
| Assignee | ||
Updated•14 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Comment 5•14 years ago
|
||
Comment on attachment 584474 [details] [diff] [review]
Don't let the FlingRunnable run forever
[Triage Comment]
Mobile only - approving for Aurora.
Attachment #584474 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
| Assignee | ||
Comment 6•14 years ago
|
||
Landed on aurora:
https://hg.mozilla.org/releases/mozilla-aurora/rev/1953793c93e2
Updated•14 years ago
|
tracking-fennec: --- → 11+
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•