The current logic in ChooserActivity depends on checking
for the presence of a particular AppPredictionService
component in AiAi, but that check always fails in the
unbundled Chooser. Instead, only check when we're
running on the system side, and hand off the bit in an
extra on the delegation intent.
Test: trivial (needs other changes for meaningful behavior)
Bug: 206831012
Change-Id: I86919d962ac25fc1a4dd4a25d672d400abc64ff2
These changes are somewhat hacky, but they allow
us to conditionally hand over to the new unbundled
chooser with minimal impact if the experiment
is disabled.
For a safer implementation, we could consider
starting with a separate springboard activity that
launches a normal (reverted) version of the
"bundled" chooser if we intend to show the UI
from the system side, but that would incur some
latency even when the flag is disabled.
Test: manual, as described in ag/16286296.
Bug: 202165481
Change-Id: I4073776b293806052e9ff66c50fea1181afd642a
Since window focus changes are dispatched by InputDispatcher, remove
focus change callbacks from IWindow so that WM cannot dispatch focus
changes without going through InputDispatcher.
Bug: None
Test: presubmit
Change-Id: Idff4c18084f35febf2bb6e5622b7e987130e8c76
This CL fixes a regression caused by [1] which introduced
<uses-native-library> tag [2]. With the change, public vendor libraries
[3] became accessible only when they are listed in the caller's
AndroidManifest.xml using the new tag. However, this caused a problem to
the places where AndroidManifest.xml doesn't exist: framework and
system_server classes. For those cases, [1] incorrectly used a null list
as the requested native libraries, and as a result, no public vendor
libraries were accessible.
This CL fixes the issue by not doing the filtering for the class loaders
created for non-app contexts like zygote or system_server. Specifically,
it uses the magic keyword "ALL" which let libnativeloader.so
accept all public vendor libraries.
[1] 6a5b8b1f6d
[2] https://developer.android.com/guide/topics/manifest/uses-native-library-element
[3] https://source.android.com/devices/tech/config/namespaces_libraries#adding-additional-native-libraries
Bug: 205164833
Test: libcuttlefish_fs.so is loaded when built with the other CLs in the
same topic
Change-Id: Id92c59642773851d70d05a05f43eb5873e9de86b
* 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