Refactor content monitoring code into a few singletons to keep alive
while Settings app is running.
Bug: 32995210
Test: Manually installing/uninstalling AOSP LatinIME.apk while
Settings app is/isn't running, then search AOSP.
Test: Connecting/Disconnecting Anker bluetooth keyboard while Settings
app is/isn't running, then search Anker.
Test: Added Robolectric test for DynamicIndexableContentMonitor.
Change-Id: I588e33be169fc9677d41c3daa59ab400f04f6419
This makes sure that all data always stays up to date.
printer_dropdown_item.xml:
- Reduce the amount of overriden properties
PrintServiceSettingsFragment:
- Instead receiving most data from PrintSettingsFragment have own loader
and keep data up to date
- Also the updating of the print service state now has a dedicated
PrintManager call instead of relying of the Settings-ContentObserver
to transport this information. No more race-conditions, whohoo!
DynamicIndexableContentMonitor:
- To not rewrite too much code the update logic has to live here but the
reading of the actual data is in PrintSettingsFragment.
Change-Id: I60715cda8952565d7f68cb24fb7da61a37085887
- add a BaseSearchIndexProvider to HomeSettings
- use a BroadcastReceiver for tracking add or remove of
Home / Launcher apps
- add "launcher" synonym for "home" too
- also code cleaning for DynamicIndexableContentMonitor
See bug: #16484927 Add "launcher" as a synonym for "home" in settings search
Change-Id: I819f4e5f7bd5e9a7882609206b2733ea1912fc69
We have software features that are optional and developers should check if
these feature are available before use their APIs which are nop if the feature
is not present. DynamicIndexableContentMonito is observing changes in print
services and IMEs but printing and IMEs are optional features. Now we are
checking before tracking these features.
bug:14653371
Change-Id: I3003c645e637aa7d7118c80b4453a54b8ac8bf9a
- use factory for creating Intents
- add missing case in handlePackageUnavailable() for IMEs
- move DynamicIndexableContentMonitor to the "search" package
Change-Id: I8d74b28fb9183827db50c6de4b4543b4ff21acc0