Commit Graph

2230 Commits

Author SHA1 Message Date
Pat Manning
5d822e00fc Merge "Update spring constants for expressive dismiss." into main 2025-05-28 06:59:52 -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
Pat Manning
a0b7dde91c Update spring constants for expressive dismiss.
- Add separate horizontal spring constants for tablets.

Fix: 391101706
Test: Manual.
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I689b44697be3e5d7909f9f1238359ca529e917f0
2025-05-27 11:26:40 +01:00
Sunny Goyal
ca7fe2f56c Adding support for custom signature for grid customization
Bug: 403628674
Flag: EXEMPT flagging not supported
Test: Verified manually
Change-Id: I009cc3814c593b2906acd05cb19391cacc5fbaaa
2025-05-23 16:31:59 -07:00
Treehugger Robot
2a4ad7f8a1 Merge "Share buttons change" into main 2025-05-23 08:47:09 -07:00
Vinay Joglekar
0b87a41376 Share buttons change
Update Share Button and Share Targets to support Blur background

Fix: 408439461
Test: Open chrome with a webpage, tap on smart chip
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: If9290676377a3a48a94800ac3084c52146b0c9ae
2025-05-23 09:48:40 +01:00
Treehugger Robot
70f5d5738e Merge "Implement spec to configure all apps height" into main 2025-05-22 19:13:37 -07:00
Treehugger Robot
091890adbc Merge "Support workspace cells with two-line labels" into main 2025-05-21 18:25:15 -07:00
Toni Barzic
3bd1f20e3b Implement spec to configure all apps height
Adds AllAppsSpec support, that can configure all apps height so the
container top aligns with the top of a row in the workspace grid.

Bug: 30153091
Flag: com.android.launcher3.enable_scalability_for_desktop_experience
Test: Manual

Change-Id: Ia5c939c7d3b6fed29a9c2f47233348a5e55b570f
2025-05-21 22:04:33 +00:00
Toni Barzic
83b8cc19ca Support workspace cells with two-line labels
Adds `maxLineCount` attribute to CellSpec. The attribute indicates the max
number of lines of text the cell was speced to support. It's used to:
*   enable two-line labels in `BubbleTextViews` for workspace (including
    folder children) items
*   Update cell dimension calculation to inform cell vertical padding

When calculating cell content size the icon text size will be included
`maxLineCount` times, so the cell content gets centered as if it
contains `maxLineCount` lines of text. That way the icon position will
be consistent between cells with text that fits into one line, and cells
that contain two lines of text.

Adds `maxLineCountMatchesWorkspace` attribute to specify that the cell
should inherit `maxLineCount` from workspace cell spec.

Bug: 30153091
Flag: com.android.launcher3.enable_scalability_for_desktop_experience
Test: Manual

Change-Id: I150a62f427a0ad755a4746a736d9846d3bea4d2e
2025-05-21 22:04:33 +00:00
Sebastián Franco
e010d8f654 Merge "launcher: Remove allow rotation setting from indexable settings" into main 2025-05-20 17:04:02 -07:00
Treehugger Robot
9977ef7c2a Merge "Update Empty State to support Blur background" into main 2025-05-20 02:17:40 -07:00
vinayjoglekar
c66cc78eca Update Empty State to support Blur background
Updated icon and text font as well as scrim values to make the text and
icon visible in both themes and different wallpapers.

Fix: 408437743
Test: Go to overview in empty state(no tasks)
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: Ic76d25f4a70bffa402950fc4c3c3fade32c66c2b
2025-05-19 15:48:24 +01:00
Sebastian Franco
52c77ba8c2 launcher: Remove allow rotation setting from indexable settings
Fix: 407675825
Flag: com.android.launcher3.one_grid_specs
Test: SettingsIndexablePreferenceKeysTest
Change-Id: I5ba3df68c375cf00a604e3b30a47f28acc91165d
2025-05-18 11:08:05 -07: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
753ee52a18 Merge "Support desktop device category in grid options" into main 2025-05-14 13:30:52 -07:00
Treehugger Robot
e5b2d2ca1b Merge "Updates Material Color Library" into main 2025-05-14 10:38:59 -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
Marcelo Arteiro
7004d3410d Updates Material Color Library
Following 2025 Specifications
 - updates Variant
 - adds a few tokens
 - Removes deprecated Fidelity attribute

