Commit Graph

11086 Commits

Author SHA1 Message Date
Schneider Victor-tulias d86c5657e0 Fix null-pointers in SurfaceTransactionApplier constructor.
A recurring class of null pointers are caused by using views with no view root implementation in SurfaceTransactionApplier from QuickstepTransitionManager. This can happen when we use launcher views after it has been destroyed.

- No longer using mDragLayer in getFallbackClosingWindowAnimators; simply applying the transaction immediately.
- Forcefully using getFallbackClosingWindowAnimators when launcher is destroyed.

Flag: not needed
Bug: 278833389
Test: launches and closed several apps in 3-button and gesture nav mode
Change-Id: I83b3aec1488fe9666bd0301a6044a181bb05dbdd
2023-05-05 21:53:50 +00:00
Mady Mellor 50e8d0ff60 Add Bubbles and BubblesListener to SystemUiProxy and use it
Adds a method to call into WMShell to set the listener and
indicate when a bubble is shown or when the expanded state
changes.

BubbleBarController sets or clears out the listener.

BubbleBarViewController calls SystemUiProxy when bubbles are shown
or when the expanded state changes.

Bug: 253318833
Test: manual, with other CLs, see go/bubble-bar-tests
Flag: WM_BUBBLE_BAR
Change-Id: I2364b9bbdea237fc268b0999d9c896585c194a86
2023-05-05 14:18:00 -07:00
Liran Binyamin b7d3d64d68 Use a property instead of a getter function for key in BubbleBarBubble. Using a property here is more Kotlin idiomatic.
https://kotlinlang.org/docs/coding-conventions.html#functions-vs-properties
go/kotlin/practices/properties#when

Bug: 281083629
Test: Verified on a physical device
Change-Id: I4c003c6633bf1913ee5e1e86224a679ff3442e2b
2023-05-05 19:43:43 +00:00
Qiao Yang 1aee68df56 Merge "Revert "Revert "Listen for hover events over stashed taskbar.""" into udc-dev 2023-05-05 19:09:44 +00:00
Qiao Yang 2482c8dcd4 Revert "Revert "Listen for hover events over stashed taskbar.""
This reverts commit c27605099c.

Reason for revert: DroidMonitor-triggered revert due to breakage <https://android-build.googleplex.com/builds/quarterdeck?branch=git_udc-dev&target=cf_x86_64_phone-userdebug&lkgb=10076607&lkbb=10076982&fkbb=10076788>, bug <281093059>

Change-Id: I71e7fd07232c27a004243df0ffb0457fe53fe13b
2023-05-05 19:07:17 +00:00
Qiao Yang 51669b612f Merge "Revert "Listen for hover events over stashed taskbar."" into udc-dev 2023-05-05 18:05:16 +00:00
Pat Manning c27605099c Revert "Listen for hover events over stashed taskbar."
This reverts commit c5882bcdfc.

Reason for revert: b/281068877

Change-Id: I431678658fc464c995df0df5e3cac5491d91b052
2023-05-05 17:22:21 +00:00
Stefan Andonian 5882e97857 Merge "Enforce setting up SystemUIProxy on the main thread." into udc-dev 2023-05-05 16:56:10 +00:00
Brian Isganitis f3135fea05 Don't close AFVs when opening Taskbar folder.
Test: Manual
Fix: 276798702
Change-Id: I35fe528bf3ad7fb374b8d8ae83f0d525e131681e
2023-05-04 23:55:23 -04:00
Brian Isganitis 9c311b2917 Keep persistent Taskbar visible over Taskbar All Apps.
Additionally, this CL fixes some touchable insets issues with the
overlay window. Dragging and dropping is now reliable from taskbar while
All Apps or EDU is also open.

