Commit Graph

25 Commits

Author SHA1 Message Date
Andy Wickham b922dccbf5 Cleanup API checks for P, Q, and R.
Test: Build with gradle
Flag: NA
Change-Id: I3ef17090741d14bebd76cf09cf3dc5ac4f11e686
2024-01-24 14:58:08 -08:00
Andy Wickham 3cdfbdc5b3 Small tweak to floating search on phone.
When you swipe down from all apps back home, the search bar was
expanding due to the size being slightly larger when resting on
home. However this looks a bit off with the search protection,
so created this special case to keep it at the all apps size
during this transition.

Bug: 261866704
Test: Manual on tablet phone and foldable.
Flag: ENABLE_FLOATING_SEARCH_BAR
Change-Id: If9399224d0c456629d094139eef7f4d1b2c3bbc9
2023-06-12 21:58:45 -07:00
Andy Wickham bd9a180fbc Allow LauncherState to define floating search side margins.
This lets home screen align to workspace icons while All Apps
aligns with those icons. In addition, on tablets where the QSB
is inlined with the hotseat, floating search bar can also move
horizontally accordingly.

Bug: 275635606
Bug: 259619990
Test: Manual on tablet as well as foldable.
Flag: ENABLE_FLOATING_SEARCH_BAR

Change-Id: I67745c66390736cdf39d969ef7767096ae13c671
2023-06-13 00:28:59 +00:00
Andy Wickham 64896f3098 Put the "floating" in ENABLE_FLOATING_SEARCH_BAR.
This means adding the search view to the drag layer, so it can
persist and animate across Launcher states (i.e. Home, All Apps,
Overview, Overview from App).

Some high level things:
 - LauncherState now has a flag indicating if the floating
   search bar should be visible, as well as a method indicating
   how high it should rest when the keyboard is not showing. By
   default the height is set negative if the flag is not present,
   so the search bar will rest off screen in that state.
 - LauncherState also has a new method indicating if the search
   bar should show as a pill when not focused. Currently this is
   done in phone portrait mode in all apps and overview.
 - SearchUiManager now has a method for gestures to hint that
   the search bar will be focused or unfocused soon, e.g. for
   the app -> overview case, we hint that it will be focused
   when crossing the threshold, and unfocused if retracting.
   This allows the search bar to animate during the gesture
   and take or release focus after the state change completes.
 - AllAppsTransitionController lets the apps panel translate in
   from the bottom of the screen, for example when coming from
   an app and we don't want to pop it in halfway up the screen.
   Instead it can slide in gracefully from behind the keyboard
   and floating search bar.
 - KeyboardInsetAnimationCallback can now notify listeners of
   keyboard alpha changes during controlled animations. And
   StateAnimationConfig has a new animation type to control
   the keyboard alpha during the all apps transition.
 - This new ANIM_ALL_APPS_KEYBOARD_FADE is used to pop the
   keyboard in at the threshold for going from an app to all apps.
   Note that its position moves linearly before this, so the
   search bar starts moving up accordingly before the keyboard
   alpha is non-0.

Fix: 266761289
Fix: 268845147
Fix: 267683921
Fix: 265849321
Fix: 266446733
Fix: 269301440
Bug: 275635606
Bug: 259619990
Bug: 261866704
Test: Manual with all the state transitions on phone and tablet
(also folding/unfolding foldable).
Flag: ENABLE_FLOATING_SEARCH_BAR, ENABLE_ALL_APPS_FROM_OVERVIEW
(latter just for the background app interpolator changes).

Change-Id: I6f06552e95747348a62260279626cf407bf145b0
2023-06-12 21:55:24 +00:00
Sunny Goyal 7450874e28 Fixing while navication bar in all-apps in 3-button mode.
Launcher was not accounting for all-apps-nav-bar-scrim when
computing sysui-flags

