Commit Graph

56 Commits

Author SHA1 Message Date
Vinit Nayak
a406f727ad Add vertical layout support for Overview in portrait
WM is making changes which allows apps to maintain
their orientation independent of the orientation of
the foreground app. This allows recents to always start
in portrait even when the app currently running is in
landscape. This means we have to give the illusion of
a landscape oriented overview when user swipes up in
gesterual nav when launcher is started in portrait
configuration.

PagedOrientationHandler abstracts all coordinate specific
logic from Paged/RecentsView primarily, but also all
other dynamic calculations throughout launcher.
PagedViewOrientationState is the single point of exposure
to other classes that depend on those changes. The goal
is to also minimize holding state to allow for default
implementations of PagedOrientationHandler for all the
3p/Fallback classes. PagedViewOrientationState also
holds other data around rotation that isn't
specifically tied to view logic.

The fake landscape overview can be toggled with:
adb shell settings put global forced_rotation [0/1]

Fixes: 146176182
Change-Id: I65d8d4e9f92b93931cbe0053ccaf0cda8d2ffd6c
2020-03-02 18:02:35 -08:00
Pinyao Ting
993aef828a Tips Gesture Navigation Tutorial [Part 1]
import various resources from tips gesture tutorial

Bug: 146173041
Test: build and verify it passes
Change-Id: Iacea7ba1f2d15452e7442f2976633da7012fab35
2020-01-02 16:17:52 -08:00
Zak Cohen
e895869f47 Overview actions - adds feature flag and base class for Overview Actions.
Adds ENABLE_OVERVIEW_ACTIONS feature flag and base factory. Requires an
implementation in overlay to show any actions.

Test: run locally with flag on and off.
Bug: 145628186

Change-Id: I1c36330464cc01e1e987ebfea1a9f451067598a5
2019-12-09 16:43:54 -08:00
Zak Cohen
b053371672 Make it possible to set a bottom margin on the task thumbnail view.
Test: manual test

Change-Id: Idb18efeb5e2ee46f789488529513874e028532db
2019-12-02 15:56:57 -08:00
Sunny Goyal
5b636ebfd4 Optimizing some layouts in taskview
> Recycling DigitalWellBeingToast so that the view is not inflated everytime
> Simplifying DigitalWellBeingToast to use a single text view
> Adding support for footers in taskView without creating additional layout

Bug: 122345781
Change-Id: Ia889819b93eb8644532ea95c6767554874d5e2d1
2019-06-13 10:39:46 -07:00
Zak Cohen
f1128d9f5e Task footer - use temporary motion for show and hide.
Bug: 125844074
Test: manual

Change-Id: I9a26760f4bd976d0c3475db1322ee0da639d8209
2019-06-06 14:37:19 -07:00
Zak Cohen
560fe07448 Chips container - Don't hard code the height of the chips container.
When the container was present, but empty, it was showing it's background.

Bug: 133783088
Change-Id: I97b65435d66e9ced7f5487dc50a00665794f8fcd
Tested: manual
2019-05-28 14:53:41 -07:00
Zak Cohen
418b9bc5fc Adapt the task footer container to be a named container.
Bug: 126744445
Test: manual
Change-Id: Id00ffac4581bbbe5dfd73a63b05c4512394745c1
2019-05-20 10:44:20 -07:00
Zak Cohen
1159c9c18a Moves proactive hints and wellness toast into a linear layout.
This ensures that they do not fight for the space. This is intended to
be iterated upon as we find solutions to some of the technical
challenges in the current POR.

Change-Id: I831e8797b16f28fe2cd742c96e9b7c916abf77a5
2019-05-15 15:47:58 -07:00
Perumaal S
64941fd9c6 Add proactive hints container
This replaces all other chips containers and causes minimal
layout overhead: It is strictly within the task itself and
causes zero jank or space issues.

Screenshots:
https://drive.google.com/corp/drive/folders/1-3ZNCJtWc9_cgmP1nNd8U1yvpCr6GGoq
Test: manual
Change-Id: I5e22a34c4dc1ac3e73c4d5c913befc2360cb388e
2019-05-12 14:56:25 -07:00
vadimt
c6d9ddfddb Removing hourglass_bottom
Now that we don't show DWB toast for negative remaining time

Bug: 127689526
Change-Id: I3ced3ec0da9bd7b09df9b66b4ef608e87339573f
(cherry picked from commit e921bacfb8)
2019-04-12 19:27:17 +00:00
Kevin
750bbe08da Implement fallback recents activity for Go
Implement recents activity for Go for when the default launcher does not
have recents implemented. To do this, we factor out some common recents
activity functionality from RecentsActivity and extend it to make a Go
specific activity that pops in the icon recents fragment.

