Adds additional information to the dump for Letterboxing
Fixes: 261224023
Test: Run `adb shell wm get-letterbox-style` and check the
current letterbox positioning
Change-Id: Id215b4819533a7e5adbe16696fe0cddfcb1b02f9
certain devices only.
Fixes: 261156040
Bug: 255625888
Test: `adb shell am broadcast -a com.android.systemui.demo
-e command battery -e overheated true` -> shield displays on titan
but doesn't display on other devices
Change-Id: I40c0d841ba0c8e1c41bbdb13abbaf0c0ef5125af
This CL fixes a bug introduced by ag/19712818: when inflating the
parental control dialog, we should use the Quick Settings context (which
is always using dark mode) and not the application context. Otherwise,
if we are in light mode, then the color of the text is the same as the
background and it looks like there is not content in the dialog. In dark
mode, everything was looking fine because the text color from the
application context would be light.
Bug: 260108168
Test: Manual
Change-Id: Ibc9d5374d44955493a41b477482d5585546c7eb1
Currently with shell transition, isVisible() is true once visible
is requested for launching activity. Then the input sink surface
will be created when previous activity completes pause. But because
the launching activity is in transition and the transaction is sync
transaction, its surface operation is also deferred until the
remote applies the sync transaction. In other words, the creation
is too early and leads to lock contention such as blocking preparing
starting window.
With the sync state check, the timing of creating input sink surface
will be similar as legacy transition, which is after the transition
is ready, i.e. sync finished. That timing is usually less sensitive
(contention) to transition latency.
Bug: 260059642
Test: atest ActivityRecordInputSinkTests
Test: Transition latency of OpenAppMicrobenchmark
Change-Id: Id9719510c74296392e988abf8d48fe3af78026d3
When showWhenLocked activity is launched on a second display, it's
possible that a window container for a wallpaper on the default display
and the showWhenLocked activity on the second display are both collected
for app transition.
This is a workaround to prevent NPE for such cases.
Bug: 260997053
Test: atest MultiDisplayLockedKeyguardTests
Change-Id: I9dbd0928aa785a6d547b8e19841748280ba982c9
Include a Note Task shortcut to the Widget Picker with utilities to enable (show) or disable (hide). The Note Task shortcut opens in a Floating Window.
Test: atest SystemUITests:NoteTaskInitializerTest
Test: atest SystemUITests:NoteTaskControllerTest
Fixes: b/251207256
Change-Id: Ic434b2cd912c3568284c3daec6c338e45870c11f
Fix: 258422365
Test: atest NotificationManagerServiceTest SnoozeHelperTest; Also tested the reproduction steps in b/258422365#comment6 manually to check that the issue doesn't happen anymore.
Change-Id: I5a2823f10053ea8c83c612a567d6d4f1b6af23e7
This attaches the black scrim in the background. All changes to that view have to go though the background handler.
Bug: 254924424
Test: current unfold tests should work unchanged && manually verified things are as expected with a perfetto trace
Change-Id: I224d9084b6f20230810faa6cc6d6b8bd6b46f518
With new ConstraintLayout versions layout_constrainedWidth was causing the view to assume match_parent width.
As MotionScene supports importing external layouts, we're not loading them at runtime anymore.
Also, the transition for large_screen_header_constraint is not used anymore, as initial and final constraint were the same.
Bug: 259933125
Test: CombinedShadeHeaderConstraintsTest and manual
Change-Id: I3961d9f4311c96b5d0663e1700fca78be5e6544b
For reduce jank or flicker when resize ActivityEmbedding in split
case, we should apply shell transition to resize case too.
Fix: 247678744
Test: manual
Test: pass existing tests
Change-Id: I8a1aa500d5928284ca7955042dffb617be15635a
When launching an activity into a new TaskFragment with a different
split layout from the existing split, there can be many situations, such
as different split ratio or layout direction.
Use a jump cut for now since it is not a common use case, and it is hard
to cover all situations.
Bug: 241043533
Fix: 258126611
Test: verify with opening new activity to new split layout.
Change-Id: I6c96518b282567339fb890e7f4af7d9d82c98418
The wake up transition should be used to waiting for ShowWhenLocked
transition, but we cannot know whether there have an activity which
requested device wake up, it can be also be a normal screen on.
For those keyguard-related transition, they can be request in
KeyguardController while updateVisibility, and collect participated
activity at the same time, so the transition won't happen too early.
The empty wake transition can affect tests which use injectInputEvent
while waiting for animation (WMS#waitForAnimationsToComplete), which
lost those input event.
Bug: 259231431
Test: run atest KeyguardTests KeyguardLockedTests KeyguardInputTests
w/o AOD enabled.
Test: atest LockscreenWithInvalidPassword
Change-Id: Ib2db22bb5fe92f79dbd14948dae8d8a2b538f605
Moved PSBV.touchHandler out of NPVC and
into PhoneStatusBarViewController.
Bug: 249275160
Test: existing tests
Change-Id: Id71bb9fab1d889cd1c193595b233cccd9c3f37ef
This removes the corner animation flickering happening when
starting a letterboxed app after a configuration change
(eg. Dark/Light mode)
Test: Manual
Fixes: 234107097
Change-Id: Iad9f4aaeb8edeeb56b0c88d7d0239843cd66a8f9
Dozing is separate state, apart from AOD, where low power sensors are
enabled but the screen is not active. Begin accounting for this state
during transitions.
Also, use the class name for logging.
Also, recover dreaming state after a crash.
Test: atest KeyguardRepositoryImplTest
KeyguardTransitionRepositoryTest
Bug: 195430376
Fixes: 259782960
Change-Id: Id887c886c4a1df4d4c466b5ea9f4c4507bfcd50e
When Activity relaunched, the SplitController will receive
onActivityDestroyed and onActivityCreated.
Before, we always remove all the reference onActivityDestroyed, which
can accidentally remove split pair finish relationship. Now we only
do that when the activity is actually finishing.
Also do the following to make sure there is no other regression:
1. Replace the stored activity reference with activity token, so it
won't be changed when activity relaunched.
2. Update #getContainerWithActivity to first check pending appeared
activity to make sure it returns the correct container before the
server update.
Bug: 260301635
Test: atest WMJetpackUnitTests:SplitControllerTest
Test: atest WMJetpackUnitTests:TaskFragmentContainerTest
Change-Id: Ife6de66d22e336bb872a9fccbdf03562fe6e089d
In change I0885d19e297ff5f881271ed0347e9699b3494928 I defaulted
the small clock to invisible, which likely introduced this bug.
From logs, it looks like an edge where neither clock is never
selected. We correct this by always calling `switchToClock` with
the correct size argument as soon as `KeyguardStatusViewController`
is acquired by `NotificationPanelViewController`
Fixes: 256809954
Test: Manully tested on a couple devices
Change-Id: I9143d6162411065ed2ed80cfa84d73e222c1f231