Bug: 194486821
Test: Verified on device
Change-Id: I692977fba5999bbab9737bac4b27c15c2912e6af
2023-01-18 15:36:28 -08:00
Sunny Goyal adb364a104 Unifying multiple all-apps implementations
> Using a single layout for the all-apps content
> Removing some unnecessary themes
> Fixing search chashes in SecondaryDisplayLauncher

Bug: 259733681
Test: Existing TAPL tests verify that Launcher/AllApps work properly
Change-Id: Icd5310316499cd421bc039cdbd4d398b813cd477
2022-12-14 11:27:12 -08:00
Holly Sun 196d55aa77 [QL-v2] Reset input state on scroll and restore state on scrolling back.
Bug: 261872461
Test: see video in bug
Change-Id: I18e1923bdd4c40e84e46579296b69268d46c9fa1
2022-12-12 14:03:31 -08:00
Holly Sun a793fc6e2c Bring up IME and focus on input when scroll to top.
Do this behind a feature flag AND only when "Always show keyboard" is selected or in prefix state.

Bug: 218846025
Test: keyboard shown when swiping up for QSB and AA+ (both main and work). Keyboard not shown when either the feature flag or Always show keyboard is disabled.
Change-Id: I3df2e0e44a8313eaf749cd6b91b7f9d0b9b80ec3
2022-11-02 15:19:23 -07:00
Thales Lima 28a8b9f158 Add a scrim to AllApps and Widgets
Check the size of the scrim and draw on the bottom of AllApps and Widgets.
Add a padding to the bottom of AllApps and Widgets so content is above the scrim.
Change the color of nav buttons for better accessibility.
Correct width of the Widgets sheets to be the same as AllApps sheet.

Fixes: 221107977
Fixes: 214215594
Test: manual, HSV and Window
Change-Id: Ib7510ffcd80231de7fefcdef65b422174dd74593
2022-05-12 09:38:24 -03:00
Alex Chau b8c22e1155 Tune AllApps bottom sheet VisD and motion
- Make AllApps bottom sheet solid and appears from bottom
- Teleport AllApps bottom sheet as user drag to reduce drag range
  - Consider teleport interpolation for state transition sdetection
- Tuned workspace motions for AllApps bottom sheet (no translate, shrink)
- Add portrait vertical translate for tablet portrait including taskbar AllApps
- Updated bottom sheet handle and created common variables for other bottom sheets

Bug: 208599118
Test: manual on tablet AllApps, taskbar Allapps and handheld AllApps
Change-Id: I69dba5f155914cd012cc8ef3be1ef71fb2be5a40
2022-02-23 17:08:06 +00:00
Brian Isganitis 1664c9f418 Refactor all apps to depend on activity context.
The current AllAppsContainerView has been split into a base class and a
subclass for activities. The base class allows using all apps with an
activity context. A-Z and work profile tabs are supported, but search
and the hotseat still require an Activity.

Test: Manual. All apps should work the same.
Bug: 204696617
Change-Id: I3b146714bc11b3b3555d97623aab5d78ac836482
2022-01-24 20:24:20 -05:00
Samuel Fufa 564e9ca223 [Work] Fix work apps showing in personal tab
The problem here is that we are tracking hasWorkApps and usingTabs using the same value.
 This leads to work/personal apps showing together when clearing search since mUsingTabs is overridden to false on setLastSearchQuery and later used to determine if tabs should show.
Bug: 198546279
Test: Manual

Change-Id: I7df5d65472703bedcc9dd688847d9ebd146d5f61
2021-09-08 15:02:24 -07:00
Hyunyoung Song 1b68cbb822 Remove flicker when dismissing snackbar
Bug: 191972314
Test: manual

