This CL updates the DesktopTasks in the RecentsView to be displayed after the focused task, separated from the other tasks in the grid. The DesktopTasks will be larger, following the same size used for focused tasks.
It was necessary to do the following changes to support DesktopTask at the front of the list.
1. Sort the GroupTasks in applyLoadPlan to move DesktopTasks after all other tasks.
2. Update the target page to take into account the DesktopTasks after the running task.
3. updateGridProperties had to support DesktopTask and Focused Task to be positioned at the front of the list. This function updates view translations to support the grid with two rows and rebalacing the position after a task is dimissed.
4. Update the max and min page scroll. Updated getFirstViewIndex to check for a DesktopTaskView, and if it doesn't exist, it uses the focused task as reference.
5. TaskView.updateTaskSize was updated to prevent DesktopTaskView being resized. This change makes DesktopTaskView to have the same size of our current focused task.
6. Update several places using focused task to use isLargeTile.
Bug: 353947137
Fix: 353947516
Fix: 353947467
Fix: 353947334
Flag: com.android.launcher3.enable_large_desktop_windowing_tile
Test: OverviewDesktopTaskImageTest
Change-Id: Ic7c0d8340ca259e8644de180aa6859a3c968d66e
This fixes notification shade not being able to swipe up to the edge during animation because it listens to the task bar visibility signal
Fixes: 352365691
Test: https://b.corp.google.com/issues/352365691#comment28
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I10d6f49d087dd85b3a8bc5894f76f5d46ba4a865
ArrayList.add is not thread-safe. Attempting rapid calls across threads is the only way for it to throw ArrayIndexOutOfBoundsException.
Flag: EXEMPT bug fix
Fixes: 360619084
Test: checked TIS logs
Change-Id: I66e5f2e13d5237717abcf42e56efa2942f317676
- Automatically determine the Overivew component to use the correct RecentsViewContainer
- Also added log on both pre-computed taskSize and newly calculated task size
Bug: 336660988
Test: presubmit
Flag: TEST_ONLY
Change-Id: Ic0adfba35af513e731007241416fc85760135f07
Currently, when we stage the first app in a split, the floatingTaskView has no contentDescription and is announced by screen readers as "unlabeled".
This CL allows FloatingTaskView to copy a contentDescription from the underlying task or ItemInfo when it is created.
Also changes SplitConfigurationOptions#itemInfo to a private field with a public getter for mockito compatibility.
Fixes: 319783133
Test: Confirmed with TalkBack on Overview, contextual and Intent splits
Flag: EXEMPT bugfix
Change-Id: Ia5a95e403bfe8623e17d2ceac9073ef15c7bb476
Taskbar does not know if the icon clicked will result in a translucent
activity. After this change, taskbar app stashing logic is now the same
between taskbar and home launches.
We should still stash after split screen, because in the case of
translucent activity the background becomes opaque.
Fixes: 354627538
Test: Pause app in hotseat, go to overview, launch paused app
note that taskbar does not go away
Flag: EXEMPT bugfix
Change-Id: I3d3ed7a6ca10090c7207b45d0b272dc4fc928e32
Instead of unstashing bubble bar in TaskbarUnstashInputConsumer
handle it in its own input consumer instead. This is a nicer
separation of concerns and simplifies the logic in both places.
Additionally, this fixes issues where swiping up the bubble bar
handle might initiate / be handled by gesture nav (or all apps) when
really any events originating on bubble UI should be managed by
bubbles instead.
Adds some mostly mock'd tests to check that the static method used
to indicate if bubbles should take the event or not works correctly.
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - test swipe up on bubble bar handle in an app
- test swipe up on bubble bar on home - it should
open & all apps / launcher transition shouldn't happen
- longpress to drag bubbles around on home and overview,
try the collapsed bar & individual bubbles in the
expanded bar
- test dragging on the bubble bar after it's revealed
in an app
Test: atest BubbleBarInputConsumerTest
Bug: 345488529
Change-Id: I964d213d71de15e4350cff5202dfb9343de1af14
- We no longer support the legacy recents animation cancel path
(it was already a no-op)
- Use the shell recents transition path instead of the legacy recents
animation for remaining use cases
Flag: EXEMPT cleaning up unused code
Bug: 359608026
Test: Test both kb shortcut and desktop split invocation paths
Change-Id: I2726d52b3b4f3533afc4286b155c71eadcb57909
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - test dragging bubbles with the other CL
Bug: 345488529
Change-Id: I95085fd18f2710cd36a2d47640641da047aa48c7
The issue existed because of taskbar insets where set to the full height
of bubble and task bars. Added check that only adds bars touch area if
the user is currently not on the launcher home screen. Commented failing
tests.
Bug: 358301278
Bug: 359277238
Flag: com.android.wm.shell.enable_bubble_bar
Test: Manual.
http://recall/-/gx8ASgewUeUS3QYohfrd1J/hcgYuHUJwfbhlvPRsvdWYf
The touch area is within the red rectangle.
Change-Id: I3c2ad3633a049972b93fe5c5e45efd557c220e1f
- Nothing currently detaches the nav bar from the app until the recents
animation completes if onAnimationStart() happens after the end
target is set
Flag: EXEMPT bugfix
Fixes: 343457097
Test: Artificially introduce delayed onRecentsAnimationStart and verify
detachNavFromApp is called
Change-Id: I1ec0d8821d61f9fad9a811d6a12ce21e8417252f
Somehow deviceProfile.isGestureMode doesn't have the right signal for tests.
We need to look into why dp doesn't have the right signal for isGestureMode in tests. Temporary fix here to unblock pushing the flag to staging
Bug: 359196354
Test: https://android-build.corp.google.com/builds/abtd/run/L05600030005823769
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: Ie6451812cf4b0c3f034cabdfd4cec726322af0bc
One case I missed was a bubble being added/removed AND the overflow
showing... this isn't the nicest, but when the add/remove animation
is done, animate the overflow in.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 358304168
Test: manual - don't have the overflow showing, add a 6th bubble,
observe that the overflow appears
Change-Id: I1a9cec3970f5535e935f3404fa6dbd6de2f69fa5
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - have bubbles in bubble bar, switch between transient
taskbar and pinned taskbar repeatedly.
Bug: 359096619
Change-Id: I02beacff64b12380ee6d134b7dcc64cfd27e4b0b
- See http://go/b320307512_problems for details
- Adding the following to DesktopTaskView's launch animation
- Problem 1: Animate away DesktopTaskView's background according to fullscreenProgress, instead of a jump cut
- Problem 2: Animate Overview's background to transparent to reveal the wallpaper behind
- Problem 3: Animate wallpaper's zoom back to 1
- Problem 4: Apply TaskRectTransltion in TaskViewSimualtor for DesktopTaksView as well, which is used to account for TaskView not in center.
- Problem 4: Also applied RecentsView zoom in animation when TaskView is not in center, to make the whole DesktopTaskView container (backgroundView) moves as a whole. This requires calculating a new pivot before applying the zoom.
- Problem 5: When swipe down or quick switch from home into Desktop, run DesktopRecentsTransitionController without animation to put everything in the end state immediately to avoid animating again
- Problem 6: For swipe down animation, we now let createAdjacentPageAnimForTaskLaunch handle the wallpaper zoom and splash alpha, instead of doubling the effort. In case of Desktop, wallpaper depth be aniamted to 0 (no zoom/blur)
- Problem 6: Bring Desktop live tile to front during swipe down to avoid wallpaper blur applying to the desktop
- Problem 7 and 8: Crop out desktop window outside full screen bound. This is done by calulating intersection between full screen Rect and desktop window's Rect
- Problem 8: Make swipe down to use thumbnailBounds instead of bounds of the first snapshotView, this fixes all situations that first snapshotView's height is different from TaskView (e.g. vertical split, DesktopTaskView)
- Problem 9: Desktop remote target's alpha should remain 1
Bug: 320307512
Test: TaplTestsOverviewDesktop, motion fixes are tested manually
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Iae6e594424dfc89851b4f7179b0fb5b5ac5e7f46
Signed-off-by: Alex Chau <alexchau@google.com>
After dragging the bubble bar to dismiss, don't reset its alpha
value.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 359804931
Test: manual
- Create a bubble in the bubble bar
- Drag bubble bar to dismiss
- Create another bubble
- Observe the new bubble does not flicker
Change-Id: I8d56f71d38ec33acda8efade50735b59254d77d4
With optional overflow, we need to check for actual bubble count
before animating the bubble bar to its initial state.
Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 359403793
Test: manual
- create first bubble on home
- observe bubble bar animates correctly to initial state
- add second bubble
- observe bubble bar bounces correctly and does not slide
in from the bottom of the screen
Change-Id: I53a34bc00b24e8a6504bcca0532054755554b9ac