As part of transitioning the OS towards FastXmlSerializer, we found
at least one example of a caller who is omitting a "standalone" value
by passing null. Handle this by mirroring the behavior of the
upstream KXmlSerializer and omitting the attribute entirely when
the value is undefined.
Bug: 174561276
Test: manual
Change-Id: I868aceaed8e3dd1575947a56b28f8fff8759c0ae
-. Create InputBindResult result callback and apply it
to startInputOrWindowGainedFocus().
-. Create a callback utility class.
Bug: 163453493
Test: Manual test with keyboard
Test: atest CtsInputMethodTestCases
Change-Id: If4b40244a2e0e3b11c38c1da9340ba8e5166ad64
Enforce a lock screen that adheres with the required complexity set by
the admin.
To do this, provide a method to let the Settings code query the
DevicePolicyManager for the effective password complexities that applies
to a user.
Bug: 165573442
Test: Manually, set complexity using TestDPC.
Test: m RunSettingsRoboTests
Change-Id: Ia03aebb725cacc7104d7fd765ae6ab53456e33e0
When app is forced stop, the removeImeSurface flow
from DisplayImeController will be dropped in IMMS
and IMS because some fields (IMMS#mShowRequested,
IMS#mShowInputRequested..etc) still remain previous
state. The launcher cannot receive keyevent at that
time since IME surface remain and cause ANR.
Calling hideCurrentInputLocked() to hide the IME
surface when a IME client is removed.
Bug: 167780081
Test: atest CtsInputMethodTestCases
Test: Verify with issue reproduce steps:
1) Add another language to the keyboard
2) Open chrome and tap the EditText to show keyboard
3) Tap to show language swiching dialog
4) adb shell am force-stop com.android.chrome
5) adb shell input keyevent 8
6) Verify there is no ANR happen
Change-Id: Ifb91111f7136952462678ff6d0a5e917abb5005e
This change adds tracing for the methods exposed by the InputConnection
interface. The tracing is added to the wrapper class used to handle
InputConnection implementations created by different apps.
Bug: 154348613
Test: flash a device
record a trace with Perfetto at https://ui.perfetto.dev/#!/record
visualize traces and duration of tracing tags
Change-Id: I6718aa3183c95fc6802d93137e22d21b71869cfc
Add InputConnection information to IME tracing. This change adds
only information about the text associated with an
EditableInputConnection instance: editable text, selected text, text
before and after the cursor (for a preset length) and cursor caps mode.
Test: flash a device
start IME tracing with `adb shell ime tracing start`
stop IME tracing with `adb shell ime tracing stop`
visualise the traces in Winscope and see the inputConnection information
Change-Id: I4dc6147fb7baa2cea413d2c44226e8c84c056c37
In dumpsys the following additional information is surfaced:
* Information regarding the current battery capacity as reported from
the battery info callback
* "Real" charge and power information reported from the IHealth HAL
* Per-uid Foreground power estimates
Bug: 169376495
Test: builds
Test: dumpsys batterystats
Change-Id: I90722f349b87d5102afa48e0bd32b04840691364
They mistakenly were tagged as flags, which is not applicable for either
of them.
Test: m
Bug: 174237593
Change-Id: I982ddc53839f13255ea68c9852fd20c3fe5a8433
Also called IME#onStartInput without dup onFinishInput when screen-on,
to fix the long-standing IME input connection lifecycle issue when
device screen state changes.
Bug: 156215187
Bug: 26851566
Test: atest InputMethodStartInputLifecycleTest
Test: manual as below steps
0) Enable InputMethodService debug flag.
0-1) In Settings -> Develop options -> AppCompatibility Changes,
Select Gboard and then toggle
"FINISH_INPUT_NO_FALLBACK_CONNECTION" change.
1) Launch a app with focused a editor and show soft-input
2) When device screen turned-off, will see InputMethodService only
callbacks below logs:
CALL: doFinishInput
CALL: onFinishInputView
CALL: onFinishInput
3) When device screen turned-on, will see InputMethodService only
callbacks below logs:
CALL: onStartInput
CALL: onStartInputView
Change-Id: I8a657e75e274d842fb46b60375f6aeafeab96a59
The added interface makes it possible to start or stop IME tracing from
another process. This will be used together with the DevelopmentTiles to
ghather IME tracing data when the WinscopeTrace tile is used.
Bug: 154348613
Test: flash a device together with the other change in this topic
enable the WinscopeTrace tile and do some actions
disable the WinscopeTrace tile
do a bugreport and visualise contents in Winscope
or just check contents of /data/misc/wmtrace/ through adb
Change-Id: Id03ede35f71c3d513dea50ef69e4ed4ce05a8d53
Make methods(await, logging) to utility in Completable
so that other modules could use them directly.
Bug: 163453493
Test: Manual test with keyboard
Test: atest CtsInputMethodTestCases
Change-Id: Idedb9de658de3e6e91afad16bab0c428ee68e7b3
This CL fixes a bug that SharedLibraryInfo.isNative() returns false
even for native shared libraries. This was because when a
SharedLibraryInfo is copied to a new SharedLibraryInfo (to add some
extra info about declaring package, etc.), the native-ness was
mistakenly ignored. Fixing the issue.
Also, the old constructor of SharedLibraryInfo that doesn't accept the
native-ness was removed to prevent similar mistakes.
Bug: 142191088
Test: atest CtsUsesNativeLibraryTest
Test: write an app that calls PackageManager.getSharedLibraries()
and inspect the mIsNative fields in the returned list. Entries for
native shared libs all have mIsNative=false. Will add a testcase to
the CTS test when isNative() becomes an API.
Change-Id: I35d9530f332614e0444448feec70a4461c9bbfa8
* changes:
Fix PowerStatsView AppPicker activity start
Utilize Measured Energy data in PowerStatsViewer
Introduce MeasuredEnergyStats to BatteryStatsImpl
Use MediaStore.scanFile to Handle .nomedia file case for file
operations.
Fix: 173574639
Test: manual
Rename/move/delete/copy files in storage root in DocumentsUI
Change-Id: I8231a67548bdb133bb47edf832db14aeb389e7ea
Initial checkin that plumbs the flow of energy consumption data through
BatteryStatsService, BatteryStatsImpl, and BatteryExternalStatsWorker.
Also, start monitoring the display subsystem measured enegy consumption
and attribute energy to screen on and screen doze state.
Fixes: 171728122
Test: atest FrameworksCoreTests:MeasuredEnergyStatsTest
Change-Id: I014c2ee99da773ebc93e18d026b2e2e694d0d4b2
On Bramble, we get these results:
endToEnd_median: 321.983605
getStats_median: 258.134786
getStats_cached_median: 48.506614
powerCalculation_median: 51.798291
Test: Lock the device to little cores for consistency
$ ./frameworks/base/libs/hwui/tests/scripts/prep_generic.sh little
$ atest BatteryStatsPerfTests
Bug: 173446001
Change-Id: I307bcea38c7001d950de1b506c31b64f89629952
A bug in FloatingToolbar.isCurrentlyShowing(menuItems) caused the
toolbar not to update the menu item action in certain cases where the
text selection changed but the toolbar menu items did not change.
e.g. Fires a Translate PendingIntent with the wrong text selection.
This CL fixes that.
isCurrentlyShowing(menuItems) aims to help avoid the re-building of
toolbar views when unnecessary. This fix still maintains this idea
but ensures that the menuItem references are updated so that the
correct click listener is triggered when the menu item button is
clicked.
Bug: 150973392
Test: Manually tested. See bug for how to reproduce.
Test: atest android.widget.TextViewActivityTest
Test: atest android.view.textclassifier.cts.TextViewIntegrationTest
Test: atest android.widget.cts.TextViewTest
Change-Id: Iefedf40e1ea6f9499401918ab34d3ebac53fc385
BasicShellCommandHandler is used by mainline modules and the
framwork. There is a new repo that was created for putting
this kind of utility class. Move BasicShellCommandHandler for
the incoming ConnectivityService mainline and updating the
related usage.
Bug: 170598012
Test: m ; verify with adb shell cmd
Change-Id: I8a2873df6e7d8342b7a8b466bda155f74c807ee3
Merged-In: Ida30c877116090616d4bf3f87fdad835446dac84