Here, the first item in an ArrowPopup or Folder are focused on.
Note: There's another pre-existing bug where it announces
"Home screen x of y" when the floating view appears; this
change doesn't address that.
Fixes: 147470419
Change-Id: I1dc70edc21ea7c19a5742208512738d6c4a94067
* Added FeatureFlag.ENABLE_ALL_APPS_EDU
* When user swipes up on nav bar three times and goes to hint state
consecutively, we show the new All Apps education tutorial.
* For now we block interaction while the animation is playing,
and we remove the view when the animation is done.
* Future CL will leave view up until user successfully reaches All Apps state.
Bug: 151768994
Change-Id: I903e0a3914d0558950ecb8cd714d97ddc10ca06b
If feature flag HOTSEAT_MIGRATE_TO_FOLDER is enabled, this moves hotseat
items into a folder in the workspace. If not, it moves the whole hotseat
to the first workspace page that can host the hotseat.
Bug: 151099421
Test: Manual
Change-Id: I49f6a22a0ada2c4cf237ca91a323a46346a11a59
Using PendingAnimation for animation builder.
This will allow us to easily add SpringAnimation to stateAnimation
Change-Id: I8d88489a5da6fc85747ef9be7c13858b441cd28a
press on an app icon.
When user long press on an app icon, the a11y focus event wasn't
properly triggered on the container of deep shortcut, which is why
there wasn't any talkback feedback after long press on an app icon.
Bug: 140786694
Change-Id: Ib38db147faa5a163985f1ed74beec04c588b022c
This change allows us to quickly end the animation if the user begins
interacting with launcher before the animation is over. This can currently
happen when the user swipes up to go home, and then quickly swipes up again
to enter overview.
Bug: 129421279
Change-Id: I88c7d55ef8ac09f999c082317de3bb3693c11466
If there is a better solution, bug assignee, please proceed with it.
I'll land this immediately, as a lot of tests are broken.
Bug: 130739123
Change-Id: Iacdb9adbbf41f1f9de1390c3e7525ee0bd7beda6
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
> Removing LayoutListener which was causing relayouts in the middle of
the transitions
> Fixing some logging in MultiStateCallback
> Using an overlay to draw the hole for the live tile
Bug: 124451190
Change-Id: I91351f76ec7cc2793a835f40002bfd912939d40d
- Place Launcher above app surface.
- Use LauncherLayoutListener to clear the area where the current task is in order to punch a hole and reveal the app view underneath
Bug: 111697218
Test: Manual test
Change-Id: I4d4e0f1113a8e60566257c030ae9b591789eb3b3
- Add methods to ModelWriter to prepareForUndoDelete, then
enqueueDeleteRunnable, followed by commitDelete or abortDelete.
- Add Snackbar floating view
- Show Undo snackbar when dropping or flinging to delete target; if the
undo action is clicked, we abort the delete, otherwise we commit it.
Bug: 24238108
Change-Id: I9997235e1f8525cbb8b1fa2338099609e7358426
TYPE_DISCOVERY_BOUNCE and TYPE_QUICKSTEP_PREVIEW have the same value.
Make sure each flag has a unique value.
Test: manual
Change-Id: I0fec3f27ffc31bad80d3af7b3baa3631b61b2567
While swipe-up animation is running, the user can quickly start
another touch gesture. In that case we keep the recents transtion active
and proxy all touch events to launcher.
Bug: 110901700
Change-Id: Ie3b448dfea00473082dc9143423d3596504a3fcc
It was obstructing views under it.
Solves both Talkback and Switch Access issues.
Bug: 80192025
Test: Manual
Change-Id: Ia7fad91e1fcb857afbf68f879550c670279cee68
Normally when you hit back, we just close the floating view if there
is one. This makes less sense for DiscoveryBounce, since it doesn't
feel like a different state even though it's technically a floating
view. So in that case, don't consume the back press; let launcher
handle it to go to the previous state.
Bug: 80075741
Change-Id: I7270b61be70509cb2101400a12929478a5d082aa
Now that batter saver mode doesn't get rid of animations in P, we
shouldn't use custom logic to prevent them either.
Also updated ATLEAST_P to use version code.
Bug: 79990054
Change-Id: If17cf369035c976f3d9d81f35432a045f1956ce5
> Using common logic for announcing a floating view for widgets and folders
Bug: 79091095
Bug: 79748886
Change-Id: Ibb3fe48e68e724f50d69f51a03d3b35ad0baf625
I'm not sure how/when this case occurs (perhaps during some transition/state
change), but manually removing the floating view matches the symptoms in the
bug.
Bug: 72996404
Change-Id: I1e7c1a338fcd16c8e07b3c49fb9c9b2097eb2708
> Extracting common methods from Launcher & DragLauncher to base classes
> Remoting some dependencies on Launcher and using the base class instead
Change-Id: I121cacf8a14190b4703cda60bdeb4f79eee69ded
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
Introduced a BottomUserEducationView for similar use case.
Screenshot: https://hsv.googleplex.com/4856820942241792
BUG=69963630
Change-Id: Ia818ee44fa5ce97ad1778f33e6a9a3a36cea5017
When the touch passes a threashold, we take a snapshot and start the launcher
activity. The launcher displays the snapshot on top of its UI.
As we get further touch events, we move this snapshot and the hotseat in reponse.
Change-Id: I4623676227000afd52805a414a4de499081feced
> The widget panel is only inflated when needed
> Using the swipe up/down interaction for widgets tray
> Removing additional view wrappers from all-apps
> Widget tray is preserved across activity recreation
> Launcher no longer has WIDGET state, the actual code around
the states will be removed in a follow-up cl
Bug: 67678570
Bug: 67585158
Change-Id: Ia29a7c33ec81e6c53cc24e2906b7022b6f41755b
even when the touch is started from outside the panel
Removing various instanceOf checks in onNewIntent and onBackPress
and moving all the corresponding logging in the FloatingView
This simplifies handling of panel specific log and avoids
missing a particular panel type in the if-else statement.
Bug: 64751884
Bug: 64751923
Change-Id: I98f5aae18560a64be73c9efcf495479740d49a00
- Currently the system shortcuts are just widgets and app info
- As shortcuts, they live in ShortcutsItemView
- They are populated either as icons only (if there are deep
shortcuts) or as icons + text
- Widgets are disabled until binding them is complete (we request for
them to be bound on long-press now). We should revisit this.
Bug: 34940468
Change-Id: Ia51d002c3b3ede87658bdab57abfc3eeca1ed242
- Contains two rows, one for widgets, and one for "configurable
shortcuts" that have customization activities
- Extends AbstractFloatingView and uses VerticalPullDetector for
touch interactions
- No way to show this currently; will add options to popup in followup
Bug: 34940468
Change-Id: Iab62c2cb89428f91119c9c86f9db886496c321fd
- DeepShortcutViews are added to ShortcutsItemView, which
is in PopupContainerWithArrow
- Moved some shortcut-specific logic to ShortcutsItemView
(namely, touch/long-click handling for draggin shortcuts)
- Moved round-rect clipping to PopupItemView
- Removed collapseToIcon() logic, including
PillWidthRevealOutlineProvider, which was only used for
that purpose. It isn't necessary now that the deep
shortcuts have no background themselves.
- Replaced focus pill drawable with ripple effect on
shortcuts and notification view.
Bug: 35766387
Change-Id: I6bc09f1851cfbb806df4bf75a6e435b0f1900c9c
- Also added PopupItemView, which takes animation logic from
DeepShortcutView, and which DeepShortcutView now extends.
- Renamed ShortcutFilter to PopupPopulator, which has support
for new item types (not yet used). Also moved populating
logic (e.g. UpdateShortcutChild Runnable) to PopupPopulator.
Bug: 32410600
Change-Id: Ib6e444ac7ca99c80ba438801c26e62d9542e0ad9