Commit Graph

5388 Commits

Author SHA1 Message Date
Sunny Goyal 4403d078a6 Moving NavigationMode to display controller
Navigation mode affects display properties like bounds and
most listeners already had a similar display listener. This
will remove race conditions when managing the two events.

Bug: 221961069
Test: Presubmit
Change-Id: If7a22e006e6b969ecddf075001066809aa72995c
2022-03-04 18:11:33 -08:00
Nicolò Mazzucato 1ffc81c7ba Merge "Register hinge angle sensor listener in a background thread" into tm-dev 2022-03-04 18:18:55 +00:00
Tony Wickham 80fed35379 Merge "Properly animate canceled deep shortcut drag back to original icon" into tm-dev 2022-03-04 17:07:12 +00:00
Thiru Ramasamy 18b9d159ce Merge "Adds StatsLatencyLogger library." into tm-dev 2022-03-04 16:17:56 +00:00
Riddle Hsu 14fc5bbc7a Merge "Get display id from display instead of the display of root view" into tm-dev 2022-03-04 09:38:00 +00:00
Wei Sheng Shih 63e4070791 Merge "Cancel recents animation when touch home key(2/2)" into tm-dev 2022-03-04 08:40:42 +00:00
Winson Chung 7e426a3933 Merge "Provide content insets while in SUW in portrait mode" into tm-dev 2022-03-04 03:25:44 +00:00
Thiru Ramasamy f93e8b26d5 Merge "Add empty implementation for item_attributes field on Launcher." into tm-dev 2022-03-04 02:44:54 +00:00
TreeHugger Robot 4180a79d2b Merge "Use shared insets resize animation duration for taskbar stashing" into tm-dev 2022-03-04 02:22:47 +00:00
Thiru Ramasamy b097f24610 Adds StatsLatencyLogger library.
Test: build NexusLauncherDebug; wwdebug && wwlogcat
Change-Id: Ib1f1aeb78d1cb930ca680439341de6be5e5be2dd
2022-03-03 17:33:24 -08:00
Tony Wickham a56a197e14 Properly animate canceled deep shortcut drag back to original icon
- Added getFirstMatch() instead of using mapOverItems() (was a bit cleaner using ItemInfoMatcher)
- Match based on package name / UserHandle for deep shortcuts case

Test: drag deep shortcut from taskbar icon, inside folder, inside all apps; drag regular icons as well
Fixes: 222574524
Change-Id: Id5fdee29110f143c1125edc6945af09ab0a8d8ce
2022-03-04 00:39:38 +00:00
Winson Chung ac736e7dac Provide content insets while in SUW in portrait mode
- We keep the app setup flag set, but adjust the insets to
  inset SUW itself in portrait

Bug: 219879035
Test: With both 3button and gesture nav, verify that portrait
      mode SUW is always inset
Change-Id: Iad0b6c41feaa3fb169af75c071b7f9544b42bab7
2022-03-04 00:12:41 +00:00
TreeHugger Robot e9056a9e9a Merge "Address some insets issues in Taskbar All Apps" into tm-dev 2022-03-04 00:08:34 +00:00
thiruram 854f34dcc3 Add empty implementation for item_attributes field on Launcher.
Test: make -j64 NexusLauncher
Change-Id: Ie2781017018b9c0397f2322399cbd0267c988296
(cherry picked from commit e294eadc74)
2022-03-03 23:54:50 +00:00
Sunny Goyal ed6d3a47c0 Merge "Separating refresh rate tracking to a separate class" into tm-dev 2022-03-03 23:00:29 +00:00
Tony Wickham 27d33e2994 Address some insets issues in Taskbar All Apps
- Don't report insets change to underlying app when stashing taskbar during all apps transition
- Internally override all apps insets to take stashing into account
- Don't offset all apps window by display cutouts, as we handle them internally via padding internally
- Also Fix bug where "stashing" taskbar in 3 button mode (which just fades out taskbar icons but keeps nav buttons) was reporting smaller insets to apps

Test: 1) open all apps in Calculator, ensure Calculator doesn't adjust insets and all apps has bottom content padding but no nav scrim
2) in 3 button mode, scroll to bottom of all apps and can read last row icon labels
3) enable display cutout in developer options, ensure no change to tests 1 and 2, and all apps scrim fills the screen (including behind cutout)
Fixes: 219980805

Change-Id: Ic3c6a744bc675e4ea277d22c4c0b3b353eddd905
2022-03-03 22:04:49 +00:00
Tony Wickham ede8ad8ec9 Use shared insets resize animation duration for taskbar stashing
This is a no-op since they are the same value (by design), but using the constant directly will prevent potential divergences in the future.

Test: none
Bug: 191269755
Change-Id: I81b98045466398b7a49de872694004e526adf048
2022-03-03 18:25:59 +00:00
Iris Yang 5a915fb883 Get display id from display instead of the display of root view
Since `getRootView()` will increase the execution time, use
`getDisplay()` instead.

