Commit Graph

547 Commits

Author SHA1 Message Date
Daniel Andersson
04066346c2 desktop-exploded-view: Adding keyboard navigation to DesktopTaskView
This CL makes TaskContentView focusable and adds a focus border to it
that is shown when it has focus. There are some caveats currently:

* Recents has a bug where it starts to eat TAB inputs (b/403292849).
  This means that the tab navigation is currently quite shaky and
  often just works the first time entering recents.
* Activating a window (with enter) is currently disabled because of
  another existing bug (b/413378320).

Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
Bug: 353949138

Change-Id: I1c9c7e437f2e131c4ead1d750952ee9ff77c17f4
2025-05-28 13:54:59 -07:00
Xiaoqian (Daisy) Dai
f767b504bf Merge "desktop-exploded-view: truncate the task header app title if it overflows" into main 2025-05-28 10:47:36 -07:00
Shamali Patwa
021c13c172 Extract widget picker intent extras in WidgetPickerActivity
This change refactors activity to move base activity to launcher3

This is to prepare for using it for launching widget picker for
homescreen and use compose.

Bug: 408283627
Flag: EXEMPT independent module
Test: Manual
Change-Id: I271748fb73b3691ba4d046ac8aceb51c4c8aea55
2025-05-27 17:21:31 -07:00
Jordan Silva
3d348a0d27 Add focus border animation to IconAppChipView
Fix: 366177160
Flag: com.android.launcher3.enable_overview_icon_menu
Test: Manual using Keyboard. Access the app chip via TAB and navigate through the task menu.
Test: Manual using Mouse. Hover over the Chip and the Task Menu.
Change-Id: I785ad8723e5255186d744a20992ac0cd0968b380
2025-05-21 14:20:49 -07:00
Xiaoqian (Daisy) Dai
7e21181997 desktop-exploded-view: truncate the task header app title if it overflows
A long app title can cause the close button to be covered.

Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
Bug: 413387821
Change-Id: Id66cabb271ac6f4772969335232e3e9638828571
2025-05-21 20:13:53 +00:00
Saumya Prakash
4d4fd45f02 Merge "Modify Gesture nav edu to new UX specs" into main 2025-05-20 11:58:06 -07:00
Treehugger Robot
fe134675be Merge "desktop-exploded-view: Fix the hierarchy with the header" into main 2025-05-19 19:39:05 -07:00
Saumya Prakash
0c6c1d7309 Modify Gesture nav edu to new UX specs
This change adapts the "Done" button in the gesture navigation tutorial
according to new UX specs. Specifically, the button is wider and may
have a different font according to theme.

Fix: 416144733
Test: Run the gesture navigation tutorial and observe the done button
Flag: EXEMPT bugfix
Change-Id: I4732a21c76e5a0e95433a211cd747cb36aaeaa4d
2025-05-19 23:33:32 +00:00
Xiaoqian Dai
bc84ada5e3 desktop-exploded-view: Fix the hierarchy with the header
Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
Bug: 417776150

Change-Id: Ia9272801f2bb5a8e67b2bc69d5df8c4227f7a11a
2025-05-16 21:44:26 +00:00
Alex Chau
557d8e6d7f Reland "Recreate Launcher activity when blur enabled changes"
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles

Reland fix:
- Removed mBlursEnabled in BaseDepthController, and only use `mCrossWindowBlursEnabled` to control swapping between blur style and fallback style
- Temporary variables like `mPauseBlurs` and `hasOpaqueBg` should only affect if blurs are applied, but not result in swapping of blur style, otherwise this cause unnecessary redraw or activity recreate

Reason for revert: reland
Reverted changes: /q/submissionid:33581402-revert-33554447-b/414789280-CTVRJLPLRT
Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Test: PressBackFromLaunchedApp.testPressBackFromLaunchedApp
Flag: EXEMPT bugfix

Change-Id: Iac2b0c00811e0e79684da0cf77df76a120c1272a
2025-05-16 12:33:44 +01:00
Alex Chau
38efd382b7 Merge "Revert "Recreate Launcher activity when blur enabled changes"" into main 2025-05-15 13:07:22 -07:00
Priyanka Advani (xWF)
1f891a6b67 Revert "Recreate Launcher activity when blur enabled changes"
Revert submission 33554447-b/414789280

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

