Commit Graph

42 Commits

Author SHA1 Message Date
Luca Zuccarini
2098381808 [Toast] Introduce SysUI's animation library to the transition manager.
Bug: 250588519
Test: manual, see videos in bug
Change-Id: Iccc440c95ecc14d39e35d911798e239b698b950a
2023-01-27 13:49:40 +00:00
Fengjiang Li
e884c2c79f Support predictive back from all apps to home
bug: b/238475505
Test: manual

Change-Id: Ibf4f7f41a26b044a538e2cd566d2297ed88f1b99
2023-01-11 22:55:28 +00:00
Lucas Dupin
e4a9469156 Act on scrim visibility
The scrim visibility drives whether the launcher window is opaque or
not. We should track it and apply the flag instead of trying to catch it
through other Launcher life cycles.

Fixes: 195365607
Test: tap on home button while launching app from overview
Change-Id: I2a00b86b602b5dd12c901433b92adcf0170be15e
2021-08-10 14:18:50 -07:00
Jon Miranda
401b921c19 Fix bug where status bar was not set properly.
- Need to check both alpha of the view, and alpha of the background color.

Bug: 187467559
Test: check status bar colors when using:
      - on white wallpaper,
      - on black wallpaper,
      - on wallpaper with white text
      - on wallpaper with dark text

Change-Id: Ie6f34d34dfa9dea716f95bd6a95125fbd650fc29
2021-06-29 14:23:55 -07:00
Lucas Dupin
0c6341af99 Make launcher opaque when scrim becomes opaque
This will help with overdraw, because we don't need to draw the
wallpaper.

Test: manual
Test: adb shell dumpsys SurfaceFlinger --timestats -dump
Bug: 187703092
Change-Id: I2ebae94725578e5f4d640cd6b45da3f4d1f21a20
2021-05-20 14:33:39 -07:00
Samuel Fufa
acebd1f69a [Search][Motion] Introduce header protection in AllApps
ScrimView exposes ScrimDrawingController that allow FloatingHeaderView to observe AllApps scroll progress and draw header protection on Scrim. In addition, search box independently adopts header protection background to ensure proper clipping behavior.

Test: local
preview: https://drive.google.com/file/d/1_E577AAJ0LBg0zrKJQSEJK9GQnrtx7uv/view?usp=sharing&resourcekey=0-MTxjlB3xWyJ3qPvr4qMdig
Bug: 184946772
Change-Id: I64c0f4f50d26c475d31542148a15c7c145588d3f
2021-05-07 11:15:05 -05:00
Tony Wickham
b482188775 Some overview scrim and status bar color adjustments
- Replace UI_STATE_OVERVIEW with UI_STATE_FULLSCREEN_TASK. Overview no
  longer needs it's own status bar treatment as it's handled by
  ScrimView already. So remove instances of UI_STATE_OVERVIEW and
  replace some with UI_STATE_FULLSCREEN_TASK if a TaskView is behind
  the status bar.
- Add ScrimView to fallback recents activity.
- Remove scrim from Background state, don't fade it in until the
  gesture ends to RECENTS.

