Fixes: 190463685
Test: launch app and see no exception breaking the creation of
splash screen view.
Change-Id: Icae3b189068f074fdc061d0c510faceb024a26c6
In rotated coordinates, the vertical and horizontal are
different directions. Otherwise the end of animation
doesn't match the destination position.
Bug: 175836469
Test: setSourceRectHint with non-zero left.
Change-Id: Ia5e282c0a1bab9cbf77e964b4a4bc8ea4514cfb9
- SplashscreenContentDrawer.ColorCache needs INTERACT_ACROSS_USERS_FULL
to register the broadcast receiver.
Bug: 190516351
Test: Build Andorid Auto OS and check if CarLauncher is showing.
Change-Id: Ib0700a0f2ba1c31ffc60199a3aa8019961464efe
Included in this CL
- Increase the corner radius from 8dp to 16dp
- Scale the round corner radius in transition
Tested with the following scenarios
- Enter PiP in button navigation mode
- Double-tap to resize PiP
- Pinch to resize PiP
TODO
- Round corner when enter PiP with auto-enter being enabled
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/gA2dQNBNTA8xFExWqmOkRY
Bug: 187441996
Test: manual, see video
Change-Id: I43db31f966007795351a8e2ca7dd08417f6f0df7
The background color of splash screen starting window may depend
on the declared window background and the content if icon. That
may be expensive operations if the drawables are not using pure
color. Because the attributes to compute the colors are simple,
it only need a few fields to identify whether the incoming request
has been computed. So it is worth to cache them with very small
extra memory. The cache of a package will be cleared if the package
is removed or replaced.
It may save the creation time up to 20ms (depends on the complexity
of the drawable).
Bug: 190176296
Test: atest StartingSurfaceDrawerTests#testColorCache
Test: Cold/warm launch app twice and compare the duration of
trace name "makeSplashScreenContentView". The second time
should be faster. Re-install the app and launch again,
the trace will contain "peekWindowBGColor" that means
that cache for the package was cleared.
Change-Id: I61158416694a226999843fa8fc6a8b23d6893f02
The overscroll logic could get stuck previously, which lead to
a forehead visible on the lock screen.
This improves the logic and animation to look much better.
Fixes: 190029393
Test: expand shade, observe nice overshoot, no forehead on lockscreen
Change-Id: I2c9d5313626d3037c7bd3c942820c391da99b459
* stackAnimationController#isStackOnLeftSide depends on the position
being set which happens when a view gets added so we should add
the view & then set mStackOnLeftOrWillBe
* removed unused code
Test: manual 1) have no bubbles
2) add a bubble (needs to be on left side -- this is
the default unless you've placed the stack on right
side beforehand)
=> observe that the update dot & badge are on the right
hand side of the bubble
Bug: 185438888
Change-Id: I6129aff7c352fad8d29a6c243549f0d3580d62c8
* Sometimes the dot doesn't show when it should, this was happening
because the mAfterFlyoutHidden might not be set for updates
to the flyout
Test: manual 1) add a new bubble, before the flyout for it has
animated away, add a second bubble, before 2nd
bubble's flyout as animated away, add another update
to it
2) wait for the flyout to animate away, ensure the
update dot is visible
Bug: 185438888
Change-Id: I7e21ee87cb2ad02871330178668bc07962485e2d
* orders the target below the PIP surface
* adds scale relative to the dismiss target size when PIP is in
the target
Test: manual - get a pip, drag it to dismiss => it appears on top of
the circle and then animates away with it
- get a pip, make it larger with 2 finger gesture,
drag it to dismiss => it appears on top of the circle
and fits nicely in the circle bounds
Bug: 183657564
Change-Id: I5c096c2b5f41a667df37b4c6668c4862a212c7e2
- large colored circle, uses same accent color that launcher
has for remove / uninstall
- added a shrink animation for the target when the bubble is
stuck via the magnet
- no longer desaturate the bubble being dismissed but rather add
a bit of an alpha
Bug: 183657564
Test: manual - get a bubble, drag it around & dismiss it, notice
the animation
Change-Id: If0d0d86b7389f0fa3314598266cd83ecabdc6a9b
Before adding the snapshot start window, remove any existing window
at the same task if any. Also make sure if starting window was create
failed, the window should be remove after it been added.
Bug: 185318171
Test: manual test without ag/14308714
Change-Id: I5de7d54907bc0318c6d979c44ca8e64a5fcea062
This was only hiding if you interacted with the bubble, now it
will hide if you tap anywhere.
Also makes sure the bubbles are ordered above the education.
Bug: 189225662
Test: manual - wipe device, get first bubble, tap anywhere other
than the bubble & observe that the user education
fades away.
Change-Id: I3750ca79de717e81492070b38d1af0518f1a7a3f
* adjust the default spacing so that its small enough that 5 bubbles
can show on crosshatch (5 is the default)
* Add max bubbles to BubblePositioner, replace the other usages
Test: atest BubbleDataTest
Test: manual - have 5 bubbles
- adjust screen size to largest
- open the stack
=> notice that the number of bubbles have changed and
they all fit on the screen without overlap
- repeat & check the different densities
Bug: 187715444
Change-Id: I4794ed89541eeb573c367748f980cf7ffe45d3f3
* Add shadows back -- icon lib is no longer adding shadows but
bubbles should still have them for background protection.
* The shadow is active on all bubbles when:
- the stack is being dragged around & bubbles trail behind it
- the stack is expanded (the bubbles can be dragged to dismiss &
can show on top of the expanded view or overflow)
* When the stack is resting, only the top two bubbles show a shadow
& the bubbles below that animate their Z translation so the change
is smooth.
* Also put the # of bubbles we show in the stack in a static int &
updated usages
Test: visual - add 5 of the 'test bubbles' from the test app
and notice the white backgrounds don't blend together
due to the shadow & that they are distinct when
placed on a white background
- drag / fling the stack around & notice shadows show
for all the bubbles while moving but once they come
to rest you don't see a stack of shadows
Bug: 183657577
Change-Id: I0c273f4d0261db9eac1b49ef584fd62fbb67cc9a
TaskSurfaceHelper(Controller) will be used as an interface to communicate
with the SurfaceControl of the underlying Task. This change adds a function
to set the game mode metadata for the task layer.
Bug: 186025682
Test: atest TaskSurfaceControllerTest
Change-Id: I136b65636b98e1883eaf9e4f4f0b34c61350d4e4