-Add mUnpairing to mark the device triggers removeBond()
-For HA, once it calls removeBond(), two HA would be unpaired. It causes the incorrect state if we do main/sub devices switching.
Bug: 198124571
Test: manual test
Merged-In: I4ed5db2bd01f4b4e8f246ed3e8f74e24149571f9
Change-Id: I4ed5db2bd01f4b4e8f246ed3e8f74e24149571f9
(cherry picked from commit 5597cbd76b)
This substitutes in calls to Dependency#get. While this feels like
a step backwards, it is the last step necessary before removing
acual view injection.
Removal of Dependency#get is ongoing and will include cleanup of this
class.
Bug: 149942757
Test: manual
Change-Id: I129f0751f101cdce7ae92554b2a09d2091b7c13b
Merged-In: I129f0751f101cdce7ae92554b2a09d2091b7c13b
Also make sure they are removed properly when the view becomes
detached.
Fixes: 203257107
Test: atest KeyguardClockSwitchControllerTest
Change-Id: Ied4d4e7774d15af71648b188ac723c9c7635f506
Local colors are added before the renderer is created which is causing
crash
Fixes: 203613925
Test: switch to user back and forward
Change-Id: I2f169434e1cb0e692045050e255d24d1f8fa7c47
Disables unfold animation for statusbar when it is
perpendicular to the screen fold.
Moves ScopedUnfoldTransitionProgressProvider from launcher
to shared SysUI/Launcher code.
Introduces NaturalRotationUnfoldProgressProvider which emits
transition events only when in natural rotation.
Added proper disposal of resources when status bar is detached
as PhoneStatusBarView is re-created when folding/unfolding.
Bug: 201518277
Test: manual
Test: atest com.android.systemui.unfold.util.NaturalRotationUnfoldProgressProviderTest
Change-Id: If4da3afca2b41c3675ccf6838e9ad6dac1b6f82e
Disables screen freezing and rotation animation when
screen blocker is not removed (e.g. when folding or
unfoding a foldable device with two screens).
Fixes: 199897277
Test: manual fold/unfolds on foldable devices
Test: rotation animation works on inner/outer screen
Change-Id: I2b353b5cb31042cdf4789915a04510062231e29c
The mismatch condition could happen due to the race condition from
keyguard unlock animation and the execute of AppTransition.
Pre-condition: keyguard is locked and showing a showWhenLocked activity
on top of device, while starting another activity B without
showWhenLocked. The issue sequence is:
1. Start Activity B and it is no occluded, update
PWM#onKeyguardOccludedChangedLw(occluded = false), because keyguard is
showing so set mKeyguardOccludedChanged to true.
2. Because device was occluded, there will attach showWhenLocked flag
to the starting window of Activity B, when this starting window added
to WM, the occluded state chage to true and overwrite the
mPendingKeyguardOccluded again.
3. Keyguard unlock animation finish, WM receive keyguard showing become
false.
4. Starting window removed so occluded state change to false, because
the keyguard is hidden, PWM will update the occluded value to SystemUI
directly.
5. App Transition start, PWM#applyKeyguardOcclusionChange with the
mPendingKeyguardOccluded value, which was true, thus the occluded state
become mismatch.
If the timing between 3, 4, 5 has slightly change, then this issue won't
happen.
Anyway, an easy fix is to ensure the updated value on PWM should
always be the latest value from KeyguardController.
Bug: 201328381
Test: atest KeyguardTests KeyguardTransitionTests KeyguardLockedTests
Change-Id: I69e9cbb6238a19cf75ac0c9cb16adb2310399876
So that other components can get app icon throught it as well.
Like showing app icon as resizing hint while dragging divider bar in
split screen.
Bug: 202740435
Bug: 201653912
Test: atest WMShellUnitTests
Change-Id: I7cc10be4ebfe7f9aad5db036a595613546ca15c9
PiP Shell Transitions needs to be more robust to pass CTS tests
reliably.
Some changes:
1. DELIVERED_TO_TOP intents don't create a transition since there is
no change to the WM hierarchy. This way the app-launch transition
won't conflict with activityRestartAttempt.
2. If PiP started an expand transition while an enter transition is
ongoing, cancel the enter transition.
a. Additionally, because PiP doesn't resize task until the enter
transition finishes, the expand transition will actually be
a no-op. If we see this pattern, also cancel the enter
transition.
3. When taskVanished, make sure to call any pending finishCallback
because it doesn't allow the running animator to properly finish.
Transition systems require the finish callback to function
properly.
4. Minimize the uses of finishTransition with a sync callback. We
probably need to phase this out because it can conflict with
subsequent startTransition calls (because only 1 sync is supported
at a time).
Bug: 183993924
Test: atest PinnedStackTests
Change-Id: Ieb573032839a2f31b0bb371410484fc93a1714fa
* changes:
Don't show the keyguard status bar if we're animating the screen off.
Adjust unlock parameters so that the lockscreen content doesn't overlap with the app/launcher.
Don't play the screen off animation if we disabled animations system-wide.
Test: Verified a haptic is received after a face is locked out.
Fixes: 187800411
1. Make sure only a face is enrolled.
2. Auth 5 times with eyes closed.
3. Verify a haptic is received after the fifth failed auth(locked out).
Change-Id: I2275787964a1aaed0f4a91a9b6c378eadea3fc3f
Try to estimate the necessary rotate&crop compensation
for:
1) All device orientations
2) Front cameras
3) Cameras with landscape sensor orientation
Additionally check the resizeable flag of the top activity
using the 'topActivityInfo.resizeMode'.
Move the heuristics outside of the camera proxy stub inner
class and declare them static. This should make unit tests
of the logic inside easier.
Bug: 202567080
Test: Manual using camera applications,
Camera CTS,
atest FrameworksServicesTests:com.android.server.camera.CameraServiceProxyTest
Change-Id: Iba9b1b26958a373c481a1af0601c08012b5a61e7
* changes:
[Status Bar Refactor] Combine PanelExpansionChange and PanelExpansionStateChange into one listener class.
[Status Bar Refactor] Remove PanelBar#onPanelPeeked and put its code in a callback instead.
[Status Bar Refactor] Move a bunch of callbacks out of PanelBar and into (N)PVC.
[Status Bar Refactor] Move PanelBar's touch handling into NotificationPanelViewController.
[Status Bar Refactor] Remove unnecessary return value from StatusBar#interceptTouchEvent.
[Status Bar Refactor] Move PanelBar#collapsePanel into NotificationPanelViewController.