Bug: 202825727
Test: manually
Change-Id: I22ef58cb39716433cd8e91200837ab49229ae3e1
(cherry picked from commit 6a06d8615f)
2022-03-03 08:23:11 +00:00
Wei Sheng Shih 54da6aa355 Merge "Rename 'EMPTY' to 'SOLID_COLOR' for splash screen API changes." into tm-dev 2022-03-03 01:30:41 +00:00
Jerry Chang 0610af43d3 Merge "Fix split screen divider corners flicker" into tm-dev 2022-03-03 01:04:21 +00:00
Brian Isganitis 6ad7a477a5 Merge "Ignore touches in taskbar and all apps windows during system drag." into tm-dev 2022-03-02 22:13:28 +00:00
Brian Isganitis 1bc23b7662 Ignore touches in taskbar and all apps windows during system drag.
Touches are ignored as soon as we want to start system drag so that system drag can start sooner (i.e. before any AbstractFloatingView animations finish). This approach utilizes ViewTreeObserverWrapper's compute insets listener by temporarily setting the touch region to empty. The taskbar window remains fullscreen until the drag finishes so the touch region is reset at the right point. Similarly, the all apps window is kept open during its drag operations until the drag finishes. System drag state is now exposed through the drag controller to skip predrag.

Test: Manual by dragging to split screen and triggering dismissal
animation from both windows. Verified predrag works.
Fix: 221104066
Fix: 220070070

Change-Id: I424106269c841f58cbe5338d30b6c33fbd889019
2022-03-02 11:31:47 -08:00
TreeHugger Robot 2403b863c3 Merge "Fix scaling of workspace and hotseat with wrong pivots" into tm-dev 2022-03-02 18:25:19 +00:00
Pat Manning 281182739a Merge "Refactor force visible nav bar into new secure setting." into tm-dev 2022-03-02 13:51:27 +00:00
Jerry Chang 9f72c67e65 Fix split screen divider corners flicker
Divider bar might be hidden before swipe-up gesture started when users
touching task bar region. This makes sure to update visibility of
divider bar only after gesture started.

Fix: 219995626
Test: long press task bar region to stash/unstash task bar, divider bar
      won't be hidden as long as it didn't trigger swipe up gesture.
Change-Id: Iacf690c84a3ad4b5e4fc9b066e9a1ecb8a8aa7d1
2022-03-02 04:04:06 +00:00
Evan Rosky bcc343d944 Merge "Don't use incorrect inputconsumers during recents animation" into tm-dev 2022-03-01 23:49:06 +00:00
TreeHugger Robot b7e181c741 Merge "Combining the Thumbnail bitmap with the background to fix background spilling in the front." into tm-dev 2022-03-01 22:29:09 +00:00
Evan Rosky 9918df01af Don't use incorrect inputconsumers during recents animation
Shell transitions resumes launcher. This was causing logic in
launcher to pick incorrect inputconsumers which resulted in
aborting animation logic.

Bug: 220196913
Test: quickswitch very quickly
Change-Id: I66d894436a6cc6eae57d505db8a7abf6c10ab00f
2022-03-01 11:09:21 -08:00
wilsonshih e3e1054f19 Rename 'EMPTY' to 'SOLID_COLOR' for splash screen API changes.
Preventing from misleading developers.