Fix: 417614196

Reverted changes: /q/submissionid:33554447-b/414789280

Change-Id: Idf349cd39a3f86910f597f0f9ab4d46fb03e945c
2025-05-15 11:12:05 -07:00
Alex Chau
b7dd7bf1e0 Merge "Recreate Launcher activity when blur enabled changes" into main 2025-05-15 06:07:58 -07:00
Treehugger Robot
a098f6a855 Merge "Update the color of icon for addDesktopButton" into main 2025-05-14 22:49:38 -07:00
Treehugger Robot
a882e236bb Merge "Add shadow to KQS view" into main 2025-05-14 11:53:24 -07:00
Alex Chau
a6fa3db580 Recreate Launcher activity when blur enabled changes
- When battery saver changes, WallpaperThemeManager always recreate activity to reapply theme base on wallpaper color hint changes
- Battery saver change can also result in light/dark theme changes, for which WallpaperThemeManager also recreate activity to apply theme changes
- As a result, it'll be much simpler to recreate activity whenever isBlurEnabled changes
- Exposed recreateToUpdateTheme API from WallpaperThemeManager to achieved this
- Greatly simplified Overview styling to read from styles

Bug: 414789280
Test: manually toggling battery saver and light/dark theme and WallpaperThemeManagerTest
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: I90ad724867283fe3c62a9073a6e072491533f774
2025-05-14 17:45:04 +01:00
Suhua Lei
0b12eb5e06 Update the color of icon for addDesktopButton
Set the color of icon to On Surface.

Bug: 417519148
Flag: com.android.window.flags.enable_multiple_desktops_frontend
Flag: com.android.window.flags.enable_multiple_desktops_backend
Test: manual check the button
Change-Id: Ie1897c0661e164347288b4ba4f978e51858ac24e
2025-05-14 00:44:43 +00:00
Johannes Gallmann
76621e0972 Remove haptics for long presses in 3-button-nav
This CL removes haptics for long presses on 3-button-nav buttons, except
when the long press triggers a user visible action.

This means that for example the haptics for long pressing the recents
button are removed, whereas haptics for long pressing the home button
remain active since that launches circle-to-search.

Bug: 408968370
Test: Manual, i.e. verified that no haptic feedback is played when
      long pressing the recents button
Flag: EXEMPT bugfix
Change-Id: Icfeade8a659a8aa4882ef139696c66f410980303
2025-05-12 15:35:57 +00:00
Toni Barzic
17d97b2131 Add shadow to KQS view
Shadow matches the transient taskbar shadow (implementation inspired by
TaskbarBackgroundRenderer).

Bug:399862815
Flag: EXEMPT (UX) bugfix
Test: On desktop device, open taskbar overflow in overview, and verify a
      shadow is shown (making outline of KQS view visible against
       overview background)

Change-Id: I9527d8448439e87789c9e036edb464590349c3dd
2025-05-08 20:58:01 +00:00
Uwais Ashraf
882a6a22bf Make state of TTV xml match Uninitialized state
Flag: EXEMPT - test only
Bug: 416195253
Test: Presubmits
Change-Id: I82250915bf35b4ce9583dd58c6fc736530c25461
2025-05-07 05:28:28 -07:00
Li Lin
6e718cffb1 Merge "Show Growth Framework nudge driven by nudge payload." into main 2025-04-28 17:01:20 -07:00
Li Lin
0f82810cdb Show Growth Framework nudge driven by nudge payload.
Current implementation of the nudge will show at default position
(bottom left corner) and may extended to other position in the future.
More detail at: go/al-growth-framework-nudge

Bug: 398033012
Test: NudgeControllerTest.*
Flag: com.android.launcher3.enable_growth_nudge
Change-Id: Idff9d62a5b1b26aa1cfbef5817f5425f8e94b7c9
2025-04-28 13:59:30 -07:00
Shamali P
fd57876c7c Move app timer in the taskContentView behind a refactor flag.
Bug: 405359383
Flag: com.android.launcher3.enable_refactor_digital_wellbeing_toast
Test: Screenshot tests
Change-Id: Ib1cf21aabc8d01a14c0dedbfa770e9f0bba52268
2025-04-23 09:44:00 -07:00
Shamali P
3519785d79 Change task content view to be a constraint layout.
This is for child cl to be able to place dwb inline in it.

