Closed Bug 838737 Opened 11 years ago Closed 11 years ago

Intermittent "this.browser.fuzzyZoom is not a function" in AnimatedZoom

Categories

(Firefox for Metro Graveyard :: General, defect)

All
Windows 8.1
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mbrubeck, Assigned: mbrubeck)

Details

Attachments

(1 file, 1 obsolete file)

Attached patch patch (obsolete) — Splinter Review
If a tab is closed while AnimatedZoom is in the middle of an animation, AnimatedZoom.updateTo throws an exception because it tries to call an XBL method on an element that no longer has a binding.  This shows up sometimes in Metro tests.  We should just cancel the animation in this case.

I tested that AnimatedZoom still works as expected, and the browser_onscreen_keyboard.js test which uses it is still passing.

(Note: AnimatedZoom is not actually used for zooming right now, but it's still used for animated scrolling in FormHelperUI.  It will probably go away completely in the future, replaced by AsyncPanZoomController.)
Attachment #710822 - Flags: review?(mark.finkle)
Comment on attachment 710822 [details] [diff] [review]
patch

I assume we don't need to do anything special for the other calls to AnimatedZoom.updateTo

Also, it looks like AnimatedZoom.finish could have "reset" called twice: one at the top of the function via updateTo and once at the bottom. Is this likely? If so, is it a problem?
Attachment #710822 - Flags: review?(mark.finkle) → review+
Attached patch patchSplinter Review
Good catch -- in the rare case where a tab is destroyed at *exactly* the moment when finish() is about to be called, then we'd get similar exceptions in finish().  We should bail out of it.  This also avoids calling _reset twice, which would lead to (probably harmless) duplicate events.

We can assume the updateTo call in animateTo succeeds, because there's no chance for the browser to disappear between the call to start() and the call to updateTo().

Carrying r=mfinkle.
Attachment #710822 - Attachment is obsolete: true
Attachment #710929 - Flags: review+
https://hg.mozilla.org/projects/elm/rev/f806df20231e
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
OS: Windows 8 Metro → Windows 8.1
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: