Commit Graph

69 Commits

Author SHA1 Message Date
Anushree Ganjam
e4a59b06a1 Move TaskbarModelCallback, TaskbarViewCallback , TaskbarOverlayContext to dagger.
Delete the resource id : search_session_manager_class, taskbar_model_callbacks_factory_class, taskbar_view_callbacks_factory_class, taskbar_overlay_context_factory_class from config.xml.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I7d571eeaba1f707089b2e4e0599051910927e3f2
2025-06-05 15:25:32 -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
Andy Wickham
d4100bec42 Fix All Apps interpolators and blur.
Fixes an issue where leaving All Apps did not reverse interpolators,
causing blur to disappear too quickly.

In addition, the logic in BaseDepthController is updated to ensure
100% blur is applied upon reaching max depth. Previously we were
multiplying the depth by 3, but the intention was to reach 1 when
depth reached 0.3. So the blur was only at 90% the intended value in
All Apps (which has a depth of 0.3).

Finally, related to the 100% blur, we correctly end early wakeup
when that is reached, which means we also start it again when the
blur starts changing back towards 0 again. This spins up the GPU,
CPU, and SurfaceFlinger and should help avoid missed frames.

In order to avoid negative performance hits, reducing the max blur
radius from 34dp to 30dp, so that it matches what we were hitting
previously. (The full 34dp unfortunately does cause some regressions).

Bug: 415247657
Test: Open all apps, drag back down, view animation. Also try other
Launcher state transitions.
Flag: com.android.launcher3.all_apps_blur
Change-Id: Ia5daa07525ac96c0597a25bb4320348f27a4ee56
2025-05-15 17:53:17 -07:00
Treehugger Robot
fe7225eace Merge "Move LauncherRestoreEventLogger to dagger" into main 2025-04-25 14:11:18 -07: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
Anushree Ganjam
93b2c414d4 Move NavHandleLongPressHandler to Dagger.
Helps us to delete ResourceBasedOverride class.
Delete "nav_handle_long_press_handler_class" resource from config.

Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger
Change-Id: I3ea307c8da95756ade84dc9c3210dacdeccf9a51
2025-04-23 00:35:57 +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
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
Brian Isganitis
b7a5dc0017 Expose desktop experience CD Taskbar flag to SecondaryDisplayLauncher.
Flag: EXEMPT refactor
Fix: 407924023
Test: go/testedequals
Change-Id: I06344f023eb1fab697f25276bc82e1be0209e4a8
2025-04-08 17:17:15 -04:00
Sunny Goyal
66916cda10 Moving LauncherAppWidgetHolder to dagger
This would allow customizing the widget holder in LauncherPreview

Bug: 361850561
Test: Updated tests and presubmit
Flag: EXEMPT dagger
Change-Id: I32491169188992453693048986c57cb780fdf1d8
2025-03-14 14:19:29 -07:00
Andy Wickham
ccb3a5c25c Adds all_apps_blur flag.
This enables blur both for Taskbar and Launcher, but in slightly
different ways.

For Taskbar All Apps, we apply blur to the overlay window, and
for Launcher All Apps, we utilize the existing DepthController to
blur the wallpaper window. For similicity, we currently fade out
workspace/hotseat to avoid awkward view + window blurs which
don't look that good. This is not the POR, but I think it achieves
most of the effect and will help us get some blur exposure.

Separately I will continue to investigate options such as blurring
workspace in a clever way so it feels blended with the wallpaper,
reusing the Taskbar window and connecting it to LauncherState, or
using a SurfaceView (though I spent quite some time trying this and
it seemed the same as the original issue).

In both cases, we use a 20-30% opacity scrim with a set color, and a
panel that blends 40% opacity of a dark/light color with 10% white.

Also updated some incorrect isTablet checks which really should have
been checking shouldShowAllAppsOnSheet(), which includes the
all_apps_sheet_for_handheld flag.

Demo: https://drive.google.com/file/d/1Ov9Dg3R9YHNfisfxNf97ZIhlDeEA1IWj/view?usp=sharing&resourcekey=0-l_SDpqpS4HtOb10a3b_jNg

Other upcoming improvements: interpolator tweaks, colors of things
inside the app panel (tabs, private space, search results, etc).

Bug: 400827727
Bug: 371343636
Test: Manual
Flag: com.android.launcher3.all_apps_blur
Change-Id: Ic7063cd822f39a5977715b5477f825bf11e57bdf
2025-03-11 23:34:03 +00:00
Mykola Podolian
c095f8b318 Merge "Added accessibility action to move taskbar icon to the bubble bar" into main 2025-03-03 10:31:03 -08:00
mpodolian
f53e369650 Added accessibility action to move taskbar icon to the bubble bar
Create an accessibility action to create application bubble from the
taskbar icon