Bug: 405359383
Flag: com.android.launcher3.enable_refactor_task_content_view
Test: Screenshot tests
Change-Id: Id3252fff5776c199ae2a0c7e89d96c423241478c
2025-04-23 09:43:48 -07:00
Saumya Prakash
178b49beb3 Merge "Remove the skip button from the gesture tutorial" into main 2025-04-15 15:29:37 -07:00
Saumya Prakash
ebfcad524b Remove the skip button from the gesture tutorial
This change removes the legacy skip button from the gesture tutorial. It
is not needed in the current version of the gesture tutorial.

Bug: 400485351
Test: Run tutorial and observe no change as this was for the legacy
tutorial that is no longer in use.
Flag: EXEMPT bugfix

Change-Id: Ice384a0b5811fdc0d09da58ade68539aa146d84d
2025-04-14 23:35:10 +00:00
Brandon Dayauon
b570514ee0 Merge "Add nudgeView to Taskbar.xml" into main 2025-04-11 16:28:59 -07:00
Brandon Dayauon
1fc6f916d3 Add nudgeView to Taskbar.xml
Aiai will send a broadcast to Launcher and will animate the stashHandleView and nudgeView accordingly.
Verified on large screen device that transient taskbar is not affected as its not in scope at the moment.

bug:409121556
Test: manual - video in bug
Flag: com.android.launcher3.nudge_pill

Change-Id: I740e5d81dd008a230aa089f311d38bac665fc227
2025-04-11 13:24:22 -07:00
samcackett
2244b633cc Add TaskContentView wrapper to TaskThumbnailView
- Keep TaskThumbnailViewDeprecated as-is
- Due to flag guarding and xml changes, added bottomright_snapshot id
- Remove redundant FrameLayout from task_header_view.xml and refactor
the view to handle alignment correctly
- Move feature flag logic to the state mapper
- Extract TaskThumbnailViewHeader logic and any related state out of
TaskThumbnailView and move to TaskContentView
- Use vertical LinearLayoutManager to hold the TaskThumbnailViewHeader
and TaskThumbnailView
- Rename TaskThumbnailViewHeader to TaskHeaderView. Rename xml and state
 similarly

This reverts commit df6dc455a7.
This reverts commit 714370a9bfb2e53738b0cd9958acd6540d8d649c.

Reason for revert: Reland previously reverted CL's with fixes

Fix: 408971730
Fix: 397889146
Fix: 401469907
Fix: 402277471
Fix: 403826044
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: TaskUiStateMapperTest & TaskContentViewScreenshotTest & TaskThumbnailViewScreenshotTest & TaskHeaderViewScreenshotTest & SwitchBetweenSplitPairsGesturalNavPortrait
Change-Id: I01758447ad1194ebbeab748113621b42f3384db8
2025-04-09 16:36:51 +01:00
Jordan Silva
f99a50c2e4 Update Overview buttons styles and layout
This CL update the style of Overview Buttons to support Wallpaper Blur feature.
- Overview action button background, padding and spacing updated.
- Clear all button style updated to match action buttons.
- Select button drawable updated.

Bug: 404479758
Fix: 407665072
Flag: com.android.launcher3.enable_overview_desktop_tile_wallpaper_background
Test: OverviewImageTest
Change-Id: I89b781928c4b49155df9dfb5af5e81775ab5b87b
2025-04-02 11:59:25 -07:00
Jordan Silva
612aac88cb Update marquee to show only when chip is expanded
- Introduced title and titleCollapsed to change the text when expanded and collapsed using only 2 dots for truncate the text, similar to ellipsize="marquee".

- Removed ellipsize="marquee" from the XML to prevent chip relayout when entering in Overview. See b/406969521.