Bug: 394371316
Bug: 347286986
Test: Presubmit
Flag: android.os.material_colors_2025_03
Change-Id: Ieb22815cd8a5a898c740849158c639dcff48086d
2025-05-14 08:00:52 -07:00
Ana Salazar
501df846c4 Support desktop device category in grid options
Adds desktop enum value to grid option deviceCategory attribute type.
The device type is used for devices that have
`R.bool.desktop_form_factor` config value set.

Bug: 30153091
Flag: com.android.launcher3.enable_scalability_for_desktop_experience
Test: Manual
Change-Id: Ie4747b5bae3e124e914af51445778c9b6285ff66
2025-05-13 04:17:34 +00:00
Treehugger Robot
d89bd8d886 Merge "Split BlurStyle and BlurFallbackStyle for All Apps and Overview." into main 2025-05-12 14:02:09 -07:00
Treehugger Robot
247d720fec Merge "Revert "Use custom height for all apps for CD"" into main 2025-05-12 02:23:03 -07:00
Ajinkya Chalke
3f651657f7 Revert "Use custom height for all apps for CD"
This reverts commit 0c32760b3c.

Reason for revert: Issue on smaller screen b/416220478#comment7

Bug: 416220478
Change-Id: I8b1063a1ebc8b250e41d2587399647a589ef05b8
2025-05-10 13:50:33 -07:00
Treehugger Robot
0a38582ff6 Merge "Use dimen for GridSize_minDeviceWidth/Height" into main 2025-05-09 20:47:49 -07:00
Andy Wickham
359280ef2c Split BlurStyle and BlurFallbackStyle for All Apps and Overview.
Problem: We don't want to apply the blur style to All Apps if the
all_apps_blur flags are disabled. However, we want to still apply
the relevant colors for Overview when the Overview blur is enabled.

Solution: Split the styles into All Apps and Overview variants.
Unfortunately this creates quite a bit of extra code, but such is
the nature of flag permutations.

This is a more comprehensive color fix compared to ag/33356345,
which is reverted as part of this CL.

Note: enable_overview_background_wallpaper_blur is already broken
when disabled without this change (the live tile gets blurred),
presumably because it's already in nextfood and hasn't been tested
disabled. As such, I focused on testing All Apps blur flags both
enabled and both disabled, with the Overview flag always enabled.

Demo with All Apps flags disabled:
 - Blurs enabled (Overview should blur; All Apps unaffected):
   https://drive.google.com/file/d/1eb882JKSMF-Irc7Ls-iAClYfJIASzzXs/view?usp=drive_link&resourcekey=0-j5EafBfVHIh5oOSFzsYE4g
 - Blurs disabled (Overview should not blur; All Apps unaffected):
   https://drive.google.com/file/d/1toVHYUTj9FjpXCD7m8waeuFIwBbdy_Am/view?usp=drive_link&resourcekey=0-drqPVsELmgJVxhpgxLc-aQ

Demo with All Apps flags enabled:
 - Blurs enabled (Overview and All Apps should blur):
   https://drive.google.com/file/d/1se5yaPDYdDKcoBjZSjDSlqCiSfX0bmHv/view?usp=drive_link&resourcekey=0-U9fBJSVYY9na9r8J5xHXMw
 - Blurs disabled (Overview and All Apps should not blur):
   https://drive.google.com/file/d/1YmqlCdSJDZXGSgpeO5hk16V8Y-6tVpeW/view?usp=drive_link&resourcekey=0-rK4Zy7D8fFyPMA_1XXxwCQ
   (Note: All Apps fallback colors will change with ag/33405653)

Test: Above videos
Fix: 416248709
Flag: com.android.launcher3.all_apps_blur
Flag: com.android.launcher3.all_apps_sheet_for_handheld
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: I9b5cf6b0dce4014053b27ea95a91d047262427b2
2025-05-10 01:21:43 +00:00
Ajinkya Chalke
0c32760b3c Use custom height for all apps for CD
Bug: 416220478
Flag: com.android.window.flags.enable_taskbar_connected_displays
Test: m
Change-Id: I772c43cec98e5a2679324603bee128482c614e26
2025-05-09 01:14:15 +00:00
Toni Barzic
ff16a5912d Use dimen for GridSize_minDeviceWidth/Height
Makes the grid size format more flexible, as it allows the min width and
height to be easily defined either as px, or dp (which may be
preferable for upcoming desktop grids - I noticed that scaling display
size may end up with too tightly packed grid when using pixel sizes
to select the correct grid size).

