The problem is that currently upon touch down we place recents above app, before recents view is visible, so instead home screen is revealed.
Here is the breakdown:
Initial touch down -> app on top
First move event -> updateFinalShift -> recents on top
End target = home -> app on top
Fixes: 175423704
Test: manual
Change-Id: I81a4fea34c983ac2e6921f4e3515ef3193201069
- Map to progress 1 instead of dividing by 0 if expectedDuration == 0
- Map to starting progress one frame ahead based on velocity
- Change direction of velocity so it's in the same direction as the
task progress (0 is down and 1 is up).
Change-Id: I5ac3f8a0d6c616bd303ac1a902242964bb33d3c7
Previously, we were using scroll direction POSITIVE as a catch all
to mean "up" but in seascape, we actually want NEGATIVE. Added
getUpDirection() to capture that. Tried to clarify the code a bit
by putting all the methods used solely by TaskViewTouchController
together with documentation. It's still pretty confusing and feels
redundant, but couldn't think of an obvious way to simplify.
Test: Swipe up and down on a task in all permutations of:
- 3 button mode
- Gesture navigation
- Portrait
- Landscape
- Seascape
- LTR
- RTL
- Home rotation allowed
- Home rotation disallowed
Fixes: 174009771
Fixes: 173567204
Change-Id: Id0f8d6f4365d888eb46182d8544d18206795dfb8
It will help finding jank in the quick switch
scenario.
Also removing tracing for cases when it's done
by the jank monitor.
Test: manual
Bug: 174892351
Change-Id: I16fc784ddb52203dba54eab2700b5a04a10088ff
Giving the gesture nav tutorial sandbox environment a more accurate look and feel requires the ability to inject mock drawables. The choice of drawables should go to TutorialControllers.
Bug: 175019879
Change-Id: Ie5b03b3fa07b017c0596a58dedf65d3e866a0727
This shortcut allows users to initiate peer-to-peer app sharing from an app's long-press menu on the home screen. It does so by passing an intent to the specified component. In this base implementation, that specification in config.xml is left blank, and the button will not appear. In GMS Launchers such as LauncherGoGoogle, the config should be set to point to Nearby Sharing.
This also establishes Launcher3QuickStepGo as a distinct subclass of QuickstepLauncher instead of merely a build configuration.
Bug: 157515296
Bug: 174286192
Test: Manual (tested on local wembley devices)
Test: m -j RunLauncherGoGoogleRoboTests
Change-Id: I826bd03721d2e7e963b15d5958e9a18a1cc16f1d
Defer the action of onStopGestureDetected() from ACTION_MOVE
to ACTION_UP in OneHandedInputConsumer.
Bug: 171307756
Test: manual
Change-Id: Ie4a3cb0ba4477c131191a7ed1cf4daec2d364285
This created jank at the end of quick switch.
Test: Manual
Bug: 173640772, 173072373
Change-Id: I86088255fa0cd8b369d9efec53fdac81210e71db
Change-Id: I96f821013d900ef57d61c462f897cba17f106bb8
Moving expensive actions from the last
frame's rendering.
This reduces the max frame time from > 16 ms
to <= 8 ms, which is good for now.
Test: Trace, metrics
Bug: 173640772
Bug: 173072373
Change-Id: I6d06a129f68d9b26f52c773b817558c77604ae5e
Fixes issue with jittery displaying of suggestion chip, when entering overview.
Merging into master manually as automerger failed.
Tested:Manual
Change-Id: I8228c51b22d550cb8f0aa559f997060b571763f1
(cherry picked from commit ed5e43bd25)
Test: manual, presubmit on the source branch
x20/teams/android-launcher/merge/ub-launcher3-master_master_6976145.html
Change-Id: Ic13b1a20cc3d555e8e86717ca0da97103ff09c85
This is a part of Blue Chip de-janking effort and is
a P0 item in our CUJ list.
In the last frame of the app-open animation, we have
a
android.view.IRemoteAnimationFinishedCallback$Stub$Proxy.onAnimationFinished call
which is blocking and prone to lock contention in WindowManager.
Moving the call to after the animation.
Bug: 173072373
Change-Id: If5eb6469900d1892b861eda6d6b4807d90630b6b
Hotseat predicted app updates were only being allowed then the hotseat was invisible or when the workspace was loading. This was too strict. Changed the logic to ignore hotseat visibility when the workspace is loading, when there are empty spots in the hotseat and when the predicted items are unchanged. This ensures the hotseat always has the intended number of icons and that icons can be updated in-place.
Fixes: 172597819
Demo: https://drive.google.com/file/d/100svnqX048Da7vues2p-vvQNN6sIF8v4/view?usp=sharing
Change-Id: I2f93ff44618c0282a6411918c34d70f75ec73b73