This changelist delegates calculating the spacing between complications
to the DirectionGroup rather than the ViewEntry itself. By calculating
the margin up the hierarchy, more conditions can be accounted for
without passing the information down to the ViewEntries.
This changelist also renames complication margin to directional spacing
to better reflect how the value is used.
Test: atest ComplicationLayoutParamsTest
Bug: 280595239
Change-Id: I0a83ce98bcdd42d1100ebfe4ef2ab49bb2b95dc3
Fixed colors only exist once. They need special logic when being
assigned to overlays.
Fixes: 280128998
Test: Change colors, look at bouncer
Test: atest ThemeOverlayControllerTest
Change-Id: I001f7cf7987702de787ce29592985b990668d89d
As CL[1] that ImeVisibilityStateComputer leverages
onImeInputTargetVisibilityChanged callback to check whether the current
IME input target has been covered and became invisible by non-IME focusable
layering target. If so then ImeVisibilityStateComputer will hide the IME
to address the IME persists on top of layering target but the input target
was invisible case.
But there is an edge case that the starting window could possible shown
and cover the IME input target befor it drawn during animating (e.g.
quick-switching app tasks by recents animation) then leads to IME may
hidden by CL[1]'s case.
Luckly the above scenario has caught by
ShowImeOnAppStartWhenLaunchingAppFromQuickSwitchTest, to fix this
flaky case, add the windowType in onImeTargetOverlayVisibilityChanged
to give more context for ImeVisibilityStateComputer and ignore the starting
window case, since it since it's ok to cover the IME input target window
in temporary without affecting the IME visibility.
[1]: Ia71b975898efb19439c3a1b1a9a2bdcf21b78650
Fix: 278698977
Test: atest
FlickerTest:ShowImeOnAppStartWhenLaunchingAppFromQuickSwitchTest
--rerun-until-failure 10
Test: atest ImeVisibilityStateComputerTest
Change-Id: I3a950423f73f0a97432589d0a90ac8fd1c84f05e
This is needed in scenarios that clients want to force stop the
application package even when the user is in a stopping state but not
completely stopped yet.
Bug: 276961198
Test: atest FrameworksServicesTests:ActivityManagerServiceTest
Test: perform passenger logout and login manual on the MD emulator
Change-Id: Ie08c87d717e5207ac4a0d84b28ecff65a75c882c
We add new field scale in metric MagnificationUsageReported. In
FullScreenMagnificationController/WindowMagnificationManager, we add
getLastActivatedScale method so that MagnificationController can get the
last magnification scale of the activation for logging.
Bug: 281287915
Test: atest MagnificationControllerTest
m statsd_testdrive & statsd_testdrive 345
Change-Id: If45b43ae58ed05fb68575fc6bf15c551fc2026a8
A mouse event should always be dispatched to the cursor position,
regardless of the location of the pointers in the MotionEvent.
When there are touchpad gestures like a two finger
swipe or a pinch, we promote compatibility with apps by adding fake
pointers that emulate the same behavior on a touchscreen. For example,
two finger swipes turn into a one finger drag, and two finger pinch
emulates a pinch on the screen using two pointers.
The proper way for views to handle touchpad gestures is to look for the
new motion classifications added for touchpad gestures, and dispatch
events at the cursor position for these gestures. However, our API
is incomplete at the moment, becuase apps cannot query the cursor
position.
We can at least fix this in the UiToolkit by dispatching mouse events to
the cursor location.
Bug: 279444161
Test: manual
Test: atest FrameworksCoreTests:ViewGroupTest
Change-Id: I58a9c06b7651ebe97cd03447b083cc9887f863b1
Use the following command to enable FocusEventDebugView:
adb shell settings put system show_key_presses 1
Bug: 279026138
Test: manual
Change-Id: I08bedeca1166ec359f31588702d0fe885994a696
The Mobile and WiFi repository switcher classes never got the annotation
to be created as a SysUISingleton. This is probably a mistake caused
by the way we had been providing them; By using a @Binds method on the
StatusBarPipelineModule, it was not immediately obvious that the classes
were not singletons. But believe me, they should be singletons.
Test: manually determined that there is only 1 Mobile and Wifi switcher
instantiated
Test: CarrierTextManagerLog gets current info when airplane mode
switches
Test: manually verified that the "Wi-Fi Calling" text shows when in
airplane mode
Fixes: 278254374
Change-Id: Ifdb5c4b2977020f6ab349b97cfe286c7acbedaa9
Change-Id: If2d87039042fb0a2d3bec42efb1d2d45fa015c04
Convert some Log.d calls to use LogBuffer
Test: adb shell dumpsys activity service com.android.systemui/.SystemUIService CarrierTextManagerLog
Bug: 278254374
Change-Id: Ia544cbbfc492a1e523aa2fe0e458e56f766fac92
creative categories
This CL aims at turning the flag off for picker for creative categories
in build where it is not needed.
Bug: b/281530539
Test: Tested by building and flashing on local and turning off the flag
Change-Id: I14b95d2fe31f9bb11c6d87363894e96ac88cbcb1
Not aware in DC#mayImeShowOnLaunchingActivity has an issue that
it uses findMainWindow() to check its softInputMode visiblity state
but always got 0 because the returned main window is the starting window
vs. the app's base application window, which is not expected.
This problematic logic leads to when CL[1] merged, the starting window
removal mode and timout always set to DEFER_MODE_ROTATION (3 secs)
vs. DEFER_MODE_NONE (100ms) if the warm launching activity's softInputMode
is hidden during fixed-rotation.
Ensure finding the main window with excluding the starting window in
DC#mayImeShowOnLaunchingActivity to fix this case.
[1]: Ie476e89a57f2f64d4d66e722fedeeb1719d9de55
Bug: 268627602
Test: atest FlickerTests:\
ShowImeOnAppStartWhenLaunchingAppFromFixedOrientationTest
Test: atest DisplayContentTests#\
testMayImeShowOnLaunchingActivity_negativeWhenSoftInputModeHidden
Change-Id: I3fa33daf20734b673fd89328dca6a8fd432f2969
* changes:
[SB Refactor] Only use carrier merged sub ID if wifi or CM are default.
[SB Refactor] Use a real WifiRepo in MobileConnectionsRepositoryTest.
[SB Refactor] Convert MobileConnectionsRepositoryTest to testScope etc.
Release flag for activity starter.
Bug: 278761837
Bug: 278273334
Test: Ensure that the previous tests that failed are now passing on
abtd.
Change-Id: If92f7b458839299417d6002b28cb309c77ac89f2
Change arguments to be true by default to maintain parity with central
surfaces.
Bug: 278273334
Fixes: 280800920
Test: long press settings
Test: ABTD with change and released flag (It passes)
Test: ABTD without change and released flag (It fails)
Test: Atest on local device (It passes)
Change-Id: Ifa680f247fec41a02ab911d60207459a1fce6bae
1) The ScrimController's alpha is irrelevant when the bouncer is showing, because the bouncer's scrim is baked into that view, so we always want `forceForScrim` to be true when the bouncer is showing.
2) Moreover, the bouncer covers expanded QS, so tweak the later logic to ignore the QS override when the bouncer is visible.
Fixes: 280434803
Test: atest LightBarControllerTest
Change-Id: Id4236235ce11b473d64d36431c9a4e5f70caf2c9
There's no reason to share those locks and separating the locks breaks
lock inversion cycle.
Also, return copy of mSensorDescriptors in getSensorDescriptors instead
of original map.
Bug: 278900649
Test: atest CtsVirtualDevicesTestCases
Change-Id: I993ae4f0c2a5590529bcabaa15463956b3aa5b1d