Commit Graph

90 Commits

Author SHA1 Message Date
Sunny Goyal
69300227c4 Adding support for blocking gesture nav on a particular activity
Bug: 129796627
Change-Id: I939598f62924fb113e913e0309247d8a2088bf8a
2019-05-02 13:02:22 -07:00
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
Sunny Goyal
77b3419ad5 Adding support for showing predicted apps as a floating row in all-apps
and overview

Bug: 130053407
Change-Id: Idb93a0ba6cfea8406f75ab86d9e0acde2fc04b3a
2019-04-23 14:26:44 -07: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
vadimt
0ed1797fad Removing graying apps in Overview
The reason is that there is no API that reports that an app is grayed.
Not showing DWB toast for apps that ran over their limit because they
shouldn't be in Overview.

Bug: 129067053
Change-Id: Ia04e17aa85ca015b7932496ad5e730fe61b4be69
2019-03-22 12:17:48 -07: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
TreeHugger Robot
80748ae6f4 Merge "Increasing char limit for string, per localization request." into ub-launcher3-master 2019-01-30 21:28:19 +00:00
TreeHugger Robot
5b1cd9cecb Merge "time_left_for_app: increasing limit" into ub-launcher3-master 2019-01-30 21:28:17 +00:00
vadimt
5c749392bd time_left_for_app: increasing limit
Bug: 123638440
Change-Id: I20a444edfdad737206fcbcb9ab5c2b7c1d1973da
Tests: emulated a string with this size
2019-01-30 13:17:36 -08:00
vadimt
21550b4673 Increasing char limit for string, per localization request.
Bug: 123638453
Change-Id: I40aea84f88cb91e4cd123fa0181894867c0e02f7
Tests: none
2019-01-30 13:04:07 -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
TreeHugger Robot
90048de773 Merge "Disable window corner rounding on some devices" into ub-launcher3-master 2019-01-25 00:31:52 +00: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
TreeHugger Robot
f81da5f4ee Merge "Removing querying whether DWB time limit is for a group" into ub-launcher3-master 2019-01-24 23:07:48 +00:00
vadimt
d4c45e8104 Removing querying whether DWB time limit is for a group
This API is removed for Q.

Bug: 118319143
Test: Manual
Change-Id: I1605ba14a914bfe018c4a2f6d974afaea7e51e05
2019-01-24 13:52:49 -08:00
Kevin
c4ad03b9ef Split LauncherAppTransitionManagerImpl for Go
Split LauncherAppTransitionManagerImpl common functionality into a base
quickstep app transition class and subclass for recents-specific
implementation. In addition, override the app transition manager to the
appropriate manager depending on the build.

Bug: 114136250
Test: Manual test NexusLauncher, Launcher3GoWithQuickstep
Test: Build Launcher3GoIconRecents
Change-Id: Iab1b5ae0c75af276879d5e12df95f62a514bf571
2019-01-23 14:59:19 -08:00
vadimt
759db43f3b Implementing available part of UX spec for DW toast
See https://docs.google.com/presentation/d/1AepsnLeKcRhjMW35SkB5yMKO3u6waigug8Tyfe0LO5o/edit#slide=id.g4c5ab81849_0_0

Also using time formatting code copy-pasted from Google DWB app.

Bug: 118319143
Tests: Manual
Change-Id: I84392d7655f402e38cf4c46ae530d06f755a7df8
2019-01-17 12:57:02 -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
Evan Rosky
a639c79112 Add a dev-mode freeform option to recents menu
When the developer option for freeform is enabled, provides
a "Freeform" option in the recents task overlay menu. This
is sort-of an analog to the freeform option in N recents;
however, since recents now is part of home, there's no
straightforward way to have multiple freeforms at a time,
so this really is only useful for developers.

Bug: None
Test: manual - enable freeform in dev settings, then pick
      Freeform from recent task overlay menu.
Change-Id: I5d8e95aaffb8fe43e655f705cacdd51859c95d3b
(cherry picked from commit 9beb6bf251)
2018-11-26 18:34:47 +00:00
Hyunyoung Song
fc00747909 Add StatsLog*Manager for logging.
Bug: 113043444

Verification: (19) is our event classifier number
11-05 11:24:28.188   932   994 I statsd  : { 1541445868000000000 766293363001 (19)0x10000->1[I] 0x20000->0[I] 0x30000->0[I] 0x40000->[S] 0x50000->1[I]  }

Change-Id: I75403837f9fa8e51efa012fb708bce7efc9c4488
2018-11-05 11:41:38 -08:00
Vadim Tryshev
3514a22313 Adding code to open DWP settings of a recent task
Will transition to an API for opening settings if this CL lands:
ag/5338673.

Bug: 118319143
Test: manual test on a prototype
Change-Id: Ia40576e0cd6196bfb0a0e8657916bbadff4c0b59
2018-10-24 13:30:33 -07:00
Winson Chung
cc8dbf31db Caching clean up, remove dependency on old shared lib loading/caching logic
- Clarify caching policy, we only cache the last N task snapshots
- Pull out necessary logic from RecentsTaskLoadPlan (deprecated) into
  launcher class RecentTasksList which also manages the invalidation of
  the last loaded list
- Pull out logic from task loading logic in the shared lib into separate
  classes TaskThumbnailCache and TaskIconCache, and have each task view
  manage the load request for data

Bug: 117603579
Test: Thumbnails still load

Change-Id: I938e4dea19e7f5d24724c32194d254ca003e89aa
2018-10-23 00:01:07 +00: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
d0f43ceba7 Some launcher3 fixes so that it compiles with different configurations
Bug: 79996542
Change-Id: I4267aeb8f5b0714415970c63453049ff41466644
2018-05-30 18:15:21 -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
Vadim Tryshev
ce367a3218 Annotating groups of views in Overview for accessibility
This will break the initial focus assignment. This should be later fixed
in Talkback.

Bug: 72409756
Test: Talkback reads pane title, even though at a wrong moment.
Change-Id: I38458ef7c3b5745169d7bc17ce8751f683ba9c71
2018-05-04 10:45:12 -07:00
Hyunyoung Song
a05860421f Log OVERVIEW_ACTIVITY via MetricsLogger in quickstep
Bug: 77920179

Change-Id: Id4c7dc3d535c7a8009d340183e640b04ab07408a
2018-05-02 14:34:23 -07:00