Add NavBarToHomeTouchController, which intercepts touches from the nav bar
region when in overview or all apps.
Swiping up from all apps translates it up and slightly fades out app icons,
then letting go springs towards home screen.
Swiping up from overview translates it to the right, then letting go springs
towards the left where it lives in the home state.
Both cases have a strong deceleration while swiping.
Bug: 129571305
Bug: 111926330
Change-Id: I5b7de05f15f0300233343fa2d69fcad624e070f8
Previously left was considered positive and right considered negative.
Now left and down are negative, and right and up are positive.
For RTL, left is positive and right is negative.
Change-Id: Ia31e8c687c8c2716fc632b2fe88aa8955b934bce
Add AnimationComponents.ATOMIC_OVERVIEW_PEEK_COMPONENT, and rename
previous ATOMIC_COMPONENT to ATOMIC_OVERVIEW_SCALE_COMPONENT.
When SWIPE_HOME is enabled:
- Overview lives to the left of Workspace, which is encoded in
LauncherState.NORMAL.getOverviewScaleAndTranslation().
- Create atomic animation based on ATOMIC_OVERVIEW_PEEK_COMPONENT
and OVERVIEW_PEEK state when swiping and holding from home screen.
Bug: 111926330
Change-Id: Iab6dbef7238dae15b3036d4b2a026b781eee6b4b
This reverts commit 7c8fb786fa.
Reason for revert: Chatted with Sunny, the concern was brought up that this is risky and will create potential for dogfood confusion with the new gesture navigation that is getting rolled out soon. So we can try to reland this in a few weeks.
Change-Id: I4f09cc9982164195dc42cd6e4714ede767cce786
Replace the current callback logic in WorkspaceTouchListener with the
use of GestureDetector.
That means, platform api is now going to be used for detecting long
press.
There now are some unused variables and unneeded code in this file. It
will be cleaned up in a follow-up CL.
Test: long press on empty home screen
Bug: 126596502
Change-Id: I57302b403f7d7118f2156166d8c707ab3f9ccefd
- After the atomic animation ends, overview jumps slightly because the
normal -> all apps transition puts it at a different position than
normal -> overview
Bug: 111926330
Change-Id: I6ca359b3ef2fc4d0b6b96229d8bf118bd0db9649
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
Previously we were comparing the controller's progress at the time of
the end of the animation... which is always 1. Instead, we should be
comparing the effective final progress based on the interpolator.
Change-Id: I18110b5a3b914839860931187f39cfa11182b3e2
Bug: 117157432
Bug: 116744159
Context: In vary rare case, Pointer id can be higher than
MotionEvent.getPointerCount. When I was fabricating ACTION_POINTER_DOWN
event, I was using pointer id instead of index to create MotionEvent.
This resulted in stack trace as seen in the bug.
Change-Id: I802c2a45a274f0dda5984f1d266334fc8b6b0bea
- Add methods to ModelWriter to prepareForUndoDelete, then
enqueueDeleteRunnable, followed by commitDelete or abortDelete.
- Add Snackbar floating view
- Show Undo snackbar when dropping or flinging to delete target; if the
undo action is clicked, we abort the delete, otherwise we commit it.
Bug: 24238108
Change-Id: I9997235e1f8525cbb8b1fa2338099609e7358426
The public API of the library has finalized; flakiness has been removed;
code polished.
Bug: 110103162
Test: TaplTests suite
Change-Id: Ic156bbfeedb1cb9c4a48ef907f97e396e8e81936
Before, we were just controlling the components as far as we had left,
which was fine since they are just a subtle effect anyway. But now that
we don't fade out until the very end, this means that long swiping from
home usually kept recents in the background during the entire swipe and
then abruptly disappear after letting go. Now we make sure the entire
atomic animation plays by the time we reach all apps, so recents will
fade out in all cases.
Bug: 79867407
Change-Id: I7cb6790d9055bc76b4b73ed761604042a308c987
- All apps content fades in quickly so that icons are opaque by the time
they are on screen
- Recents fades out late so that we don't see it as translucent while
the transition is continuing (the translucent icon top of tranclucent
task view looks bad, for instance)
- Fix colored scrim that appears over recents - was using 0 to 1 instead
of 255
Bug: 79867407
Change-Id: I4f50423157f7870c8d0708f586a72e3e5a7b6559
> Finishing the atomic animation to that proper states are applied
> Offsetting the duration of atomic animation so that it completes along with
the swipe animation
Bug: 80432882
Bug: 86308723
Bug: 80549582
Change-Id: I8a3b44c2c7017e241b2fbdbb96c5d67edbb359d1
- Don't have double haptic on quick scrub
- Correctly check interpolated progress to determine final state,
so that it always aligns with the haptic (i.e. passing the haptic
means letting go will go to the new state)
Bug: 109709720
Change-Id: I702bb76a4c15f932f923e81a14cc49f6a9126cb8
This includes swiping/fling up from a fullscreen app and swiping/fling
down a task to a fullscreen app.
Test: swipe up when app is fullscreen
Fixes: 80543530
Change-Id: Iee259284cc6d4fe1e784532f0822ffd38cdee280
When you swipe up to overview from home, we should allow touches on
recents even if the overshoot animation isn't finished. If the
touch is below the all apps progress, we continue to intercept to
allow for double swipe up.
Bug: 80093992
Change-Id: Ifdca61e7cfc1f7a713c067596cc0c1bd3154b44e
This was leading to a pending animation running while the state had changes,
leaving user in an inconsistent state.
Various atomic animation fixes
> Ensuring that there is only one success listener on atomic animation, so that atomic
controller is created only once and to the final mToState
> If atomic controller is already running, skip animating the atomic conmonenets as
part of main animaiton
> Cancel atomic controller if it is going to a different state
Bug: 80549582
Bug: 109583168
Change-Id: Ie7a032e0fa73b1f1c2ef53055c08d16444f0385e
Previously we were logging new states as we swipe past them; now we just
log the start and end states when lifting your finger.
Bug: 80102083
Change-Id: Icec6c3dab1441023a3cdcadb7b56ecef8313cb8c
Add BackButtonAlphaHandler to set back button alpha, instead of setting
it from multiple places.
Also force back button alpha to be 1 if swipe up is disabled (b/80091187)
Change-Id: I49b63a0e6b033a3a947a847669a398f1b9ff0564
Back button changes opacity when moving the shelf during swipe up
between home screen and overview. The alpha changes depending on the
progress of the swipe up animation. When going from app to home and vice
versa, the fade animation does not tie with the swipe up progress. The
fade animation also masks the back button drawable when ime visibility
changes.
Change-Id: I51e42930640ba711e81880b385bb722d7ee8ad33
Fixes: 74581837
Fixes: 76900236
Test: swipe up from home screen to overview