Closed Bug 1072579 Opened 10 years ago Closed 10 years ago

Persona throbber is broken on FF Android Nightly (35.x)

Categories

(Firefox for Android Graveyard :: Toolbar, defect)

35 Branch
All
Android
defect
Not set
normal

Tracking

(firefox32 unaffected, firefox33 unaffected, firefox34+ verified, firefox35+ verified, fennec+)

RESOLVED DUPLICATE of bug 1006797
Tracking Status
firefox32 --- unaffected
firefox33 --- unaffected
firefox34 + verified
firefox35 + verified
fennec + ---

People

(Reporter: edwong, Assigned: mattwoodrow)

References

()

Details

(Keywords: regression)

moving from https://github.com/mozilla/persona/issues/4194

The loading screen animations look broken in FF Android Nightly.

STR:

    Go to marketplace in FFA Nightly
    Sign-in

What happens:

    During the sign-in process notice the throbber flash up briefly with broken styling.

What should happen:

    Throbber should appear normally.

Works fine on FFA 32.x Stable.
Huge difference; re-summarizing
Summary: The throbber is broken on FF Android Nightly (35.x) → Persona throbber is broken on FF Android Nightly (35.x)
See Also: → 1066100
Testcase: http://jsbin.com/donag/1

fwiw: I noticed adding a transparent outline fixes the display.

Workaround: http://jsbin.com/yufaha/1
Regression window:
mozilla-central
good build: 23-07
bad build: 24-07

pushlog: http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=82df3654cd80&tochange=a91ec42d6a9c
tracking-fennec: --- → ?
The regression is in part 4 of that bug.
[Tracking Requested - why for this release]: Regression in fx34
How much compositing/apz do we do through java these days and how much are we using our compositor infrastructure for? Do we have OMTA enabled for android?

This looks related to the fact that the testcase now gets an ImageLayer for the animation instead of a ThebesLayer now.

It looks like we're clipping the animated image and taking the top-left of the gecko content into account incorrectly. The amount of the image that is missing is the same as the height of the java url bar. I briefly had it in a state where I could scroll the page up (which hid the java section) and the amount of image that was visible changed with the scroll position.
Assignee: nobody → matt.woodrow
Flags: needinfo?(matt.woodrow)
(In reply to Matt Woodrow (:mattwoodrow) from comment #9)
> How much compositing/apz do we do through java these days and how much are
> we using our compositor infrastructure for? Do we have OMTA enabled for
> android?

We mostly use the C++ compositor; the Java compositor is only used for scrollbars and the shadow around the entire content and so on. The animation should be done entirely in the C++ compositor. We use the Java pan/zoom controller still on Fennec. I *thought* we had OMTA enabled for Android, but I don't actually see the pref set anywhere in mobile/android/app/mobile.js so maybe it is not actually enabled.

> It looks like we're clipping the animated image and taking the top-left of
> the gecko content into account incorrectly. The amount of the image that is
> missing is the same as the height of the java url bar. I briefly had it in a
> state where I could scroll the page up (which hid the java section) and the
> amount of image that was visible changed with the scroll position.

So to deal with the java url bar we provide some data to gecko/compositor. In the compositor, we have [1] which has two relevant out-params, the fixedLayerMargins and the offset. The fixedLayerMargins is used to shift fixed-pos layers to account for both overscroll and the url bar. The offset is used when doing the full frame composite to account for the position of the url bar. There's also a function at [2] which is used in Fennec to shift fixed-pos items because of the url bar on the gecko side.

Based on your description it sounds like the screen render offset code [3] or [4] is the most likely place for the bug. The patch on bug 1006797 may also give you some ideas (that was landed but backed out for regressions).

[1] http://mxr.mozilla.org/mozilla-central/source/gfx/layers/composite/AsyncCompositionManager.cpp?rev=18be3ab7b25e#873
[2] http://mxr.mozilla.org/mozilla-central/source/dom/interfaces/base/nsIDOMWindowUtils.idl?rev=8892214038df#1575
[3] http://mxr.mozilla.org/mozilla-central/source/gfx/layers/opengl/CompositorOGL.cpp?rev=8692353ec191#1025
[4] http://mxr.mozilla.org/mozilla-central/source/gfx/layers/opengl/CompositorOGL.cpp?rev=8692353ec191#597
Thanks for that, confirmed that this is fixed by the patch on bug 1006797.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
tracking-fennec: ? → +
Persona throbber works ok on Firefox for Android 34 Beta 8 and Firefox for Android 35.0a2 (2014-11-11)
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.