Mark all tasks on launcher as perceptible tasks.
Flag enablement is for desktop devices only.
Bug: 370890207
Test: Manual
Flag: com.android.server.am.perceptible_tasks
Change-Id: Ic9022dcb07f2fc2d1bd1277bc1a83233ebc5626e
Unless explicitly annotated, parameters in java are by
default nullable. There are a few cases where a null context
may be passed to the unregisterReceiverSafely function
of SimpleBroadcastReceiver.
To mitigate misuses or incorrect contexts being passed for
register vs unregister, keep the context as a strong reference
in the constructor.
Also added NonNull annotations for any public callsites to
enforce behavior.
Bug: 395019017, 395966395
Flag: NONE - bug fixed
Test: manual - presubmit
Change-Id: Ie371fa45cadceaf51cf184b446df9123ef27c337
And make DisplayController display id aware
Test: locally tested on Tangor
Flag: EXEMPT refactor
Bug: 392858637
Change-Id: I805cd7323c48a2988c95b9fda7f6cfe4c153860c
This reverts commit ce9ad064d6.
Reason for revert: <Potential culprit for b/395855288 - 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: I12d1eb66ae03e2638a503c103d0b1fa8a863b6b5
> Using callback patter for various change events instead of routing it
via TIS
Bug: 386288280
Test: Presubmit
Flag: EXEMPT refactor
Change-Id: I95577d6a1c17103cb947ef1200c1c22b68fd1d9c
Use variable constrained within TaskbarManager for primary displays and add external window contexts as new displays are added. Ensures the lifecycle of window context map isn't tied to the required instances of primaryWindowContext.
Test: m
Bug: 395702003
Bug: 393984037
Bug: 391653300
Flag: com.android.window.flags.enable_taskbar_connected_displays
Change-Id: Idc461b8e6e249060feffac703dff1bf7d5974512
- This change will not render KQS on connected display (CD) even with the flag ON as taskbars are not yet created for connected displays.
Bug: 382762871
Change-Id: Id59fb23630aaf0e74c35818f2a4ca56e5ef2e7bb
Flag: com.android.launcher3.enable_alt_tab_kqs_on_connected_displays
Test: manually built and run the CUJ
Create a new New NavigationBarPanelContext per instance of taskbar object for each new instance of taskbar.
Test: m
Bug: 394421505
Flag: EXEMPT not adding new behavior
Change-Id: I6c82140fac9e6a00f0462ea1a593c13f49c3deee
Make Window Contexts also follow map pattern.
Flag: EXEMPT not adding new behavior
Bug: 391706879
Test: Manual
Change-Id: Ib0672e653b9dbfcb3597210ca244f110515cd4dc
Add debugging logs to understand why taskbar root layout would be null.
Flag: EXEMPT not adding new behavior
Bug: 382378283
Test: Manual
Change-Id: I1140360274667a6c3766f03e1f5f1592c09e13e1
Update debugging logs for TaskbarManager to be display specific.
Flag: EXEMPT not adding new behavior
Bug: 390004132
Test: Manual
Change-Id: I0222e3bce94bee410b3572d1bc820cc71a2c1a68
onDisplayRemoveSystemDecorations() is a new method in IOverviewProxy.aidl
Bug: 352461502
Flag: com.android.server.display.feature.flags.enable_display_content_mode_management
Test: manually (adb shell settings put secure mirror_built_in_display
{1|0})
Change-Id: I42d96ef27fd62d35ae1ca6134bd74752de3a2b5d
This forces the task to correctly start the TRANSIT_OPEN transiiton in
Desktop mode when launching an intent from the taskbar and prevent it
from opening in full screen.
Fixes: 361366053
Test: manual test
Flag: EXEMPT bugfix
Change-Id: I6d59705aa55745c3425266dacbb012dd4e2b1b03
Allow for TaskbarManager to listen to the TaskbarDelegate signals for the addition and removal of displays in extended mode.
Flag: EXEMPT not adding new behavior
Bug: 382351718
Test: Manual
Change-Id: I1d78400966755ed462d3d92d9356e40fa61ada32
Separating various overrides to individual modules so that they can be reused in tests
Removing ContextualEduStatsManager and directly using SysUiProxy as all the usescases
are only in quickstep/
This avoids additional Module definition and delegation
Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I096459d638553991ed01766002b874589c6b976e
This avoids a persistant connection to TouchInteractionService from WMProxy,
which keeps the service alive all the time
Bug: 384896306
Test: Presubmit
Flag: EXEMPT bugfix
Change-Id: Id6fe59471c8c3f9874514f71126631f217ab610c
Modified TaskbarActivityContext to be aware of the display it's on (primary or secondary). This allows it to set the correct layoutParams.windowType for the Taskbar view, using TYPE_NAVIGATION_BAR for the primary display (the standard Taskbar) and TYPE_NAVIGATION_BAR_PANEL for secondary displays.
Bug: 385202874
Test: Manual
Flag: EXEMPT not adding behavior
Change-Id: I5addf45b6099d3ddcf8315a541b69d2f67bace7d
Modified TouchInteractionService.updateWallpaperVisibility() to accept a displayId parameter. This allows TaskbarManager to apply wallpaper visibility changes (e.g., dimming) on a per-display basis, ensuring correct behavior with multiple connected displays.
This change addresses the issue where wallpaper dimming was not being applied correctly on secondary displays when the Taskbar was visible.
Bug: 385200423
Test: Manual
Flag: EXEMPT not adding behavior
Change-Id: I72ddeb6df29f84c16f91d5c6de446266bee98342
Create SparseBooleanArray to ensure that with connected displays, there is support for multiple RootLayouts, which each a variable tracking whether they have been added to the window or not.
Flag: EXEMPT not adding new behavior
Bug: 384793943
Test: Manual
Change-Id: I18849d033cada181eadf89c86d3c02d87a8ee962
Every object that needs its own instance for an instance of a new display-specific taskbar needs its own creation method.
Flag: EXEMPT not adding new behavior
Bug: 381105283
Test: Manual
Change-Id: I24794fefbf2a64f38795eca970cf30eb63c51e66
This was previously only used to honor the INVOKE_OMNI_LPH flag
which has been enabled for a long time. So this is part of that
cleanup.
Bug: 297561673
Test: Manual
Flag: EXEMPT deleting legacy flag
Change-Id: Ife9f14faa2099f579f631da2aadaa6a56cbba51d
Refactor the TaskbarManager's existing usages of TaskbarRootLayouts to use a map, so that there can be a 1:1 relationship between TaskbarRootLayouts and TaskbarActivityContexts.
Flag: EXEMPT not adding new behavior
Bug: 380351840
Test: Manual
Change-Id: Ib4379a9b6d50b8bdd64b70d7b15ce798ebb42731
Refactor the TaskbarManager to support multiple TaskbarActivityContexts.
Flag: EXEMPT not adding new behavior
Bug: 362720616
Test: Manual
Change-Id: I1baa081f6994cb94465f20aa7e0c6b47f5cb7eb8
Refactor the TaskbarDelegate to support multiple pass down displayId specific signals down to the taskbar level.
Flag: EXEMPT not adding new behavior
Bug: 376128251
Test: Manual
Change-Id: I61aef4eb746d671be69eefeb15d876d48dd9a8fa
- FallbackTaskbarUIController can take in a generic
RecentsViewContainer parameter, i.e. RecentsActivity or
RecentsWindowManager.
- When changing Overview targets to RecentsWindowManager, which is not
an Activity, we still update the TaskbarUIController
Test: Switch between default Home activities with the flag on and off,
ensure Taskbar works as expected in each case (3P vs 1P launcher).
Flag: com.android.launcher3.enable_fallback_overview_in_window
Fixes: 368030750
Fixes: 365775636
Change-Id: Ife775e8c226f8c73ec9e1f97b4a6f2972f6c905f
The Taskbar under test should now be sufficiently isolated from
Launcher, so we no longer have to suspend it.
Flag: TEST_ONLY
Bug: 230027385
Test: go/testedequals
Change-Id: I20cff11c90208b59f1dca3730ec3978913c43a50