Fixes: 394159660
Flag: com.android.wm.shell.enable_create_any_bubble
Test: Manual. Trigger "Actions" for the taskbar icon. One of the action
would be "Create application bubble". Activate action for the selected
icon. Observe new bubble is created.

Change-Id: I9b20631e0536e9bef23bed24389a7804bb45a4e2
2025-02-26 14:38:54 -08:00
Sunny Goyal
c9f697aeb5 Converting LauncherAppState to Dagger
Bug: 361850561
Test: Presubmit
Flag: EXEMPT dagger

Change-Id: I336a233d2703c23a7e9065474bde471786886144
2025-02-20 19:13:49 -08:00
Sunny Goyal
a5fef475a5 Revert "Revert "Migrating RecentsAnimationDeviceState and depend..."
Revert submission 31416515-revert-31332401-recents-device-state-LXBUANUQFL

Reason for revert: Fixing build breakage and resubmitting

Reverted changes: /q/submissionid:31416515-revert-31332401-recents-device-state-LXBUANUQFL

Change-Id: I3b89356df57f1e7ff1a9e364c0d766578e23798c
2025-01-22 18:31:06 -08:00
Liana Kazanova (xWF)
fa30e3fc0e Revert "Migrating RecentsAnimationDeviceState and dependent obje..."
Revert submission 31332401-recents-device-state

Reason for revert: DroidMonitor: Potential culprit for http://b/391684419 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Reverted changes: /q/submissionid:31332401-recents-device-state

Change-Id: I3986328ee3aa8ebb822f7ef05b9f80ef68872aef
2025-01-22 13:50:08 -08:00
Sunny Goyal
d7bfa76bcc Migrating RecentsAnimationDeviceState and dependent objects to Dagger
Bug: 361850561
Flag: EXEMPT dagger
Test: Presubmit

Change-Id: I2c45ec49a913abb0532e83b09e797012e06eb8c4
2025-01-21 23:53:02 -08:00
Sunny Goyal
41e8057bbf Moving WMProxy to dagger
Bug: 361850561
Flag: EXEMPT dagger migration
Test: Presubmit
Change-Id: I9a8031037f2167658b7bc212b59c9b11abbf2f03
2024-12-11 13:24:26 -08:00
Andy Wickham
2ae01adf71 Make ContextualSearchInvoker not a ResourceBasedOverride.
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
2024-11-27 13:03:18 -08:00
Shamali P
531c227c45 Update widget predictor to apply prediction filter
When enough widgets are not passing the filter, additional randomly
 selected widgets are added.

The count to decide whether to add more is a configuration, so that,
if some OEMs don't want any suggestions, can override the value to 0.

Bug: 356127021
Flag: com.android.launcher3.enable_tiered_widgets_by_default_in_picker
Test: Unit tests
Change-Id: Iffa8619149a1a4b468d367fc7bbee381be59469d
2024-11-07 14:01:52 +00:00
Anushree Ganjam
2d55010135 Make ContextualEduStatsManager injected by Dagger (13/n)
Bug: 361850561
Test: Manual
Flag: EXEMPT Dagger Integration
Change-Id: I0150ad8edeac1746e27b7d919891d02e648413be
2024-11-05 14:53:01 -08:00
Anushree Ganjam
ef2c5c0e49 Make ApiWrapper to be injected by dagger (12/n)
Bug: 361850561
Test: Manual
Flag: EXEMPT Dagger Integration
Change-Id: I53ec78999085b3e0ad6df69e177806e0cb1b52d1
2024-10-24 12:14:40 -07:00
Sunny Goyal
9cd3154952 Moving PluginManager to dagger
Multiple singletons depend on Plugin which can cause deadlock
if PluginManager is initialized on main thread

Test: presubmit
Bug: 361850561
Bug: 373557167
Flag: EXEMPT dagger
Change-Id: I79f17ac6b78a2ce60df2d27a6e794b9e4eba1b51
2024-10-17 11:48:38 -07:00
Andy Wickham
0b936727d6 Migrate Contextual Search code to AOSP
- Adds ContextualSearchInvoker
 - Adds ContextualSearchStateManager
 - Adds ContextualSearchHapticManager

Example output from ContextualSearchStateManager
in TouchInteractionService dump:
https://paste.googleplex.com/5536017815961600

Bug: 353715553
Test: go/contextual-search-entrypoints-test-plan
Flag: EXEMPT moving code from vendor to aosp

