* changes:
Remove unused definitions for default language in TextToSpeech as the default language is determined by the current Locale, not a hardcoded value. Add a value for the default TTS engine to use.
If there's no data to be backed up, we no longer invoke the transport. We *DO*
still require that the agent have emitted a valid new state file, however.
This change also finally uncomments the code that removes the backup data file
after it has been sent to the transport, so there will be no more
packagename.data files lying around in the staging area.
Details:
- Add a new SearchDialogWrapper class that makes sure
all access to the SearchDialog is run one a single thread
other than the main ServerThread.
- Don't save/restore seach dialog state in Activity.
This resulted in lots of calls to the SearchManager
throughout the life cycle of all activities, for
the questionable benefit of restoring the search dialog
in a few cases.
- Remove search UI state save/restore, and the isVisible()
method from SearchManagerService. They are no longer used,
and were tricky to implement since they return values from
the search UI thread to the service.
- Handle configuration changes in searchDialogWrapper instead
of calling through from Activity.
Fixes http://b/issue?id=1938101
TODO:
- Activity.performPause() calls stopSearch(). This call may not happen
until the new activity has been started. If the new activity starts a
search immediately, this search could be cancelled by the old activity's
call top stopSearch().
ShapeDrawable.inflateTag() handles the 'padding' tag with the standard
attributes android:left, etc. The attribute values for these standard
attributes should be dimension specifications, e.g. '4dp'.
ShapeDrawable.inflateTag() was wrongly parsing the attribute values as plain
integers.
If provided and true, URLs entered in the search dialog while searching within this activity would be detected and treated as URLs (show a 'go' button in the keyboard and invoke the browser directly when user launches the URL instead of passing the URL to the activity). If set to false any URLs entered are treated as normal query text.
The default value is false. This is an optional attribute.
Also backup development settings MOCK_LOCATION and USB_DEBUGGING.
Backup and restore more of the Audio settings. Won't work yet without a reboot.
Disable Wifi supplicant restore temporarily. It seems to be disabling Wifi due to
permissions problems.
Don't restore Ringtones.
We now log in dataChanged() only when an app is added to the backup set (and
*not* if it redundantly asks to be added after it's already there) and on error.
* changes:
Cleaning up logs. Initializing SpeechItem.mText to "" instead of null to prevent a null from accidentally being used when it is a non-text utterance.
We now only commit to the pending-backup journal on disk the first time that a
given package is added to the backup set. This avoids a lot of write thrashing
of the disk, particularly since Settings tends to call dataChanged() a great
many times during boot, while the Settings UI is in use, etc.
Add small unit test for NeighboringCellInfo in AndroidTests. The old telephony unit test directory, CoreTest/android, is marked as deprecated in AndroidTestHowto.
new file: tests/AndroidTests/src/com/android/unit_tests/NeighboringCellInfoTest.java
+ Now rechecks the cached IBinder each time the wrapper is used, and if it's
still null (i.e. the BackupManager was constructed before the system service
came up) it's refetched. This lets even system code cache a single
BackupManager instance and just keep making calls through it without worrying
about interactions with the life cycle of the backup service.
+ Added a static dataChanged(packageName) method as a convenience for code that
needs to indicate that some other package needs a backup pass. This is useful
even for third party code in the case of multiple packages in a shared-uid
situation.