The previous CL (I47f902cc8f) fixed ImeSubtypeListItem.compareTo() is
compliant to Comparable#compareTo(T) (Bug 34255739) and introduced the
following order of comparing ImeSubtypeListItem fields.
1. ImeSubtypeListItem#mImeName
2. ImeSubtypeListItem#mSubtypeName
3. ImeSubtypeListItem#mIsSystemLocale
4. ImeSubtypeListItem#mIsSystemLanguage
But it didn't keep the previous ordering (Bug 34821121). This CL
fixes the order of comparing ImeSubtypeListItem fields as compatible
as ones before I47f902cc8f.
1. ImeSubtypeListItem#mImeName
2. ImeSubtypeListItem#mIsSystemLocale
3. ImeSubtypeListItem#mIsSystemLanguage
4. ImeSubtypeListItem#mSubtypeName
Bug: 34255739
Fixes: 34821121
Test: Install FramewroksCoreTests.apk and run
InputMethodSubtypeSwitchingControllerTest and verify all tests passed.
Change-Id: I813403fd29c5c52a3ca375174ec4b95e4b5433f2
Currently, TextServicesManagerServices uses an AIDL interface called
ISpellCheckerService when binding to a spell-checking service.
However, this interface uses synchronous (blocking) binder calls
rather than asynchronous (oneway) calls. As a result, there are
situations where the system process has made a blocking binder call
into untrusted application code from its main looper thread.
As general policy, the system process must never allow its looper
threads to block on application code.
This CL addresses the above issue by converting ISpellCheckerService
into oneway interface, which instead takes a result receiver
ISpellCheckerServiceCallback so that spell-checking services can
return results asynchronously.
Note that the above protocol issue was also the root cause of
Bug 5471520. Hence we can also logically revert the previous CL [1]
for Bug 5471520.
[1]: Iedf2c2cdd8d4834545d06d72ade3ce211b104b1d
4e713f1441
Test: Ran `adb shell dumpsys textservices` to check the
"Spell Checker Bind Groups:" section in the following three
steps.
1. Before apps start requesting spell checker sessions.
2. While apps are owning active spell checker sessions.
3. After all the apps that owned spell checker sessions are
gone.
Made sure that spell checker service is not running when
there is not spell checker bind group.
Bug: 7254002
Change-Id: I92e7aa40dc9ea14f67d355f0bfa15325b775d27b
1. Menu groups are now separated by dividers
2. Update to menu item spacing as specified in new UX mocks
3. TextView-Editor now passes the "assist" menu as a group
4. "Share" menu reordered after "Cut/Copy/Paste" as per UX mocks update.
Test: Manual tests.
Bug: 34777048
Bug: 34777833
Change-Id: I3d435d8a38e5b146a54706f12dbf3ff629c504bf
Don't try to grab the write lock while holding BatteryStats lock.
Add some debugging to see if cpu stats gathering is causing a
delay in some cases.
Bug: 34961340
Test: Manual
Change-Id: I8c7d1abb239abd81a07171cd65be1fbfdbca5fdb
Before this, CTRL was the default modifier for MenuItem shortcuts.
Now, It's possible to specify the modifier in XML or via MenuItem
methods.
The modifier list includes META, CTRL, ALT, SHIFT, SYM and FUNCTION.
WIP on support library implementation
Bug: 32165848
Test: Run the tests using following commands:
> cts-tradefed run cts-dev -m CtsViewTestCases -t
> android.view.cts.MenuTest#testPerformShortcut
> cts-tradefed run cts-dev -m CtsViewTestCases -t
> android.view.cts.MenuInflaterTest#testInflateShortcutModifiersFromXml
Change-Id: I7db4607d4657451934761914efe4c250de109653
- #1: Move logic for handling IME size changes into SysUI, and only rely
on PinnedStackController to provide bounds when first entering
PiP and on rotation
- #2: Doing #1 allows us to move PipMotionHelper to SysUI completely, which
lets us aggregate the animation calls out of PipTouchHandler
- #3: Add proper callbacks to the listeners when the movement bounds
changed from config change, ime change, or aspect ratio change. This
allows SysUI to calculate the associated movement bounds for the
expanded state, and we can then remove the corresponding WM call.
It also means that SysUI is the only thing that needs to know about
the expanded state.
- #4: Fix issue where TV was getting the default bounds, not taking the
aspect ratio when the PiP was entered into account. Doing #3
allows us to report the right bounds.
- #5: Remove dead code related to edge snapping/minimizing now that they
are on by default and associated tuner setting, and controller
callbacks
Test: android.server.cts.ActivityManagerPinnedStackTests (all existing tests pass)
Change-Id: I3ef361bdf8d44094b4c0a11c70ba4db7d697fdec
Signed-off-by: Winson Chung <winsonc@google.com>
As a preaparation to work on Bug 35079353, this CL makes it clear that
IMS#startInput()/IMS#restartInput() can be also be triggered by
IMMS#onSessionCreated().
By doing this, we can now assume that each
IMS#startInput()/IMS#restartInput() event has always one corresponding
StartInputReason. In a subsequent CL, we will pass this to the IME
process (and to the app process) for further traceability.
Test: no behavior change.
Bug: 35079353
Change-Id: I604e35b023d27b77126cd70fe068dc6b5edc2611
It was broken in I4bf6ac8d, meaning it was broken for the whole NYC.
Test: cts-tradefed run cts --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l DEBUG -m CtsDumpsysHostTestCases -t android.dumpsys.cts.ProcessStatsDumpsysTest
Bug 34228624
Change-Id: I0f6c984e6902e688f00442cbc8b999b397a25aaf
This introduces an API for apps that support companion devices to provide a
more streamlined flow for pairing and setting up the device
Bug: 30932767
Test: Using a toy app, invoke the newly introduced API (CompanionDeviceManager),
and go through the flow. Ensure filtering works, and device is returned to
the calling app. Ensure the calling app can pair to the selected device.
Change-Id: I0aeb653afd65e4adead13ea9c7248ec20971b04a
Paves way for synthetic password flow: Two notable changes:
1. when unify/un-unify work challenges, provide the old work profile password.
2. when clearing lock, supply old credentials.
Test: Unit test to be added in a follow up CL.
Bug: 33126414
Change-Id: I2a9553c5e7cc701338436e99e5a1289cebd1eda9