This prevents old scopes still being active when new TaskView state emissions are being sent to main. They were previously cancelled in time but still result in empty continuations occuring on main.
Bug: 395294954
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: Manual - checking perfetto traces
Change-Id: I539a6fde8c9315ceeac74c9bf622d1e2dca1403a
This fixes an issue with the desktop task view unexpectedly jumping
first to the right, and then back to the left. See the bug for more
information.
Flag: com.android.launcher3.enable_desktop_exploded_view
Test: Manual
Bug=399822967
Change-Id: I3713b20effa2a7f25ca04ed83ed524772d23ca2f
The emissions of each TaskView on Overview open are usually:
1. task exists
2. icon loaded
3. then thumbnail loaded
If the 3 updates above come in quick succession, then ideally the first 2 will be debounced and the last one will be consumed immediately.
Debouncing only when thumbnails are not present gives the best results. This is because thumbnail loading is a decent predictor of there being no more emissions to come as they are typically the last emission for a TaskView.
Bug: 395294954
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Test: ABTD run of failing metric
Change-Id: Ib57d6dc7d9f58b7bb37ec1177b23d89360c24c0e
- If onPrepareGestureEndAnimation is called with null aniamtorSet, plays the dismiss animator directly with 0 duration
Fix: 405368787
Flag: EXEMPT bugfix
Test: manual, adb shell input keyevent KEYCODE_APP_SWITCH or Window + Tab with keybnoard from home
Change-Id: I16048f9454f79e2828c6a4a75b788b9838e886ab
Let `isGestureBlockedTask` return false directly if
`mGestureBlockingTaskId` is not valid. This can avoid
the caller go to create incorrect InputConsumer when
the chekcing `taskId` is also invalid.
Bug: 402218420
Flag: EXEMPT bug fix
Test: m
Change-Id: Ia0cde8ee2b97fc92028458d01487d958f2e87a80
Bug: 404582684
Flag: EXEMPT bugfix
Test: Manually verified that values are same as before even after changing refresh rate `adb shell settings put system peak_refresh_rate [30/60/90/120]`
Change-Id: I5d5468d8ab81a9a5e8d8cd67a9097423b750edb3
Flag: com.android.launcher3.enable_launcher_overview_in_window
Fixes: 405201109
Bug: 377678992
Test: used quick switch gesture from home with flag enabled. presubmit tests on temporary test cl
Change-Id: I8dbd3a41c350aba6c785aa0b2c8f20da7a468998
Added scrim in overview over blur.
Bug: 404479758
Test: Manual. Enter overview from home with and without tasks in handheld devices.
Flag: com.android.launcher3.enable_overview_background_wallpaper_blur
Change-Id: If8cb37099f2e2b1fa8bed1611ed359b49f255d64
This way any subsequent state changes during the animation will
cancel it. Previously swiping up to All Apps immediately after
going home would cause the 2 depth animations to interleave,
ending with a depth of 0, for example. Now the workspace depth is
cancelled and the All Apps depth is correctly applied.
Demo: https://drive.google.com/file/d/1R1BwYAsxj31FDgAeIZqZdJbuSz7s9PZy/view?usp=sharing&resourcekey=0-4UyZfAMxecSHWAyqyeNZmg
Fix: 405836159
Test: Manual (swipe home and immediately to all apps)
Flag: EXEMPT bugfix
Change-Id: Iac32f2a03a5cbbb297c71ebd9cfedc8ee6e8cae7
This shows up if the launcher is in a sw600dp-or-greater configuration.
Test: AspectRatioSystemShortcutTests
Test: OverviewMenuImageTest
Test: Manual check on phone, tablet, and inner/outer fold screens.
Flag: com.android.window.flags.universal_resizable_by_default
Bug: 357141415
Change-Id: I1bcbf9299d28ce68cccd636d92ed7195d64736eb
Migrate all the call sites of `TopTaskTracker.getPlaceholderTasks`
and `getSplitPlaceholderTask`s to the new API
`getPlaceholderGroupedTaskInfo`
Bug: 401582344
Flag: EXEMPT refactor
Test: m
Change-Id: I0d71508f4dd9633fea025ed842c4c048d0e70462
This CL just introduces an API inside TopTaskTracker to return
a GroupedTaskInfo, no existing logic being migrated to it yet.
It will be used to replace `getPlaceholderTasks` and
`getSplitPlaceholderTasks` in the follow-up cls.
Bug: 401582344
Flag: EXEMPT, introduce a new API without usage
Test: m
Change-Id: Ic12003833605582d191c4abfd4a0878c266dd30f
This CL just moves existing code to use view stubs. The refactor CLs
will use the flag to conditionally inflate these views.
Bug: 405359346
Fix: 405359346
Flag: EXEMPT refactor
Test: Existing screenshot tests and manual demo
Change-Id: Ib023d5f3538a0959a5965704a4ff18d769f8aa94
This test is flaky in robolectric but does not repro locally.
Looking at the test it verifies that the animation doesn't get
canceled immediately after it starts. So the scenario here is an
edge case for something that shouldn't happen generally because
the animation is controlled in this class, although theoretically
other classes could obtain a reference to the physics animator and
cancel it directly. But since the test flakes badly, we're better
off without it until it can be fixed.
Bug: 404773413
Flag: EXEMPT test only
Test: atest BubbleBarViewAnimatorTest
Change-Id: I24493b71842a2fe859ffe40b6f375ade7ee8535d
This would create another SurfaceControl object through IPC, which is
unnecessary because the animation should run through
BackAnimationRunner.
Flag: com.android.window.flags.remove_depart_target_from_motion
Bug: 395035430
Test: execute back-to-home transition several times, verify no
predict_back animation leash left in offscreen layer.
Change-Id: Ib54380411438fc7169a37740bf09d7d83344f916