This CL refactors Overview Actions View so that a separate view, R.id.group_action_buttons, is used for buttons related to grouped tasks. This also changes the way visibility is handled with actions buttons -- instead of all buttons living on one bar and being toggled on and off, sometimes the whole bar is toggled on and off (to change from single task actions to group actions and vice versa).
This prevents the same view from having its visibility changed twice in in one layout and causing the wrong visibility to be rendered.
Fixes: 333844287
Test: Manual
Flag: ACONFIG com.android.wm.shell.enable_app_pairs NEXTFOOD
Change-Id: I1b6be4637ac8c8d424e7633c437fca376ecdd757
Merged-In: I1b6be4637ac8c8d424e7633c437fca376ecdd757
This CL fixes a bug caused by ag/27148514. The bug occurred because:
1) The new way we use FloatProperty to set the alpha did not have a working `get()` function, so it just returned a junk value, set to `-1f` (I didn't think `get()` would ever be called meaningfully for this property).
2) However, during certain UI interactions, `RecentsView#updateActionsViewFocusedScroll()` is called many times in a loop, which repeatedly tries to re-start the fade-in animation for actions bar. Pre ag/27148514, even though the fade-in animation was called repeatedly, it would start and then immediately stop running because it realized that it was already set to the desired alpha. However now that we return a junk value for `get()`, it didn't know to skip and just ran the full fade-in animation again and again.
Fixed by refactoring FLOAT_SETTER (now ALPHA_PROPERTY) and creating a new data class, OverviewActionsAlphaProperty, that handles some of the intricacies of this increasingly complicated alpha system.
Fixes: 339545510
Test: Swipe to Overview, move tiles around, actions bar does not flicker.
Flag: ACONFIG com.android.wm.shell.enable_app_pairs NEXTFOOD
Change-Id: I1093363780db5e0780deda2ff14b4f7361d63940
Fixes: 335625543
Test: Unit tests in this CL
Test: Manually
Flag: ACONFIG com.android.systemui.keyboard_shortcut_helper_rewrite DEVELOPMENT
Change-Id: I0367bf4b73994a49ca65b8047bd76d3dc2b3faca
We already reached the limit of 32 flags for an int. To be able to have
more, changing from int to long.
This is needed, as new flags have to be added.
Flag: NONE
Test: Manually running SysUI and Launcher
Test: Unit tests in CL
Bug: 335625543
Change-Id: Iec1d40218264c7c64c50fd09764aa07c0caa7787
This change handles touches on the bubble bar while the bubble bar is animating.
We now update the taskbar touch region during the animation to make the bubble bar touchable.
When the bubble bar is touched during the animation, we now cancel the animation and allow dragging or clicking to expand.
Demo: http://recall/-/bJtug1HhvXkkeA4MQvIaiP/gtGS6FCrygN5RKueFtPs5E
BubbleBarTest 100x run: https://android-build.corp.google.com/abtd/run/L42600030003675041
Note that in the abtd run above there's a flake but that's for a different test which I'll look into separately.
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Bug: 280605790
Bug: 280605846
Bug: 339066271
Fixes: 339244038
Test: See demo
Test: atest BubbleBarViewAnimatorTest
Change-Id: Icb8f4fa46ae4bb8c94ca931193d4a3cc49c5b718
Result of several rounds of testing with UX and product. Ready to start
rolling out after this CL.
Bug: 298089923
Flag: ACONFIG com.android.launcher3.enable_scaling_reveal_home_animation DISABLED
Test: tested with the help of UX and PM
Change-Id: I2bcdfa5a314aeeb60acf7b38f3f3d463fedc277e
Currently drag from taskbar is broken. It will be fixed once drag from
taskbar to desktop is implemented in b/297921594.
Bug: 323388149
Test: Try to drag an app from taskbar while in desktop, see that app is
not launch and icon goes back to it's place in taskbar.
Flag: NONE
Change-Id: I27e73d8262e14944b34e193397a83f8435813339
From b/330638194, the requirement is that
1. "all apps" can be focusable with talkback
2. "all apps" text is persisted when in accessibility mode.
Merged-In:Ibabb92bd9d202221fdc9cfacb585755167898187
bug:330638194
Test: manual video: https://drive.google.com/file/d/1QI_F4dUijfnU2ahE2Mg6yrmRJfOVyuVJ/view?usp=sharing
Flag: None
Change-Id: Ibabb92bd9d202221fdc9cfacb585755167898187
This prevents the icons from lingering as the spring settles for the scaling reveal
home animation.
Bug: 298089923
Test: go from app to home, from overview to home, vice versa
Flag: ACONFIG com.android.launcher3.enable_scaling_reveal_home_animation DISABLED
Change-Id: I6bc3f0fcbdc63f0c064d425c8ebaf62a20451ac1
- Add legacy resource for supported multi-instance apps that
matches the current SystemUI resource of the same name, and will
be removed as apps migrate to the V manifest property to declare
multi-instance support
- Load the multi-instance state from PackageManager when the db is
first loaded or when packages are updated
- The multi-instance check is then used to determine if an app pair
can be saved (ie. whether the action can be shown)
Bug: 323112914
Test: atest NexusLauncherTests
Change-Id: I565b4bee4ab5f7040910306b1fd60a4fc3bf9a1c
This prevents accidental triggering of Taskbar unstash with cursor when the user wants to click the handle to go home.
Fix: 338357087
Test: TaplTestsTransientTaskbar
Flag: com.android.launcher3.enable_cursor_hover_states
Change-Id: I76f3e31cb2588a0fae302278c847227e9548be8f
A few things to note
- We use gesture nav layoutter because it's the mode in which we show back button rendered by IME. There might be other historical reasons but it is what it is.
- The back button isn't necessarily laid out correctly with this layoutter (currently we don't adjust anything in layoutButtons.
Fixes: 338876161
Test: Repeatedly get in setup mode, and make sure the back button is visible
Change-Id: I402273c2868f3f46a12b00918dab3f36fbe82204
(cherry picked from commit 9d602e684c)
DeviceProfile is not updated after rotation. Which led to drag to
reposition using landscape display size in portrait.
Bug: 330585402
Test: have device in landscape, drag bubbles and the bar itself
left/right, observe that the drop target is shown when passing half
the screen
rotate device to portrait, start dragging again, observe that drop
target is shown on the other side when passing half the screen
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Change-Id: I5c0e2e4ab47a669b6e178b45ab132989029f5913
- Changed mTaskContainers to a List
- Added an XML for TaskThumbnailView to make it compatible with ViewPool
- Removed mSnapshotViews variable, and streamlined DesktopTaskView binding logic to re-use thumbnailvIew from mTaskContainers or ViewPool
Bug: 249371338
Fix: 251586230
Test: manual
Flag: ACONFIG com.android.window.flags.enable_desktop_windowing_mode DEVELOPMENT
Change-Id: Iab7575e9c36b8ebf3eb62f19f13d75ba671f9f4f
When a bubble drag starts, shell sends the current expanded view size
over as part of BubbleBarData. Update the size stored in
BubblePinController based on latest value.
Update drop target visual to match the spec. It should have 24dp insets
compared to expanded view and 28dp corner radius.
Bug: 330585402
Test: drag bubble in landscape, check that drop target for expanded view
matches with what is shown when expanded view is dragged
Test: drag bubble in portrait, check that the drop target for expanded
view, matches with what is shown when expanded view is dragged
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Change-Id: Ic11c4c5c675107543ba08f24a4138cda422d24c1