Commit Graph

152 Commits

Author SHA1 Message Date
Tracy Zhou
e5575f9fff Implement all apps discovery bounce.
Mock: https://docs.google.com/presentation/d/1TCp1mREgsFAWq4hCnUaSRCpaqvDbzCVkN1mJuRMylIg/edit#slide=id.g36a3e190fb_0_6

Demo video: go/shelf_bounce_animation

Fixes: 70180942
Test: manual test
Change-Id: I6ecceb63612dd63cea62f2e6cb19d7522f3d76e0
2018-04-23 10:26:40 -07:00
Tony Wickham
a006830f0a Listen for cases where touch controllers change, and update them
Otherwise we'd be stuck using the old touch controllers until DragLayer
is setup again (e.g. launcher is killed).

Bug: 77921826
Change-Id: I8aac6fc453839902cb2d99279a6bd1549ee17d79
2018-04-11 17:25:40 -07:00
Tony Wickham
6270a0ea18 When dragging past first or last state, don't reinit target
Example bug:
1. Swipe up to overview and let go
2. Swipe all the way to the top of the screen, past where all apps stops
3. Swipe down

Before this change, you get reset in NORMAL state instead of OVERVIEW.

By ensuring that getTargetState() checks the drag direction before
returning a new state, we guarantee we only re-init in the case that the
state is actually changing. Otherwise it's possible to change the state
to one that is impossible, such as NORMAL when swiping up from ALL APPS.

Change-Id: I19913dded9c94228d06289780b6400e99403f378
2018-04-06 14:32:18 -07:00
Tony Wickham
274b9529ff Support swiping between states
- Swiping down on hotseat from overview goes to workspace
- Can swipe up through overview to get to all apps

Bug: 76449024
Change-Id: I7f76d92da976e268cc2a97e55746cca4603e6620
2018-04-03 11:18:18 -07:00
Tracy Zhou
b1a7f2829e Merge "Move default pip position to right above the shelf (Pt. Launcher)" into ub-launcher3-master 2018-03-28 21:54:57 +00:00
Tracy Zhou
a706f00d78 Move default pip position to right above the shelf (Pt. Launcher)
SysUI change: ag/3721784, ag/3793664

- Track LauncherState and launcher activity state through callbacks.
- Devise logic to send shelf visibility and height signal to SysUI based
on LauncherState and Launcher activity state.

Bug: 73961893
Test:
- By default, pip shows up right above the shelf.
- Transitioning to all apps moves the pip down as the shelf becomes
invisible.
- Going to any specific app moves pip down. Hitting home moves pip
right above the shelf again.
- Dismissing IME should push PIP down but above the shelf on home
screen, bottom if not.

Change-Id: I1ab6ceb8007a5a7b5d932a456efa0a07f586ea4c
2018-03-28 14:40:49 -07:00
Sunny Goyal
81b4c7bb3c Adding a custom view for DragHandle
> Separating page indicator and drag handle
> Page indicator always draws irrespactive of oriantation
> Drag handle is responsible for accessibility interactions
> Adding assissibility actions for DragHandle

Bug: 72500733
Change-Id: I9030337456964af1bdf77f1c01956452321f9229
2018-03-26 15:52:03 -07:00
Tony Wickham
7c3dd1f14e Add drag indicator to hotseat
Change-Id: Iad5b08ad290f07c6cdd3c9091e160b5af859859e
2018-03-23 17:34:04 -07:00
Sunny Goyal
da3cc7a939 Fixing drag and drop states
> Not sending acceptDrop if we are not dragging
> Removing workspace scrim in all-apps

Bug: 74775232
Change-Id: I5b5354ec249d684ffccd4aacd3c47377cc0eb661
2018-03-22 12:50:12 -07:00
TreeHugger Robot
fa03e181cf Merge "Support multiple Views of extra hotseat content" into ub-launcher3-master 2018-03-22 02:52:42 +00:00
Sunny Goyal
7a80b59e97 Swipe interaction changes on home screen
> Increasing the distance to travel for the first swipe
> Adding support for custom interpolators when building an animation
> When quickly swiping twice from home, finished the first animation

Change-Id: Ibc3c8667e9b927376fd99f08f0ca027f2398914b
2018-03-21 17:55:35 -07:00
Tony Wickham
a97f0f20cd Support multiple Views of extra hotseat content
Also adjust workspace page indicator:
- Center vertically
- Rounded corners

Change-Id: I96c2f3da3522d70726f544126b516c33c8fb7bc8
2018-03-21 15:53:11 -07:00
Tony Wickham
bd6f05e0b6 Separate some elements to set visibility separately
Added entries for:
- All apps header extra content
- Hotseat extra content

