Bug: 175329686
Test: long press on apps where container opens above & below
and where container is aligned left & right
Change-Id: I09bbf57b6e19cc6f022b9a96fb48d8c4ae080813
- We remove the fling completely
- We set damping to 1 for x/y springs so there is no
bounciness, and updated the stiffness and bounds to tighten
up the path to the final location.
- During the animation, we translate all launcher content
down
- When the x/y springs, and rect animator all finish,
we use a spring to bounce the launcher content back up
- Added AppCloseConfig so that the entire animation can
be defined in one location, with getter methods so that
all the involved parties of the animation can access the
current value.
- The animations are all defined linearly, and then
interpolated over using a 3 point curve.
Building behind feature flag as we tune the values.
Bug: 173107751
Test: manual, visual
Change-Id: I83ad0fa2c4234cf30004240d43e191354595adc8
- Grid scaling has problem that scales task icon and menu, which makes it hard to control icon size and text size in the manula
- Replaced the whole concept with dedicated Task size calculation in grid layout
- Support different icon size in TaskView in grid and removed task_thumbnail_top_margin
- Removed grid progress in TaskViewSimulator as well
- Refactored how ClearAllButton scroll and translations are calcualted to align clear all properly in grid
- Make page center calculation aware of PagedView pivot and scaling
Bug: 174464863
Test: Manual on two screens
Change-Id: I47b13ef6e55c6e16c52ea04225f5bde02ed82fc2
This would simplify reusing the same code for 3-button mode
Test: Verified on device
Bug: 175137718
Change-Id: Ia757eec069efc251475baa6af38c690431325f66
- Rename "pullback" to "resistance" to reduce confusion.
- Remove mDragLengthFactorStartPullback & mDragLengthFactorMaxPullback
- Add AnimatorControllerWithResistance, which has 2 controllers, one
for the normal shift to overview, then one to apply the resistance
when swiping beyond that.
- Don't hack animator interpolators/progress; insteaad, allow progress
to go > 1 (which will run the separate resistance animator).
- Don't start launcher controller separately from window controller;
instead, both are controlled by mCurrentShift in updateFinalShift().
- The resistance animation logic is shared by both the active window
and launcher (RecentsView).
Bug: 149934536
Change-Id: Ib0f9da18e10cc9ddf1a2f82ed767f237c89d3a41
- Add NoButtonQuickSwitchTouchController which uses
BothAxesSwipeDetector to track horizontal and vertical motion.
- Initially, we only detect swipe left to right to quick switch
(like before), but then we allow swipe up to either go to
overview (if you hold) or back home (if you don't hold).
- xDisplacement transitions non-overview components out (e.g. shelf
and workspace), and translates overview in.
- yDisplacement translates overview up and scales it down
Bug: 126596417
Change-Id: Id679ad84c08246e205c667a78ed5df00d7276258
hardcoding it to 16ms
> Creating a utility class for caching display property changes
Bug: 128940249
Change-Id: I6f9a214548de65bd1c8530508d665ee88312da4a
Now we use the velocity towards the middle of the screen
(e.g. x when in landscape) instead of always using y.
Test: testBackground with @PortraitLandscape
Bug: 135567630
Change-Id: I77ab6bdf0d556475a6c182ae91914a718a81e1c4
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
Instead of using an OvershootInterpolator, we adjust the end progress to > 1 and
add a second interpolator to settle back to 1. That way, even if the animation runs
starting very late, e.g. 1.0, it still has room to overshoot. We use this same
OvershootParams class to calculate an overshoot for a blocked long fling as well.
Bug: 109709720
Change-Id: I43152237e4350f93e7c462c22e68d09d05c1dd57
The "spring" is actually three sequential animations: 1) a slide,
2) an oscillation, and 3) a settle.
Bug: 109828964
Change-Id: I0a2c55f877446a6408952a1201636760283be57b
After a certain height, the self fades out, but keeps following the vertical progress.
Eventually the fade-out can be decoupled from vertical progress and tied to the state
Bug: 109829614
Change-Id: I9808ed3fa1730b938196bc6d3518a6d096a13f4c
- Use OvershootInterpolator based on velocity (consistent with swiping up
from home)
- Scale down recents as well, to be consistent with adjacent pages scaling
up when you launch a task
Bug: 109709720
Change-Id: Ie47309058ccf673a4b86c40c843c415beb2d8dc7
When we enter overview (overview appears, workspace disappears):
- Workspace scales down from 1f to .8f with OvershootInterpolator(1.2f) at 200 ms
- Workspace fades from 1f to 0 with OvershootInterpolator(1.2f) at 200 ms
- Overview scales down from 1.33f to 1f with OvershootInterpolator(1.2f) at 200 ms
- Overview fades from 0 to 1f with OvershootInterpolator(1.2f) at 200 ms
When we exit overview (overview disappears, workspace appears):
- Workspace scales up from .92f to .1f with DecelerateInterpolator() at 200 ms
- Workspace fades from 0 to 1f with AccelerateInterpolator() at 200 ms
- Overview scales up from 1f to 1.1f with AccelerateInterpolator() at 180ms
- Overview fades from 1f to 0 with DecelerateInterpolator(1.7f) at 200 ms
Parallax while the finger moves: Workspace translates half the distance as the shelf
Bug: 79776746
Change-Id: I319d982cf202bcd6dbbcd68ffc5c0c7853629c7e
- Change durations/interpolators when starting from home vs an app
- Increase dim animation duration after quick scrub from an app
- Also fixed contention between setting dim alpha for the animation
and setting dim alpha for scrolling
Change-Id: I2c9ea52d4eafaad8954f3ff9d3c0c459a07953bc
As you swipe up to overview from home, workspace scales down and fades out as before,
and now recents scales down from 1.2f on top of it. The interpolators are set such
that the workspace animation is seen before the recents animation. Also, we don't
scale down all of recents, only the visible pages (current and adjacent).
Change-Id: I5f8bfe8cafeaa41d26873c63549735d7bdff2bce
* Animations appear snappier by using new interpolators
ie. new EXAGGERATED_EASE and updated AGGRESSIVE_EASE_IN_OUT
* Updated app icon/window alpha to make the motion/synchronization clearer.
Bug: 70220260
Change-Id: Ib05efc7f58d53b070e58f682f30651e31f9b3524
- Make sure to use center pivot point
- Use correct curve for alpha
- No need for the layer hack anymore because framework issue
was fixed.
- End X should be 480dp for a 411dp device, so we need to scale
it with 1.16
Test: Close app
Change-Id: Ib4587e324aeeb11921de87da7c389b2e148dc913
Fixes: 72691044