Commit Graph

20 Commits

Author SHA1 Message Date
Jordan Silva
1b487619a0 Add Accessibility Menu support for multiple DWB banners
Fix: 341672022
Flag: EXEMPT Bug fix
Test: Manual. With Talkback on, open two apps in split screen and both with DWB enabled, go to Overview, access the Accessibility Menu > Actions.
Change-Id: Iff6adf8d549aa00ea42598cbfbdaf8c7a4164b29
2024-05-30 18:22:38 +01: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
Fengjiang Li
c51363fc46 [Predictive Back] Support WidgetsTwoPaneSheet
Fix: 325930715
Test: Manual - attached video to bug
Flag: aconfig com.android.launcher3.enable_predictive_back_gesture TEAMFOOD
Change-Id: I44098de12253f803526160bce6457a940b2153c7
2024-03-18 15:31:13 -07:00
Tracy Zhou
419140aede Make sure touch only goes to the nearest button when it makes sense
- In NearestTouchFrame, we can't use view bounds alone since the buttons do not have the same root (3 buttons are in the main container, while the contextual buttons are in the contextual button container). This currently caused the issue that contextual button region, when the contextual buttons are invisible, triggers overview
- Need to add an empty space in the left / top area of the button nav to prevent view clicks from going into back (that's how it works in navigationbar/)

Bug: 25768138
Test: left and right of 3 buttons don't trigger back or overview
Change-Id: Idc26c0c8ac0ecc000300a6db2e3e6251f678dada
2024-01-30 14:27:48 -08:00
Himanshu Gupta
08badb3f6f Adding Private Space views to Launcher.
This CL adds the following:
* Static View Elements to be added to AllApps recycler View
* View Controller to load the above elements dynamically
* Private Space Section Decorator
* PrivateProfile Manager containing the logic related to Private Space
* Abstract UserProfileManager as the super class of Work/Private
ProfileManager

Private Space Views Figma
[link](https://www.figma.com/file/K6bIIcG882EiJNjxvSWsFT/V%E2%80%A2-Private-Space?type=design&node-id=14535-111985&mode=design&t=JLz9W0O551TpzQYH-0)

Flag: ACONFIG com.android.launcher3.Flags.enable_private_space DEVELOPMENT
Bug: 289223923
Test: Ran Launcher3 tests
Change-Id: I8aa4247c78064a551e5e0d0b46d3fc033873f99d
2023-11-14 11:58:16 +00:00
Mady Mellor
c62e37305d Set a view id for the bubble dismiss view (launcher)
There is a flake in the drag to dismiss bubble test, I think it's
because sometimes it misses the dismiss target since the test drags
the bubble to the bottom of the screen instead of the target location.

In attempt to fix this I'm setting an ID on the dismiss target to
look up where it is on screen and drag the bubble to it directly.

Test: treehugger
Bug: 296933279
Change-Id: I7949aa0131020651214e9ebaa834dda8fc25971a
2023-08-22 20:56:27 +00:00
Jagrut Desai
ef1a9b798d Make clear announcment for taskbar education.
Test: Manual
Bug: 273393698
Bug: 273408584
Flag: not needed
Change-Id: I6c6eb1e1e1047a2e702592290bf5735e8bfa6ce2
2023-03-23 11:26:09 -07:00
Sihua Ma
914549b482 Set the original drawable for floating widget view
This ensures that the background of the widget will not disappear after cancelling opening the widget activity.

Normally, when opening and closing the widget activity, the following procedures are executed:

tap on widget
-> opening animation initialized -> opening animation finished
-> close the activity
-> closing animation initialized -> closing animation finished

The steps above would work fine. However, a different set of procedures is followed if we try to cancel opening the widget activity:

tap on widget
-> opening animation initialized
-> opening animation started
-> swipe back before opening animation is completed
-> closing animation initialized
-> opening animation finished
-> closing animation started
-> closing animation finished

During the animation initialization process, FloatingWidgetBackgroundView would be initialized. It will then cache the original background and replace with a temporary drawable with alpha set to 0. The background is only restored at the end of the animation.

If two FloatingWidgetBackgroundView is initialized on the same app widget view before one of them is finished, the second floating view will treat the temporary drawable as the original background. At the end of the closing animation, the temporary drawable with an alpha value of 0 will be set for the app widget view, causing the background of the widget view to disappear.

This CL stores the original drawables into the background view so they could be retrieved during the initialization process of the floating background view.

Test: Manual
Fix: 259526083
Change-Id: Iefa29b22b690076a4fc3fc77fe6eea4b6316f852
2023-03-07 15:20:22 -08:00
Sunny Goyal
62a4932310 Removing unnecessary search header duplication
Bug: 268646258
Test: Verified on device
Change-Id: I33a7df6a523e5600dc6251c3d8feff1236362705
2023-02-10 11:26:05 -08:00
Fengjiang Li
3774824cea Predictive swipe: show extra app icons at bottom of All Apps's RecyclerViews
The maximum center scale of All Apps to Home is 90%. It means we should add 5% height to All Apps's RecyclerView to render extra app icons.

Test: manual
bug: b/264906511
Change-Id: I2e970580810220e25d7fc3a86c19abaf87ba2c6e
2023-01-13 15:55:17 -08:00
Sunny Goyal
bbad97e273 Unifying scroll calculation logic for both widgets and apps recycler view
Also using itemType instead of item object for widget size cache

Bug: 234008165
Test: Verified on device
Change-Id: Ia4b4a00a11627c0c454e4a699570e8ab1667a390
2022-06-16 16:03:37 -07:00
Stefan Andonian
28f61b5177 Fix folder app icon truncation after rotating to landscape.
The folder bubble text views were being recycled after the launcher's
cache was cleared. This caused the new orientation's folders to re-use
the old views with their stale configuration. After this change, the
cache won't recycle views whose cache entry has been recreated,
implying that their environment might have changed and new setup is
required.

Bug: 230304658
Test: Verified erroneous UX on device was no longer reproducible after fix.
Change-Id: Ib01cf5792d83df752e05534e5aa08ab8e8763bdc
2022-05-23 23:42:04 +00:00
Daichi Hirono
db5960de5e Add new buttons to taskbar
Cherry picked from commit 53db50dd0b2bd6ed1842b25396c9c52b7abe1157
after resolving conflicts

The CL adds two new buttons for desktop usage.
No listeners are registered yet.

Recall: http://recall/clips/f52b70ed-c437-4374-a492-e4b7c802520a

Bug: 198355239
Test: m, verify that new buttons are added

Change-Id: I1d4a12da3041e113a978c37c9e36ec085d15e8b3
2021-12-10 16:24:24 -08:00
Vinit Nayak
f957244b88 Show multiple App Info A11y options for split app icons
* AccessibilityNode actions are required to have a
unique resourceId to show as an action in A11y dialog.
For now, only AppInfo option is shown for each app in split,
but moving forward we'll need to add resourceIDs for
each option that can show up for either app.

Fixes: 200609838
Test: Saw multiple options for App Info for each app
come up in talkback mode

Change-Id: I92b349347354ac639537021d775eea814c866a0e
2021-11-18 23:22:46 -08:00
Sunny Goyal
77acf12905 Fixing header jump
Linking header position to an empty entry in the recyclerView,
instead of calculating the vertical scroll position. This
allows the header to be in sync with the recyclerView scroll and
item animations

Other simplifications:
> Moving top collapse handle out of header view (it doesn't scroll)
> Removing background clipping logic from full-sheet
> Moving tab bar inside the header view

Bug: 196464142
Test: Verified on device
Change-Id: Iae5a0ae9af7ce258e1b391b8e85c5c270fe56197
2021-08-16 09:45:14 -07:00
Stevie Kideckel
f792c64c6a Merge "Add spacing between items as decorations instead of margins" into sc-dev am: e03784478d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/15028527

Change-Id: Iccc9f7d9b3add624b47557350cd85567b17206b1
2021-06-21 19:59:36 +00:00
Stevie Kideckel
ded80076db Add spacing between items as decorations instead of margins
There are bugs in the accounting for the margins if we manipulate the
view directly, causing the wrong top to be reported and the view to be
shifted when we call scrollToPosition. Item decorations ensure that the
layout system for the recycler view always has the right details about
the spacing.

Fix: 191642682
Test: verified locally
Change-Id: Ie80563757079e885c8178883ab16e314d01c5b32
2021-06-21 15:11:33 +00:00
Vinit Nayak
b974a86c8f Add IDs to buttons in 3 button nav for Taskbar
Bug: 191449914
Test: testSwitchToOverview passes
See bug for more details

Change-Id: I108bbe7607181680bca7cb5fad5e7289191edde6
2021-06-18 18:20:44 -07:00
Hyunyoung Song
2cecad8e75 Catch NPE for AllAppsContainerView.dispatchRestoreInstanceState
TL;DR;;
Missing view id for work profile recycler view
caused restore failure as there are different type of
views that contains same id. However, even after that fix,
lack of view id in slice views generated by other process
causes failure when mFlags on these not restored slice
views needs to be accessed.

Bug: 186596139
Test: manual
Change-Id: I8a97598c27acbc05ac8a39c50fe5862e541d62ad
2021-05-17 00:47:28 -07:00
Alina Zaidi
334e65935b Have a recycler view to show search results.
-Have a recycler view layout for search widgets list.
-Make WidgetsFullSheet implement interface- SearchModeListener to get notified when user is using search and also when search results are ready.
-Have a WidgetsListSearchHeaderViewHolderBinder for search result headers which shows subtext in header as concatenated string of widget/shortcut labels.
-Modify WidgetsListAdapter and WidgetsDiffReporter to work well with search recycler view.

Test: Tested prototype locally. Also added robolectric test.
Bug: b/157286785
Change-Id: Ie29d9f295fddb6d727b5fc26a360f514f2f4a763
2021-03-11 21:27:51 +00:00