Commit Graph

56 Commits

Author SHA1 Message Date
Tony
bbea105be0 Move logic that overrides MotionPauseDetector to callers
There are 2 conditions that we force the MotionPauseDetector to treat
the motion as not paused:
1. If we haven't passed a small displacement (48dp before, 36dp now)
2. If we have moved mostly orthogonally

These existed soley for the OtherActivityInputConsumer case, because
1. We only need the displacement requirement to make room for the
   peeking shelf, which doesn't exist in other cases (it's already there on
   home for example)
2. We can only move orthogonally for quick switch, which again doesn't
   exist for other users of MotionPauseDetector.

So now instead of checking min displacement and orthogonal distance
inside MotionPauseDetector, we let callers setDisallowPause()
before adding positions to their MotionPauseDetector.

The only user visible change is that you no longer have to swipe up 48dp
before we allow pause to overview from home. This also paves the way to
using the same logic that determines to disallowPause to also detach
recents from the window while swiping up from an app.

Bug: 129985827
Change-Id: Ie690aa314da3260aff2209341a29638604f9501c
2019-04-24 16:10:40 -07:00
Adam Cohen
9bc1431f37 Additional Assistant gesture tuning
=> Using the drag slop (currently 10dp), which is the appropriate slop when comparing to the other gestures. Touch slop (which was being used for the Assistant) is only being used for gestures starting from the back button. This means that the delegate was getting triggered much too often (unfair slop competition). This prevents that.

=> Fixed additional bugs with the consumer delegate / sharedState; the shared state notion really only applies to the OtherActivityInputConumer, and it wasn't being propagated from the AssistantConsumer.In addition, the isActive() method is only being used as a proxy for whether or not to use the shared state, so clarified the naming. This fixes another case where touch could become completely stuck and you could no longer swipe up.

=> Modified the effective angle to be 90 degrees down to 20 above the horizontal.

=> Reduced the drag threshold to 55 dps.

=> Known issue: the time threshold requires motion events to be triggered. In practice, this works because the finger doesn't stay completely still, but we should add a timer to update the progress smoothly.

=> Removed pause detector.

Change-Id: Ie23e836c6d778914594774b830c3cd2e7b94eca4
2019-04-24 16:46:03 -04:00
Adam Cohen
b117707d31 Tune Assistant Gesture
=> bumping detectable region to 48 dp horizontal + vertical within corner
=> centering detectable angle;  total 70 degrees (ie. btw 10 off the vertical and 10 off the horizontal)
=> pilfering touch events when slop is passed and assistant gesture is engaged
=> Fixing issue where we were incorrectly using “sharedState” causing incorrect handling of gestures subsequent to AssistantTouchConsumer being invoked (it was forgetting to clear it’s input state and hence reporting “active” when it wasn’t). The symptom was that gestures after the AssistantTouchConsumer would never actually move the active window even though state was being updated; you’d feel the Overview haptic.
=> Devices with large corner radii are still somewhat problematic as the initial touch down often lands high on the display (ie. above the 48 dp region).

Change-Id: I3d5761112f4cb8b7b1eee987de5afe9aee260304
2019-04-18 12:54:28 -07:00
Hyunyoung Song
052624d897 TaskCornerRadius should not use dialogCornerRadius on devices not supporting rounded corners
Bug: 123985787

Change-Id: I4ffe06362256d4cc83bbe34c139d71ea1f6ca92e
2019-04-10 14:29:36 -07:00
Tony Wickham
5e29395eba Merge "Swipe up on nav bar to go home from -1 and widgets" into ub-launcher3-qt-dev 2019-04-09 18:14:15 +00:00
Tony Wickham
9791bd1555 Swipe up on nav bar to go home from -1 and widgets
More specifically, any window (e.g. qsb search) or AbstractFloatingView.

NavBarToHomeTouchController now implements TouchController directly instead
of AbstractStateChangeTouchController, as it not only dealing with
launcher states. This makes it easier to override intercept logic to
handle cases like not having window focus, for example.

AbstractFloatingViews can createHintCloseAnim() to play an animation
hinting that it is about to be closed by swiping up. Widgets sheets use
this to pull back similar to the all apps transition to home.

Bug: 129976669
Change-Id: Ie157b978d9f1ee36d5fd32cea72ec02ce40878c0
2019-04-09 10:53:24 -07:00
Hyunyoung Song
2aec9c42f5 Change task view / all apps/ widgets / folder radius to dialogCornerRadius
Bug: 123985787
Change-Id: Iaa8088beb51d37dba90d57ad065f9eac0dd46270
2019-04-09 00:27:07 +00:00
Tony
1787ee9596 Peek overview on motion pause, then animate fully on touch up
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
2019-03-27 19:45:04 -05:00
Matthew Ng
a3b03418c1 Moved assistant gesture to corners
The corners will be separated with quick switch by detecting at the slop
of the angle from touch down to that position. If over 30 deg then
assistant will be tracked otherwise quick switch while swipe up will not
be tracked at all.