Test: watch scrim and status bar colors during the following
- Swipe up to home (no scrim, status bar matches task at first but
  then wallpaper once task isn't overlapping status bar)
- Swipe up to overview (no scrim until let go to overview, status
  bar matches task at first, then wallpaper after not overlapping,
  then scrim once it's 90% opacity)
- Quick switch from home (scrim fades in, status bar matches once
  it reaches 90% opacity)
- Quick switch from app (no scrim, status bar matches center task)
- Repeat above for 3P launcher and 2 button mode

Fixes: 185681676
Fixes: 185286870
Change-Id: I9e5c292cc734e714169b9cc8268e8dad4e868aca
2021-04-27 17:44:30 -07:00
Zak Cohen
4d35ac3020 Allow Workspace Scrim to be colored per state
Make it possible to set the color of workspace scrim to a different color
per state. Motivated by making Overview Scrim and All Apps scrims different
colors.

Bug: 186253733
Test: Local build and flash
Change-Id: Id7c38ce3c9173308eedfcb7592ececa7bd6bf220
2021-04-27 14:04:46 -07:00
Zak Cohen
079003b44d Revert "[Search][Motion] Separate AllApps scrim and content interpolation"
This reverts commit 8c383f97e4.

Reason for revert: ScrimView is used in multiple places, Overview is broken by this change.

Change-Id: Ie395e2d94feaca4c9365bb5da68e9dc219990e03
2021-04-26 23:59:07 +00:00
Samuel Fufa
8c383f97e4 [Search][Motion] Separate AllApps scrim and content interpolation
video: https://drive.google.com/file/d/18jTh8Lc8hf-c1GBGaWERHo4QIvAHBA8J/view?usp=sharing&resourcekey=0-RDJgw-ecOW3nnF6_tWkgCg
Bug: 183001675
Test: visual
Change-Id: Idb177fd3e31ac41f57379ac45b80e7246c0dd156
2021-04-22 22:55:00 -05:00
Sunny Goyal
c82916fecb Some cleanup in RecentsView
> Merging overview and all-apps scrims into a single View
> Decoupling TaskMenuView from taskView

Bug: 184676497
Test: Manual

Change-Id: I49f7249eaa2a800054385ab8e73a441d6a1b5e16
2021-04-06 15:47:33 -07:00
Samuel Fufa
ee9aff9b5b [Search][Motion] Normal<->AllApps transition revamp
Preview video attached to BR

Key changes:

- SearchUiManager#getScrollRangeDelta is removed. AllApps initial vertical offset is now controlled by deviceProfile.allAppsOpenVerticalTranslate.
- ShelfScrimView is renamed to AllAppsScrimView. Scrim no longer does vertical translate with AllApps open.  Shelf/overview related code removed.
- Scrim and AllApps content transition are animated with different interpolators. Scrim color is a blend of accentColor and allAppsScrim with proportion determined by progress*TINT_DECAY_MULTIPLIER

Bug: 183001675
Test: Manual
Change-Id: Id6bde7ee65c55c83c2973fe41f458b9364d39ecd
2021-04-05 13:32:51 -05:00
Hyunyoung Song
f72f513e6c Fix AA+ decorator drawing out of bounds issue / Make AA+ opaque
Bug: 182425322
Bug: 182305279

Test: manual

Change-Id: Ib9fbd09613e8e1c50a9d75fb2ab9546d2f5230b7
2021-03-12 21:23:47 -08:00
Hyunyoung Song
b3d739dfa9 Apply Silk/ colorBackground(Floating) to AllApps
Bug: 180020638
Test: adb shell setprop persist.sysui.monet 1 && adb shell am crash com.android.systemui
Change-Id: Ied508f3452a3e640495fff4d1567c3b094f54432
2021-02-11 10:52:06 -08:00
Hyunyoung Song
d9d340c879 Introduce transparency in all apps for OnDeviceSearch
Bug: 165999272

Change-Id: Ic4adf11d030328db47a5b0d1cd915b40902c12de
2020-08-24 20:32:02 -07:00
Sunny Goyal
52e2545a66 Removing arrow indicator from homescreen and
adding a separate view for various accessibility actions

Bug: 159247871
Change-Id: I14536844929e03d36a6a5f294d4f5daad8c82d15
2020-07-28 14:21:31 -07:00
Sunny Goyal
de52876a2b Fixing sysui visibility changing multiple times on startup
> During startup shelftop is updated after all-apps, causing all-apps to
set the sysuiVisibility according to it's own UI

Bug: 156422012
Change-Id: Idee06249ad45946ed0a9dc84702510ad90a305f4
2020-06-10 19:13:36 -07:00
Sunny Goyal
35e7d38681 Abstracting out state handler logic into base classes so that it can
also be used in different activity

Change-Id: Ic5e60b21e1429c71f1cd4e7041e70bf4fc9761b7
2020-05-11 16:38:26 -07:00
Sunny Goyal
aeec80ddbb Creating default implementation for state lisnter method
> The transition start is used rarely

Change-Id: I0d33f0f6372eb4ef89bfbb66968612693b7c6033
2020-04-24 15:41:29 -07:00
Tony Wickham
6322000721 Remove all apps arrow after getting to all apps 5 times
- Instead of ScrimView implementing StateListener, added
  mAccessibilityLauncherStateListener.
- Added allAppsStateListener to determine whether we
  reached all apps 5 times.

Bug: 151768994
Change-Id: I01790ce577879eab2e4568fcda19d0245b256d13
2020-04-10 21:14:30 -07:00
Tony Wickham
490a8ab7c7 Add all apps education bounce animation
- Update existing arrow bounce animation to repeat 3 times,
  and play it when swiping up from nav bar on first home
  screen as well as when tapping the arrow.

Bug: 151768994
Change-Id: Ib120764fdeab6cd932018b6fed8b1093dda20641
2020-04-06 11:28:50 -07:00
Tony Wickham
5edf9e2923 Update vertical drag handle (all apps arrow)
- Change drawable to match specs, using ShadowDrawable to
  add shadow when necessary based on workspace theme.
- New drawable is 18dp by 6dp; add support for different
  width vs height, and decouple from workspace page
  indicator (which is still 24dp tall).

Bug: 151768994
Change-Id: Icfd0eac197ebc4d1f5bb799f8538c4bd99d800cd
2020-04-06 11:26:59 -07:00
Sunny Goyal
dbcc63edeb Removing some autoboxing during property animation
Change-Id: Ibd6f20c565a4d66dc6d606b3f0bbc96fec66fe56
2020-03-10 08:43:55 +00:00
Tony Wickham
79a352169f Show drag handle indictor in 2 zone model
Note this is just the tiny arrow we show in accessibility mode, will
probably need to get some updated visual treatment going forward.

Bug: 143361609
Change-Id: I65975727f101984429aadc35a650826e36d9c9aa
2020-03-09 17:15:49 -07:00
Sunny Goyal
73b5a27b14 Updating some non-final static objects
Updating various static objects to use a standard pattern so that
it is easier to track and cleanup those objects

Bug: 141376165
Change-Id: Ia539cbfa338d544dddad771c5027b6748762768b
2019-12-11 13:22:58 -08:00
Tony Wickham
37a0970bf5 Improve quick switch from home by tracking both x and y motion
- 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
2019-11-14 15:50:18 -08:00
Samuel Fufa
0316d6cd7a Fix ScrimView caret alignment and ignore touches
Test:Manual
Bug:79868152
Change-Id: Idd5a2b965173b8071697b50aac8760b0d84e469f
2019-09-26 16:30:46 -07:00
Andy Wickham
c40872b913 Marks ScrimView unimportant for accessibility when Widgets screen is opened.
This prevents it from holding focus while the Widgets screen is visible
(after using Widgets action from the All Apps caret thingy).

Test: Manually followed steps provided in bug, and issue not seen after this change.
Fixes: 139918680
Change-Id: I280ac97fb7ff9fa67f1c6a1ce9cdfa9e451231eb
2019-09-03 21:20:22 +00:00
Govinda Wasserman
c06e151e0f Makes Launcher hide the all apps content and scrim on assistant visible.
This hides the quick search bar and the suggested apps. Visibility is
unchanged when the all apps view is fully expanded.

Test: Tested locally
Change-Id: I6bc453b5ad89ca3d1280957e595bf2a3f074a72d
BUG:129755311
FIX:129755311
(cherry picked from commit 917af755e4)
2019-04-23 17:20:37 +00:00
Sunny Goyal
7f45514d15 Unifying the two different state listeners
Bug: 123376689
Change-Id: I61d4865044a1bd27ee78002a4083a686233740b7
2019-01-28 11:56:54 -08:00
Sunny Goyal
066ace1b88 Replacing setAlphaComponent with setAlphaComponentBound for better animation interpolation
setAlphaComponent throws expetion for invalid range, which can cause brashes in overshoot
interpolation

Bug: 118390004
Change-Id: Ic9c5ff3d660eba353b982c4c47ccfaf329b3e296
2018-11-06 09:59:03 -08:00
Sunny Goyal
d230307a95 Migrating to android-x
Change-Id: I9a774152d13a541e8496dd84f2469bfed407f86d
2018-08-14 15:22:12 -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
TreeHugger Robot
5454fa1f6e Merge "Making caret visibility part of state definition" into ub-launcher3-edmonton 2018-05-22 23:08:42 +00:00
Sunny Goyal
56e1019e95 Making caret visibility part of state definition
> Hiding the caret in fast overview state
> Hiding caret in task swipe down interaction

Bug: 79700605
Change-Id: I984d535bc75802501e8aeb13c8f37387f331e5bc
2018-05-22 15:58:20 -07:00
Vadim Tryshev
f1507a6a64 Making overview panel accessible via Tab
Keyboard navigation of AllAppsContainerView is broken in TOT; disabling
focusing there is necessary for Recents.

Bug: 72222505
Test: Manual
Change-Id: I85d544f7c8dbdaf12e49de51c6626bbc3dc32917
2018-05-22 14:47:44 -07:00
Tony Wickham
2c27df5b5d Merge "Set status bar icons to dark at correct all apps progress" into ub-launcher3-edmonton 2018-05-16 22:23:50 +00:00
Tony Wickham
ec62522682 Set status bar icons to dark at correct all apps progress
Bug: 79866102
Change-Id: I8c97896319406c8360a2f60d213868ad59dafe19
2018-05-16 14:27:49 -07:00
Vadim Tryshev
3f51631b80 Adding Clear All to accessibility chevron on Recents
For motivation, see email thread "Tweaks to for the reverted order of
accessibility swiping"

This doesn't add the action to the fallback Recents, so it will require
more work.

Bug: 79165501
Test: Manual
Change-Id: I99d608ccc13cc1742dc4d427e763125788e8edd2
2018-05-16 12:00:33 -07:00
Sunny Goyal
0076e67dc4 Showing the caret/drag handle in transposed layout
> Adding a simple touch-down effect, without capturing the motion event

Bug: 79526736
Change-Id: I50dcc76836765d158dfdcef2886b190a85707ff2
2018-05-15 09:47:32 -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
927447e71d Chaniging all-apps scrim
> Converting the scrim to View, to better avoid overdraw
> Overview and Spring loaded state have different scrim alpha
> When going from overview to all-apps, there is a color scrim drawn over the overview panel.
  The slef color is merged with this color to prevent overdraw, and the remaining screen is drawn
  with a cut-out round rect path

Bug: 79111591
Change-Id: I26801fde13dd6adb4b06110bbe8087e35cc31847
2018-05-08 08:29:43 -07:00