- Use getSourceVisualDragBounds() if the target view is BubbleTextView;
this accounts for padding as well as extra ring inset for
PredictedAppIcon
- Also ensure we always use the final drag view scale when switching to
the system drag and drop, instead of using the current scale which
might be in the process of animating
Test: drag regular and predicted icons in taskbar, but drop it in a
region that doesn't accept it (e.g. the taskbar itself), check that the
return animation scales and offsets more correctly than before
Bug: 269814838
Change-Id: Ie8398b2617340e1d2568773563aa0263a3366940
- Don't stash until drag ends, but immediately stash at that point
(regardless of success or failure, though failure will animate to the
original icon before stashing)
- Send transient taskbar's bounds to WM Shell via intent extra such that
they ignore drag events in that region
Test: manual in persistent and transient taskbar
Bug: 269814838
Fixes: 268526633
Fixes: 259645384
Change-Id: I5ded3998046f259ed6e79cb4ed765ad7b0c72e45
- Added support for escape(backtick on some keyboards) keyboard keys
- Added support for d-pad left and right keyboard keys
- Fixed janky behaviour when quick switching too quickly.
- Removed unused code
Bug: 269618928
Test: Tried quick switch very quickly, tried escape, d-pad left and right keys in RTL and LTR modes
Change-Id: Ie03207cb349891e9c2de18502f3f65b7c8f9c018
Bug: 231648761
Fixes: 269392826
Test: Unable to reproduce 269392826, but verified this doesn't
break existing paths to adjust the insets
Change-Id: I8aa82f3fb77e627ac02352ef31b788b81c2ca901
- We need to reset icon alignment whenever icon layout bound
changes. This fixes the issue where we build an icon
alignment animator before any of the views are laid out.
- Separated animation logic between.
createTransientAnimToIsStashed and createAnimToIsStashed
* The values still require a bit more tuning but this gets us
a lot closer to spec for many of the motion polish.
Bug: 267806083
Bug: 246634367
Bug: 246635237
Test: manual
Change-Id: Id122134b22ef4e418ce632e4a8137239dc8bb313
Enable highlight around focused overview item when desktop windowing
prototypes are enabled.
This highlight was built for and enabled with keyboard quickswitch feature.
We don't support quickswitch on desktop yet.
Disable the quickswitch, but keep the border highlight.
Bug: 269342116
Test: enable desktop windowing proto, use an external keyboard and
alt+tab to switch between apps, observe highlight in overview, no
quickswitch popup
Test: enable desktop windowing proto, enable
ENABLE_KEYBOARD_QUICK_SWITCH, observe that alt+tab still opens
overview
Test: disable desktop windowing proto, enable
ENABLE_KEYBOARD_QUICK_SWITCH, observe alt+tab opens the quickswitch
popup, and highlights in overview
Change-Id: I15b36f082610f4ce38143856c84fef723f1b8ba0
The EDU explains how to drag to splitscreen applications, but this operation is unavailable in overview. Therefore, let's only attempt to show the EDU when we are in an application.
Test: Manual
Fix: 269363653
Change-Id: I97aa5c76b44562189862432fb3856bf5634c6e4b
* Created b/268120202 to track other states of split
selection that are unhandled on 3P launchers
Test: Able to initiate split in overview with 3P launcher
Fixes: 264576761
Change-Id: I0311fe83380bf914fa79956b2565b61cc5eab916
There are no behavioral changes (other than we no longer are recycling
objects while processing workspace items), but this refactor will setup
the next change to load the first workspace page before other workspace
pages.
Bug: 251502424
Test: Workspace, app widgets, and containers loaded properly.
Change-Id: I437aab40000d841d7fcc4380d05ab4a8f5d5c2ad
Test: Enter split selection from workspace/all apps,
with 1, 0, or more apps in overview
Fixes: 269363674
Change-Id: I8eba01960dd7e3c2683fe8f1d21e81de3b8245a2
When a external keyboard is connected and ENABLE_KEYBOARD_QUICK_SWITCH
feature flag is enabled, we highlight the selected tile in overview.
Add support to the new desktop tile to show the highlight.
Bug: 269342116
Test: connect an external keyboard, use alt+tab to open overview and
switch between the tiles
Change-Id: I29ac5864776a9a251ecdb0cb4b741b12747de564
Adding KeyboardQuickSwitchView and associated flows.
Test: Manually tested alt-tab and alt-shift-tab in and out of overview on a tablet and phone
Bug: 258854035
Change-Id: Ifb48b005067b3a9c66acfd5ecdbae144b359d3be
When desktop windowing prototypes are enabled, disable quickswitch for
now.
Quickswitch causes issues with how tasks are moved between desktop and
fullscreen in prototype 2. We are currently doing it based on shell
transitions. And whether there are desktop tasks visible or not.
Directly switching from a fullscreen task to desktop tasks does not fit
well into this model. And supporting this is not trivial.
As quickswitch is not a core user journey right now, will disable
quickswitch for the time being.
We can revisit this at a later date, when building out the production
version.
Bug: 268075592
Test: enable proto 1, try to quickswitch from home screen and from apps
Test: enable proto 2, try to quickswitch from home screen, from
fullscreen app to desktop, fullscreen app to another fullscreen app,
from desktop to fullscreen app
Change-Id: I06b3461f0134819cfa7c9e5f61df8ed84cc90eb8
Preparatory change for adding the KeyboardQuickSwitchView and associated flows.
Test: Manually tested alt-tab and alt-shift-tab in and out of overview on a tablet and phone
Bug: 258854035
Change-Id: I468481a023e82d3ef7c7d4d44c5b9435173b49ae
Maintaing a list of pending updates while the host
is not listening, so that these can be applied when
host starts listening again
Bug: 267351283
Test: Manual
Change-Id: I38423862a3461724b36f17ffe44e44c55fee06de
- Similar to the nav bar, we should also disable region sampling then
the window is no longer visible (ie. when in immersive mode) otherwise
we fall back into gpu composition which consumes more battery
Fixes: 268280575
Test: Enter immersive mode and verify region sampling is disabled
Change-Id: I99bf8986c6f22fd8d480d255d10cfcd39cfb79e3
- When the taskbar is recreated (ie. from a display config change),
the previous states sent from SysUI need to be reapplied to the
new controllers
Fixes: 267664948
Test: Wipe device, in SUW accessibility settings change the display
density and verify it properly tints the back button
Change-Id: I837a67ced2941d4545359b8231026044b5479767
Before this cl, both Launcher and System UI processes were registering for hinge angle and device state (e.g. folded/unfolded) change events to calculate the current unfold animation progress. In some cases, launcher ui thread was busy, delaying the progress calculation from the hinge angle value (that was received ~at the same time by both processes). This resulted in launcher and sysui unfold animation not being synchronized in some cases.
With this cl, System UI process uses OverviewProxyService to send the unfold events to Launcher. In this way, both process always have the exact same progress (+- 1 frame)
This is currently guarded by a launcher flag, by default with the new behaviour, to allow devs to compare the experience and easily debug potential regressions.
Bug: 268490854
Test: Analysed perfetto trace + RemoteUnfoldTransitionProgressProviderTest + manual
Change-Id: If15fd6fe39abb3d922c5fdb327100206dfa3665d