Fixed
Status Update
Comments
il...@google.com <il...@google.com>
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-master-dev
commit a071470cde57cf7eb6e39a67d331d716a0f8b842
Author: Ian Lake <ilake@google.com>
Date: Wed Jan 15 14:01:37 2020
Add SpecialEffectsController infrastructure
"Special Effects" is the blanket term for
Animation, Animator, framework Transition, and
AndroidX Transition that Fragments currently support.
Add the infrastructure around a SpecialEffectsController
which would operate on the container (i.e., ViewGroup)
level and coordinate all of the special effects.
This will eventually allow us to track the
postponed state at the container level.
Currently all APIs are purposefully package private
as they should not be used by external developers
at this time.
BUG: 147749580
Test: new test suites pass
Change-Id: I1e209bb4f55c21aa01afb49035d41f5b8d7d3eca
A fragment/fragment/src/androidTest/java/androidx/fragment/app/DefaultSpecialEffectsControllerTest.kt
A fragment/fragment/src/androidTest/java/androidx/fragment/app/SpecialEffectsControllerTest.kt
A fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java
M fragment/fragment/src/main/java/androidx/fragment/app/FragmentManager.java
A fragment/fragment/src/main/java/androidx/fragment/app/SpecialEffectsController.java
A fragment/fragment/src/main/java/androidx/fragment/app/SpecialEffectsControllerFactory.java
M fragment/fragment/src/main/res/values/ids.xml
M jetifier/jetifier/migration.config
https://android-review.googlesource.com/1209367
Branch: androidx-master-dev
commit a071470cde57cf7eb6e39a67d331d716a0f8b842
Author: Ian Lake <ilake@google.com>
Date: Wed Jan 15 14:01:37 2020
Add SpecialEffectsController infrastructure
"Special Effects" is the blanket term for
Animation, Animator, framework Transition, and
AndroidX Transition that Fragments currently support.
Add the infrastructure around a SpecialEffectsController
which would operate on the container (i.e., ViewGroup)
level and coordinate all of the special effects.
This will eventually allow us to track the
postponed state at the container level.
Currently all APIs are purposefully package private
as they should not be used by external developers
at this time.
BUG: 147749580
Test: new test suites pass
Change-Id: I1e209bb4f55c21aa01afb49035d41f5b8d7d3eca
A fragment/fragment/src/androidTest/java/androidx/fragment/app/DefaultSpecialEffectsControllerTest.kt
A fragment/fragment/src/androidTest/java/androidx/fragment/app/SpecialEffectsControllerTest.kt
A fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java
M fragment/fragment/src/main/java/androidx/fragment/app/FragmentManager.java
A fragment/fragment/src/main/java/androidx/fragment/app/SpecialEffectsController.java
A fragment/fragment/src/main/java/androidx/fragment/app/SpecialEffectsControllerFactory.java
M fragment/fragment/src/main/res/values/ids.xml
M jetifier/jetifier/migration.config
Description
Component used: SavedState
Version used: 1.1.0
When unconditionally calls even if there are no components that were registered to save their state.
SavedStateRegistry
is asked toperformSave
, itputBundle
This means that in cases like Fragments, where the Fragment itself has a
SavedStateRegistry
and the fragment's view has its ownSavedStateRegistry
, the overall saved state is increased doubly so (at what seems like a cost of 0.2KB per fragment).While not a significant part of the total saved state, this can add up with deep stacks.