Fix: 406969521
Fix: 403193877
Flag: com.android.launcher3.enable_overview_icon_menu
Test: OverviewImageTest
Test: OverviewSplitTaskImageTest
Change-Id: Ia95eb8b7ec6d22b9d576defe7c66a4950ee1dca3
2025-03-28 14:28:54 -07:00
Jordan Silva
41992efa95 Merge "Center Task Menu icons and text vertically" into main 2025-03-26 08:40:16 -07:00
Jordan Silva
20dd848b29 Center Task Menu icons and text vertically
Bug: 403193877
Flag: EXEMPT bug fix
Test: OverviewImageTest
Test: OverviewSplitTaskImageTest
Test: OverviewMenuImageTest
Test: OverviewActionsMenuHoverImageTest
Change-Id: Idba732b64260e7e3e00d4742d2ea6ccd9228ab01
2025-03-26 05:23:31 -07:00
Jordan Silva
f4b5725ef0 Merge "Add marquee for AppChip and simplify text view handling in IconAppChipView" into main 2025-03-26 04:28:26 -07:00
Li Lin
4a947f8209 Growth Framework nudge resource changes.
These resources changes will be used in a follow up CL that implement
the nudge view.

Note that most of the values and layout are temporarily placeholder and  subject
to change in follow up CL as the mock is being finalized.

Bug: 398033012
Test: Manual
Flag: com.android.launcher3.enable_growth_nudge
Change-Id: I1d88da404637200b44bd2a3a5719f52d68011fbf
2025-03-25 19:58:52 -07:00
Jordan Silva
7e676c6a40 Add marquee for AppChip and simplify text view handling in IconAppChipView
- Consolidates the two TextViews (collapsed and expanded) in `IconAppChipView` into a single `appTitle` TextView.
- Updates the app name's width based on the current chip status (expanded/collapsed)
- Removes the `icon_text_collapsed` and `icon_text_expanded` from layout and uses only `icon_title`.
- Adds marquee support to handle text ellipsis in the collapsed state.
- Refactors text width calculation for collapsed state to take into account maximum available width.
- Updates text animations to use the new `appTitle`.
- Updates the maximum width to not be set to less than the min width.

Bug: 403193877
Flag: com.android.launcher3.enable_overview_icon_menu
Test: OverviewImageTest
Test: OverviewSplitTaskImageTest
Change-Id: Ic82790d0a79b65adb7ba14dad7848748cd568f62
2025-03-25 20:31:28 +00:00
Shamali Patwa
15fa804ddf Merge "Add ViewStubs for DWB layouts to avoid duplicate views in refactor" into main 2025-03-25 06:38:42 -07:00
Shamali P
4ec89fbc63 Add ViewStubs for DWB layouts to avoid duplicate views in refactor
This CL just moves existing code to use view stubs. The refactor CLs
will use the flag to conditionally inflate these views.

Bug: 405359346
Fix: 405359346
Flag: EXEMPT refactor
Test: Existing screenshot tests and manual demo
Change-Id: Ib023d5f3538a0959a5965704a4ff18d769f8aa94
2025-03-21 16:26:07 -07:00
Alex Chau
77ddc254cc Revert "Add TaskContentView parent to TaskThumbnailViewHeader and TTV"
This reverts commit e0cc96df62.

Reason for revert: b/403826044, b/402277471

Flag: EXEMPT revert

Change-Id: I0c6e507753bf47be4f74b6056de75d981f0c2848
2025-03-20 04:45:52 -07:00
Alex Chau
7034889756 Revert "Remove redundant FrameLayout from task_header_view.xml"
Revert submission 32215257-b/401469907-remove-redundant-headerview-layout

Reason for revert: b/403826044, b/402277471

Reverted changes: /q/submissionid:32215257-b/401469907-remove-redundant-headerview-layout

Change-Id: I5c619179c849f8b65484937ed0c37623612316f8
2025-03-20 11:11:00 +00:00
Priyanka Advani (xWF)
92aef0d99a Revert^3 "Inflate TaskThumbnailViewDeprecated as TaskContentView"
This reverts commit bca368924c.

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