Test: Existing tests
Bug: 375643744
Flag: EXEMPT cleanup

Change-Id: I09b772ece177fe0539a1ff641ff2391e88d9e289
2025-05-08 10:20:54 -07:00
Sunny Goyal
7a332e02aa Removing Smartspace as a widget flag
Bug: 300140279
Flag: EXEMPT removing dead code
Test: Presubmit
Change-Id: If24db0b4c2c119f5cbe1153e3d77599d12ff80a6
2025-05-01 16:00:04 -07:00
vinayjoglekar
45cb055158 Apply fallback overview scrim, overviewactions and clearall in battery saver mode.
1. BlurFallbackStyle/BlurStyle will now be applied in Launcher startup.
   When "updateBlurStyle" is called, individual element style's swap
   happens as per blur style.
2. "hasOpaqueBg" background will now be checked in "applyDepthAndBlur"
   for setting the "currentBlur" value.

Bug: 409758306
Test: Manual. go to overview, enable/disable battery saver mode.
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: Ic9030c2b267867b9124705426dd51deb1b30ca55
2025-04-30 17:23:42 +01:00
Treehugger Robot
3bde3a8331 Merge "Update blur style for more things." into main 2025-04-28 13:51:25 -07:00
Andy Wickham
6610425a1d Update blur style for more things.
- Quick Launch highlight (focusHighlight)
 - Drag bar at top of All Apps
 - Divider inside Private Space

Demo (enabling blur via adb in the middle):
https://drive.google.com/file/d/1MjYn1c1mz3m1llmJ-J6kLHUa1j3biv_H/view?usp=drive_link&resourcekey=0-6d1yf_4zDL0W9nTYe6HLNQ

Fix: 413143411
Test: Manual
Flag: com.android.launcher3.all_apps_blur
Change-Id: I37340759867aba1460fb038269d21c86e8b3c4f6
2025-04-26 01:25:05 +00:00
Treehugger Robot
fe7225eace Merge "Move LauncherRestoreEventLogger to dagger" into main 2025-04-25 14:11:18 -07:00
Treehugger Robot
703d6f6f55 Merge changes from topic "folder-arrows-pointer" into main
* changes:
  Only Show Folder Arrows if Mouse or Trackpad is Connected to Device
  Make Width Calculation Exact
2025-04-25 11:53:41 -07:00
Treehugger Robot
087c9c4cf6 Merge "Run task reflow after dismiss earlier and increase spring constants." into main 2025-04-25 09:47:03 -07:00
Pat Manning
dac05b0390 Run task reflow after dismiss earlier and increase spring constants.
This allows the user to dismiss multiple tasks in a row more quickly.

Fix: 409485085
Test: Manual. Fling to dismiss tasks as quickly as possible.
Flag: com.android.launcher3.enable_expressive_dismiss_task_motion
Change-Id: I9a0d05c1a47b5bc0ef72cde055379e4df50b48b4
2025-04-25 15:04:53 +01:00
Anushree Ganjam
06bc3f5301 Move LauncherRestoreEventLogger to dagger
Helps us to delete ResourceBasedOverride class.
Delete "launcher_restore_event_logger_class" resource from config.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: Ia11162979f016513bd09e06796346d29699b2efd
2025-04-25 01:02:28 +00:00
Stefan Andonian
cffeb99122 Only Show Folder Arrows if Mouse or Trackpad is Connected to Device
Bug: 394355070
Test: Verified correct behavior locally. See screen recording on https://buganizer.corp.google.com/issues/394355070#comment28
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: I7132b892b3bd8ee3af2cdca58b6e70f3a219c8f4
2025-04-24 13:59:21 -07:00
Anushree Ganjam
41998110bd Move FolderNameProvider to dagger.
Helps us to delete ResourceBasedOverride class.
Delete "folder_name_provider_class" resource from config.

Introduce FolderNameSuggestionLoader for easy dagger injection for
folderNameProvider.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I58a68cb4ce11331458a1cccef2e692f74c14ea53
2025-04-22 19:31:51 +00:00
Anushree Ganjam
291438aaec Move StatsLogManager to Dagger
Helps us to delete ResourceBasedOverride class.
Delete "stats_log_manager_class" resource from config.