Bug: 114136250
Test: Manual test NexusLauncher and Launcher3QuickstepGo by installing a
quickstep-less launcher and setting it to default
Change-Id: I936568489e8966da4a62e4b779ae660a220f2aeb
2019-02-19 14:12:42 -08:00
vadimt
8ac8d29121 Adding dismiss-all method
See the bug.

Bug: 123259701
Change-Id: I4b41d2cfe14c53db1a99cb6a693d3047057fa925
Tests: testOverview
2019-01-30 10:36:52 -08:00
vadimt
534178c926 Using hourglass icons for DWB toast
Bug: 118319143
Change-Id: I67018db3ceb8b6c0d863a46c9a9148013c68c1f7
Tests: Manual
2019-01-18 12:50:08 -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
Sunny Goyal
9e4b32f6a3 Recycling taskViews instead of inflating & throwing them away everytime
Bug: 122345781
Change-Id: If86d22729a42b8d5200f24dbf37a568fb9b11a5b
2019-01-10 23:11:52 -08:00
Kevin
2f6cb3167d Add icon recents fragment for IconRecents
Split out overview_panel from recents and override it with IconRecents
version to replace the recents view entirely.

Currently, on the IconRecents build variant, as expected, this hits a
class cast exception since many quickstep classes assume the overview
panel is an instance of RecentsView. All other variants build and push
fine.

Bug: 114136250
Test: Build + push NexusLauncherDebug, Launcher3Go,
Launcher3GoQuickstep, Launcher3GoQuickstepIconRecents
Change-Id: I3ac7331772e53ee81cb1735a709b4fb7b3bdb78c
2019-01-08 09:55:13 -08:00
Vadim Tryshev
2e8205d3f9 Desaturating thumbnails for tasks over their usage limit
Bug: 118319143
Test: Manual
Change-Id: Iae78c42fb392a49d734d35a80f6331438149d458
2018-12-05 17:08:24 -08:00
Vadim Tryshev
a8492330ac Prototype for the DWB toast in Overview
No UX spec is ready, so using some placeholder layout.
No attention to string localization since I feel that strings may
change, compared to current mocks.
Not using remaining-time API, as it is not ready.

Bug:118319143
Test: Manual
Change-Id: I50cff9099677db543e95963f058d3e89eab07d8f
2018-11-27 17:20:22 -08:00
Matthew Ng
eb9cc9dbd5 Animate the long press icon scale for task menu to match task view
Use scale listeners to track each other's icon scale to match them.

Test: go to recents and long press icon
Fixes: 110789415
Change-Id: I9bba3130ecf1d099db9708c84e709d16f5906c36
2018-07-17 11:21:23 -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
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
Tony
615ad40c38 Fix clipping recents when scaling down
- Parent shouldn't clip scaled down child
- Remove outline provider from scaled down child so it doesn't clip

Bug: 80267476
Change-Id: I9feb1ccf2069b8c88d8499e2813c818f9aea19af
2018-05-29 12:09:57 -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
Vadim Tryshev
bad1c73e73 Hide clear-all button from accessibility
This solves muliple navigation problems in Overview.

Bug: 79165501
Change-Id: I2ae99fe3ad24194c9516bb2a99344289ef7408e8
Testing: Manual
2018-05-18 17:28:19 -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
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
Sunny Goyal
85c53f2af5 Using a custom view instead of ImageView to avoid relayout when the icon changes
Bug: 78585335
Change-Id: I078aec5b80ec45933ba4974df68cab23ac4a0ca0
2018-05-02 15:38:21 -07:00
Vadim Tryshev
9beaa177f4 Setting correct font for clear-all button
Not it looks exactly like the one for notifications in SystemUI.

Bug: 72222505
Test: Manual
Change-Id: I9db2f403746386f9d807d4e3c250f4a1c7a46b68
2018-05-01 20:10:26 -07:00
Vadim Tryshev
4e3e54a45a Accessibility of clear-all button
Making it visible to accessibility even when it’s completely hidden
behind a task. I had to mark it visible as a view. Now it’s invisible
only when there are no tasks in RecensView, to hide it from
accessibility.

Focusing on the button completely reveals it.

Bug: 72222505
Test: Manual
Change-Id: Ia31a1136e07faed93b4a44d5be69483d3b88364d
2018-05-01 11:20:14 -07:00
Vadim Tryshev
cc0c98ad94 Enable Clear-all button by default
Making it work with all 4 combinations of RTL and flip-recents.