Test: manual
Bug: 112934365
Change-Id: I6a3aeb1509d9706696a30ef1fba3ce7e3e5ec07c
2019-03-18 14:53:11 -07:00
Tony Wickham
7550c1227e Merge "Fix some issues with MotionPauseDetector" into ub-launcher3-master 2019-03-05 22:00:24 +00:00
Matthew Ng
077c29e091 Added assistant gesture swipe up right side region on nav bar
Bug: 112934365
Test: manual
Change-Id: I467e71f13da4afba3a556fafb0bfdf01650ab4bf
2019-03-01 13:53:13 -08:00
Tony Wickham
ac60d91cec Fix some issues with MotionPauseDetector
- Orthogonal displacement now checks angle instead of fixed amount
- Only allow timeout when passed min primary displacement and not
  orthogonal displacement
- Don't set timeout for !SWIPE_HOME, which should never detect pause

Change-Id: I3d810831316affff138968dfc62b921b20c752c5
2019-02-27 16:40:59 -08:00
Tony Wickham
023f404a12 Make quick switch ("hook") more reliable
- Add max orthogonal displacement to MotionPauseDetector to avoid
  pausing when swiping left or right
- When gesture in ambiguous between swipe up for home or swipe over
  for the new task, base the decision on the faster velocity component
- Disable recents freescroll mode when dispatching motion from the nav
  bar. This way recents handles it naturally and we don't need custom
  logic to snap to the next page at the end of the gesture.
- Fix a bug where you couldn't hook to start a new task when SWIPE_HOME
  was disabled

Bug: 111926330
Change-Id: If63aa2bb32b57c3f401c5df8b3f6f4efec97b1fa
2019-01-29 17:11:12 -08:00
Tony Wickham
18759647f0 Swipe up to go home, swipe and hold to go to overview
- Pause (swipe and hold) detection based on velocity and acceleration,
  so it feels immediately responsive
- Don't show shelf during swipe; peek when swipe pauses
- Disallow long swipe
- If swiping to go home (we didn't detect a pause), animate window and
  launcher together (not final animation, but mechanism is in place)
- Guarded by SWIPE_HOME flag

Bug: 111926330
Change-Id: Ie4af04517c6688e3d649c2971a1aad197837cb3b
2019-01-28 11:37:33 -08:00
Lucas Dupin
a2074857dc Disable window corner rounding on some devices
Bug: 122347746
Test: visual; on taimen, marlin and walleye
Change-Id: If6ac1c75297dd25ad40d3ec61537e8793bceceb7
2019-01-24 16:19:49 -08:00
Winson Chung
c7565862e2 Revert "Revert "Rounded corners on app transitions""
This reverts commit 2c9b1043a6.

Reason for revert: Most test devices have the platform changes

Change-Id: I1e608395b186df3148562afa7c1d791e3c9e2eb5
2018-12-06 19:36:10 +00:00
Winson Chung
2c9b1043a6 Revert "Rounded corners on app transitions"
This reverts commit d0ab1d0578.

Reason for revert: <INSERT REASONING HERE>

Change-Id: Id37615986fc859f3f2d9344402b737926fb7b9a5
2018-12-04 18:42:47 +00:00
Lucas Dupin
d0ab1d0578 Rounded corners on app transitions
Test: Manualy launch an app
Test: Press home when activity is on top of the stack
Test: Quick scrub
Test: Swipe up on the home button, swipe down
Bug: 111514493
Fixes: 116745318
Change-Id: I66d25bc433061ede46107ea9651c198614306692
(cherry picked from commit faa443308e)
2018-12-03 20:50:43 -08:00
Jonathan Miranda
f274996ef3 Revert "Add stagger and "springs" to app closing transition."
This reverts commit cd57901ca4.

Reason for revert: <INSERT REASONING HERE>

Change-Id: I13e9d2db8f6d6118a1448ba04b67c81b4e485447
2018-06-26 23:24:20 +00:00
Jonathan Miranda
5023771e05 Revert "Tune app closing/launcher resume animation "spring" values."
This reverts commit c9a7c50fac.

Reason for revert: <INSERT REASONING HERE>

Change-Id: I7ed4270b742803265ed4e3e13b63688842e0b48c
2018-06-26 20:21:07 +00:00
Jon Miranda
c9a7c50fac Tune app closing/launcher resume animation "spring" values.
Bug: 109828964
Change-Id: I64252667451f511b7affdde5ffb28812876e7f4c
2018-06-25 16:42:58 -07:00
TreeHugger Robot
c22289b69e Merge "Touching outside the task in overview goes home" into ub-launcher3-edmonton-polish 2018-06-22 17:44:37 +00:00
Matthew Ng
b5669efa36 Touching outside the task in overview goes home
There is also a deadzone area around the clear all button to tap easier.

Test: start overview click anywhere that is not the shelf or task
Change-Id: I187ff264444da542aca111b57d94c8199f5a0384
Fixes: 110232233
2018-06-21 16:03:48 -07:00
Jon Miranda
cd57901ca4 Add stagger and "springs" to app closing transition.
The "spring" is actually three sequential animations: 1) a slide,
2) an oscillation, and 3) a settle.

