This is the first CL of many that will add instumentation to
backup/restore operation in the BackupManager. For more details please
point to:
https://docs.google.com/document/d/1sUboR28LjkT1wRXOwVOV3tLo0qisiCvzxIGmzCVEjbI/edit#
This first Cl introduces 3 events that we sent to the monitor.
Test: ag/1858962 (same topic)
BUG: 34873525
Change-Id: I6c338b6fd9f4d7c8670dac201897250b6b170677
ActivityStackSupervisor#realStartActivityLocked method is updated
to perform some actions regardless of whether we're making acitivity
resumed or not. This is possible because at the end in either way
activity will be visible.
Bug: 29619461
Test: Manual
Change-Id: If83ee38683e7ece52a0ae0a70bec0bdce6a195d3
This CL fixes a false negative case when handling
ACTION_PACKAGE_CHANGED in IMMS#MyPackageMonitor with greatly reducing
unnecessary false positives cases as well.
PackageMonitor#onPackageChanged(), which is the default handler of
ACTION_PACKAGE_CHANGED, returns true when and only when the entire
package state is changed to let InputMethodManagerService (IMMS)
rebuild the list of available IMEs when it returns true. Here we have
a false negative case and false positive cases.
Case 1 - false negative (Bug 28181208)
If ACTION_PACKAGE_CHANGED was about some components not the
entire package itself, currently MyPackageMonitor#onPackageChanged()
returns false and IMMS fails to rebuild the list of available IMEs.
Case 2 - false positive (contributing to Bug 32343335)
Even if ACTION_PACKAGE_CHANGED was about a package that implements
no IME service at all, currently MyPackageMonitor#onPackageChanged()
returns true and IMMS ends up with rebuilding the list of avilable
IMEs unnecessarily. Note that package replacement is a different
story that should be dealt with ACTION_PACKAGE_{ADDED, REMOVED}.
For both cases, luckily we can easily ask PackageManager to give the
list of relevant package names that might contain IMEs regardless of
enabled/disabled state, which is exactly what we want to use the watch
list for ACTION_PACKAGE_CHANGED events.
For the case 3, we can just check the current user ID.
Test: Manually verified as follows.
1. adb root
2. adb install -r LatinIME.apk
3. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
recognized by IMMS.
4. adb shell pm disable com.android.inputmethod.latin/.LatinIME
5. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
no longer recognized by IMMS.
6. adb shell pm enable com.android.inputmethod.latin/.LatinIME
7. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
recognized by IMMS again.
Test: Manually verified as follows.
1. Build a custom APK LatinIME_no_ime.apk that has no input
method service.
2. adb install -r LatinIME_no_ime.apk
3. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
not recognized by IMMS.
4. adb install -r LatinIME.apk
5. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
recognized by IMMS.
6. adb install -r LatinIME_no_ime.apk
7. adb shell dumpsys input_method
Make sure that com.android.inputmethod.latin/.LatinIME is
no longer recognized by IMMS.
Bug: 32343335
Fixes: 28181208
Change-Id: I7b69c349318ce06a48d03a4468cf2c45bfb73dc2
This CL sets the behavior for displays when they are removed.
For public displays by default all content will be moved to the
primary display and become focused. For private displays default
behavior is to destroy all content - first it moves stacks from
the secondary display to the primary display to the bottom, then
it destroys all activities in those stacks.
This CL adds two specified behaviors as modes, so in future these
rules might be altered if needed.
Bug: 34263289
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testContentDestroyOnDisplayRemoved
Change-Id: I3f89f06ff82cb4b487df58a86ba3b146a32cbd00
The previous implementation assumed ASCII digits, and a fixed set of
separators and signs.
The following classes have been internationalized: DigitsKeyListener,
DateKeyListener, TimeKeyListener, and DateTimeKeyListener.
DialerKeyListener is not modified yet, due to concerns about the
handling of non-ASCII digits by dialing-related parts of Android.
Even with this CL, characters outside BMP and multi-character signs
and decimal separators are still not supported, due to limitations in
android.view.KeyEvent and android.view.KeyCharacterMap.
Test: cts-tradefed run cts-dev --module CtsTextTestCases --test android.text.method.cts.*KeyListenerTest
Bug: https://code.google.com/p/android/issues/detail?id=2626
Bug: https://code.google.com/p/android/issues/detail?id=82993
Bug: 8319249
Bug: 33276673
Bug: 33643035
Bug: 34394455
Change-Id: I1cf87d0d9d1b383f5265c07ecd63b5767f9a68ca
audio.safemedia.bypass property was sampled only after a 30 second
timeout after boot in case no MCC change config event is received.
If the property is true, skip the time out to speed up automated test
needing to disable the volume warning.
Bug: 31347265
Test: restart runtime with audio.safemedia.bypass true and check
no warning is displayed when raising volume to max
Change-Id: Ic31111200379e3cb4fddc651fa548a1bdff3384a
Also:
- Set FLAG_RECEIVER_INCLUDE_BACKGROUND for ACTION_EVENT_REMINDER
- Remove the wake lock; with goAsync() now it's not needed.
Test: Manual test with: adb shell am broadcast --receiver-include-background -a android.intent.action.EVENT_REMINDER -d content:
Bug 35207106
Change-Id: I9e456f473f13b71df6e0dd1a1abdb0df8c26e6c7
Package change from android.text to android.view.textclassifier.
This change was delayed until the native library code was updated
to reflect this package change.
Test: cts-tradefed run cts-dev -m CtsViewTestCases -t android.view.textclassifier.cts.TextClassificationManagerTest
Bug: 34777495
Change-Id: I723aaf79f8fbed4758bb4ee6727dfb6a8e35bf99