Change-Id: I8253294d6be427e0fc29d6052994de0c03f05a3e
2024-10-10 21:03:42 +00:00
helencheuk
39a6093369 [Contextual Edu] Enable updating Edu data in Launcher
- Added ContextualEduStatsManager (in Launcher3) and SystemContextualEduStatsManager(in Quickstep) to enable classes in Launcher3 and quickstep to update contextual edu data
- Implemented new updateContextualEduData method in SystemUiProxy file, so the EduStatsManager could use it for update
- AbsSwipeUpHandler handles the logic to go home/overview when in app. Added code to update contextual edu data when these action is triggered.

Test: LauncherSwipeHandlerV2Test
Bug: 357542123
Flag: com.android.systemui.keyboard_touchpad_contextual_education
Change-Id: I6fc5a285ba1a1d770c54cc7af444ff8b3051bd00
2024-08-09 13:38:21 +01:00
Michał Brzeziński
13025d7aca Rename gesture_blocking_activities to back_gesture_blocking_activities
This is to make it more clear that this is only for the back gesture.

Bug: 309928033
Flag: None, just renaming resource
Test: just renaming resource
Change-Id: Id48fada3bc3b6bc91b80337def3bddcdd40dde3c
2024-05-09 14:37:18 +00:00
Saumya Prakash
17cd6ca62a Only run search edu when enabled, also make code more generic.
We only need to run the Search edu if it is enabled on devices. The code
itself is also made more generic in terms of method and variable names.

Fix: 330401405
Test: Enable and disable the search function and check whether the edu tooltip shows
up for each specific use case.
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning NEXTFOOD

Change-Id: I1cea3ee56922c0b47ae7e8379aad4b36570daa17
2024-04-23 22:02:15 +00:00
Sunny Goyal
4a22ed81ea Using resource overrides for PluginManager instead of code-swap
Bug: 330920490
Test: Presubmit
Flag: None
Change-Id: Ib1cd50f95873928b9ce104e8e95d21f1dca9c6e3
2024-04-12 11:38:32 -07:00
Sunny Goyal
11117d9b2a Using resource override instead of code-swap for ApiWrapper
Bug: 330920490
Flag: None
Test: Presubmit
Change-Id: Iac19f32e64d2c76ed5b4f8592943ee4ae7af51b5
2024-04-09 11:14:44 -07:00
Sunny Goyal
bd07c05446 Moving all configs from overrides.xml to config.xml
> Removing some used configs
> Moving ids to id.xml

Bug: 330920490
Flag: None
Test: Presubmit
Change-Id: I86bd22db49a3980c55f5d42350a7c6368fa86d21
2024-04-05 11:20:17 -07:00
Jagrut Desai
4d24ad9cbf Change Persistent/Pinned Taskbar App Icon Size to 40dp
Test: Manual, Presubmit
Bug: 322315240
Flag: NONE
Change-Id: Ibef82e18bbe33af51b27310ccd8052a02a35522c
2024-01-31 13:53:12 -08:00
Jon Miranda
2c515c8076 Update taskbar icon size to match spec.
Bug: 282798528
Test: measured views manually

Change-Id: Iba173ae3e3682b62703ece81dd18eb91370b4627
2023-06-01 12:31:57 -07:00
Jon Miranda
04f051045c Allow grids to specify if we should start align taskbar in 3 button
nav.

Bug: 259712417
Test: check layout on tablet
      check layout on multi_display devices

Change-Id: I282f51e5d76a30e9ad9d8c52d03d4853e965d65a
2023-04-05 10:29:51 -07:00
Jon Miranda
9c478b6c29 Add taskbarIconSize to GridOption/DisplayOptions
- Renamed variables to make it more clear what they represent
- DeviceProfile will be source of truth for taskbar
  sizes

Bug: 265144213
Test: phone, multi-display, tablet
Change-Id: Id9c19d15a65894fd7645e0f876a4b6527b713c34
Flag: ENABLE_TRANSIENT_TASKBAR=true
2023-03-24 12:29:11 -07:00
Jon Miranda
e17a949950 Align taskbar to the left/right in 3 button nav for certain devices.
Otherwise we position the taskbar in the center.

Bug: 259712417
Fixes: 267997547
Test: transient taskbar unaffected
      persistent taskbar
      - test on small tablet
      - test on large tablet
      - test LTR and RTL

Change-Id: Ieb0a304d9963ebf583bc4ef2deaab747019e8d6d
2023-03-09 22:33:18 +00:00
Brian Isganitis
589cb3480a Treat setup wizard default home as null.
During setup, default home progresses setup -> null -> launcher, which
can lead us to unintentionally preload the fallback overview.

Fix: 258022658
Test: Manual
Change-Id: I952b7923b06f2d4b058f42834d1f840719c73fd0
2023-03-01 18:05:51 -08:00
Sihua Ma
1db8bc2467 Add QuickstepWidgetHolder for widget handling
Fix: 235358918
Test: Manual
1. Rebooted the device and verified that widgets are still updating properly
2. Changed the theme from dark to daylight, then from daylight back to dark and verified that widgets are working
3. Kept the device on for several days and verified that widgets are still updating
4. Turn on auto-rotate for the launcher, open any app then exit, verified that widgets will not vanish and reappear
5. Add & remove widgets from the screen, added widgets are still updating