Bug: 109828964
Change-Id: I0a2c55f877446a6408952a1201636760283be57b
2018-06-20 16:35:19 -07:00
Sunny Goyal
c82c6396e9 Moving clear all button inside the recents view
Bug: 72222505
Bug: 109828536

Change-Id: I843b79db3e47abc2c41ed78f186b9c941941ddef
2018-06-11 13:51:03 -07:00
Sunny Goyal
0f3af75eb0 Making the self always follow the vertical progress without any min height limit.
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
2018-06-11 09:51:42 -07:00
Matthew Ng
1b9c3d6fe3 Changed the Task Menu to overlay on top of the task view
When tapping the icon for each card in overview, the options will
overlay on top of the task view below the icon instead of popping up
above the task view.

Change-Id: I42746022432385d976134988262514a238a5066e
Fixes: 109676098
Test: go to overview, tap the icon for the task
2018-06-08 14:24:22 -07:00
Sunny Goyal
ccd90231e6 Calculate the scale up for quickscrub based on the available size of the screen
Bug: 80139193
Change-Id: I0492ce5bfa347bad12a09a13e404ded77e797623
2018-05-24 11:16:05 -07:00
android-build-team Robot
f69f0c2bf0 Merge "Adding a carent in the scrim" into ub-launcher3-edmonton 2018-05-09 20:12:59 +00:00
Jon Miranda
d26d5aaa6d Tweaks to app closing animation.
Change-Id: Ia2cbc1401a57ad8dc3e3553110497eb35c19fe64
2018-05-09 12:51:34 -07:00
Sunny Goyal
ef39540dde Adding a carent in the scrim
> Caret is only visible when the accessibility is enabled
> It is visible in NOTMAL and OVERVIEW state and moves out of the
  scrim along with the scrim.
> Acts as an accessible target for various options

Bug: 78172350
Bug: 79215734
Change-Id: I8a968b67e36901859649546295f6491d49cc9ce9
2018-05-09 12:39:30 -07:00
Sunny Goyal
36d090df67 Adding a round rect background for the self in Overview
Bug: 78771910
Change-Id: I71460a284ed185e82d66fe65104402fb99d6b312
2018-04-30 15:37:39 -07:00
Vadim Tryshev
6d2321cb7d Introducing Clear-all button on Overview
It’s an initial implementation, i.e. no fancy effects.
It shares a parent (LauncherRecentsViewContainer) with RecentsView.
The button is centered in clear_all_button_container, which gets
positioned programmatically to the right of the last task. (RTL polish
will be a separate CL as well).

Bug: 72222505
Change-Id: Ia912908a93a30c2f51450ccf0f97c7495e7916d5
Test: Manual
2018-04-18 11:33:21 -07:00
Sunny Goyal
d792a77234 Updating the card size logic
In full screen always follow the device aspect ratio
In multi-window, follow the 1:1 split window size
Rotate the screen shot only in full-screen mode

Bug: 70289009
Change-Id: Id5095565634d4d7920fefa929b28276db80bda5f
2018-04-06 11:29:32 -07:00
Tony Wickham
7a802eb6db Calculate task view animation instead of using dimens
Now we compute the precise scales and offsets to synchronize adjacent
pages with the launched page. Also adjusted all apps progress so that
the predictions/hotseat go offscreen directly based on the opening
window.

Change-Id: I74e74e541c60b3b116e2b5713522bd4a0f5928a7
2018-03-29 09:32:18 -07:00
Sunny Goyal
00c9c9a6fc Adding an empty message in RecentsView
Moving the content instead of translating the view. This ensures
that the empty message fades in place while the other content come-in
from the side.

