Extract ActivityLaunchAnimator into a reusable class.
This CL removes all logic specific to notifications in
ActivityLaunchAnimator, so that it can be reused for other launch
animations.
I would suggest to look at ag/14057092 in parallel to make more sense of
the abstractions added in this CL.
For the sake of not making this CL even bigger than it already is, a few
things still need to be done in follow-up CLs:
- Show the status bar icons at the right time, instead of at the end of
the animation, when using the StatusBarLaunchAnimatorController.
- Move the animation/ package outside of the SystemUIPluginLib library
and instead have it in its own reusable library.
- Replace the animation durations and interpolator to the latest
designs.
- Improve split screen by retrieving the final window bounds and
prevent the clipping of the window during the animation.
- Handle animations in the lock screen.
For review, I would recommend to review in order:
1. ActivityLaunchAnimator.kt
2. StatusBarLaunchAnimatorController.kt
3. NotificationLaunchAnimatorController.kt
4. GhostedViewLaunchAnimatorController.kt
5. Everything else.
Bug: 184121838
Bug: 181654098
Test: Tap a notification when the shade is open and unlocked.
Change-Id: If4c3c64fcd153bb8e89111f56332013ca6dff156
diff --git a/packages/SystemUI/plugin/Android.bp b/packages/SystemUI/plugin/Android.bp
index d6204db..b3aba22 100644
--- a/packages/SystemUI/plugin/Android.bp
+++ b/packages/SystemUI/plugin/Android.bp
@@ -27,6 +27,7 @@
srcs: [
"src/**/*.java",
+ "src/**/*.kt",
"bcsmartspace/src/**/*.java",
],