cancelled.
In the current implementation, when recents animation is cancelled due
to stack order change, window manager replaces the surface with a
snapshot before cancellation. Launcher needs to acquire the snapshot in
order to switch the live tile into snapshot mode, and yet because the
recents animation is cancelled, that snapshot can no longer be acquired
anymore. This change takes care of this "relay" process.
Fixes: 138683199
Test: N/A
Change-Id: I1c11af38c2bdc442e3b45d0b5f0c7e7e37c2b0f0
In TaskKeyLruCache, we currently call the EvictionCallback
without checking if the entry was actually evicted or not.
fixes: 138952364
Test: Unit tests, manually inspected via debugger
Change-Id: Ic8e871f8e5a0324e4d00011d5bcd7036302b5c68
Instead of passing a boolean value signaling whether to defer with
screenshot, we want to pass the actual screenshot to Launcher if that's
the case. Another change will follow to implement passing the screenshot
from the window manager.
Bug: 138683199
Test: N/A
Change-Id: If5956436641aa35ffac3122fb53d13366552e0f1
- We were previously ignoring the QS state for notifications expanded since
we were only using that flag for gating whether to allow back. But since
we also use the state for gating swipe up, we should be explicit and
check that both notifications are hidden and we are not in QS.
Bug: 135969043
Test: Swipe into QS, ensure the state is set
Change-Id: Ia284938e32f54998bf7aba3a051de2b30cdc0e26
New callback called whenever a user visible task
is added or removed to the recents list. This results
in less work by updating only when recent task list
changes instead of listening for active task list
changes.
Test: atest RecentTasksTest
fixes: 111077107
Change-Id: I9acf13762d0c79bfde90b64fa5e0edaf882068cc
- Allow the recents animation runner to request deferring a cancel from
stack order change until the next app transition start without using
a screenshot. This allows launcher to set this state, then start an
activity without a flash due to the animation not finishing immediately
- Always prepare a transition when using the deferred cancel to ensure
an app transition callback
- Handle app transition canceled as well (if canceled, we continue to
cancel recents the animation with/without the screenshot as requested)
- Remove internal lock and use the global WM lock when setting the defer
cancel state
- Renamed a few methods to clarify the deferred cancel flow
Bug: 137196872
Test: atest FrameworksServicesTests:RecentsAnimationControllerTest
Test: atest WmTests:RecentsAnimationTest
Change-Id: Ie8f6f60b6bf6777e36f24749b30f90c8c26ee848
This identifier is introduced to differentiate two task snapshots in
AiAi. Currently, the timestamp (in millis) is chosen as the identifier.
Bug: 136563752
Test: atest TaskSnapshotPersisterLoaderTest
Change-Id: I249511d1e4bb34a93d5db08d2b1cea3b1ee5d034
> Adding a protected broadcast to enable gesture mode
If the device is not managed, gesture mode will be wnabled once setup-wizard
finishes. Otherwise, it will wait for a protected broadcast from the device/profile
owner app which can switch the device to gesture mode.
Bug: 134473386
Test: Verified on device setup in device owner and profile owner mode
Change-Id: I7d32d5461eef19a30f323295c7a9bac975adbf91
Such that binder response inherits our nice scheduling
characteristics.
The old logic isn't really needed anymore, as we don't do anything
interesting on the main thread.
Test: Open app from recents
Fixes: 136111411
Change-Id: Ibfb0f60113bc0d9d94844ea4cde0e78723183eb2
This is a targeted fix for not receiving a task stack change callback
when a task with a resumed Activity is reparented to another display.
Bug: 128932906
Test: manual - launch activity from virtual display onto default display
in a new task, verify callback notified. atest WmTests
Change-Id: Idabad8379cded664bcf302d5c6fb69564d158eb7
Holding on to a reference of the handle in Java will keep the server-side surface alive until
the reference is removed by GC. This may cause surfaces to be kept alive longer than necessary.
Instead hold on the surface control and call SurfaceControl#release which will release the local
reference to the server-side surface.
Bug: 136004147
Test: go/wm-smoke
Test: gesture nav sanity tests
Test: atest CompositionSamplingListenerTest
Change-Id: Iab33680746c8f48c28783e6a2a13c9ac7ae04980
It is possible for the call to system windows to occur slightly after
the ChooserActivity gets launched, therefore preventing it from ever
showing. Wait on the future before attempting to launch the activity.
Bug: 134976976
Test: Screenshot, then share over and over
Change-Id: Iba98a079412f8e35643f3a1db04e749b3c654637