Bug: 217953215
Test: build/flash
Change-Id: I76ed29833c71c7b678fbe5bf9d15d0137eec9f91
2022-03-01 20:21:47 +08:00
TreeHugger Robot 33b858d4cc Merge "[ShellTransition]: invoke WMS#setRecentsAppBehindSystemBars to WM" into tm-dev 2022-03-01 08:53:12 +00:00
Tracy Zhou 26f5393db3 Improve the staged split animation
- Introduce rounded corners (since we scale x and y differently, we can't use outline since it doesn't support rx and ry. It's achieved by custom drawing).
- Make sure the thumbnail content doesn't shift during the transition (we use custom cropping for TaskThumbnailView, and we have to do it accordingly here)

TODO: update UX of the initial split view (b/219085340)

Fixes: 194414938
Test: https://recall.googleplex.com/projects/f46cfe9c-8076-4efe-bf8a-b1cc4f1f5e1b/sessions/64953aa7-62ea-427c-8ec0-5f2bd96e4762
Change-Id: Id9a5d2f0f41cb4d619c8b3bd3a83c633e3d1f2de
2022-02-28 21:12:16 -08:00
Sunny Goyal 6bc4257d86 Separating refresh rate tracking to a separate class
Bug: 221961069
Test: Presubmit
Change-Id: I04091ebc9f3d88d2dbbde1bf0d5390c815e026d1
2022-02-28 17:13:00 -08:00
TreeHugger Robot 094a4bdd48 Merge "Removing some unnecessary layout calls in TaskView" into tm-dev 2022-02-28 22:16:30 +00:00
Pat Manning 2da28dcdc9 Refactor force visible nav bar into new secure setting.
Decouples force visible from kids mode setting.

Bug: 217668440
Test: manual
Change-Id: Ia8a2b30eab7633e3b686c9afebd7e683ef984deb
2022-02-28 14:55:47 +00:00
Hyunyoung Song fbdf40ff4f Merge "Change the all apps atomic transition duration to 150 ms" into tm-dev 2022-02-25 22:59:56 +00:00
Alex Chau 890e4a75c3 Dump DeviceProfile in TouchInteractionService dumpsys
- So DeviceProfile dumpsys will be available in bugreports, useful for debugging
- Only dump DeviceProfile in createdOverviewActivity if it's non-null

Fix: 221395133
Test: adb shell dumpsys activity service com.google.android.apps.nexuslauncher/com.android.quickstep.TouchInteractionService
Change-Id: Iaf7b7abd25771814be6cb918e96e042d1085debb
2022-02-25 12:46:27 +00:00
Nicolo' Mazzucato d986bbd0fa Register hinge angle sensor listener in a background thread
This was taking ~13ms on the ui thread

Bug: 221394115
Test: Manual
Change-Id: Ibadade5b1c3c8d33a292d36bb6a03dd8021861be
2022-02-25 12:37:44 +01:00
Winson Chung e479619836 Just return an empty list if the system returns null
Bug: 206648922
Test: Presubmit (unable to reproduce this)
Change-Id: I04a4759a1c237513ab314ece4acd542e1407edb1
2022-02-25 06:41:45 +00:00
TreeHugger Robot 2a431f4a79 Merge "Passing in the launch cookie for widget broadcast trampolines" into tm-dev 2022-02-25 00:21:27 +00:00
Hyunyoung Song d68872426c Change the all apps atomic transition duration to 150 ms
Test: manual

TL;DR;; this value is used for tap on qsb all apps container
atomic transition. 320 is value that used to be used in R
when all apps travel distance used to be entire window height.
In S, we reduced the travel distance to 1/3 of the height.

Change-Id: Ib66f8a4408fd77350c31c5b894d9f8b2c889159f
2022-02-24 20:33:23 +00:00
Sebastian Franco 5a9dce518e Combining the Thumbnail bitmap with the background to fix background spilling in the front.
What's happening is that we first draw a background,
on top of it, we then draw the Task and because we
have a curvature the corners have pixels with transparency,
and those pixels get combined with the background pixels.
Most tasks have a transparent background or background
of the same color as the task so we don't see this
but for example, Telegram has a white background and
you can see this in the corners.

Fixed by creating a bitmap, drawing the background on it
and then drawing the thumbnail on top of it then using
that bitmap to draw it on the canvas.

Test: Put Telegram in recent Task (shouldn't be the first one) and you won't see a white border. Also when a task was in multitask the backgroudn should be draw.
Fix: 146521490
Change-Id: Id02a64ef472eb07900b0c7c5522d931d5b08f94e
2022-02-24 19:11:55 +00:00
Winson Chung 871759483b 1b/ Replace removed shared lib calls with direct calls
Bug: 219861883
Test: Builds
Change-Id: I7831d0de14286c9fa39fed59b168535e0a70d94d
2022-02-24 18:04:02 +00:00
Nicolo' Mazzucato 5a0a17f119 Fix scaling of workspace and hotseat with wrong pivots
Bug: 219962098
Test: Unfolded device
Change-Id: I7dd9f0579ea737cd67792e612657a043411ac70e
2022-02-24 17:53:40 +01:00
Alex Chau 21c63bc809 Merge "No longer stash taskbar when swiping up all apps" into tm-dev 2022-02-24 11:59:57 +00:00
Mady Mellor 57eab45996 Merge "Add a reason to the broadcast to collapse system dialogs" into tm-dev 2022-02-24 01:30:11 +00:00
TreeHugger Robot dde28b487e Merge "Removing unnecessary AM.getTasks() call on every touch" into tm-dev 2022-02-23 23:38:14 +00:00
Tony Wickham 4fda59a0cc No longer stash taskbar when swiping up all apps
Instead, scale down hotseat behind all apps alongside workspace.

Test: Swipe up to all apps from home; all apps button in an app works as before
Fixes: 221094533
Change-Id: Ia6f1e7bac86849018dc8d0b1d95f0bab963835a8
2022-02-23 22:04:35 +00:00
Sunny Goyal d2ec834fac Removing unnecessary AM.getTasks() call on every touch
Bug: 220906427
Test: Verified on device
Change-Id: I58ed22c4d6069f10198ec30ec02fa8c2f7c55cbe
2022-02-23 13:35:25 -08:00
Sunny Goyal d4c4ad9212 Removing some unnecessary layout calls in TaskView
Bug: 221095750
Test: Presubmit
Change-Id: I277c1350109ce3bd0b29502c588482c737ab1e3d
2022-02-23 13:06:46 -08:00
TreeHugger Robot c089baa668 Merge "Remove Taskbar and Taskbar EDU flags." into tm-dev 2022-02-23 20:10:02 +00:00