Commit Graph

12066 Commits

Author SHA1 Message Date
vinayjoglekar
7a73c2db59 Update desktop icon/app Chip with the new icon
Add desktop icon/app Chip text

Test: OverviewDesktopTaskImageTest
BUG: 320310236
Flag: EXEMPT resource only update
Change-Id: I6a41cff78690777745b8dcbfea1b8fadee200f96
2024-08-09 11:22:54 +00:00
Riddle Hsu
9164534fb9 Merge "Use rotation hint to update layout" into main 2024-08-06 11:39:03 +00:00
Mady Mellor
8c629fd8b5 Support optional bubble overflow in bubble bar
This is similar to the animations that add / remove a bubble at the
same time -- the overflow is generally added when a bubble is removed.
The overflow is generally removed when a bubble is added (i.e. user
promotes a bubble out of the overflow).

There are a couple of additional cases:
- when bubbles are first added to the bar -- if there were saved
  bubbles in the overflow, the view should be added
- an app could cancel its bubbles / remove its shortcuts and not have
  any in the stack but could have some in the overflow & it could
  become empty without an addition.

Flag: com.android.wm.shell.enable_optional_bubble_overflow
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - add bubbles to the bubble bar for first time
             => observe there is no overflow
             - dismiss a bubble
             => observe the overflow is added, tap on it, tap on the
                bubble in it
             => observe that bubble is added & the overflow disappears
             - dismiss all the bubbles
             - add a bubble
             => observe the overflow is there & has the previously
                dismissed bubbles
             - cancel all the bubbles that are in the overflow via
               adb
             => observe the overflow is remvoed
Bug: 334175587
Change-Id: I2b6e855e65520b4b2b1fde7757d46f00a468b4a6
2024-08-05 12:25:33 -07:00
Mady Mellor
d9873c1039 Merge "Move bubble icon / content loading into its own controller class" into main 2024-08-05 17:23:28 +00:00
Treehugger Robot
a879d68b59 Merge "Use onTaskThumbnailChanged as sourced of truth for thumnbail override" into main 2024-08-05 17:09:28 +00:00
Alex Chau
67a1006f56 Use onTaskThumbnailChanged as sourced of truth for thumnbail override
- Both RecentsView.screenshotTask and RecentsView.updateThumbnail uses thumbnail that comes from recentsAnimationController.screenshotTask. recentsAnimationController.screenshotTask always results in TaskVisualsChangeListener.onTaskThumbnailChanged, which is a better source of truth to rely on rather than having 3 entry points for thumbnail override
- As a thumbnail objects from onTaskThumbnailChanged has the same snapshotId but are different instances, updated RecentsViewModel.waitForThumbnailsToUpdate to reflect that

Bug: 342560598
Test: RecentsViewModelTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I79b6e32224df4192e8df6930d87b222ed93bf8d8
2024-08-05 12:55:16 +01:00
Mykola Podolian
f34c84e99a Merge "Refactored TaskbarInsetsController" into main 2024-08-03 03:52:31 +00:00
Vinit Nayak
3d5c302f04 Merge "Remove non-shell transitions split code from SystemUiProxy" into main 2024-08-02 23:56:22 +00:00
Mady Mellor
5e8c0d60cc Move bubble icon / content loading into its own controller class
I think this simplifies the BubbleBarController class and makes it
a bit easier to deal with the optional overflow (done in other CLs).

Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - add some bubble to bubble bar, check that the overflow
               is there & can be opened
Bug: 334175587
Change-Id: Ie17fa0279a981a019d5d50b9f71dc87f49d98dee
2024-08-02 10:30:00 -07:00
Riddle Hsu
a3c17fc075 Use rotation hint to update layout
The info from DisplayController is the rotation of display.
While the rotation hint is from the current configuration of
the activity. Because system supports to display activities
with individual rotation at the same time, it is more accurate
to use the hint for layout.

Because there are 4 DeviceProfile instances for 4 rotations.
The instance will be used for corresponding rotation. So the seascape
attributes is a final state which no longer needs to be updated.

Bug: 356164050
Flag: EXEMPT bugfix
Test: Enable auto rotation. Enable home rotation.
      Launch a fixed portrait activity.
      Rotate device to 270 degree (seascape).
      Swipe navigation to return to home.
      Home should use 270 layout directly instead of 90
      and then change to 270 after animation is finished.