Change-Id: Ia612c1b5266a8fb2b7005a773fbd2b00ec4824db
Bug: 279465803
Bug: 275890048
Bug: 264463659
Flag: PERSISTENT_TASKBAR_OVER_TASKBAR_ALL_APPS (Teamfood)
Test: Taskbar is functional over All Apps and EDU.
2023-05-04 23:54:27 -04:00
Treehugger Robot b6f64a4465 Merge "Listen for hover events over stashed taskbar." into udc-dev 2023-05-04 23:15:44 +00:00
Stefan Andonian 672fa7a9a9 Enforce setting up SystemUIProxy on the main thread.
Bug: 280086782
Test: Added annotations and device did not crash under normal usage.
Change-Id: Ie587aafaaa018a3e6a5c33ca238e204f5cc0ea4e
2023-05-04 22:28:26 +00:00
Brian Isganitis 64ee67c6b5 Merge "Add header protection for Taskbar All Apps search bar." into udc-dev 2023-05-04 22:20:46 +00:00
Liran Binyamin 481da63b39 Wire up the important conversation bit in BubbleBarController.
Fixes: 269671451
Test: Tested on a physical device
Change-Id: Ice0bb081e19a817bd163141f38614ea7ecc21be9
2023-05-04 16:45:49 -04:00
Pat Manning c5882bcdfc Listen for hover events over stashed taskbar.
Bug: 243191650
Test: TaplTestsTaskbar
Flag: ENABLE_CURSOR_HOVER_STATES
Change-Id: Ia189ac6a6097d073c40c69ead6ecaf398d22eba8
2023-05-04 20:35:44 +01:00
Brian Isganitis cd7078372a Merge "Only close overlays onTaskMovedToFront for desktop prototype." into udc-dev 2023-05-04 18:55:42 +00:00
Winson Chung 58717a70c5 Potential fix for end callback not being run in 3-button
- Context: With shell transitions, the launch of a new task is merged
  into the same recents transition that is running, which means that it
  does not run as its own independent transition (this probably needs
  to be addressed in the transitions level somehow)
- Given the above, if there is somehow no running task id, then we still
  need to rely on the next task appeared to trigger the flush of the
  callback list (since the animation will not run to flush that callback)

Bug: b/255851262
Test: Manually simulate getRunningTaskViewId() == 1 and verify

Change-Id: I778f22fa59cb1620781f7aa442d244793352d74e
Signed-off-by: Winson Chung <winsonc@google.com>
2023-05-04 18:01:19 +00:00
Brian Isganitis 0c7f244f18 Merge "Better handle large display and text scaling on EDU tooltip." into udc-dev 2023-05-04 16:30:07 +00:00
Tony Huang 2725473272 Merge "Send divider change to launcher to animate" into udc-dev 2023-05-04 13:02:53 +00:00
Nick Chameyev 1aa2383d26 Merge "[Unfold animation] Start Launcher animation preemptively to synchronize the first frame" into udc-dev 2023-05-04 09:36:04 +00:00
Wei Sheng Shih 37d8c93893 Merge "Fix pauseBlur make launcher become opaque" into udc-dev 2023-05-04 07:29:50 +00:00
wilsonshih 8bf6c9edda Fix pauseBlur make launcher become opaque
...so reveal animation can blend with the launching target.

Bug: 279785569
Test: manual, rotate device, launch app from quick switch.
Verify launcher surface isn't opaque so app window can blend with
reveal animation.

Change-Id: I46b0652fd14ff66b681a9212608c13fe4ec50eb3
2023-05-04 03:02:45 +00:00
Saumya Prakash aca2b95fc6 Remove unused Sandbox Mode in the gesture navigation tutorial
Sandbox Mode for the gesture navigation tutorial is unused in both the
current and redesigned versions of the tutorial, and can therefore be
removed.

Flag: N/A
Fix: 280641779
Test: Manually went through both versions of the tutorial on handheld,
foldable, and tablet devices

Change-Id: I2f6db47df0fa39458d17221f24827eb43e2cae31
2023-05-03 21:27:56 +00:00
Brian Isganitis 58f079b134 Better handle large display and text scaling on EDU tooltip.
For large scaling configurations, the tooltip height can exceed the
available space, which can truncate important content such as the "Done"
button. To mitigate this issue, we should attempt to increase the width
of the tooltip to hopefully free up some height due to the text taking
up fewer lines.

To support dynamic width, each EDU column gets an equal weight in the
ConstraintLayout, but the lottie animations are still constrained to
their original dimensions. If they fill the width, their aspect ratio
will be maintained and we will still have height issues.

Demo: https://screenshot.googleplex.com/6jV6geJFzCYtQ6v.png

Test: Manual (transient and persistent)
Fix: 278761297
Change-Id: I8cc0c4260caef747378954225d8635b2fb8eef52
2023-05-03 18:46:47 +00:00
Jagrut Desai 5dbfe1f238 Merge "Design review updates for Taskbar Pinning" into udc-dev 2023-05-03 18:24:07 +00:00
Saumya Prakash 32a38c9ff1 Merge "Remove unused Assistant gesture tutorial and add error checking" into udc-dev 2023-05-03 17:37:52 +00:00
Lucas Silva 4a0f9298d1 Update QuickstepTransitionManager to allow remote transitions to be
overridden

