Since we update the progress of the launcher anim when
recents scrolls, we were essentially jumping back to
the overview state every couple frames. Now we don't
update that shift once we're in long swipe mode.
Bug: 111926330
Change-Id: Ib751becb70df71679ff7557f113d6339a39777d0
Removed the workaround we had for animating sysui scrim based on SCREEN_OFF
and USER_PRESENT, since it is now properly handled via the unlock animation.
Bug: 65162781
Change-Id: I5341cc1d3b4f0761b8cf58fdc9fc1b895f2a128e
- Punch a hole (by erasing part of launcher where current task is rendered) to reveal app surface drawn underneath using surface transform. We use LauncherLayoutListener before reaching OVERVIEW threshold, and TaskView after threshold due to layering constraint (it's above Overview but below All Apps)
- Render live tile following user-trigger scrolling (horizontal and vertical) by tracking the task view rect.
- When user launches the current running app (through the live tile or icon in the app drawer), finish recents animation to app.
- When user launches another app (through Overview or other entry points where user opens an app), take a screenshot of the current running app, switch to screenshot mode and launch the other app.
- Refactor ClipAnimationController#ApplyTransform to consolidate transforming by progress and by getting the current rect of the app on the screen.
Bug: 111697218
Test: manual test
Change-Id: I0ad764399e872f181a9d65dc453f0175f2b58dd1
Split out overview_panel from recents and override it with IconRecents
version to replace the recents view entirely.
Currently, on the IconRecents build variant, as expected, this hits a
class cast exception since many quickstep classes assume the overview
panel is an instance of RecentsView. All other variants build and push
fine.
Bug: 114136250
Test: Build + push NexusLauncherDebug, Launcher3Go,
Launcher3GoQuickstep, Launcher3GoQuickstepIconRecents
Change-Id: I3ac7331772e53ee81cb1735a709b4fb7b3bdb78c
> Using that task stach changes for maintaining the task order instead of
using the UI load signals.
> On fast task switches, temporary task changes do not contribute to the task
order. Only the final task is braught to the top of the list
> Removing and add tasks do not reset the order
Change-Id: I576cb4ffeec66e115acd327d58c59920c149aaca
This CL sets up the source directories to build a Go version of
quickstep recents/icon recents. This is accomplished by splitting the
quickstep resources/sources into two groups: the base source and
sources that should be overridden (recents_ui_overrides). The new Go
recents variant then takes the base and combines it with the sources
in go/quickstep which should replace the ones in recents_ui_overrides.
As of now, no classes have been moved yet, so there
are only placeholder files.
In addition, this modifies the make and gradle files to reflect the new
sources.
Bug: 114136250
Test: build all targets via tapas, build all APKs from IDE
Change-Id: I6d0a4d93ab1c38d4ffc28fd21823caadd96d23f7
- Swiping straight up and down works the same as before.
- We dispatch the MotionEvents to RecentsView so that it scrolls if you
swipe side to side as you swipe up.
- As RecentsView scrolls, we offset the window to match the position of
the first task
- If you scroll or fling towards the previous app, it will settle on it
and launch it.
Bug: 111699315
Change-Id: I1ff160cfc3ca66302a2506d18a4788015de75b94
* changes:
SyncRtTransactionApplier -> SyncRtTransactionApplierCompat
Track when plugins are disabled due to crashes.
Updating shared lib for context wrapper.
> Using the scroll of the current page instead of page 0
> Starting switch from current page instead of page 0
> Disable task flip animation accordingly
Change-Id: I29b9c6dafca1e856e634f471aa2b1b667158a790
Added new SpringObjectAnimator class that wraps an ObjectAnimator so the
Object can be controlled via the Animator or via a SpringAnimation. It extends
ValueAnimator so that it remains compatible with AnimatorPlaybackController.
Code is behind feature flag toggle QUICKSTEP_SPRINGS.
Bug: 111698021
Change-Id: I1b20179ede37e89a6a6bb2a45d407cc74c99ac4e
- Set padding based on insets (same as noraml nav) rather than
available height (more than normal nav)
- Fill whole screen for quick switch
Bug: 111699315
Change-Id: Ia1392cc0b1ed3600635dbce76d8b945f0337d7cf
This will help keep the code clean when we add more params, e.g. for
live tiles and for the scrolling gesture.
Bug: 111699315
Change-Id: Ia9df40ae85fe29911b957bd9b06b8c8a31f3be39
This way we can update the insets of the adjacent task throughout
the swipe up from an app.
Bug: 111699315
Change-Id: Ieeaa5b6667e44f82e7e097acb9f0552609b15809
This would guaranteed to repro b/118441555 before it was fixed.
The test doesn't use the most powerful feature of race condition
reproducer, which is enumerating all possible event sequences.
Instead, it uses explicit repro sequences, which makes the test much
faster.
Bug: 120628042
Test: The added test
Change-Id: I89a7a9964f160a8a20ba3d9dda2f248237713014
Activity manager can report launcher activity as running when is hasn't
yet been resumed.
Bug: 120628042
Test: TaplTests, Fallback tests, manual tests
Change-Id: I6b382b17d05066a63360acc19e094674ecca7130
- When the launcher activity is killed, the next init will attempt to
create a sync applier, which uses the ViewRootImpl of the target
view. But when onActivityInit() is called, the recents view has not
been attached to the hierarchy so the view root is not accessible.
The SyncRtSurfaceTransactionApplier also ignores scheduling all
updates when it has a non-existant view root, which leads to the
app surface getting stuck midway during a swipe up (only affects the
duration of the animation)
Bug: 119661847
Test: adb shell am force-stop com.google.android.apps.nexuslauncher
then try and swipe up slowly
Change-Id: I8eef9fe38c55c0cb438d63b41c335f78679278a3
The size of the window changes during the animation progress, making the
window look rounded for longer. What we want is to animate it from the
shape of the icon to the shape of the display.
Change-Id: Ib4889b697bf78cdc37c160130fde961650080fb7
Fixes: 120553563
Test: visual