Change-Id: If43e23bca9f7e62f26ee3c977cac643fcda3e3e6
2025-03-19 12:56:55 -07:00
Sam Cackett
bca368924c Revert^2 "Inflate TaskThumbnailViewDeprecated as TaskContentView"
This reverts commit 1048b2711c.

Reason for revert: Reland CL with fix

Original message:
Inflate TaskThumbnailViewDeprecated as TaskContentView

If the enableRefactorTaskThumbnail is false, then inflate
TaskThumbnailViewDeprecated as TaskContentView so that the behaviour
matches the previous pre-factor behaviour

Fix: 402277471
Bug: 403826044
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: Manual. See bug

Change-Id: Ib43331023d99316c7b0c9de2ab81e379db58bb50
2025-03-19 10:05:25 -07:00
Treehugger Robot
6fcd77c19a Merge "Update KQS task view borders" into main 2025-03-12 12:21:08 -07:00
Treehugger Robot
f0e0e8b7ec Merge "Remove redundant FrameLayout from task_header_view.xml" into main 2025-03-12 11:31:52 -07:00
Jordan Silva
99eefc9055 Add keyboard navigation for App Chip and Chip Menu
Bug: 400410772
Flag: com.android.launcher3.enable_overview_icon_menu
Test: Manual using Keyboard. Access the app chip via TAB.
Change-Id: I75f80b5c6f366ecfc27596519a721cc6ace18d45
2025-03-12 07:55:04 -07:00
Toni Barzic
94db320a84 Update KQS task view borders
Updates border color to have more contrast to the background, and adds
2dp padding between the border and the task content view - done by
updating BorderAnimator not to assume the border width and stroke are
the same.

Adding padding between the border and task view content exopsed an issue
where the second thumbnail in a split task's borders were not clipped
correctly when adding a border (it looked like the clip rect was not
properly scaled down). This is addressed by moving the tack view
background (and the outline) from the root KeyboardQuickSwitchTaskViews
to the content views (i.e. moving the outline to the view that does not
get scaled when adding a border, and having the second thumbnail end
edge of the clip rectangle match the clip rectangle of the clipped
ancestor view).

Bug: 398770098
Test: Manual
Flag: EXEMPT (a11y) bug fix

Change-Id: Ie058c932411a6b47815b0abf756f739c55b8342f
2025-03-11 22:00:59 +00:00
Jordan Silva
afff31deb3 Merge "Add hover and pressed states for app chip and menu items" into main 2025-03-11 10:27:51 -07:00
samcackett
d88fb62c4d Remove redundant FrameLayout from task_header_view.xml
Move feature flag logic to the state mapper

Fix: 401469907
Flag: com.android.launcher3.enable_desktop_exploded_view
Test: TaskUiStateMapperTest & TaskContentViewScreenshotTest
Change-Id: Ic6ee5bef438ae2782816f526b003e1fb91992065
2025-03-11 16:49:52 +00:00
Jordan Silva
38af4f71c7 Add hover and pressed states for app chip and menu items
Fix: 356830855
Flag: com.android.launcher3.enable_overview_icon_menu
Test: OverviewActionsMenuHoverImageTest
Change-Id: I3a244a4eea07192a622c57d28618dabbb107a088
2025-03-11 05:37:43 -07:00
Toni Barzic
394d5e0010 Improve KQS accessibility
Adds accessible pane name, and content description for keyboard quick
switch view. Improves content description for task views, by having it
provide the task position in the task list. Also, sets a task content
description immediately when it gets associated with a task, even if the
task description is not available at the time. Accessibility focus for a
task may be requested as the KQS view is shown, so the task view should
have a meaningful content description from the start.

While here, update KQS to focus first task  by default when opened from
taskbar.

Bug: 399032757
Test: Manual, with Talkback enabled - open KQS via taskbar overflow view,
      and Alt+Tab, and verify Talkback announcements are informative
      (e.g. no "Pixel launcher" utterance).
      Also atest NexusLauncherTests:TaplTestsKeyboardQuickSwitch
Flag: EXEMPT bug fix

Change-Id: I3688954ab383035c1db35c5eb7a0ddf9a39a123f
2025-03-10 17:35:04 +00:00