Commit Graph

229 Commits

Author SHA1 Message Date
Abhishek Sharma 5f3a03f4fb feat: Add option to clear home screen in settings (#6125)
Signed-off-by: abhixv <abhi.sharma1@hotmail.com>
2026-01-10 20:51:01 +07:00
Pun Butrach 0e8b200bab fix: Just make submodule stay the same please intellj 2026-01-10 20:50:12 +07:00
Pun Butrach edfd0baad6 fix: Android 14/15 crash 2026-01-10 20:49:55 +07:00
Pun Butrach d36845897b feat: Better At-a-Glance perceptive wallpaper colour luminance detection 2026-01-10 20:49:46 +07:00
Pun Butrach 2e76c99dad fix: Conflict incoming changes from 15-dev 2026-01-10 20:49:12 +07:00
Pun Butrach 11f7abcb66 chore: Cleanup, and hidden feature logged
Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2026-01-10 20:48:25 +07:00
Pun Butrach 0a446431eb build: SNAPSHOT 0 (Draft) 2026-01-10 20:47:59 +07:00
Pun Butrach 4f1e9f2d2a Reimplement Hotseat background
Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2026-01-10 20:46:49 +07:00
Pun Butrach b67168f737 Allocate insane memory just for CI
Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2026-01-10 20:46:44 +07:00
Pun Butrach dd4a08be61 Merge tag 'android-16.0.0_r3' into 16-dev
Android 16.0.0 Release 3 (BP3A.250905.014)

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2026-01-10 20:46:04 +07:00
Pun Butrach 2fcaf0a5ec Don't call setAccessibilityPaneTitle when device is not at least Android 9 (#5603)
* Update WidgetsTwoPaneSheet.java

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>

* Update PopupContainerWithArrow.java

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>

* Update SplitInstructionsView.java

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>

* Update TaskbarView.java

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>

---------

Signed-off-by: Pun Butrach <pun.butrach@gmail.com>
2025-07-14 14:19:58 +08:00
Jagrut Desai 4970befcdc Fix Taskbar Icon going beyond screen
The problem: Currently, when users increases font size to fullest and also display size to fullest, taskbar icons goes beyond screen. The isssue is event worst when there is bubble bar present in the Taskbar. This is currently a problem with 3 button nav button.

The Solution: The solution is in two parts.
Part 1: figure out amount of icons we need to remove from hotseat for the taskbar icons to not got beyond screen and not collide with nav buttons or bubble bar.
Part 2: Once we figure out how many icon we need to not show in takbar which are present in the hotseat, we need to modify the takbar icon alignment controlled to modify alpha animation and eventually the visibility of those taksbar views. We also need to modify taskbar icon layout logic so that we don't take space for invisible taksbar icons and we layout next visible icon on the place of invisible icons.

Test: Manual, Presubmit
Bug: 412835965
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:8def3264e3f4fa3a2354dfa693751ea3d5f33f36)
Merged-In: I8dea948df09c0a86871a9ac649f312ecf281545a
Change-Id: I8dea948df09c0a86871a9ac649f312ecf281545a
2025-06-24 19:49:03 -07:00
Toni Barzic 710f20e89c Remove all apps divider when it shouldn't show
Update TaskbarView logic to remove all apps divider when it's not
expected to show (if the taskbar is showing desktop tasks), instead of
just assuming it was never added. This handles an edge case where
`shouldShowDesktopTasks()` may return false initially for taskbar on
home screen, until home screen visibility as seen by taskbar controllers
is updated when transitioning out of desktop mode.

Bug: 416402113
Test: On desktop first device, disable
      enable_desktop_taskbar_on_freeform_displays, go to desktop mode,
      then minimize/close all desktop windows. On home screen, verify
      taskbar is shown, and contains only pinned apps - no divider is
      shown between all apps and pinned apps.
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f10c3e9afe8aa866fe21c797a5aade262bd4fcdc)
Merged-In: I7bb419d87420575cebe0c332111797678b07d654
Change-Id: I7bb419d87420575cebe0c332111797678b07d654
2025-06-24 19:48:57 -07:00
Toni Barzic f9d6341458 Add tooltip for taskbar overflow button
Bug: 402787161
Test: Manual
Flag: com.android.window.flags.enable_taskbar_overflow

Change-Id: I04704612260f17561b4d18804d792a3fe0d47313
2025-06-05 05:05:44 +00:00
Toni Barzic e686dd3d9d Fix sizing for desktop first taskbar
Fixes few instances where taskbar icon layout was calculated incorrectly
for desktop-fist taskbar, assuming that taskbar gets scaled from
transient taskbar sizes to pinned taskbar (which is not the case).
Adds logic to determine whether taskbar supports transition to transient
taskbar to TaskbarFeatureEvaluator, and uses that values in place of
directly checking whether three button nav is enabled.

