This guards against iterating over a null array. This scenario should
never happen on user devices, however we know it can happen if you
install a trunk-staging build of the settings app on top of a nextfood
device configuration. This happens because of a flag mismatch
(updateServiceIpcWrapper is enabled in the trunk-staging app but the
service is not implemented by a nextfood platform build).
This is a low risk change since we know users cannot usually get into
this state.
Fixed: 391725109
Test: N/A - this bug is not possible in any configuration we test
Flag: EXEMPT bugfix
Change-Id: I654e0be5ad94e769cd8325ce5d20d241a4a13c13
Use the new IPC wrapper WebViewUpdateManager instead of directly
consuming IWebViewUpdateService.
Bug: 319292658
Test: m RunSettingsRoboTests
Change-Id: I75a3788aeac9757ce423454c4b6a2a63f5c4f4b2
Robolectric can support framework private classes now, so there is no
need to use wrappers.
Bug: 76167422
Test: robotests
Change-Id: I034a9f0a9856348bff491f2e9b2b1f7d682ab942
- Create new WebViewAppPreferenceControllerV2
- Deprecate WebViewAppPreferenceController
- Create controller inside the DashboardFragment
- Port logic from DevelopmentSettings into the controller
Bug: 34203528
Test: make RunSettingsRoboTests -j40
Change-Id: I45bb7beb98ef9c7a998f64e81d180613c795ed3a
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.
Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
Now that we are changing the WebView package mechanism so that a package
can only be used as WebView implementation if that package is enabled
for all users of the device we need to tell the user why a package can't
be chosen as WebView implementation.
With this CL we do so in the 'Set WebView Implementation' Developer
Setting.
We code for the WebView implementation Developer Setting is now based on
the same code as that of the Debug App Developer Setting.
Bug: 32894154
Test: Ensure WebView Implementation setting shows correct packages.
Test: Ensure WebView Implementation setting shows correct descriptions
for why a package is not usable - including the case where packages are
disabled/uninstalled for a second user.
Test: Ensure the summary for the WebView Implmentation setting is
updated after changing WebView package.
Test: Ensure the WebView package Activity
(Settings.ACTION_WEBVIEW_SETTINGS) is similar to the Dev Setting.
Test: ensure non-admin user cannot start WV-picker activity through
'adb shell am start -n com.android.settings/.WebViewImplementation'
Change-Id: Ia6e6e9e12ce8f8f45ec539807cd0c6479acb8ecb