Delete unused "app_launch_tracker_class" resource from config.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger

Change-Id: I71ed7ffca62e7c74d4ee0d0b4c045ffed9599cfe
2025-04-21 19:13:22 +00:00
Treehugger Robot
bf044d730c Merge "Move InstantAppResolver to Dagger." into main 2025-04-18 18:06:15 -07:00
Andy Wickham
303b52f84a Merge "Make TaskbarOverlayContext overrideable." into main 2025-04-18 15:02:50 -07:00
Anushree Ganjam
59d5401f59 Move InstantAppResolver to Dagger.
Helps us to delete ResourceBasedOverride class.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I9320e0309e2ae4370dcbf2f6f62d704712876bd5
2025-04-18 20:14:14 +00:00
Andy Wickham
33c7b3dcf1 Make TaskbarOverlayContext overrideable.
Bug: 371343636
Flag: EXEMPT refactor
Test: with other change
Change-Id: I46c4bcb88d21890e66e7db7240d3450d75d74354
2025-04-18 01:24:56 +00:00
Andy Wickham
51a0a3829a Update All Apps colors to use shared sysui resources.
This includes the new scrim color and panel treatment documented
here: https://docs.google.com/presentation/d/1BKFfB2LAIDoaA5aLs8did6IcUw_pktrSWI5xmypkl3s/edit?slide=id.g3484dcfffc6_1_203&resourcekey=0-HpXwztiEYGe0BYQzUeBBbQ#slide=id.g3484dcfffc6_1_203

Bug: 371343636
Test: Manual
Flag: com.android.launcher3.all_apps_blur
Change-Id: I810aaa84eda218ab33112c9a5c1561cdb088b310
2025-04-17 19:14:18 +00:00
Andy Wickham
16a024df71 Adds Blur and BlurFallback styles for All Apps.
Technically these styles can be used throughout Launcher, e.g.
Widget Picker and Folders, but this CL only applies it to All Apps.

At a high level, views wishing to apply transparency to show blur
should use these new attr values rather than colors directly.

When blur changes, e.g. starting or stopping battery saver, the
style is re-applied and revelant views are invalidated. For
Launcher, this is handled by DepthController, and for Taskbar it's
handled by a CrossWindowBlurListener.

Also updated the Private Space animation slightly to account for
the translucent decorators (specifically, we can't use the mask
view to cover them when blur is enabled).

Screenshots: https://drive.google.com/drive/folders/1tU472KHotgEBpT-Ec9VOBWPBf_YdVqv2?resourcekey=0-ebf7W8O6iDJ4UVMtRzTABg&usp=sharing
Private Space animations: https://drive.google.com/file/d/1h5pn8Xb17TPcbujr7uSAJNTq8kwNZoIp/view?usp=drive_link&resourcekey=0-TzpaJ16Gg8_QJctBx4oiIg
Private Space QS Tile animations: https://drive.google.com/file/d/1dCuqnqd5z2kSBEakGobMlEkMwFDBWRbJ/view?usp=drive_link&resourcekey=0-qRVFPb-a6OzaZQOf4x86Jw

Bug: 371343636
Test: Manual
Flag: com.android.launcher3.all_apps_blur
Change-Id: Ia9f581f50d1adc0830569656bdeb751deb710a9c
2025-04-15 16:42:56 -07:00
Stefan Andonian
71170e9276 Implement Folder Pagination Arrow Hover / Pressed UX
Bug: 394355070
Test: Verified locally that everything works. Check out bug for video test.
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: Ief4b895d8eb31e6ed53b05aad4b733e8de41e4d9
2025-04-11 16:02:04 -07:00
Stefan Andonian
c547affdc9 Moved PageIndicatorDots to their own ImageViews.
Previously, they were simply included in PageIndicatorDots via Canvas
drawing. This worked well to keep behavior encapsulated within
PageIndicatorDots class. But it didn't work for Accessibility Services
which require an actual view in order to focus properly.

Bug: 409629978
Test: Verified manually. See video on bug comment: https://b.corp.google.com/issues/394355070#comment23
Flag: com.android.launcher3.enable_launcher_visual_refresh
Change-Id: I212bf3dbee82e449088536fa841b02a3644df7d3
2025-04-11 16:00:12 -07:00