Introducing isTinyTaskbar and using in a few places to show Taskbar on
phones.
Disabling for three button mode since the buttons will take up most of
the space. Could also prototype adding meta key as a 4th button in
this case if we feel like it.
Flag: com.android.wm.shell.enable_tiny_taskbar
Test: Manual
Bug: 341784466
Change-Id: Iba07382d9bd5d14fc29ef080a390db561f6fd454
We already reached the limit of 32 flags for an int. To be able to have
more, changing from int to long.
This is needed, as new flags have to be added.
Flag: NONE
Test: Manually running SysUI and Launcher
Test: Unit tests in CL
Bug: 335625543
Change-Id: Iec1d40218264c7c64c50fd09764aa07c0caa7787
Also clean up TaskbarRecentAppsController APIs
Flag: NA
Test: DesktopTaskbarRunningAppsControllerTest
Bug: 330551930
Change-Id: Ibd9c3d6aa1d5423b51a48ed0a972196752d5199a
This refactor will make it easier to initialize TaskbarManager in a test
environment. Se go/taskbar-controller-tests for context.
Test: TaskbarNavButtonControllerTest
Bug: 230027385
Flag: N/A
Change-Id: I157649ff93b5e1751e6774e2cba2f76750792292
There are two things that need to be changed for this to work:
1. Make the isInOverview condition check for any Overview UI (including
the split select state, modal, etc.)
2. Toggle Home All Apps directly, because firing the intent will cause
Launcher to pause and resume before the intent is handled. We
misinterpret the pause as a request to cancel split screen. Since
TaskbarManager has a reference to Launcher, we might as well call the
method directly.
Test: Manual
Fix: 319076403
Flag: N/A
Change-Id: Ib8899188f593a168a054a16717df4a95be098557
For taskbar unification, we should reset this bit to false when folding
into phone orientation. Otherwise, we will reinit Taskbar AllApps over
the phone UI which is unexpected behavior.
Test: Manual
Flag: N/A
Fix: 293379641
Change-Id: I53c38c8b4df477191be3c21b7750c55a71c7336f
The revert was not supposed to be auto-merged.
This reverts commit 5a3bf93d82, reversing
changes made to 84f8002586.
Bug: 331384026
Change-Id: Ieb11a8544db90259aae856c4af805c37ce9e68cc
This reverts commit 176f186a6d.
Reason for revert: DroidMonitor: Potential culprit for http://b/331438065 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.
Change-Id: Ie375277ad2f65199749f0211ab50037d4b37e664
Merged-In: Ie375277ad2f65199749f0211ab50037d4b37e664
Taskbar All Apps exists regardless of the default launcher. Thus, we can
toggle it on large screen devices. This CL ties registering the system
action to default launcher and taskbar's enablement.
Test: adb shell input keyevent 117
Test: AllAppsActionManagerTest
Flag: LEGACY ENABLE_ALL_APPS_SEARCH_IN_TASKBAR ENABLED
Fix: 317259709
Change-Id: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a
(cherry picked from commit c113b277e6)
Taskbar All Apps exists regardless of the default launcher. Thus, we can
toggle it on large screen devices. This CL ties registering the system
action to default launcher and taskbar's enablement.
Test: adb shell input keyevent 117
Test: AllAppsActionManagerTest
Flag: LEGACY ENABLE_ALL_APPS_SEARCH_IN_TASKBAR ENABLED
Fix: 317259709
Change-Id: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a
Currently on folding, onConfigurationChange doesn't return about 0.5sec after the small screen turns on. The old bar is visible on the new screen before a visual jump from rendering the new bar.
While the ideal solution is to figure out what causes the delay, we can mitigate the visual jump by dimming the old bar when folded listener returns folded
Test: repeatedly fold and unfold, observe that there is no glare task bar change in task bar area after folding
Bug: 291562764
Change-Id: Ic6834d2d3b7df01a8ef841dde601cdb6a3e481b0
When task bar crashes (from anything), task bar window is not cleaned up properly. This is because destroyExistingTaskbar() only removes the root layout from the window when we are no longer rendering task bar (one use case of that is folding the device). We need to clean it up in onDestroy() also.
Fixes: 319105323
Test: adb shell am crash com.android.systemui and make sure there is only one task bar window
Change-Id: Ia9c808e903422707bf4c270b2631fc913dde65d9
Currently when swiping up from some apps (maps), the stashed task bar color changes. Instead, sampling should be disabled during the transition (with a signal from the frameworks).
Bug: 230395757
Test: Swipe up from maps. Make sure the bar color doesn't change during transition
to overview
Change-Id: Ifc30f4067a0e4d134b422d152f5b5caee0a77a33
The change around configuration and display cutout to support flexible
display setup is making the received display info is not calculated as
the hard-coded way in taskbar. It will cause the taskbar recreated when
the device reaches a given rotation for the first time.
The recreation is not necessary as it is only a hint of taskbar's
estimation doesn't match the result. Block the recreation in that case
to avoid user visible animation issue.
Bug: 302387383
Test: Rotate a device with movable cutout and no recreation happens
Flag: ACONFIG com.android.window.flags.allows_screen_size_decoupled_from_status_bar_and_cutout TRUNKFOOD
Flag: ACONFIG com.android.window.flags.movable_cutout_configuration DEVELOPMENT
Change-Id: I1aa6add57ec49a49cc7473bfaada6d9212c1fc4b
This is fundamentally caused by the phone device profile not having task bar related attributes, which crashes in icon alignment animation. We had resolved it by skipping this animation based on isPhoneMode check. However, we passed in launcherDp instead of taskbarDp (from TaskbarActivityContext) which doesn't always have the most up to date information in race conditions (e.g. repetitively fold/unfold)
Fixes: 311431054
Test: repetively fold/unfold, make sure it doesn't crash
Change-Id: I65f600112da4123d337b3f59a2fe6dd13ac7af74
When the flag is on, task bar is created with window context navigation bar. The floating rotation button window context should be in navigation bar panel.
Fixes: 309930089
Test: N/A
Change-Id: I730a4b898d9fb65cc5d7544dcb37dfe32d49a632
Currently the task bar root layout consumes all the events and does not pass the events to drag layer, without explictly routing those events
Fixes: 303910224
Test: go to an app, swipe home, and then go back to the app. Make sure the task bar is stashed
Change-Id: I6f5e481c267dad25544118134ff95b0cb9bb1a45
- adding more logs to TaskbarManager to investigate taskbar being present in folded state of the device.
Test: Presubmit
Bug: 254119092
Flag: not needed
Change-Id: I81c475f1c6bbc8d5b7874ddc45e8778861b61cd0
This includes the previously added Taskbar System Action, as well
as a new one for Screen Search.
Bug: 299321919
Test: Manual
Change-Id: I4a8fa1dde402dc2de5f448cb2edbe712e128ff12
- Add ENABLE_TASKBAR_NO_RECREATION flag
When the flag is turned on,
* Always destroy and recreate
* Move task bar drag layer lifecycle from TaskbarActivityContext to TaskbarManager
* Wrap the drag layer into a fullscreen root view
Note that in order to preserve the window across multiple TaskbarActivityContext creations, the inset types and ids must stay the same, so it's extracted out.
Bug: 274517647
Test: Fold and unfold a few times. Use a few applications. Make sure the task bar is visible and in the right place (tested with ENABLE_TASKBAR_NO_RECREATION and FLAG_HIDE_NAVBAR_WINDOW both on, both off, and one on and one off)
Change-Id: Ic3f0aa3d056fe178a53b76b2ad6cc6b9bffd5898
Taskbar All Apps will be chosen over Launcher's when we are in an app or
in overview. Otherwise, we fallback to toggling Launcher All Apps.
Test: Manual, adb shell input keyevent 117
Fix: 282111244
Flag: ENABLE_ALL_APPS_SEARCH_IN_TASKBAR
Change-Id: I68e4cb3a80d42e233f7d9ad33fc3791b5c75d219
This logging helps understanding what's going on in Launcher main thread
during unfold from perfetto traces.
Test: Perfetto trace after unfolding
Bug: 292472402
Change-Id: I7a037d9a129deb4bfe4310fdba664b87164ef2ca
* Ignore orientation check from ag/22709055 for now,
that will be reverted. This causes recreateTaskbar() to
not run when folding the device
Bug: 274517647
Test: Tested 3 button nav in portrait/landscape/seascape
Flag: persist.wm.debug.hide_navbar_window
Change-Id: Ied02ead677d496b465c748257e32b7db5eb9580c
Using the same config changes as used by the Launcher activity to
avoid any inconsistencies
Bug: 269409332
Test: Tentative fix, can't reproduce the original bug
Flag: N/A
Change-Id: I3d7503cf13e6b3112151f1db520486d87871584c
- All instances where we used TISBinder will now use TISBinderHelper#getBinder. This will allow TISBinderHelper to handle its lifecycle
- Moved all instance of TaskbarManager and OverviewCommandHelper as well since TIS and TISBinder handle their lifecycles
- Cleaning up launcher instance from TaskbarManager when TISBinder is being destroyed
Flag: not needed
Bug: 283490010
Test: ran launcher and performed gestures
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:248794e698417b1156bf911adb31682186fe2e34)
Change-Id: I8415a6b2c1dba0776e7c0e1ee32ad3c683100bde