When iterating through registered transitions and finding one and
marking as active, WM sets a reset transition which runs at when the
transition handler runs its finish callback. However, not all transition
handler wants a complete reset of the transition; in PiP's case, it
actually wants to set the final position to the new PiP x and y
coordinates. Passing in the finish transition to #startAnimation will allow
each transition handler to customize and overwrite values as necessary.
Bug: 165793917
Test: Enable Transitions, enter PIP - PIP animates correctly now
Change-Id: I741a04c1a9123c924383168c0db48646ef34059d
Instead of resizing to bounds larger than the default size
when the menu is shown, resize to the normal/default bounds
instead.
Also, remove the unused animateToMinimizedState() method.
Bug: 184789365
Test: enter PIP, pinch resize to min size, tap to poke menu -
verify that PIP expands to the default size
Change-Id: Ib0d7780fce2ec9157fb0f533d67b175ce699f40b
The generic rule to showing an empty splash screen is that if an
activity is launched from another visible activity besides Launcher.
So with this rule, when prepare the starting window for a launching
activity, we can tracking where the source activity comes from and
whether it has show splash screen or has drawn window before.
This can solve the inconsistent launch sequence when launching an
activity from non-system surface for the status either new task or
new process.
There will show an empty style splash screen if the launching
activity was drawn or it has show splash screen before.
Another coner case is that a process could start a new activity from
service, for the better UX we should also check whether there any
existing activities which were from the same process or same package
and has already at foreground.
We can still add "show icon_style_splash_screen" flag in the future.
Bug: 185433040
Bug: 185567723
Bug: 185448781
Test: atest SplashscreenTests ActivityRecordTests
Test: manual test
Launch browser from -1, empty splash screen
Launch calendar from launcher, icon splash screen
Launch work app from Settings -> Notifications -> Calendar show empty
splash screen
Launch Settings -> System update show empty splash screen
Launch Dialer -> call out -> show empty splash screen on InCallActivity
Change-Id: Id84f1f69de6c5e3f1c21cd249c62404958410193
* Allow bounds to be set on launch params for multiwindow activities
* Users of TaskView should pass bounds when starting an activity
otherwise they will see this animation
* Modify bubbles & controls to pass launch bounds
Test: atest TaskLaunchParamsModifierTests LaunchParamsControllerTests
MultiWindowTests
Bug: 182299605
Bug: 182516248
Change-Id: Ie5337593d776309f8aac0c6991cf846463e519a7
Fixes an issue where a max-size PIP is resized to the
user-resized size after either:
A) single-tap to show the menu and then it times out to hide
it, or
B) single-tap to show the menu and then single tap outside of
the PIP window
This was caused by the resize=true flag being passed into
PipMenuView.hideMenu() from the hide menu timeout runnable or
from PipResizeGestureHandler.onDragCornerResize()
Bug: 186616706
Test: enter PIP, then:
1) double-tap to MAX, then tap once to show menu and wait for
it to time out - verify it stays in MAX size
2) double-tap to MAX, then tap once to show menu and once
outside of PIP - verify it stays in MAX size
3) pinch-resize to minimum size, tap once, wait for it to
expand a bit, wait for the menu timeout - verify it resizes
down to the minimum size.
Change-Id: I394d49b77f2c6aa42fc4681ef5238c478a474b85
Tasksnapshot window can block touch event so user may not able
to touch the screen after showing task snapshot. Remove the delay
so app window can response touch event as soon as possible.
Bug: 187227846
Test: atest TaskSnapshotWindowTest
Change-Id: I5fb0fa3a1e6a5e6210d3baf400a84c5892bd2e34