Change-Id: Iad0f6ada0ec1cb7f0b5281b508d58276332076fb
2024-08-02 16:40:24 +08:00
mpodolian
8f08dff1f2 Refactored TaskbarInsetsController
Refactored
onTaskbarOrBubblebarWindowHeightOrInsetsChanged(). Made code more kotlin
idiomatic and easier to read.

Flag: com.android.wm.shell.enable_bubble_bar
Test: N/A. Refactoring
Bug: 356903636
Change-Id: If839856c449a9799c4c039d5e9b7fd30595c11aa
2024-08-01 17:59:48 -07:00
Mykola Podolian
a75794384c Merge "Updated how taskbar touch area is being set." into main 2024-08-02 00:18:20 +00:00
Vinit Nayak
eb6405115b Remove non-shell transitions split code from SystemUiProxy
Bug: 266482558
Flag: EXEMPT cleanup
Test: Compiles
Change-Id: Ia9d2a7661a0f1833aed08194f23822765769bb14
2024-08-01 16:51:52 -07:00
mpodolian
2ed3a37c70 Updated how taskbar touch area is being set.
Included bubble bar bounds to the taskbar touch area instead of
replacing taskbar touch area.

Fixes: 356903636
Flag: com.android.wm.shell.enable_bubble_bar
Test: Manual. Switch to the persistent task bar mode, have bubble. Go to
any application or overview. Task bar icons are touchable.

Change-Id: I3775c2e69a7bf89f1d5223707d7c4c94175fcfa8
2024-08-01 15:18:03 -07:00
Vinit Nayak
557868618c Merge "Remove non-shell transitions code from SplitSelectStatController" into main 2024-08-01 19:23:48 +00:00
Treehugger Robot
a6e8616980 Merge "Revert "Add debug logs to TopTaskTracker"" into main 2024-08-01 16:07:57 +00:00
Treehugger Robot
dae3f1d6ca Merge "Increase number of triggers for taskData reloading in TasksRepository" into main 2024-08-01 13:41:26 +00:00
Treehugger Robot
ca4cc641ce Merge "Fix filtering of DesktopTaskViews" into main 2024-08-01 12:29:09 +00:00
Alex Chau
4c7dcc4b02 Increase number of triggers for taskData reloading in TasksRepository
- Simplified AbsSwipeUpHandler.switchToScreenshot to remove the unused refreshView=false parameter, so we RecentsView.updateThumbnail don't need to return a TaskView
- Changed TasksRepository.setThumbnailOverride to addThumbnailOverride, that'll accumulate overrides being sent to it
- Handled RecentsView.updateThumbnail to add an override to TasksRepository
- visibleTaskIds being sent to TasksRepository now take acccount of fileering out mTmpRunningTasks
- Updated a few TODOs around thumbnail/icon reloading

Bug: 342560598
Test: TasksRepositoryTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: Ia892819c45f20e82fbda275fd0e39081d6362cb6
2024-08-01 12:42:00 +01:00
Orhan Uysal
9c0392e08d Fix filtering of DesktopTaskViews
When finding last active tasks we didn't account for the fact that there
could be more than 2 tasks in a GroupTask. This cl fixes that so it
finds the correct last active tasks in desktop cases.

Also make sure that if a  DesktopTaskView is found, we don't launch it
through TaskView#LaunchTasks to create a transition that we can handle
in WM Shell.

Fix: 327447672
Fix: 354171747
Flag: EXEMPT Bugfix
Test: atest SplitSelectStateControllerTest
Change-Id: I71cc630a79f23e5eaad10b3c2284496422ce6994
2024-08-01 10:12:03 +00:00
Vinit Nayak
3c33587809 Remove non-shell transitions code from SplitSelectStatController
Bug: 266482558
Test: Compiles
Flag: EXEMPT cleanup
Change-Id: I12674a0b72be7340afb27ee5d5906970c3da74cb
2024-07-31 17:07:11 -07:00
Jagrut Desai
1a9ad91ec9 Merge "Taskbar Divider Container" into main 2024-07-31 22:59:49 +00:00
Jagrut Desai
c51eaf2a5c Taskbar Divider Container
This cl includes
	- Taskbar Divider container implementation without click listenrs.