Bug: 280585150
Test: flashed device, and verified along with other changes in this
topic
Flag: ENABLE_DREAM_TRANSITION

Change-Id: Ic62ab51e0b95253127aa0c4fc8a4ea613afafaa3
2023-05-03 11:44:27 -04:00
Nick Chameyev 705c665c06 [Unfold animation] Start Launcher animation preemptively to synchronize the first frame
Starts unfold animation in Launcher right after receiving
configuration change for the unfolded screen.
This makes sure that before we unblock the screen we
have the first frame of the unfold animation ready
in Launcher (transformations are applied).

Bug: 271099882
Test: atest com.android.systemui.unfold.util.PreemptiveUnfoldTransitionProgressProviderTest
Test: manual testing fold/unfold, checking perfetto traces
Test: test with flag enabled/disabled
Change-Id: Icb8f91f9264248600d4bed14811445f50aac99c7
2023-05-03 11:35:03 +01:00
Kateryna Ivanova 46b73c2338 Merge "Revert^2 "Introduce library for public animation APIs"" into udc-dev 2023-05-03 08:41:31 +00:00
Fengjiang Li c15679d512 Merge "[1/n] Launcher Startup Latency: add StartupLatencyLogger to launcher3 and log startup latency" into udc-dev 2023-05-03 03:18:46 +00:00
Tracy Zhou 41bfd86c1e Merge "Revert "Fix touch focus not updated correctly after launching overview with live tile."" into udc-dev 2023-05-03 00:41:34 +00:00
Fengjiang Li 5a36c17a32 [1/n] Launcher Startup Latency: add StartupLatencyLogger to launcher3 and log startup latency
More details at "Log Startup Latency" section in go/launcher-startup-latency

Test: tested on phone, foldable and tablet, print latency logs in logcat
Bug: 278092752
Change-Id: Ibf269b0ecd6007d29b95e36f65ab6f02c45deb3a
2023-05-02 17:08:05 -07:00
Andy Wickham 632b313a7e Don't treat Recents as transient for all apps from overview.
This effectively means the active app is paused as soon as you
start going to Recents, which allows us to control the IME for
the transition to all apps.

Bug: 275132633
Test: Manual
Flag: ENABLE_ALL_APPS_FROM_OVERVIEW
Change-Id: Ie3edaf8b6c36e50071de4692c0c8c45e7e393833
2023-05-02 16:07:17 -07:00
Tracy Zhou 3ec15b04f5 Revert "Fix touch focus not updated correctly after launching overview with live tile."
This reverts commit 8899f3a387.

Reason for revert: Regression b/280167174, b/280240591

Change-Id: Id82ab1dafb8c939b0e073ad4978d2782e3d953d8
2023-05-02 21:40:13 +00:00
Sihua Ma 8f85ad38ba Merge "Fix ConcurrentModificationException in QuickstepWidgetHolder" into udc-dev 2023-05-02 21:26:53 +00:00
Brian Isganitis 1fbae12a98 Only close overlays onTaskMovedToFront for desktop prototype.
Test: Overlays stay open when task moves to front when prototype
disabled.
Fix: 280483451

Change-Id: Iba345d30e6339e76fbdf19a33fde78e4441d6065
2023-05-02 20:36:18 +00:00
Schneider Victor-tulias db07d2223e Merge "Add null checks for mRecentsView" into udc-dev 2023-05-02 18:15:47 +00:00
Winson Chung 52cc03e42c Merge "Wait for shell drop target to be ready for handling drags in tests" into udc-dev 2023-05-02 16:46:24 +00:00
Winson Chung c8ad4f7f43 Wait for shell drop target to be ready for handling drags in tests
- Wait for the shell drop target to be made visible and drawn before
  attempting to continue with the drag gesture

Bug: 234653212
Test: atest NexusLauncherTests

Change-Id: Ida851343873b51288460f25bba062f29019005d4
2023-05-02 05:29:36 +00:00
Tony Wickham 5e43031ed0 Merge "Simplify/correct Taskbar insetsRoundedCornerFrame calculation" into udc-dev 2023-05-02 00:56:38 +00:00
Jagrut Desai 1c9c6d0ea9 Design review updates for Taskbar Pinning
Changes:

- icon allignment animation for taskbar diviver view
- taskbar divider background color according to spec.