Change-Id: Icf185b89c07b363ec44c77ba3ac1bdeb34e30e59
2021-07-02 11:35:53 -07:00
Samuel Fufa 45e0e26971 [AllApps][Work] Introduce work toggle Fab
Screenshot: https://screenshot.googleplex.com/C4r7kKPxv3PKdyN
Bug: 186856928
Test: on-device
Change-Id: Ifd8ce20fcf2247a6e80537dc7631458e594a8a63
2021-06-13 20:01:20 -05: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
thiruram 1bfd24e13f [AA+] Fixes duplicate LAUNCHER_ALLAPPS_SWITCHED_TO_MAIN_TAB logs.
LAUNCHER_ALLAPPS_SWITCHED_TO_MAIN_TAB is logged when transistioning from AllApps search results view to all apps view.

Bug: 178562918
Test: Manual
Change-Id: Ie02e23ae9eaabad719ad2a1fc8f08a9e4c36936f
2021-02-26 18:57:57 +00:00
Steven Ng b686972b7d Extract common codes for personal / work profile tabs
These codes can be reused in the FullWidgetsSheet which we will be
adding tabs for personal / work profile.

Test: Set up work profile and then switch person / work profile tabs
      in the AllAppsContainerView.

Bug: 179797520

Change-Id: Ib7eb1190e1384a664cbe3e34411c9362f1f6db03
2021-02-17 16:22:42 +00:00
thiruram c96873caad [AA+] Log LAUNCHER_ONSTOP & LAUNCHER_ONRESUME events with AllApps session InstanceId.
* Transitions between AllApps and App screen logs LAUNCHER_ONSTOP & LAUNCHER_ONRESUME events. This change add InstanceId specific to the current AllApps session to these logs; this will help to regenerate AllApps session from logs on the server side. This should only affect logs from AllApps screen, but not others.

* Removes LiveSearchManager.allAppsLogger method as it may create confusion with 2 methods for logging into Statsd

* Moved AllApps entry and exit logs to Launcher.

Bug: 178562918
Test: Manual
Change-Id: I5fab941777a3dfd2e9b19c0efd5b06d3884222ef
2021-02-15 23:56:52 +00:00
thiruram 9aac07e87d [AA+] Add LAUNCHER_ALLAPPS_SWITCHED_TO_WORK_TAB & LAUNCHER_ALLAPPS_SWITCHED_TO_MAIN_TAB events.
Bug: 178562918
Change-Id: I6ae1e034dc8fbbca6fa046104ab69c1ec9f4e6da
2021-02-10 18:02:46 +00:00
thiruram aafa8a44a3 [AA+] Add LAUNCHER_ALLAPPS_KEYBOARD_CLOSED event.
Also adds Launcher.allAppsLogger method to simplify AllApps specific user events logging.

Bug: 178562918
Change-Id: I57520fe1504079091f0ff2c4c74268f727ffe14f
2021-02-09 16:45:52 -08:00
Samuel Fufa 24e3b6598e Prevent AllApps scroller activation in NORMAL state
Bug: 153663434
Test: Manual
Change-Id: I859d63fff08091961970d72f56853b50433f6d44
2020-05-13 20:41:35 -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
Samuel Fufa 748afbec35 Prevent hotseat touch hijack
Bug: 148639821
Test: Manual
Change-Id: Ia08af6b243a3492a898371b7bc66158df49d2427
2020-03-05 11:41:49 -08:00
Samuel Fufa ccebfbe273 Clean up work profile
This includes
- Dismiss work edu on launcher state change
- Remove work tab flash on first setup
- Make edu bottom sheet adopt theme color
- Fix Work toggle bottom inset


Bug: 149200572
Bug: 149197172
Bug: 149199058
Bug: 149215103
Bug: 149198955
Bug: 145595763
Bug:149481723

Test: Manual
Change-Id: I39a30782b80fd3a66bede55754fa30a940d2caee
2020-02-19 19:33:09 +00:00
Sunny Goyal 9c2b96090b Adding SecondaryDisplayLauncher in Launcher using common listener
Bug: 141596722
Change-Id: I480bfadf592f7d0309f17c33a3fe14bb77fb5586
2020-01-30 08:27:27 +00:00