Test: Presubmit
Bug: 350571890
Flag: com.android.launcher3.enable_taskbar_customization
Change-Id: I07edd35c685b20e335d358aff2d15b09f6b73f14
2024-07-31 13:39:07 -07:00
Treehugger Robot
c6290acda3 Merge "[dev_option][More flags 4/n] Update all usages of Taskbar-show running apps flag to use DesktopModeFlags." into main 2024-07-31 19:48:54 +00:00
Mykola Podolian
fcde085beb Merge "Integrated new BubbleStashControllers into the existing code." into main 2024-07-31 16:43:17 +00:00
Alina Zaidi
a9a5ecf3dc [dev_option][More flags 4/n] Update all usages of Taskbar-show running
apps flag to use DesktopModeFlags.

Test: Current tests pass
Bug: 348193756
Flag: com.android.window.flags.show_desktop_windowing_dev_option
Change-Id: Id63de7c9630fcc5ab2185829b42883e51774cfcf
2024-07-31 15:34:46 +00:00
Alina Zaidi
00614eae0e Use DesktopModeStatus#canEnterDesktopMode instead of just Flag check.
Test: Existing tests pass
Bug: 349544589
Flag: EXEMPT minor refactoring
Change-Id: Idf572d48d35b8eeedd7fd1b8c608834d27a818e7
2024-07-31 10:47:16 +00:00
mpodolian
484ff0fe9c Integrated new BubbleStashControllers into the existing code.
Integrated the PersistentTaskbarStashController and the
TransientTaskbarStashController into the launcher code. Made changes to
the TaskbarInsetsController to set appropriate touchable zones. Updated
the TaskbarUIController to not start the overview transition on clicks
for the collapsed bubble bar.

Bug: 346391377
Fixes: 350065038
Fixes: 355664783
Flag: com.android.wm.shell.enable_bubble_bar_in_persistent_task_bar
Test: com.android.launcher3.taskbar package tests

persistent taskbar and transient taskbar manual testing:
- on launcher home screen expand bubble bar, switch between bubbles,
remove bubble via bubble menu, add bubble, remove bubble with the drug
gesture, add bubble, collapse bubble bar
- repeat previous test on launcher overview screen and inside any
application
- after last test drag expanded bubble view to the opposite side of the
screen

Change-Id: I50f2c510854c4895fdfc9bd453a261c2103286fd
2024-07-30 18:36:05 -07:00
Jagrut Desai
f35cb42732 Merge "Initialize TaskbarFeatureEvaluator and SpecsEvaluator onlyu if customization is on" into main 2024-07-30 22:19:10 +00:00
Vinit Nayak
0e5e564557 Merge "Call FallbackRecentsView#init() before setContentView()" into main 2024-07-30 20:05:11 +00:00
Mykola Podolian
bd8b839e0d Merge "Added scrim visibility check." into main 2024-07-30 18:19:01 +00:00
Vinit Nayak
aeecb1e8a5 Call FallbackRecentsView#init() before setContentView()
* Init sets mSplitSelectStateController which RecentsView
then uses in onAttachedToWindow(). That needs to be set
before it gets attached to the window, which happens in
RecentsActivity#setContentView()

Fixes: 332643607
Test: Only presubmit, issue not reproducible
Flag: EXEMPT bugfix
Change-Id: Icc555cad17b734e2a9c035991c19bbdc6b02de5d
2024-07-30 10:48:40 -07:00
Mykola Podolian
0211d2e168 Merge "Change shadow drawing for bubble bar icons." into main 2024-07-30 17:16:51 +00:00
Jon Miranda
e8b47c540f Merge "Add support for taskbar background to wrap around hotseat" into main 2024-07-30 15:59:48 +00:00
Liran Binyamin
6c2e466edd Merge "Animate the bubble badge" into main 2024-07-30 12:35:32 +00:00
Alex Chau
e7a87f3fa8 Merge "Don't show splash when thumbnail is null in SplashAlphaUseCaseTest" into main 2024-07-30 10:44:50 +00:00
Tracy Zhou
2003bc8dd8 Do not synchronizeNextDraw in phone mode
Bug: 355973871
Test: Needs to verify with perfetto traces
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I84c258020951274915792d75d67c263135bbf2a9
2024-07-29 18:27:09 -07:00
mpodolian
c10de368a2 Change shadow drawing for bubble bar icons.
Removed an outline provider for the BubbleView, so framework shadows are
not drawn. Use BubbleBarBubbleIconsFactory to generate icon with the
shadow so it looks consistent with the taskbar and the hotseat bar.