Bug: 413494672
Flag: com.android.window.flags.enable_desktop_taskbar_on_freeform_displays
Test: Manual - observe the taskbar layout on a desktop device.

Change-Id: Ie0d44ee5be90024ba405f652bbfd888ed22c393b
2025-06-03 21:23:56 +00:00
Sebastian Franco 8244449a9f Moving taskbar variables in DeviceProfile to their own class
Bug: 419264653
Flag: EXEMPT refactor
Test: DeviceProfileDumpTest
Test: All Image tests
Change-Id: I05ec9e15ef02096326596af4835adb706473a736
2025-05-29 11:04:06 -07:00
Uwais Ashraf 478f07798e Moving hotseat variables in DeviceProfile to their own class
Bug: 419264653
Flag: EXEMPT refactor
Test: DeviceProfileDumpTest
Test: All Image tests
Change-Id: I377b33668c3ed330d362527f62226dd84a5773db
2025-05-29 13:16:05 +00:00
Sebastián Franco e1d31e5406 Revert "Revert "Moving DeviceProfile properties into DevicePrope..."
Revert submission 33716851-revert-33672643-DataDeviceProfile1-XHYRAPLEBK

Reason for revert: Error is fixed

Reverted changes: /q/submissionid:33716851-revert-33672643-DataDeviceProfile1-XHYRAPLEBK

Change-Id: Ib86824134955903c11e51e52dbfd6368aba1cd50
2025-05-23 14:08:11 -07:00
Priyanka Advani (xWF) 7705e92d93 Revert "Moving DeviceProfile properties into DeviceProperties da..."
Revert submission 33672643-DataDeviceProfile1

Reason for revert: Droidmonitor created revert due to b/419867875. Will be verifying through ABTD before submission.

Fix: 419867875

Reverted changes: /q/submissionid:33672643-DataDeviceProfile1

Change-Id: Icb66aefbbcee24e05806b2139923e1f2ea1c65e3
2025-05-23 13:53:04 -07:00
Sebastian Franco e1111e28c2 Moving DeviceProfile properties into DeviceProperties data class
Bug: 419264653
Flag: EXEMPT refactor
Test: DeviceProfileDumpTest
Test: All Image tests
Change-Id: I638f88cd76b926917965dbf9e70b5bdfff5971e0
2025-05-23 10:42:26 -07:00
Jagrut Desai bc28b98b8f Fix TaskbarAllApps Icon
Test: Manual, UX
Bug: 415836854
Flag: EXEMPT bugfix
Change-Id: I8b305ce35e0a6b73559f73083a0ca9b025043e8c
2025-05-12 10:46:57 -07:00
Jon Miranda a19e4e2063 Switch taskbar overflow flag to lse_desktop_experience
Both flags are in Nextfood, so there will be no change to
user experience.

Bug: 368119679
Bug: 375627272
Test: TaskbarOverflowTest
Flag: com.android.window.flags.enable_taskbar_overflow
Change-Id: Ie3ef3bd49e078f5657bd069bc92c5a48a136e7cb
2025-04-23 15:20:04 -07:00
Treehugger Robot 5643f452d5 Merge "Merging update and modify model callbacks" into main 2025-04-21 15:15:13 -07:00
Sunny Goyal 007cfecf5e Merging update and modify model callbacks
Instead of the dispatcher specifying the type, the UI checks th diff. This
ensures that the UI is updated correctly in all paths

Bug: 390572144
Flag: EXEMPT refactor
Test: Manually verified folder edit path where these callbacks were getting dispatched

Change-Id: Ib73eed5da87a847753a78453a48ab4fc495c1199
2025-04-21 12:31:23 -07:00
Toni Barzic e5fc903495 Disable pinning popup when transient taskbar is disabled
On freeform displays where taskbar is always pinned, toggling "Always
show taskbar" option is no-op, as the taskbar won't transition to
transient taskbar.
Left a TODO to reevaluate behavior once desktop taskbar transient
behavior gets updated.

Bug: 390665752
Flag: com.android.window.flags.enable_desktop_taskbar_on_freeform_displays
Test: Manual.

Change-Id: Icfe7cd26e77de48ab34bfe4932bfedfe21923ef1
2025-04-18 22:59:55 +00:00
Jon Miranda 9bc1b6687d Fix TaskbarSnapshot leak and ANR.
- Makes sure view is removed and set to null
- Makes sure draglayer is visible before trying
  to copy it to the snapshot. I wasn't able to repo
  the ANR, so will need to keep an eye on it once we
  re-enable the flag.

