- We now calcualte the first task's start position, and compared against the expected position (mLastComputedTaskSize) to determine if we need extra translation for ClearAllButton
- The calculation is done with `mIsRtl = true`, and only only flip +/- when applying translation
- http://screen/brM3taew74Z3uZJ shows what happens without clearAllShortTotalTranslation:
- Blue area is mLastComputedGridSize, green area is longRowWidth
- firstTaskStart is caculated from left of grid size, adding longRowWidth
- Red area is mLastComputedTaskSize, where focus task is in the middle (for grid-only-overview it's in top right)
- clearAllShortTotalWidthTranslation is the yellow area
Fix: 354104098
Test: With normal/largest display size, LTR/RTL, focus task /grid only Overview, swipe up with 1/2/6/7 tasks
Flag: EXEMPT BUG_FIX
Change-Id: I324eebc0a2b2129a4ba62d4569bc555b74140c21
Also fix calculation for divider position during this transition
when there are recent apps. Added tests as well.
Flag: com.android.launcher3.enable_recents_in_taskbar
Flag: com.android.window.flags.enable_desktop_windowing_taskbar_running_apps
Test: TaskbarViewControllerTest
Bug: 343522351
Change-Id: Ifffd620c1d4c156b37561584d6e3278b39804439
Debugging locally, it seems there were a couple of state changes
and the last one (which is correct) was getting clobbered by a
previously destroyed instance of TaskbarLauncherStateController.
Fixed this by updating the isDestroyed() call which previously
only checked TaskbarActivityContext to now check
TaskbarLauncherStateController's destroyed state directly. This
is needed because TaskbarLauncherStateController is part of
LauncherTaskbarUIController which can be destroyed independently
of the other Taskbar controllers when Launcher is destroyed.
Also fix a debug log that was not updated long ago in ag/21122190
Flag: EXEMPT bugfix
Test: Go to overview, change Font Scale or Dark Theme from Quick
settings, ensure Taskbar is not visible over Hotseat
Fixes: 302923055
Change-Id: I1299462955b51a2bf931f022177045b1cec039c5
Animation is modeled after the notification dot animation.
- This avoids the ring jumping in after swiping up to home to
a predicted app.
- Also decreased the amount of time the icon has to fade out so
that it shows up less during the animation.
Fixes: 360115794
Test: open predicted app from hotseat, swipe up to return home
Flag: EXEMPT bugfix
Change-Id: I59659610eb2e9f375a408d553bb4aa80947a28c4
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
- All taskViewIds become obsolete after removing and re-adding, so we'll need to reset mTopRowIdSet when removing all taskViews
- OverviewActionsView.updateActionButtonsVisibility can be called before updateDimension (where mDp is set), so a null check is necessary
- Fixed TestStaibilityRule failing when running FallbackRecentsTest alone. FallbackRecentsTest runs with 3P Launcher, in that case launcherPackageName is our test activity, and launcherVersion can be null. This can only occur in a local run, thus return LOCAL in this case.
Fix: 355042336
Test: FallbackRecentsTest and manually testing dismiss
Flag: EXEMPT BUG_FIX
Change-Id: I9125ea38a567deb0d3028e7d7407397d1dc06ade
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