If there is at least one panel (resolved), we should show the
affordance, even when we have no favorites.
Also, fix a bug in ControlsUiController.resolveActivity: anyPanels
should use `List.any`.
Test: atest DreamHomeControlsComplicationTest
Test: atest HomeControlsKeyguardQuickAffordanceConfigParameterizedTest
Test: atest ControlsUiControllerImplTest
Test: manual on lockscreen and dream
Test: launch device controls from tile for first time
Fixes: 261751925
Change-Id: I832473d243746015a1f20a7fa9b6d0e05d6c668c
These tests appear inconsistent now. It's not flaky, but it does
appear to change depending on the test environment.
Bug: 261472011
Test: atest NotificationPanelViewControllerTest
Change-Id: I6fc772d1ee85971072147e073b15f1feb8137107
The problem happened when going form the expanded clock layout (when QS are fully expanded), to the large screen transition layout.
This fix sets the header transition to start when on large screens.
Without doing this, the transition was staying at the latest progress in the previous constraintSet.
Bug: 261791489
Test: presubmits + tested locally
Change-Id: Ice698e169b1328c3a83189c268dbac820b564cf7
There can be 2 reasons that we need to apply compatible scale to a
window:
1. The app doesn't support large screen. We would layout the window as
if it is on a small display. And then we need to scale its window up
to match the display.
2. We put a running app into a container that the size doesn't fit. We
need to down-scale the app so that it can fit the container.
The scaling of case 2 is also known as size-compat-scale which is fully
controlled at the server side. The client shouldn't know about it. And
this CL refines the naming.
Fix: 258393096
Bug: 254187021
Test: presubmit
Change-Id: Ifbd2ca725bed231d9e6dd8190df3dc773d4402b7
(cherry picked from commit bcbd60c45c)
Merged-In: Ifbd2ca725bed231d9e6dd8190df3dc773d4402b7
d41841f469, always checks whether the home task is violated
with lock-task mode while moving the task to the front. That result in
the pinned toast was shown even applications don’t not request to have
task_on_home behavior.
This CL checks the home task violation with lock-task mode after the
task-on-home flag is applyed.
Bug: 261383209
Test: atest TaskTests#testReturnsToHomeRootTask
atest ActivityVisibilityTests#testLaunchTaskOnHome
Change-Id: Iccc7e595b043a712c5959d28ba14f54825bcadd6
Before, we remove the changing window from transition onDisplayChanged
even if it is a display info change on the same display. Now, we only do
that when the window is moved from the old display.
Fix: 251001013
Test: atest WmTests:WindowContainerTests
Change-Id: Id3ab6db47dad8e2541a14b5529694c290e4d2b66
Some features relying on API version 2 are not fully ready yet.
Bug: 261780650
Test: N/A
Merged-In: I0a4f2bfcddd7f20f53e702f2bc2144d2fd939a21
Change-Id: I0a4f2bfcddd7f20f53e702f2bc2144d2fd939a21
The caller activity and its task should be able to reuse. There's
no need to migrate the launching activity to another Task.
Bug: 233591548
Bug: 260978212
Test: wm presubmit
Change-Id: I2bd5f01ef9196010f1af1aa7cb9e6a45984e960d
(cherry picked from commit a7269cd7e1)
See other changes in the topic for context
Bug: 260123067
Test: verified on local device that timeout is 60s by default
Change-Id: I72b5fb35aef14e90f98fa9b281134a5af0f16813
Revert submission 20517233-Cloned User Storage Issue-tm-qpr-dev
Reason for revert: “DroidMonitor: Potential culprit for Bug 261921307 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.”
Reverted Changes:
I6835cc4d2:Fixing Storage Volume(s) Retrieval.
I617bae9b2:Fixing Storage Volume listing for Cloned User.
Change-Id: I08722e8467fafa53ab914ec5de0380d2df62b55d
Revert submission 20517233-Cloned User Storage Issue-tm-qpr-dev
Reason for revert: “DroidMonitor: Potential culprit for Bug 261921307 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.”
Reverted Changes:
I6835cc4d2:Fixing Storage Volume(s) Retrieval.
I617bae9b2:Fixing Storage Volume listing for Cloned User.
Change-Id: Ia8b8b4f35bf9bdfe7eefa36372ae3525dc405e53
Add methods to move a task to fullscreen of freeform in proto2
controller.
Use these methods in window captions to move a task to desktop and back
to fullscreen.
Bug: 261234251
Test: atest DesktopTasksControllerTest
Change-Id: I9907038ad3882240b1f70b6f0c29c677cb4f4a51
Copy logic over from proto1 to bring desktop apps to front.
There is one key difference from proto1 logic. In proto2, before desktop
tasks are shown, we ensure that the home task is brought to front. And then
place desktop tasks on top. This is due to proto2 having fullscreen and
freeform tasks running at the same time.
Bug: 260645044
Test: atest DesktopTasksControllerTest
Change-Id: Ic5de4d431b96893ef5d685a4dce28e08f17f6f97
Create the controller class, set up dagger.
Ensure controller is not initialized when flag is off.
Bug: 260645044
Test: atest DesktopTasksControllerTest
Change-Id: I0435e07a22e379f403ae5d1b23f39a67a12e8a6d
In order to avoid any thread contention, all the ImageWallpaper logic should be moved out of the main thread. This CL moves the last things that were done on the main thread:
- Call surface.lockCanvas and canvas.drawBitmap
- Call reportEngineShown
Bug: 242969351
Test: atest ImageWallpaperTest
Test: treehugger
Change-Id: I2a4400c8eaf0d9b8a182e618655855188a15892b
There are chances that SysUI does not get the
onVoiceSessionWindowVisibilityChanged(false) callback if the
voice interaction window was visible then the connection is closed.
This could cause issue for TaskBar since TaskBar relies on the callback
to clear its intermediate state.
Video: http://recall/-/b1EZhgUkQcpML5OwZekLBN/giEfwSaYA9saSOfGQwCAus
Bug: 254070601
Test: follow the reproduce steps in bug, see also video
Change-Id: I0222eea38179620c36253f47f332536ffb9e434c
Enable teamfood for region sampling text protection feature that's
hidden behind a flag. This is in hopes of having more people test the feature to catch bugs and get more feedback.
Bug: 202758428
Test: manual
Change-Id: If29b183114c06ab90edaf78765a4c8eb2d8c6bb6
Added logs for when we flag motion events as aborted and
filled in gaps for when we throw away touches in NPVC
Bug: 258708442
Test: n/a
Change-Id: Ie696834fac32a02ac509b94d75d9feea5785946a
This reverts Iaeddce2d99a2b8db5afb6ac8ca508eeab3ae223e without
reintroducing b/259758161. It does this by compensating for the
change in margin in KeyguardClockSwitchController.getClockBottom().
This maintains existing functionality for the aod behaviour in
KeyguardClockPositionAlgorithm. As part of validation I confirmed
that the arguments to KeyguardClockPositionAlgorithm.setup did not
change with this patch.
Bug: 259758161
Fixes: 261754025
Test: Manually checked KeyguardClockPositionAlgorithm
Change-Id: I119abb49a018f6fb505100ea985d3b4121ac59f7
This change splits shouldLaunchFullScreenIntentWhenAdded into two parts: one that returns the specific decision for whether to launch a full screen intent for an entry, and one that logs that decision.
It also adds a sub-category of "suppressed by DND" called "suppressed only by DND", where DND is the only thing stopping an FSI from launching but all other cases would allow it.
Bug: 248325248
Test: NotificationInterruptStateProviderImplTest
Change-Id: Idd1299312edb58d005e089d89db7921c15c6e2bc
Refactor the dialogs that were in ControlsActionCoordinatorImpl so they
can be called from multiple places. Preserve the behavior if
`FLAGS_USE_APP_PANELS` is false.
If the flag is true, they are called when `ControlsActivity` is
started on a locked device, requiring unlock
to actually change the settings. Regardless of the response, the
controls space is shown (it will only be triggered to change the
ALLOW_TRIVIAL_CONTROLS setting).
Test: atest com.android.systemui.controls
Fixes: 260731518
Change-Id: I1fd972d64a6f90179d4a9b282bb8fe4ac38048e6
When swiping up to enter PiP (auto-pip), the transition type will
PiP. If it affects display orientation at the same time, the
next activity will have fixed rotation transform. Then the display
should also use seamless rotation to avoid taking screenshot
and flickering of overlay windows (e.g. round corner) because the
draw transaction is not synced.
Also correct task transform for a corner case: expanding PiP to
different orientation, but display orientation is changed to
previous orientation during the animation. Then there is no next
transition to reset rotation transform of task. So manual reset
it when receiving a cancel event of the change.
Bug: 260925940
Test: Enable shell transition.
Use Chrome to play a Youtube video in fullscreen landscape.
Enter PiP mode by swiping to home.
The round corner and cutout should not be flickering.
Change-Id: Ibebf033233e43e778b94b7947ab935ca5bc76388