Test: open/close shade multiple times
      trigger launcher recreate by toggling dark theme
      no leak detected in AS
Fixes: 404331867
Bug: 408450275
Flag: com.android.launcher3.enable_taskbar_behind_shade
Change-Id: Ide375943214548b938953230e2140d4df23317df
2025-04-08 11:03:35 -07:00
Treehugger Robot 343333ce8a Merge "Prefer launching desktop tasks on freeform display" into main 2025-04-02 16:54:41 -07:00
Treehugger Robot 2c9a3508b8 Merge "Layout freeform display taskbar using actual icon sizes" into main 2025-04-02 00:03:22 -07:00
Toni Barzic b831f59d6c Layout freeform display taskbar using actual icon sizes
The taskbar shown on freeform display taskbar when
enable_desktop_taskbar_on_freeform_displays feature is enabled is
expected to remain in persistent taskbar state (and never
transition to transient taskbar). Given that transitions to transient
taskbar is not expected, use actual peristent taskbar sizing to layout
the taskbar in this case (similar to three-button navigation taskbar).

Bug: 390665752
Flag: com.android.window.flags.enable_desktop_taskbar_on_freeform_displays
Test: manual on desktop device - keep opening apps in desktop mode, and
      verify that taskbar does not enter overflow based on transient
      taskbar icon dimensions (i.e. that taskbar keeps filling up until
      it hits intended horizontal margins)
Change-Id: If6cdadccf0fe4da1462b437a13def78f6050e3bb
2025-03-25 21:03:27 +00:00
Toni Barzic 1f4b265dde Prefer launching desktop tasks on freeform display
Update usages of TaskbarActivityContext.inDesktopMode to account for a
possibility of a desktop flavour taskbar (i.e. pinned taskbar that
shows desktop tasks) being shown outside desktop mode, which may be the
case on freeform displays (e.g. when
enable_desktop_taskbar_on_freeform_displays feature is enabled, or on
home). Tasks launched from this taskbar should preferably be launched
into desktop mode.

Bug: 390665752
Flag: com.android.window.flags.enable_desktop_taskbar_on_freeform_displays
Test: manual on desktop device. verify correct taskbar is shown
      on home screen, in overview, in desktop mode, with fullscreen
      app shown. Verify opening/launching apps from taskbar works
      as expected.

Change-Id: I8f198216d84fd165c2dcbf437c82e418e5c7405e
2025-03-25 20:21:25 +00:00
Brian Isganitis e8b7cd7b2e Use up-to-date hover tooltip text for recents.
Flag: EXEMPT bugfix
Fix: 402776493
Test: go/testedequals
Change-Id: I6f438ce8b3cd51beaece0cf6734876f21719bf3d
2025-03-19 14:26:25 -04:00
Sunny Goyal 1ac78b6ec6 Removing listeners from FolderInfo
Folder and FolderIcon are UI objects and can talk to each other directly.
FolderInfo changes are already propogated via model callbacks, and doesn't need a separate listener pattern.

Bug: 398791288
Flag: EXEMPT bugfix
Test: atest FolderTest

Change-Id: Iefd47b8ea12a8ecaf34211a3d908220a0e999187
2025-03-13 10:28:07 -07:00
Brian Isganitis 2d8be58d59 Merge "Wait until updateItems is called to perform addStaticViews." into main 2025-03-12 09:10:08 -07:00
Brian Isganitis 2053f6fdfc Wait until updateItems is called to perform addStaticViews.
This is more consistent with pre-LayoutTransition approach, and should
behave more reliably on phones.

Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: Ib758b1e44c3b87d6d2ff71425ed40ff621261104
2025-03-11 18:53:38 -04:00
Jagrut Desai c05107357b Merge "Don't recreate Desktop Mode Taskbar if already in Desktop Mode." into main 2025-03-11 15:04:53 -07:00
Jagrut Desai d8ed1c6ee3 Don't recreate Desktop Mode Taskbar if already in Desktop Mode.
The problem: Due to complexitiy of recent animation, taskbar is currently getting recreated upon recent animation being canceled for Desktop Mode.
Upon canceling of recent animation showDesktopApps is called again, but user is already in desktop mode.

The solution: simply check if user is in desktop mode upon getting onEnterDesktopMode transition callback before recreating taskbar.

Test: Manual
Bug: 399857150
Flag: EXEMPT bugfix
Change-Id: I8f36a8c8c834bca7be1ce7164cd712a7578c1ab4
2025-03-11 10:41:25 -07:00
Sukesh Ram feda773d48 Merge "[CD Taskbar] Make External Taskbar 3-Button & Persistent" into main 2025-03-11 09:32:47 -07:00
Sukesh Ram c166a373a9 [CD Taskbar] Make External Taskbar 3-Button & Persistent
The gesture handle still persists in conjunction with the three buttons. In addition to being forced into three button mode, the taskbar on external displays needs to never enter transient mode. More info and before/after images on bug.

