* changes:
Add tests for QRCodeScannerController
Add tests for QRCodeScannerTile
Add a lock screen entry point for QR Code scanner
Add settings keys for QR code scanner settings
Add a quick settings entry point for QR Code Scanner
Create a controller for QR Code Scanner in android
There is a potential NPE since we didn't have null check before sending
broadcast, so add null cehck.
Bug: 205211901
Test: Manually
Change-Id: Icc60d2c87941373943ec627f669598dca684c09d
This change adds a new controller that can enable/disable the entry
points for invoking a generic QR code scanner. This controller manages
the following:
1. Enabling/disabling the lock screen entry point
2. Enabling/disabling the quick settings entry point
3. Enabling/disabling the settings for lock screen entry point
4. Any changes to the QR code scanner device config
Bug: 200536509
Test: atest QRCodeScannerControllerTest
Change-Id: I6d1001e7597576f39f51f8cf4ef763fcc253423c
The Multi-Client IME was removed by CL[1].
We no longer need the the isMultiClientImeEnabled
related logic in SystemUI. Remove it for code health.
[1]: I0bdc8fe3d32ccabc8ea7996fc689543c3f99331a
Bug: 173341412
Fix: 205863279
Test: Build and flash
Change-Id: I042d40623ed34251a212fbf25f72de5647b88835
This CL adds the missing WINDOW_GAINED_FOCUS annotation to the
StartInputFlags IntDef declaration to avoid compiler warnings such as
the one in IMMS#startInputOrWindowGainedFocusInternalLocked.
Also, this CL replaces decimals with bit-shift expressions as per AOSP
style guide.
Test: make
Bug: 205676419
Change-Id: I51fe293149d6f7fab5790d13764449d62cbdb668
This replaces the ad-hoc hard-coded flag that previously
guarded the delegation flow, and updates the config to
point to the new delegate component. Note this is still
the Phase 2 ("Delegation Trials") architecture from
go/sharesheet-unbundling-phases which delegates to the
new component only for the final step of dispatching the
user's selected target. When the new component takes
responsibility for displaying the Sharesheet UI (Phase 3)
we'll use the same DeviceConfig flag to guard the new
logic to delegate out from earlier on in the system
activity lifecycle.
I was able to test this manually (once I eventually
figured out how to get the new unbundled APK installed),
by going through Sharesheet and confirming that the
delegate activity (at the new path) is only invoked after
overriding the flag by:
adb shell device_config put systemui use_delegate_chooser true
An upcoming CL will add the server-side config that we
can use to control this experiment.
Bug: 202166034
Test: manual (as described above)
Change-Id: Ie3eb5bca6b768383156293cddbf6932df2cd3a64
Add the TextAttribute class and variant of setComposingText(),
setComposingRegion(), commitText() to support IME to take extra
information to editor.
Bug: 198732184
Test: atest CtsInputMethodTestCases:InputConnectionEndToEndTest CtsInputMethodTestCases:TextAttributeTest
Change-Id: Ic9c917b70726ca32c2097b0374951c20af9624c4
Currently, we add a work badge (briefcase icon) to app icons in
the sharesheet. If the target is an app, this results in the
regular app icon with a work badge. However, for direct share
targets we show the person, with the app icon as a badge. This
means that for direct share targets, we show an app icon badge
that itself has a (very tiny) work profile badge.
This change removes the "nested" work profile badge for direct
share targets.
Bug: 179783660
Fix: 179783660
Test: manual (shared something and verified that no direct share
targets have a work profile badge, but work profile apps are still
badged)
Change-Id: I5196184a6f1fb442eee905240656faa6c9fc4cfb
A deadlock path is found:
- FrameTracker$1.lambda$surfaceDestroyed (held A)
- InteractionJankMonitor.end (held B) -> FrameTracker.end (wait for A)
- FrameTracker.end -> InteractionJankMonitor.handleCujEvents (wait for B)
This cl resolves this by using a single lock among monitor and tracker.
Bug: 197804653
Test: atest InteractionJankMonitorTest --rerun-until-failure 100
Test: atest FrameTrackerTest --rerun-until-failure 100
Change-Id: Ia6aa196370bdb51b8a5c84c74a3d174a3d4b689f