This reverts commit 4ef153a797.
Reason for revert: This fixes a foldable bug and so not really needed anymore for sc-v2. We'll leave it master only.
Bug: b/205761901
Bug: b/206644532
Change-Id: Ia50d491d89a4c9faaa49c3e2b9afe38f73bd7f57
This broadcast was only for a prototype so no harm to
remove the receiver.
Test: treehugger
Bug: 202756848
Bug: 173386799
Change-Id: Ia496570f4209e4019ecddd9731b6b9c303740f85
- Since SysUI/Shell is making the call to start the app pair tasks in a
WCT, we also need to expand the restriction on who can freeze the
list (to any caller with MANAGE_ACTIVITY_TASKS)
Bug: 206000278
Test: Quickswitch from app pair and back
Change-Id: I7f455fde87edfbcb7d856d842710c2a4542d7207
Re-initiate the DismissCircleView upon theme change to make sure the PiP
dismiss target inherits the right theme color.
Bug: 199359063
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/bIMe3fAFoW6Nw47Ye894MZ
Test: manually, see video
Change-Id: Ia65c633fd636114ddbdc2ff497245e2cb73f7745
* Compute and save a StagedSplitBounds object for every
pair to determine it's position, size, divider, etc.
* Moved GroupTask to Launcher
* Moved StagedSplitBounds from launcher to wm/shell
because sharing is caring.
Bug: 203006080
Change-Id: I8513e027f8c9606fbed1283013eafea2cf905f3f
- Add pairs for the top visible children when both roots are populated,
and update when either side changes.
- Remove pairs if an activity is finished, or if the user dismisses
split manually
- Remove pairs for associated tasks if they are made visible in fullscreen
Bug: 202740477
Test: atest WMShellUnitTests
Test: adb shell dumpsys activity service SystemUIService WMShell
Change-Id: I87c632dfd1a014d64ad8e25c9e68ea6ca230744e
On display changes, it is possible that the old bounds is now too big
or too small for the new display. This is especially like on foldables,
such as a min size on a folded state is too big when in an unfolded
state.
Bug: 198679951
Test: Fold, minimal size, then unfold - see size change, and resizing
now doesn't jump to from too small -> small
Change-Id: I5de64860f1fbb476ff1a6a8dd9a0c50fd3259a45
- These map to logging states, but can be used to distinguish
cases to retain/remove the splits in recents
Bug: 202740477
Test: atest WMShellUnitTests
Test: adb shell dumpsys activity service SystemUIService WMShell
Change-Id: Ie028f6a2cb63beda97482e86e2c60dbf8f81e625
- Certain system ui implementations which use the shell don't depend on
SystemUI-core, which means that the dagger modules for providing the
core Shell components need to be copied (which makes it more cumbersome
to make changes). Instead, move these modules back into the shell lib
for any SysUI app to reference.
Bug: 205019015
Test: make SystemUIGoogle
Test: make CarSystemUI
Test: make ArcSystemUI
Change-Id: I8dc938a7695972f9d7b3d7ea8e3ce65a7b454b13
Add a new "enter split" button that allows user to go directly into
split screen on large screen devices from PiP.
- Add button
- Calculate split-screen location based on current PiP bounds
- Merge all WCT into one after animating
Video: http://recall/-/gu5DjQFZPMFpwgaXdl4cV3/gnNkSpC72tlTGP2mrKR07R
Bug: 202740657
Test: Enter PIP, open another app, tap "enter split"
Change-Id: I0829c910b2873ed4c4b0ea4fe0ca28b7f87736d8
- Add a shell component and interface for Launcher to use to get recent
tasks including paired splits (pending integration w/ split controller)
Bug: 202740477
Test: atest WMShellUnitTests:com.android.wm.shell.recents.RecentTasksControllerTest
Signed-off-by: Winson Chung <winsonc@google.com>
Change-Id: I34d834061ed2391d89cf56d6a2fd262868707674
Merged-In: I34d834061ed2391d89cf56d6a2fd262868707674
Add log when split exit for debugging some auto dismissing bug
which hard to repro locally.
Also add a check when exit split for avoiding exit run many times.
Bug: 204527184
Test: pass existing tests
Change-Id: Iaf98a7eb54a2988d13b3b8ca871c750f993fa8b4
- Pull code that manages the lifecycle of the callback into its own
class which takes care of cleaning up any callback references and also
listening for when the binder dies
- Removing some boilerplate code
Bug: 202740477
Test: atest WMShellUnitTests
Change-Id: I7ff4c876fc14291d6523c2c62a7c453a01d96294
The width of the hint is constant but the height changes with respect to the number of lines the text requires (see screenshots below). The X position of the hint is set programmatically so that the point's center will be aligned with the button's center.
Still need to add UI for different states of the button (pressed, focused, etc.) and maybe also the hint (since it's clickable). Mocks for this are still TBD.
Mocks: https://www.figma.com/file/fLAVOdDkg0lnFWiltSYbGA/Multitasking?node-id=2719%3A54196
Screenshots:
[default - 2 lines] http://screen/4EtytFiKsY3Q5NE
[LTR language] http://screen/9BSPipZYUd7UGPV
[short text - 1 line] http://screen/AN5bds6rh5V55Bw
[large font - 3 lines] http://screen/6utG596y52LBDjX
[long text - 4 lines] http://screen/7mBL2fXWy43UsTq
Bug: 198347324
Test: atest WMShellUnitTests:SizeCompatRestartButtonTest
Test: atest WMShellUnitTests:SizeCompatHintPopupTest
Test: atest atest WMShellUnitTests:SizeCompatUILayoutTest
Change-Id: Ida4c4171be94b60499cfe8acb6a2278f7e10a1f3
Clear overrided windowing mode and window bounds when a task vanished
from freeform task organizer to make sure the task can inherit config
from its new parent.
Fix: 204842882
Test: put a task in freeform, then trigger split screen with such task,
observed it applied multi-window windowing mode and bounds
properly.
Change-Id: Ifb100d17a83931237e58bcd774dce304a3fdb731
This basically ties applicationthread binder token to remote
transitions. Shell is first boosted (to run the shell transition
logic) and if it then delegates to a remotetransition, it will
then request that process also be boosted.
Bug: 183993977
Test: add logging in WPC.setRunningRemoteAnimation and verify calls
during transitions
Change-Id: I94babc327e935ea81271942287a83b948dd11f8b
Make moveToSideStage doing reparent oeprations only and leave all the
other active operations to onStageHasChildren. Also make sure it evicts
original children.
Remove setLaunchRoot and setWindowingMode operations in MainStage since
it won't be set as launch root and won't change in between of fullscreen
and multi-window windowing mode anymore.
Fix: 204519739
Bug: 202740040
Test: atest WMShellUnitTests
Change-Id: I6199862502646056966412824a5be840a15e8726