Fixes: 345490679
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual, screenshot before fix:
https://screenshot.googleplex.com/86ZhQENANboZK87
screenshot after fix:
https://screenshot.googleplex.com/3hNboaSaS9tZ9DS

Change-Id: I9ae3624e652e4f609b29ae0f57a47d4a6d01e94b
2024-07-29 16:25:54 -07:00
Jagrut Desai
5e8b535af6 Initialize TaskbarFeatureEvaluator and SpecsEvaluator onlyu if customization is on
Test: presubmit
Bug: 353841430
Flag: com.android.launcher3.enable_taskbar_customization
Change-Id: I5699e99eee0817327ca66598bfccb622801762ab
2024-07-29 15:14:55 -07:00
Liran Binyamin
612263104b Animate the bubble badge
The bubble badge now scales together with the expand and collapse
animation of the bubble bar. The badge for the selected bubble is
always kept at full scale.

Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 349826874
Test: manual
       - create some bubbles in the bubble bar
       - expand and collapse the bar
       - observe badge icons scale accordingly
Change-Id: I04e9174f4a921e404cb3162337f594c16478b16c
2024-07-29 08:06:55 -04:00
Alex Chau
2a640c61a7 Don't show splash when thumbnail is null in SplashAlphaUseCaseTest
- thumbnail is always null to begin with, and we don't want the splash icon to ever shown in Overview, so it should default to hidden

Fix: 356079562
Test: SplashAlphaUseCaseTestTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I2a010f911814fda2bbcf0ca7ebc7192580772076
2024-07-29 11:28:19 +01:00
Treehugger Robot
453734f09e Merge "Support switch to screenshot for TTV" into main 2024-07-27 00:14:26 +00:00
Jagrut Desai
65b5eb472e Merge "Unit Testing for TaskbarEduTooltipController" into main 2024-07-26 22:44:16 +00:00
Alex Chau
378622c907 Support switch to screenshot for TTV
- Moved live tile decision to TaskThumbnailViewModel, and added RecentsViewData for runningTask information
- Implemented a ThumbnailData override mechanism to override screenshot from TaskThunmbnailCache, the override will be added during switchToScreenshot and cleared when user exit recents (RecentsView.reset)
- During the thumbnail override, we wait until the new ThumbnailData propagates, before finsihing Recents animation to avoid a frame of flash

Bug: 343364498
Test: TaskThumbnailViewModelTest, TaskRepositoryTest, RecentsViewModelTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I776943ecdfa0d65d94b054692297b42686f59f8a
2024-07-26 21:25:58 +01:00
Schneider Victor-tulias
c8a533d542 Revert "Add debug logs to TopTaskTracker"
This reverts commit 86b9ad4ff7.

Reason for revert: debug logs no longer needed

Change-Id: Ia64f9e50934ac685f75f5109fc694720a07f17ac
2024-07-26 19:25:36 +00:00
Jagrut Desai
5af1bfbf52 Unit Testing for TaskbarEduTooltipController
This CL includes
	- TaskbarEduTooltipController Unit Test for all edu logic and hide tooltip
	- Test util class for taskbar controller test to run the test on main thread.
	- Refactored other controller test to use the new util function to run test on main thread.
	- Ability to disable running test in test harness mode.

Test: Presubmit
Bug: 346394824
Flag: TEST_ONLY
Change-Id: Ic623df8e7a58ac48d260e592ffab61d1f0658aef
2024-07-26 12:14:50 -07:00
Mykola Podolian
550927be44 Merge "Added TransientTaskbarStashController implementation." into main 2024-07-26 16:59:46 +00:00
Perry Wu
f1e7136cce Merge "Fix launcher KCA updates when entering -1 screen" into main 2024-07-26 16:14:42 +00:00
Jon Miranda
5dc07d786f Add support for taskbar background to wrap around hotseat
Currently only enabled for app launch animation

Future work is planned:
- Overview to home
- App dismiss
- When QSB is drawn inline

Bug: 345768019
Test: Launch an app, taskbar background and stashed handle will
      first wrap around hotseat before transforming into the
      stashed handle.
      Verified by locally forcing taskbar background and
      stashed handle to always draw.
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: I9ab1870f87247b6a1b53a352ac3eb0183b7a1a1d
2024-07-26 08:10:50 -07:00
Vinay Joglekar
084fe14c50 Merge "Remove todo to Support sysUiStatusNavFlags" into main 2024-07-26 11:52:35 +00:00