Test: Manual
Bug: 265170176
Flag: ENABLE_TASKBAR_PINNING
Change-Id: Ief45e48f4fc9f9b4cc30124c4c93cd3c5a880a33
2023-05-01 14:57:54 -07:00
Schneider Victor-tulias f77d2086c4 Add null checks for mRecentsView
Fixed a NPE and added some null checks for mRecentsView. These NPEs can happen if the launcher is destroyed unexpectedly.

Flag: not needed
Fixes: 279738827
Test: ran launcher and tested some gestures
Change-Id: I9c32e22a13d950346ce705ba3a6f11dd3f1da87f
2023-05-01 13:51:02 -07:00
Saumya Prakash 94c8cf49cf Remove unused Assistant gesture tutorial and add error checking
The Assistant gesture tutorial is unused in both the current and
redesigned gesture nav tutorials and can be removed. Left in, its
detections of gestures are leading to bugs with the tutorial.

Additionally, this change adds in error checking for side swipes in the
overview tutorial.

Flag: ENABLE_NEW_GESTURE_NAV_TUTORIAL
Fix: 280115831
Fix: 261239858
Fix: 278926113
Test: Manually went through both versions of gesture tutorial on
handheld, foldable, and tablet devices

Change-Id: Ie481d92ede2c2ab16ce2b3d1f729f6cb88f1b4c0
2023-05-01 17:58:54 +00:00
Vinit Nayak 2a014d4c0d Refactor handling data launching split screen to separate class
* SplitSelectDataHolder contains logic for knowing how
to launch split, separate from the actual API calls to launch split

Flag: ENABLE_SPLIT_LAUNCH_DATA_REFACTOR
Bug: 279494325
Test: Tested w/ all 6 types of launches noted in
SplitSelectDataHolder#@SplitLaunchType.
Also checked to make sure most-recent running tasks are
still being used where applicable.

Change-Id: I8114f87e9956b100622c80f578e291937ed4eeac
2023-04-28 18:00:22 -07:00
Tony Wickham 3cfada0a00 Simplify/correct Taskbar insetsRoundedCornerFrame calculation
Now we base it on the current tappableElement insets, which will only be
> 0 for the unstashed, persistent taskbar which draws rounded corners.
This inset also stays stable during temporary stash transitions such as
when the IME is showing.

Flag: ENABLE_TRANSIENT_TASKBAR=true, ENABLE_TASKBAR_PINNING=true
Test: in split screen for both transient and pinned (persistent)
taskbar, ensure split screen divider bottom is drawn appropriately
Fixes: 278028503

Change-Id: Iab56c5dc8f9fc81c34aa01f41b5212dd5c6fd7f0
2023-04-28 23:51:41 +00:00
Sihua Ma d72ce23707 Fix ConcurrentModificationException in QuickstepWidgetHolder
If the listeners would modify the listener list in the widget holder, this would cause a ConcurrentModificationException.

Fix: 275100497
Test: N/A
Change-Id: I3ae0e92db71f1c21d35dbf391dfcb92b46dd30f1
2023-04-28 14:21:24 -07:00
Saumya Prakash 71d05f963f Merge "Update the colors for gesture navigation tutorial." into udc-dev 2023-04-28 17:03:31 +00:00
Kateryna Ivanova c0a003ed77 Revert^2 "Introduce library for public animation APIs"
af289a1cd1

Bug: 271850966
Change-Id: Iddc1790fc3704ce20fde4377d05360a77b6c146c
2023-04-28 08:38:26 +00:00
Saumya Prakash 796ebc6006 Update the colors for gesture navigation tutorial.
This change introduces tokens for the lottie animations so that the
colors can be changed. In this change, the home gesture tutorial colors have
been updated to match the updated design at http://shortn/_VvbigpP0ys

Flag: ENABLE_NEW_GESTURE_NAV_TUTORIAL
Bug: 279823249
Test: Manually went through the tutorial on handheld, foldable, and tablet
Change-Id: Id2270cea41345e8f4d330097e10a7dae2b00032a
2023-04-27 22:06:17 +00:00
Ats Jenk 0e068b1213 Pass in display when using DesktopMode APIs
Pass in the display id when asking wmshell to show desktop apps or when
querying the number of visible desktop tasks.

Bug: 278084491
Test: open some apps on the desktop, swipe up to recents, tap the
  desktop tile to open desktop again
Change-Id: Ia7328613244a1aa401e0e4792bc747a4b99b412d
2023-04-27 11:50:49 -07:00