Closed Bug 868460 Opened 7 years ago Closed 7 years ago

Tidy up animation bits

Categories

(Firefox for Android :: General, defect)

All
Android
defect
Not set

Tracking

()

RESOLVED FIXED
Firefox 23

People

(Reporter: lucasr, Assigned: lucasr)

Details

Attachments

(5 files)

No description provided.
Attachment #745250 - Flags: review?(mark.finkle)
(In reply to Lucas Rocha (:lucasr) from comment #2)
> Created attachment 745249 [details] [diff] [review]
> (2/5) Mark views to have transient state while animating

FYI: this will probably fix bug 811739 for devices with Jelly Bean and later. Marking views as having transient state while animating means the views will not be recycled until the animation ends. That's how TwoWayView works. The same applies to ListView and GridView.
Attachment #745248 - Flags: review?(mark.finkle) → review+
Attachment #745249 - Flags: review?(mark.finkle) → review+
Attachment #745250 - Flags: review?(mark.finkle) → review+
Comment on attachment 745251 [details] [diff] [review]
(4/5) Replace AnimatorProxy calls with ViewHelper ones

I was a little concerned by calling AnimatorProxy.create(view); so much, but I see a proxy is mostly returned right away.

I suppose this cleans up the code enough to be OK. I'm usually not a fan of "too many layers".
Attachment #745251 - Flags: review?(mark.finkle) → review+
Attachment #745252 - Flags: review?(mark.finkle) → review+
(In reply to Mark Finkle (:mfinkle) from comment #7)
> Comment on attachment 745251 [details] [diff] [review]
> (4/5) Replace AnimatorProxy calls with ViewHelper ones
> 
> I was a little concerned by calling AnimatorProxy.create(view); so much, but
> I see a proxy is mostly returned right away.
> 
> I suppose this cleans up the code enough to be OK. I'm usually not a fan of
> "too many layers".

Agree on "too many layers sucks". The reason for this patch is twofold: 1) I never intended to make AnimatorProxy a public API, it's just an implementation details behind our little animation framework 2) ViewHelper reduces verbosity and code duplication quite a bit.

The only case where ViewHelper is less efficient than original code is when you set multiple properties on the same view (in which case we have to get the respective AnimatorProxy more than once).
You need to log in before you can comment on or make changes to this bug.