Fixes bubbles stash translation not getting cleared up after stash
animation finishes.
Bubbles are clipped using an outline animator during the stash
animation. They need separate translation applied to keep them within
the bounds of the bubble bar that is also shrinking and moving.
Set the translation for the bubbles in the stash controller so we can
reset the translation after the animation has finished.
Bug: 365829293
Flag: com.android.wm.shell.enable_bubble_bar
Test: TransientBubbleStashControllerTest
Test: have bubbles in bubble bar, trigger a new auto expanding bubble,
check translation for bubbles
Change-Id: Ic194afdb4d650fcd525355d8bae08dd651d1ea05
We were applying padding to taskbar container in 3 button navigation mode which we don't need as icon size are already correct.
Test: Manual, Presubmit
Bug: 364492586
Flag: EXEMPT bugfix
Change-Id: Ib9bf55edf2b7bb67fcbeb044e0ad1e90027b17a6
Use separate timings for bubble icons and bubble bar background when
stashing and unstashing.
Follows alpha timings applied to taskbar background and icons.
Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I485f6346539cb6c8ea6dd4d15f25a6421021fec1
Use a similar animation for bubble bar icons as we use for taskbar. When
stashing or unstashing, use a reveal animator to show the icons.
Previously we were scaling the icons to the desired size.
New reveal animator matches what is used for taskbar.
Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I24b0c64673d6becfa2ed68993bb95fe78e105670
Only scale bubble bar background during stash and unstash animation.
Follows the logic used for taskbar. We scale only the background and
clip the icons separately.
Bug: 345488489
Test: PersistentBubbleStashControllerTest
Test: TransientBubbleStashControllerTest
Test: BubbleBarViewAnimatorTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ifc7922c444f2179fc49643424815e5e7dde519cc
This allows better matching of items who do not have a fixed id
Bug: 364363493
Flag: EXEMPT bug fix
Test: Manual- Verified app launch and back animation
Change-Id: I4f9deba89399b89974686b64226b99f91a3d46be
- This vastly simplified the need to call do a indexed loop with getTaskViewCount() and calls requireTaskViewAt() each time, useful for code that needs to loop all TaskViews
- removeTasksViewsAndClearAllButton and resetTaskVisuals have no reason to loop reversed, so I just loop them in order
Fix: 365534984
Test: presubmit, manual
Flag: EXEMPT REFACTOR
Change-Id: Ib69f8439f3a7509fc57ec2430affa207c038bf46
Fix the root cause of falling tests.
Bug: 359277238
Flag: TEST_ONLY
Test: TaplTestsQuickstep,TaplTestPersistentTaskbar
Change-Id: I1e3138e26d0ab253dff7a64cbb3253c220a7db1a
The WidgetPickerActivity wasn't exposing a string cache for enterprise
overrideable strings, meaning that default fallback messages were showing
when the picker was in standalone (not in the launcher) mode.
Bug: 358002534
Test: Manual
Flag: EXEMPT bug fix
Change-Id: I67ccd46370708fb70a3a5233929a9c3b33c312f7
We should make sure that only either `topMargin` or a Y translation is
used at a time on an Overview snapshot view to avoid seeing the snapshot
shifted down by an unexpected amount.
Detailed explanation can be found here: https://b.corp.google.com/issues/347143158#comment16
Fixes: 347143158
Test: Manually by following the steps described in the above comment and
verifying the bug no longer repros.
Flag: EXEMPT bugfix
Change-Id: I699b0ccd9630c10d973fc28abb1228359184929b
- Surprisingly swithcing between GONE and VISIBLE doesn't cause a jank when swiping up
- Having DigitalWellBeingToast GONE should reduce the amount of time to layout RecentsView when there is no banner, which should fix b/364621823
- It might or might not reduce memory usage in b/364568201
- Also add missing accessibiltiy node for DigitalWellBeingToast
Bug: 364621823
Test: Swipe up with the app having DWB banner in different index, no jank when landing to Overivew
Flag: EXEMPT BUG_FIX
Change-Id: Ibf5a7f5318de509fe572779dd774dce71881aabe
We had several bugs in the past months related to recents button not displaying Overview when using 3 button navigation. For some of the bug reports, we noticed the OverviewCommandHelper pending commands list got stuck and stopped processing the next commands in the list. Sometimes, the pending commands list was cleared while some command was being processed, allowing newer commands to be executed while another command is already running. This resulted in the second callback never returning and inconsistent states for OverviewCommandHelper and RecentsView.
Our logs showed OverviewCommandHelper often got stuck and didn't finish the commands correctly.
To mitigate these issues we updated the following behaviors:
- Implemented a timeout to process the commands in the queue. If the callback doesn't return in a given time, it will drop that execution and process the next one in the queue.
- Fix clearPendingCommands to clear only the pending commands from the queue, and not the running command.
Bug: 352046797
Fix: 351122926
Fix: 361768912
Flag: EXEMPT bugfix.
Test: OverviewCommandHelperTest
Change-Id: I47adf0c54dcbaef63d9b72055e000c26114e96e1
This issue should not happen after b/364860731 fix. The issue happened because the queue was cleared while a command was being processed. Then, onTransitionComplete callback returned and checked if the first item of the queue was the same processed, but the queue was empty.
To prevent future cases of NoSuchElementException, we updated the logic to check the firstOrNull item from the queue.
Fix: 364986456
Bug: 364860731
Flag: EXEMPT bugfix
Test: Manual
Change-Id: Iaa606943db3ff89a7f3012260663c41954d720a7
* If phone auto-rotate is on but launcher rotation is off, if you
launch app pair holding phone horizontally the apps will launch in
landscape but DeviceProfile will report portrait.
* Now we see if all the leaf tasks have their top bounds be 0 to
determine leftRight split-ness
* Animation is still wonky, but acceptable for this edge case for now
Fixes: 356763330
Test: No crash, app pairs launch fine in normal portrait and landscape
Flag: EXEMPT bugfix
Change-Id: I0a067b50751b919bda5446c3e36055e58222bcab
This CL sets the thumbnailView ratio correctly in Alt-Tab UI. The currently supported ratios are `SNAP_TO_30_70, SNAP_TO_50_50, SNAP_TO_70_30`. This can be extended when we add more split modes later.
Bug: 328691131
Test: manual in both landscape and portrait mode.
Flag: EXEMPT bugfix
Recall: http://recall/clips/79f3b250-d691-4b03-93c3-825a80478ae0
Change-Id: Idf4f174d1b222a8f3c80e5c6ed17c5bf53d3368c
Sepcify a positive number which must larger than task layer, to ensure
the scrim layer must occludes home task and wallpaper. Otherwise any
reparent transaction without specify layer could affect the visual
order.
Flag: EXEMPT bugfix
Bug: 363927522
Test: verify the scrim layer above home and wallpaper while playing
back-to-home animation.
Change-Id: I558e29e0ebe72b8efb42cacc9cafd7869b09a40e
- Also simplified DigitalWellBeingToast to be an actual View that is a children of TaskView
- Split out getDwbLayoutTranslations into 2 methods
- One that update layout will be called earlier during TaskView.updateTaskSize. It now takes calcualted split snaphsot size and layoutParams sizes instead of using measured sizes so it can run before onMeasure. Also make sure updateLayoutParams is called.
- One that calulate translations only can be called more frequently without causing jank during animation
- TaskView.updateTaskSize now always set the exact sizes as layoutParams instead of MATCH_PARENT, so we can use the values for updateDwbBannerLayout
- Simplified outline and splitOffsetTranslation calculations
Fix: 345789862
Fix: 362435532
Test: Presubmit and manually testing DWB banner in variaous configuration single/split real/fake portrait/landscape/fake
Flag: EXEMPT bugfix
Change-Id: Ibde877c5f983689e0ef8104ba344b5947d0e3948
1. Announce description of both snapshot in GroupedTaskView.
2. Announce them in correct order.
After setting right content description for both the apps in split mode, announcement order was reverse. Seems that order of the node tree which android sees was wrong. Also order did not change even in RTL mode.
see here https://paste.googleplex.com/6492038621298688.
The correct order is manually set using addChildrenForAccessibility in GroupedTaskView. (similarly being used in RecentsView since we use reverse order for overview). Also considered RTL.
See order after fix here
https://paste.googleplex.com/6492038621298688https://drive.google.com/file/d/1BA1YKkcNsovEu4us9cvq5xOdXviTR1OV/view?usp=drive_link
Other alternatives tried were fixing order using android:accessibilityTraversalAfter and android:accessibilityTraversalBefore, both in layout and programatically which doesn't seem to work.
Test: Manual - Using Node tree debugging of talkback developer options.(Print and filter by tag TreeDebug)
BUG: 330424779
Flag: EXEMPT bugfix
Change-Id: If3c360277bd951d2d2b223bab7844e078e9c7d27
This CL adds a fix to prevent OverviewCommandHelper adding and running a new command when a previous command is already running.
In some cases OverviewCommandHelper queue gets cleared, ignoring if a command is still running. This behavior allows a new command to be added in the queue and executed right away, even that an old command is still waiting for callback. This results in the queue to be stuck due to an invalid state.
To prevent this, we implement the following changes:
- Prevent calling onTaskLaunchedInLiveTileMode from RecentsView when recents animation controller is null.
- Fix clearPendingCommands to clear only the pending commands from the queue, and not the running command.
Fix: 352046797
Flag: EXEMPT bugfix.
Test: Manual.
Change-Id: Ia6afc86424d298353a7ad6755e9a98275330d4ce