Bug: 72222505
Test: Manual
Change-Id: Ifb2428e006674abfe9a2609fd3d8f3f648eff0b8
2018-04-27 13:32:28 -07:00
Vadim Tryshev
77cb385d47 Improving highlight for Clear-all button.
Better shape + now has hover state.

Bug: 72222505
Test: Manual
Change-Id: I24ba55c760b15d71406a35ea5f7bf54f505741d6
2018-04-25 13:20:37 -07:00
Vadim Tryshev
4473658c2f Not ignoring insets for Clear-all button
When in portrait mode with nav bar on the right , we need the right
inset to be applied to the layout.

Bug: 72222505
Test: Manual
Change-Id: I06ac864097fb3cfb833de3e40921be4e19eb5f54
2018-04-19 18:43:04 -07:00
Vadim Tryshev
9a68a9ea62 Small tweaks to positioning Clear-all button
Bug: 72222505
Test: Manual
Change-Id: I920a1d712e4f72ed66cf0c31cb77cf949339b2c6
2018-04-18 18:59:56 -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
Vadim Tryshev
ac2042a40a Accessibility options for a task
The list is:
Close [task]
<items from the task’s popup menu>

Also making a current task in carousel get accessibility focus. This
prevents losing focus after closing a task, and makes sense generally.

Bug: 72409756
Test: Manual
Change-Id: I2cfdfd4693a255f63417d922cb6aa4841db1d3c3
2018-03-30 18:19:03 -07:00
Sunny Goyal
ab83773e21 Updating fallback activity
> Wallpaper based theme support
> Light/dark system UI
> Swipe gestures to start and dismiss a task
> Fixing insets and task preview size

Bug: 75979063
Change-Id: Id402e6ac50551a7c0849742e3a0e77df3ead5aa2
2018-03-30 09:45:59 -07:00
TreeHugger Robot
3d58de67a8 Merge "Adding a custom view for DragHandle" into ub-launcher3-master 2018-03-26 23:03:53 +00: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
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
Vadim Tryshev
332e07207b Solving losing [Alt+]Tab events
When you are in touch mode with Overview open, and press Tab or Alt+Tab,
it will be lost. This is because the upon pressing this key(s), app
gets switched to the keyboard mode. When this happens, the first
navigation ket gets ignored, and instead of navigation, we get focus
and highlight on the first focusable element.

The concept of the touch vs keyboard mode doesn’t fit well Overview
mode, hence the solution is to not let the recents activity to leave the
touch mode. We always keep RecentsView focused when visible. Android
honors the existing focus, and doesn't’ attempt transitioning from the
touch mode.

Bug: 73090995
Test: Manually fetch Overview, press Tab or Alt-Tab. Drag a task with
touch a bit, then press [Alt+] Tab. Repeat. Do the same with Overview
opened via Alt-Tab. Also: before, after and between, also check that Tab
keeps working on the workspace.

Change-Id: If6890ee80e08b03580051cceeac1be9a89ad3656
2018-03-19 16:40:00 -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
f633ef5f43 Adding fallback recents activity
> Refactoring RecentsView to a common base class
> Moving some dependency form Launcher to BaseActivity
> Using the Recents view in RecentsActivity

Change-Id: Ie0e6741d356291e77420798c140c999121de3a0d
2018-03-13 17:22:52 -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
Tony
404e625516 Remove workspace card
Swiping up for recents scales down workspace and hides it, similar to the transition
to all apps. Simultaneously, recents slides in from the side.

Also removed the setting for swiping to the first task, as it is required now.

Change-Id: Id0845db6650a37917a4faa9c8a434a2270913904
2018-03-12 14:05:18 +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
bac7f64fcc Fading the edges of the thumbnail if the size is different than the view size
Change-Id: I7bfb9d55ccbf4fa0338bc962632cfeac37cd69be
2018-01-18 11:48:40 -08:00
Sunny Goyal
690f249843 Updating the workspace card in recents UI
> Removing the widgets button from the card
> Making the height of the card same as that of the second card
> Using the same swipe rage for going between Normal and Overview state

Change-Id: Ib8bd050c52294bb01522fbcd0236f2221e6fe62d
2018-01-17 16:38:50 -08:00
Tony Wickham
2fae2a0e9c Add system shortcuts when long pressing recent icon
We add a floating view for the menu that aligns with the task icon.

If available, the following shortcuts are present:
- Widgets
- App info
- Install (for instant apps)

It is designed to be straightforward to add to this list.

Bug: 70294936

Change-Id: I56c1098353d09fc564e0e92e59e4fcf692e486ba
2018-01-02 15:44:34 -08:00