Change-Id: I081d2e21206de24ad530814cb6a8ca7c3e293724
2018-03-26 17:24:12 -07:00
Sunny Goyal
a9f554681d Applying the alpha to individual tasks instead of the view
> Removing hotseat from overview in transposed layout
> Removing face scrim from recents view in transposed layout
> Removing focued background from pagesView as individual poges have focus states

Change-Id: I620527241bf7240009c4187f53f5a5cff0c3e2b1
2018-03-26 12:11:00 -07:00
Tony Wickham
39b5534b96 Merge "Small updates for recents launch animation" into ub-launcher3-master 2018-03-15 23:54:56 +00:00
Sunny Goyal
7c7be8c20a Simplifying options popup and overview handling
> Removing support for page drag-n-drop from pagedView
> Removing Overview UI from Launcher3 without quickstep and using options popup instead
> Removing touch handlers from CellLayouts and showing options popup based on workspace long press
> Excluding touch outside inset when showing the popup

Bug: 74136505
Change-Id: I34c2a7ff58452db26f5d1a85d554be40fc75f2b8
2018-03-13 12:57:32 -07:00
Tony
b8f7d9a3ad Small updates for recents launch animation
- Increase translation x of adjacnet tasks, in order to maintain
  gaps between pages
- Fix parallax when launching side task (used to be based on launched
  task's translation, but now that is 0 since there's no curve)

Change-Id: Iace47761a6e0a69982cf2eac34436b7164e60792
2018-03-12 18:07:09 +00:00
Tony
5cd8ab938c Cleanup code relating to recents carousel
We can delete a lot of code now  that recents isn't curved and
workspace doesn't offset.

Bug: 70179222
Change-Id: I01f7e3c313cdc370a8db5251a5d9fb406c1eb76c
2018-03-09 20:58:39 +00:00
Tony Wickham
59a38e6788 Flatten recents (remove curve effect)
- Workspace card scales down to be same width as other cards, which
  leaves a gap at the bottom due to difference in aspect ratio. This
  can be changed in the future, but deferring for now.
- Workspace card no longer offsets when scrolling.
- Cards no longer scale and translate, but still have a bit of dimming
  when on the edges, so the center card has the most focus.

A lot of code can be cleaned up. Added TODO's now, will cleanup in
followup CL

Bug: 70179222
Change-Id: I2332aab10e2549a455f773e053ed8b48677c3110
2018-03-09 20:58:39 +00:00
Sunny Goyal
6639a5dfe0 Updating the scrim and landscpae ui
> Instead of views, using a custom class to draw the color scrims
> All-apps has full screen UI
> Quickstep does not have search box in landscape

Bug: 73085356
Change-Id: I360a78a2ade0134daad29fe712796cd39a381fbb
2018-03-01 11:23:46 -08:00
Winson Chung
62a70be27a Enable trim memory callbacks to the loader, background task preloading
- Also enable the high-res thumbnail loader

Bug: 73651529

Change-Id: Ic23997f10289ea10cb1f41104e07029c9102c
Signed-off-by: Winson Chung <winsonc@google.com>
2018-02-28 12:55:19 -08:00
Tony Wickham
005df0ba69 Animate launcher when launching recent tasks
- Scale up adjacent recent tasks and translate away from center
  - Workspace card instead recenters in the screen
- Translate hotseat offscreen

Clicking on one of the adjacent tasks will scale it up to the
center of the screen while the center and other adjacent task
parallax to the right beneath it.

Change-Id: If96eec987c100458b8444a6cd698ec7bf6e6ba6b
2018-02-26 14:05:59 -08:00
Tony
12e9f34bd5 Fix some visual bugs
- Workspace was translating while swiping from overview to all apps
- VerticalSwipeController progress jumped a bit backwards when
  flinging because sign wasn't taken into account for velocity

Change-Id: Ife5e9d87ca9f0b3429dd9045c6569868a65eb0af
2018-01-26 20:59:16 -08:00
Jon Miranda
701b0f528e Use AllAppsTransitionController to animate the hotseat & scrim.
Bug: 70220260
Change-Id: I69bff4234c2fd0c76cb43cdd89342dcc04f2db40
2018-01-23 14:05:13 -08:00
Jon Miranda
7853bdb8b5 Launcher app close transition.
Bug: 70220260

Change-Id: I0a3a6153dc1cba53546f792bf3ec037b1a5f6d90
2018-01-22 17:43:04 -08:00
Sunny Goyal
02424b20f3 Adding a horizontal popup when when workspace is longPressed
Change-Id: I5b3c48262c246bfe53e0010ca89c820f42503eef
2018-01-19 15:11:10 -08:00
TreeHugger Robot
f12cfaa156 Merge "Fading the edges of the thumbnail if the size is different than the view size" into ub-launcher3-master 2018-01-18 20:06:08 +00:00