Now we can use AXIS_GESTURE_SWIPE_FINGER_COUNT per ag/23288416
Test: swipe up to overview / home; workspace scroll 2-finger only / quick switch/ pull down notifications works
Bug: 284463803
Change-Id: Ie1c7d13f4683d3b9c8de6e5ea2821df73b97ca29
Updates keyboard quickswitch logic handle quickswitching while on
desktop. When on desktop, alt+tab moves only between desktop tasks.
Fullscreen tasks are shown in the overflow tile and can be accessed by
going to overview.
TODO:
- when not in desktop and using quickswitch, show the desktop tile as a
combined tile in the row, similar to what is shown in overview
Flag: persist.wm.debug.desktop_mode_2
Bug: 280468885
Test: open some apps on desktop and have some fullscreen apps opened in
the background, when on desktop, observe that alt+tab only switches
between desktop tasks
Test: same setup, but switch to a fullscreen app, observe that alt+tab
only switches between fullscreen tasks and desktop is accessible from
overview
Change-Id: Ib19f2eaa24363bbd0669c8c8c3d99ed9d9118a17
TouchInteractionService cannot be garbage collected until it has been cleared from the sysui process. Switching to use a WeakReference to help with garbage collection.
Flag: not needed
Bug: 283490010
Test: ran launcher and performed gestures
Change-Id: I37aa5f858f2ae0ac78b46478ab4c5f24770bd64f
Originally gated onTaskMovedToFront behind prototype because looked like
it was causing overlay to close when it shouldn't. However, it turns out
it was actually onTaskStackChanged that was doing this.
Additionally, changing onTaskMovedToFront to close with animation, because this will fire if swiping up from all apps (going to overview so Launcher is considered as the task moving to front). Also, registered onTaskCreated to be a bit more thorough.
Test: Manual (EDU, All Apps, and EDU + All Apps)
Fix: 283373523
Flag: none
Change-Id: I4cd3969f91a93bab190b764a656d9cfc03d1ce09
This change was previously attempted, but failed because of a tricky issue where the LockedUserState singleton object was getting permanently set to a mock context in LockedUserStateTest, and then was failing TaplTests because isUserUnlocked was always false.
This fixes that by avoiding using the singleton LockedUserState instance in the unit tests.
Bug: 251502424
Test: Compilation threw no errors and user unlock behavior worked
correctly. Post-submit was tested and this CL passed all previously
failing tests: https://android-build.googleplex.com/builds/abtd/run/L12900000960898179
Change-Id: I045c9f2558a6bdacb4bfa029fbf6a07c3c190fe7
- The launcher state does not transition from Background -> Overview
until the overview animation finishes, and if a side task is launched
before that happens, then we receive onTaskAppeared() but
isInLiveTileMode() is false, which results in a state where no
animation of the side task surface is run, and the recents animation
is not finished. In these cases, if we've already calculated the
end target is RECENTS, then we can still animate the side task
- Adding some more gesture logs to indicate side task launched (or didn't)
Bug: 279114961
Test: Go to overview and launch next task
Change-Id: I23eac8721da801f14cc95fc6781a0ef9f0355cc0
* TopTaskTracker gets updated too late after we've exited
split screen so we can't use that to determine how many
RemoteTargetHandles to use
* We default to 2, and then scale it down to 1. Because we
modify the array holding the handles directly, it should
also get updated in AbsSwipeUpHandler
* Temporary solution to stop setting up RecentsView if we detect that
TopTaskTracker has incorrect data and re-setup when we get
onRecentsAnimationStart()
Test: Tested quickswitch in gestural and recents button
double tap in button nav.
Bug: 236226779
Flag: none
Change-Id: I1bae7aed1f8712ddd1bf496acfcb851c0e32a115
- Updated gesture nav edu overview step post-success motion and colors
- Updated gesture nav edu menu done button color and legacy action button color
- Switching light/dark mode when a step is complete started the demonstration animation. fixed this jank
Flag: ENABLE_NEW_GESTURE_NAV_TUTORIAL
Fixes: 281764891
Fixes: 283964958
Bug: 279823249
Test: ran full tutorial with ENABLE_NEW_GESTURE_NAV_TUTORIAL enabled and disabled
Change-Id: I9adc05947267ec038b6f374b2a29a5499468883b
DWB toast initialization is being called 3 times for every TaskView. Twice during the TaskView bind (setOrientationState and bind), and for every TaskView loaded in applyLoadPlan the bind and the setOrientationState are invoked. This CL removes the excessive calls in the TaskView bind and applyLoadPlan.
The DWB for the focused task view is still being called twice due to orientation update for the focused task.
Bug: 281980412
Flag: N/A
Test: atest DigitalWellBeingToastTest
Change-Id: Id301b53b9cb0dfc23a81debec67a6de9a35485b9
* Bubble bar typically follows the behavior of taskbar - if taskbar
is shown, the bubble bar is shown, if taskbar hides, bubble bar
hides.
* The bubble bar has 3 states: stashed, collapsed (unstashed but
the bubbles are not expanded), and expanded. When bubbles are
expanded, this means WMShell is rendering the bubble
expanded view. In this situation taskbar becomes collapsed.
Bug: 253318833
Test: manual - flag turned on - see go/bubble-bar-tests
Test: manual - flag turned off:
- launch an app, ensure taskbar is stashed
- unstash taskbar, drag down on taskbar, ensure it
becomes stashed
- be in an app, unstash taskbar, interact with the app,
ensure taskbar is stashed
- be in an app, unstash taskbar, select an app from it,
ensure taskbar is stashed & app is opened
Flag: WM_BUBBLE_BAR
Change-Id: I7b481d768182c8429160ab4a9b213b885a7d78bc
During each app launch, a new `MyDepthController` is instantiated, which
registers two of its methods as listeners for cross window blur and
opaqueness. This controller's usefulness spans that specific animation
only, but the listeners are never unregistered. This creates conflicts
when an opaqueness signal happens, which cause the background to flicker
(see videos).
Bug: 283335820
Test: manual, see videos in the bug
Flag: not needed, bug fix
Change-Id: I3dcb0b8ff0aa77bf3183a926889d0131b17bcaa4
* SystemUi split APIs are overloaded to launch fullscreen tasks
as well, break that out into a separate method for clarity
* Have SplitSelectDataHolder also special case fullscreen launches
Bug: 283045822
Test: Launched various combinations of split tasks,
also tapped on initial view to see fullscreen launch with tasks
and intents
Flag: none
Change-Id: If3de9784b72e0f5f27f1b6d97cbf835b8f5391de
1. if a 'ViewScaleTargetProvider' is being used, this can cause a crash
2. otherwise, the old border bounds are reapplied, which is likely no longer correct
Updated BorderAnimator to use 'BorderAnimationParams' rather than 'ViewScaleTargetProvider'. This removes some unnecessary null checks while making the util class simpler to use. It also allows us to listen for specific view events for the border animation.
Flag: ENABLE_KEYBOARD_QUICK_SWITCH
Fixes: 283272516
Test: opened the keyboard quick switch view and highlighted a view in recents view, then rotated the screen several times
Change-Id: I7959d6cd892ebcdd2c68163dd56c358815494af6