Flag: com.android.window.flags.enable_taskbar_connected_displays
Bug: 399718805
Test: Manual
Change-Id: Iff5c297c8ac4823fa24e7a8e4becd0447224cac0
2025-03-10 13:58:21 -07:00
Brian Isganitis dfdab91337 Fix layout transition crash for phone with QSB inline.
Phone can now have QSB inline when in landscape. Need to adjust layout
transition initialization to reflect that.

Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: I9f0b61108170188da1a37b99c9e1411da6b71946
2025-03-10 15:21:13 -04:00
Treehugger Robot 57cab7794a Merge "Simplifying some view iteration methods" into main 2025-03-04 18:42:06 -08:00
Brian Isganitis 75d443ffdb Initial overflow compatibility with layout transition.
Also implements RTL support for overflow.

Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: I34983821a2a1a80793dc6d811d42cfeafe274ef4
2025-03-04 12:05:58 -08:00
Sunny Goyal 476d926972 Simplifying some view iteration methods
Bug: 393703968
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: Ieffa3a66fbf8595d542995c348df578a3aec9083
2025-03-04 10:39:55 -08:00
Brian Isganitis 42c58e39fd Migrate layout transition flag to DesktopModeFlag version.
Flag: com.android.window.flags.enable_taskbar_recents_layout_transition
Bug: 343521765
Test: go/testedequals
Change-Id: I175e428240bc52689efe0f6e4457620ac2efdbb5
2025-03-04 11:30:23 -05:00
Brian Isganitis 8127148e02 Exclude All Apps divider in desktop mode.
Flag: com.android.launcher3.taskbar_recents_layout_transition
Bug: 315354060
Test: go/testedequals
Change-Id: Ic9cf42ad9a81357fe7452ed576663bedb54fbcf7
2025-03-03 14:42:16 -05:00
Sunny Goyal 39063bf167 Merging some notification dots implementation
Bug: 393703968
Flag: EXEMPT refactor
Test: Presubmit
Change-Id: Ie02311afba85f06fbafd265a5015cd23bd356a36
2025-02-27 08:50:26 -08:00
Jagrut Desai 8b2e5eff9b Desktop Mode Taskbar Recreate Animation
This Cl includes
       - addition of entry/exit callback methods in DesktopVisibilityController.
       - taskbar manager now listens to desktop mode changes.
       - TaskbarBackrgroundRedererer can now individually animation backgrounds for transient and persistent taskbars
       - new channel for taskbar icon alpha added to TaskbarViewController
       - new animated float to handle background alpha while we are recreating taskbar with animation.

Solution:

we use the callabck we get from DekstopVisibilty for entry/exit to first change logic of when we are considered inDesktopMode. Upon entry/exit we notify display controller for info change.
we also at notify taskbar manager who is now a listener to the desktop mode change and start the recreate process. TaskbarManager first animates existing taskbar out of user view and then follows the original recreate flow.

Test: Presubmit
Bug: 343882478
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ib827564cacd194f499e7d9b1965e2bb13e3548ab
2025-02-24 11:59:53 -08:00
Treehugger Robot 634c3a0f8f Merge changes I8af39b58,I9a3e8ee2 into main
* changes:
  Finally remove `task1` and `task2` from `GroupTask`
  Remove `GroupTask.mSplitBounds`
2025-01-31 11:51:02 -08:00
Treehugger Robot 340720e8a7 Merge "Remove all external usages of GroupTask.task1/2 from Launcher3" into main 2025-01-31 11:42:55 -08:00
Ahmed Fakhry 129a3a0097 Finally remove task1 and task2 from GroupTask
See go/refactor-group-task for details. This is the final CL
in this refactor, where `task1` and `task2` are finally removed,
and `DesktopTask` is allowed to have empty tasks.

Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: I8af39b58138f11030981311efc2e95a77cef125b
2025-01-31 17:14:46 +00:00
Ahmed Fakhry b6ecf5889e Remove all external usages of GroupTask.task1/2 from Launcher3
See go/refactor-group-task for details. This CL removes all the usages
of `task1` and `task2` from `GroupTask` in Launcher3. Follow-up CLs will
remove it from NexusLauncher and remove the fields altogether.

Bug: 388593902
Test: m
Flag: EXEMPT pure refactor with no behavior change.
Change-Id: I902c8135b3a0aae95acf25267b3bcbf286bd4e7d
2025-01-31 17:14:44 +00:00