Change-Id: I98ee902f7d16b47bd77626201a4fefc897ba17a0
2022-12-16 11:56:36 -08:00
Alex Chau
3d2c062567 Change wallpaper depth in widget picker
- Also changed widget picker open/close duration, refactored the values into DeviceProfile
- Generalized MultiAdditivePropertyFactory to accept aggregator as parameter

Bug: 240580498
Test: manual
Change-Id: I6886ca514593e404b8d7b0e8ed44f20ec2b77c73
2022-09-13 12:20:56 +08:00
Sunny Goyal
187b16cb91 Updating window manager estimation logic:
> Moving the code from ApiWrapper to Resource overlays for better maintainability
> Accounting for display cutouts in insets estimation
> Using same logic in display controller and view inset dispatching

Test: Verified on device
Bug: 221961069
Change-Id: I78466353563692ce3f7512b0146ef8b61ef14bc0
2022-03-09 11:15:58 -08:00
Schneider Victor-tulias
a3fe68dcb1 Implement AccessibilityDelegateImpl for the Taskbar
- Added accessibility actions to open pop up menu
- Added accessibility actions to open an app/shortcut to the top/left or bottom/right

Fixes: 204453506
Bug: 198438631
Test: attempted all actions individually, attempted combinations of actions (eg. open pop up menu -> move to left/right)
Change-Id: I76a4237035a0ebfe88b8b5f147b574bb2629f20c
2021-11-30 23:02:55 -08:00
Lais Andrade
cc5c8843df Introduces haptic feedback to launcher overview
Haptics introduced at the key moments:

- Task scroll in overview or quick switch, trigger when a new task comes
to the center of the screen;
- Task scroll in overview when overscroll animation is triggered;
- Task dismissed in overview;

There is also a configured min gap between two scroll haptics set to
20ms to prevent fast scrolls from creating a chain of cancelled effects.

Fix: 182382085
Test: manual
Change-Id: I43c0f8c879a06f317e8a660240dafb7f7abe79f7
2021-09-09 14:08:01 +01:00
Galia Peycheva
75bff774fc Adjust usages of cross-window blur to new radius
Bug: 192241610
Test: m
Change-Id: Ibe9c25192f80c8bc19e8e79e39c7f3c3615e4f4d
2021-07-12 13:27:41 +02:00
Lucas Dupin
76877fda73 Update blur radius
Bug: 189976220
Test: manual
Change-Id: If5e6d6be7314dacfad8c501a5ae2da6556ca3cea
2021-06-08 21:51:47 -07:00
Sunny Goyal
11d7d34f0d Removing unnessary resource split in overview
Bug: 184169818
Test: Presubmit
Change-Id: Iff5a8510be337472f05acb5629712ec088361471
2021-04-02 11:43:29 -07:00
Jon Spivack
3a1cfc9082 Add NIU Actions buttons to the Go Overview
The buttons send Intents to the designated app (specified by
niu_actions_package) to do the following:
Listen - Read the contents of the screen aloud
Translate - Translate the contents of the screen
Search - Perform a visual search on the contents of the screen

The Intents also include (via URI) the screenshot of current app used as
a thumbnail by Recents.

The feature is controlled by the enable_niu_actions flag, set to false
here. Both this flag and the niu_actions_package String must be set for
a given Launcher to use these buttons.

Bug: 177955244
Bug: 177955748
Test: Manual (enabled on LauncherGoGoogle and sent Intents to demo Lens
app)

Change-Id: I3d1f870bb176ed0cbae637a45c072bd8acac1d4b
2021-02-09 14:50:56 -08:00
Sunny Goyal
5fb83a47f2 Removing icon recents version
Change-Id: Ibdc88715e38590cedf8a7b5174061bb2c6ef9533
2020-08-14 10:49:19 -07:00
Zak Cohen
fac8741522 Overscroll plugin - give the plugin its own factory.
Separate out the overscroll plugin from the task overlay.
These two classes aren't really related.

Bug: 162012217
Tested: checked plugin still works
Change-Id: Id89eff1ad2ae9766efaaecd8cfc66d6521b9ca8c
2020-08-11 16:42:23 -07:00
Andy Wickham
690543f159 Removes Sandbox from launcher task.
Instead, adds it to the gesture-exclusion activities
to prevent normal gesture handling.

Bug: 148542211
Change-Id: Ie04d2e71346a0c039e73fcc386cedc1b74fadadb
2020-06-10 15:41:37 -07:00