Change-Id: I47c4ccfe3b54fd47cbbee88698ed045611e3e92d
2018-03-21 12:15:48 -07:00
Sunny Goyal
7185dd63eb Changing the overviewState to show appsearch and floating header
Change-Id: I2cfd61cfc9978e4c8e4520f0f7217e49e7344c79
2018-03-19 20:02:34 -07:00
Sunny Goyal
0b0847b272 Fixing taskMenu and taskView clicks in fallback activity
> Extracting common methods from Launcher & DragLauncher to base classes
> Remoting some dependencies on Launcher and using the base class instead

Change-Id: I121cacf8a14190b4703cda60bdeb4f79eee69ded
2018-03-15 17:29:43 -07: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
Sunny Goyal
f3efc25862 Using public APIs for hardware bitmaps
Bug: 35428783
Change-Id: I4e7eeaa94e0cdfb1c76dce507a6f855e4eebbd6c
2018-03-06 15:16:21 -08:00
Sunny Goyal
d912e3f82a Merge "Simplifying all-apps search box" into ub-launcher3-master 2018-03-06 00:12:59 +00:00
Winson Chung
ca84552505 Revert "Revert "Adding a separate state for QuickScrub""
This reverts commit 2687257c98.

Reason for revert: Reverting post-build

Change-Id: Ic3a1e8ed84a227b42bc35b91d4f0eed60bb2e29c
2018-03-05 19:39:25 +00:00
Winson Chung
2687257c98 Revert "Adding a separate state for QuickScrub"
This reverts commit 6c6c2f45f7.

Reason for revert: Temporary revert for build.

Change-Id: I3947e9b2d4e5788f9d2a0c4e2e8b7d425d5bc775
2018-03-05 18:06:48 +00:00
Sunny Goyal
6c6c2f45f7 Adding a separate state for QuickScrub
Bug: 74014237
Change-Id: Ie86ac589f0ad0e1470fb6b0b71263ec6593eb1e3
2018-03-02 15:38:21 -08:00
Sunny Goyal
dbd6bb348c Simplifying all-apps search box
> Giving the search box a solid background so that it work fine with scrolling
> bottom shadow logic for search box

Bug: 73085356
Change-Id: Ie4dc4922be39ffd8e2d562becedbd4c6f820e6c9
2018-03-01 15:58:11 -08: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
Winson Chung
d782394132 Revert "Revert "Remove back button when on home screen""
This reverts commit dd176e65e3.

Reason for revert: Post-drop revert

Change-Id: If93eb4bca636bfba2471c8992621a59895bfcbe2
2018-02-16 03:23:47 +00:00
Winson Chung
dd176e65e3 Revert "Remove back button when on home screen"
This reverts commit 663759e444.

Reason for revert: Temporary revert for NL build

Change-Id: I8614ee348e6e9290c0de0dfdf3e24663f220e356
2018-02-16 02:42:26 +00:00
Tony Wickham
663759e444 Remove back button when on home screen
Add OverviewInteractionState to handle setting OverviewInteractionFlags.

Hide back button when in NORMAL state and launcher's window is focused.
Show it when in other states or when launcher's window loses focus.

Change-Id: I35919561b9972789e995f1cc434c23e2afe9e77c
2018-02-15 12:20:16 -08:00
Jon Miranda
54441f5df9 Refactor LauncherAppTransitionManager & polish for new app transitions.
* Add start delay when launcher resumes from all apps or landscape.
* Track the last app transition animator and cancel it before beginning a new one,
  otherwise the animators can conflict with each other.
  ie. Opening an app from all apps and then immediately pressing back to return to
      all apps.
* Use class overrride instead of UiFactory.

Bug: 70220260
Change-Id: I4755d45d820f9d551e443d6c4a148e8789c5bc57
2018-01-25 14:32:47 -08:00
Jon Miranda
7853bdb8b5 Launcher app close transition.
Bug: 70220260

Change-Id: I0a3a6153dc1cba53546f792bf3ec037b1a5f6d90
2018-01-22 17:43:04 -08:00
Sunny Goyal
41b36e0f22 Merge "Removing multi-state apha control for hotseat" into ub-launcher3-master 2018-01-19 23:25:42 +00:00
Sunny Goyal
02424b20f3 Adding a horizontal popup when when workspace is longPressed
Change-Id: I5b3c48262c246bfe53e0010ca89c820f42503eef
2018-01-19 15:11:10 -08:00
Sunny Goyal
19d32b76dd Removing multi-state apha control for hotseat
Change-Id: I68ccbe96caa70921aefd18fc8ec9ad0638c3fab1
2018-01-19 14:26:44 -08:00
Jon Miranda
17940f053d Fallback to old implementation for opening apps in MW mode.
Bug: 70220260
Change-Id: I20aa61357c67e11806823cdfcfbdb76ef773554b
2018-01-18 15:13:37 -08:00
Jon Miranda
69057173a7 Synchronized opening app transition animations.
Bug: 70220260
Change-Id: I3c8e1c477266fb3bd7a39f74e3e1191e82ce58e9
2018-01-18 09:44:54 -08:00
Sunny Goyal
75c59acf5c Ensuring that Recents view is always loaded when going to Overview state
Change-Id: If2337a0be66f4ca68dd54954b7368f38d70a40d4
2018-01-16 12:01:57 -08:00
Sunny Goyal
07b6929cd9 Removing layout handling in DeviceProfile and moving it to
individual views

