This also means Taskbar is transient by default in automated tests,
instead of persistent. Updated some checks accordingly.
Flag: LEGACY ENABLE_TRANSIENT_TASKBAR ENABLED
Test: TaskbarExpandCollapse#hideShowTaskbar; TaplTestsTaskbar;
TaplTestsTransientTaskbar; TaplTestsPersistentTaskbar
Bug: 270395798
Change-Id: Ib6e592a31a55a912a7ea991a421a9c60bca51c80
- Renamed variables to make it more clear what they represent
- DeviceProfile will be source of truth for taskbar
sizes
Bug: 265144213
Test: phone, multi-display, tablet
Change-Id: Id9c19d15a65894fd7645e0f876a4b6527b713c34
Flag: ENABLE_TRANSIENT_TASKBAR=true
- Moved all touch-to-stash logic to new TaskbarStashViaTouchController
(handles both tap outside to stash instantly as well as swipe down
inside to stash after letting go)
- This is a TouchController on TaskbarDragLayer, so it intercepts
touches from TaskbarView before icons can be dragged during swipe down
Test: swipe up to invoke transient taskbar in an app, swipe down or
touch outside to stash
Flag: ENABLE_TRANSIENT_TASKBAR=true
Fixes: 246631710
Change-Id: I5cf64848bba34ad32fcc80a93fb4f79ebd2c10a7
If you hold a long press and while pressing you start another
long press again with another finger, then a new onLongPress event
will trigger and in some cases we are not processing that case.
By ignoring the evetns with the flag ACTION_OUTSIDE we can prevent
such cases.
Fix: 247477725
Test: ReorderWidgets
Change-Id: I31833bc54db2771809562bd1f92c8523eb2f05ab
- If a dragged item is not over a valid drop target
then we don't highlight anything and on drop we move
it back to its original position.
- Instead of checking if the dragged item is over the
hotseat view, now we check if the item is over the hotseat
shortcuts.
- Smartspace is a dead zone
Test: drag items from different workspaces, allapps, widget
picker etc. to all parts of the screen and verify which
view is targeted and where the item gets dropped.
Check on phone/foldable/tablet.
Bug: 228201267
Change-Id: I18de576ea300d58ae645e511b238e0b946b5595a
- Add TaskbarActivityContext which allows shared Launcher elements to
"just work" using existing generic ActivityContext.
- TaskbarContainerView extends BaseDragLayer<TaskbarActivityContext>.
- Inflate FolderIcon and Folder using TaskbarActivityContext to be
shown in TaskbarContainerView.
- Use TaskbarActivityContext's DeviceProfile to determine icon size
instead of overriding in styles. This also ensures that normal
BubbleTextView icons have the same size as FolderIcons.
Test: Place a folder in home screen hotseat, ensure it shows up in
taskbar and can be opened, and that apps inside it can be launched
or dragged.
Bug: 171917176
Change-Id: Ic25d2f84bcd7e3399c88989305ea565497c030d9
For keyboard DnD, we use Accessible DnD implementation.
A placeholder FloatingView draws the focus indicator
for the virtual views
Test: Visible
Bug: 178781566
Change-Id: I632fc7377dffa1e05e3f0a9c3ad18641deb5a1a4
1) When view system is already dispatching an event, proxy-dispatch is restricted
to gesture only and follow the gesture dispatching rule.
2) If a full-proxy-dispatch is going on, and view-dispatch comes in, view-dispatch
takes over and proxy-dispatch is cancelled.
3) During gesture-only proxy dispatch, if view-dispatch already started a gesture,
proxy dispatch is ignored. Otherwise view-dispatch is restricted to non-gesture
dispatching only (and proxy-dispatch is already restricted to gesture only).
Bug: 158130948
Change-Id: Ied351663e16beda5acf49a52bdefea881c18b9cf
Add wallpaper changed broadcast receiver to BaseDragLayer, which
checks if the new wallpaper is blacklisted and relays that to
remove the scrims.
Bug: 150144115
Change-Id: I55b7b98fdd419cd76532492461a872367efed67b
Presumably, the flake was fixed when I added waiting for model load
before the test body starts.
Bug: 138729456
Change-Id: Ie921ebd40e42a7d73884c19949ca5f0129afc96e
Previously it was using OtherActivityInputConsumer, which got things in a
pretty weird state (e.g. most recent app would appear in the center as if
it was the active app when you started Quick Switching, etc.).
By default (toggleable by a feature flag), OverviewWithoutFocusInputConsumer
is used because Assistant doesn't seem to respect the CLOSE_SYSTEM_DIALOGS
broadcast, at least in half-shelf mode. In this case, the Home intent is
sent on swipe up, or you can dismiss it with the back gesture or by tapping
above the half shelf.
The new feature flag ASSISTANT_GIVES_LAUNCHER_FOCUS routes touches through
OverviewInputConsumer. As opposed to OverviewWithoutFocusInputConsumer,
this allows Quick Step to work while Assistant is running. Additional logic
is added to dismiss the Assistant when appropriate. Note that the dismissal
happens atomically, so it's not completely fluid with the other animations.
As mentioned above, this is disabled by default because Assistant doesn't
currently respect CLOSE_SYSTEM_DIALOGS.
Demo with the flag enabled (and Assistant respecting CLOSE_SYSTEM_DIALOGS):
https://drive.google.com/open?id=1W5jGpn_TEC-KjrYwQtaBT3pzxG_5tC4W
Bug: 139661510
Change-Id: I261653118aff289b329ec2a7ca6e52f100f7835a
Tested: Manually used quick switch after invoking Assistant from home screen.
hardcoding it to 16ms
> Creating a utility class for caching display property changes
Bug: 128940249
Change-Id: I6f9a214548de65bd1c8530508d665ee88312da4a
The original bug that was solving seems to be fixed by other changes,
and this allows users to scroll, dismiss, etc on recent tasks before
fully reaching overview from an app.
Bug: 137487381
Change-Id: I28a708811bba3ce739ce261f19eb29558d8f0e7d
Currently only StatusBarTouchController overrides this to always return
false, so that you can swipe down for notifications during transition to
home screen from an app (in gesture nav).
Bug: 137161198
Change-Id: I803c37937d5294810cbe0c1bbffcd5dddcc5ca3b
* WindowTransformSwipeHandler closes all AbstractFloatingViews, including
ListenerView, which results in FloatingIconView getting removed.
* In IconLoadResult.onIconLoaded, we remove the check for isIconLoaded since
its not needed. This was also causing a race condition since isIconLoaded
is not set to true until after we tell onIconLoaded to run.
* In BaseDragLayer, we have a delay before checking if the view is open and
then closing the floating view if true. This caused issues since we reycle
the view. Now we check if the view is open before running the delay to call
close.
Bug: 136044361
Change-Id: I7442a589a62c3cdf90b70d146e0ecf3e4300ddf7
> When running one-off animations during quickstep, cancelling prevoisly
running animations.
> Cancelling such one-off animations when state is reset
> Preventing touch proxied from recent transition to affect quickswitch
(by affecting pagedView)
Bug: 135686388
Bug: 135571566
Change-Id: Id647015a583761d8fd46a02e3e2d88027e282a79
- Allow touches to go through recents to the hotseat.
- Translate the hotseat with the all apps shelf when swiping
up in background app state.
Bug: 135222111
Change-Id: Ib887fc25ccfeb406a44074198c11f7b1d245443c
We had a resolved case in the past where an app's context menu didn't
open on a long click (thanks to app updates), now the menu opens, but
the drag gesture doesn't drag the icon.
Bug: 133009122
Change-Id: I45d104a92fab6556ecd937aef76f0a8147e67f56
Insets are dispatched to all views. We never consume the insets and
let each view decide what to do with it.
Also fixing scrim in all-apps when in full-gesture navigation
Change-Id: Ib1c6bef5b32aac0c6ea03078b5138d2d0408c6d8