Bug: 71709920
Change-Id: I8300fa7a84b31898bdb135d774cca576d2928525
2018-01-10 15:13:25 -08:00
Sunny Goyal
228153d92a Updating landscape layout for launcher/quickstep
> Hotseat is tied to navbar (on left in seascape)
> Search box shows up in Overview (clicking it would crash for now)
> All-apps is no longer fullscreen in landscape
> Recents cards are appropriately scaled down
> Hotseat is visible in Overview

Bug: 70179916
Change-Id: I53149eaeac9557e8a01021b7e2d139f3d6ceef37
2018-01-08 13:53:44 -08:00
Sunny Goyal
9328a51271 Adding translationX to workspace card to that it is slightly visible
behind the first card

Change-Id: Idc0c169fb92510e74b983160778bd9dbacf29943
2017-12-22 11:21:18 -08:00
Sunny Goyal
9d32323cac First pass at using hardware bitmaps
Bug: 35428783
Change-Id: Ife67b85f6e7e268826597ed9bccd9659841f67de
2017-12-13 13:36:36 -08:00
TreeHugger Robot
4aa4c5a911 Merge "Hide hotseat in landscape overview" into ub-launcher3-master 2017-12-12 23:10:56 +00:00
Tony Wickham
a447bd884b Hide hotseat in landscape overview
Bug: 70179916
Change-Id: Ib277a054cf16233ab9156a4448c41952e3295fae
2017-12-12 14:58:50 -08:00
Sunny Goyal
0c723353a6 Enabling swipe up from overview to all-apps
> Fixing wrong alpha interpolator when swiping down from all-apps

Change-Id: I7d4200c89797e5609fd7c4aa8681dea2ffd00bf7
2017-12-12 12:20:23 -08:00
Sunny Goyal
d0030b05f5 Adding placeholder method for compat implementations for Accessibility manager
> Moving some utility methods to the compat class

Bug: 69611105
Change-Id: Ide0cab0b926d7bc03617fc568d2a2b429ee00cd9
2017-12-08 16:09:45 -08:00
Sunny Goyal
3c585ddbf7 Removing view layer support during state animation.
View layer was only being used when fading in/out hotseat in overview.
From API 21+, android automatically create layers when animating alpha

The current support for view layers does not work properly when cancelling
animations and controlling partial animations

Change-Id: I2d5785471af9819575beefe65f1f2bdd28c76bd5
2017-12-07 14:18:16 -08:00
Sunny Goyal
e3c6d58b71 Adding support for tagging animations per controller, so that they can be controlled independently
Change-Id: I6f360362aa16f7e02fe5fe84976b23663f228030
2017-12-07 12:46:26 -08:00
Sunny Goyal
bc683e9d06 Separating various UI properties into state variables
> Using workspace scale and translation for all-apps
> Without quickstep, workspace has the parallex effect as before
> With quickstep, workspace scales down to match the recents card width
> Using a single animator for recents views in case of state transtion and
  controlled transition to prevent going into inconsistant state.

Change-Id: I1864de6892052ca771f4d0062e3d60c28840a72d
2017-12-06 14:29:33 -08:00
Sunny Goyal
a5ace71d91 Temorarily changing the long press action on the homescreen to show a popup menu
Change-Id: If160a2e4d0f73e2e1ecb424a0625d642b8775ada
2017-11-15 17:13:14 -08:00
Sunny Goyal
ac00cba35c Simplifying workspace layout
Instead of creating workspace view larger than the screen size (so that it can be
zoomed out), restricting the size to the parent size and bypassing the drag events
directly to Workspace (since the workspace is smaller when zoomed out, it might not
qualify for all events otherwise).

Change-Id: I45e213dd6d16bec5feb6e7cf90bc6f7de4c6d305
2017-11-13 16:00:06 -08:00
Sunny Goyal
c4fa8c312b Changing the state UI logic for normal build and quickStep build
> Creating ShareHandlers for managing UI
> In normal build, hotseat is hidden in overview, while in QuickStepBuild, it is visible

Change-Id: I5f8d35c75b861d912d93fce186b5dd74106184c3
2017-11-07 12:24:47 -08:00