Bug: 31852835
Test: manual - verify unrestricted as regular user, but that a password
is required in demo mode.
Change-Id: I60f95ccbb10ba728b384b9c8c2ae723934fb2928
When we're failing to connect to a wifi access point due to an incorrect
password, we want to allow an intent from a notification to open up the
wifi settings page and bring up the dialog for entering a different
password. We already have code in settings to do this for not-yet-saved
access points, so this CL just changes it slightly to also allow it for
saved access points.
Unfortunately WifiSettings can't be tested with Robolectric due to it
not supporting PreferenceScreen, so this adds a test to
WifiSettingsUiTest. There were some existing test failures in that file
which I've fixed while I was in there:
-The TestAccessPointBuilder class wasn't being found at runtime because
it was getting stripped out at build time due to not being used in
settings.
-The changingSecurityStateOnApShouldNotCauseMultipleListItems test was
asserting that we don't end up with multiple entries for the same SSID
in the access point list when changing the security state for the AP,
but it was accidentally passing multiple AP's with the same name the
first time.
Bug: 33245941
Test: runtest --path WifiSettingsUiTest.java
Change-Id: I929ca6892242059df157c01d6e9ea30e8d1c5e78
- DevSetting shouldn't add switchbar listener if it's a Monkey test run
- DevSetting shouldn't remove switchbar listener if it's not registered
- Refactor some switchbar logic in order to create test
Change-Id: Ie65ff9b04778075789010169039393bd0551acfb
Fix: 64021498
Test: robotests
Check whether the wallpaper picker is enabled in
WallpaperPreferenceController.isAvailable() instead of always returning
true.
Change-Id: I1afba6639a2b94f9d57f546c220f417092f92387
Merged-In: Ie3a4a68b728ccab1a7aa50c0018a5153907c49b4
Bug: 63939450
Test: make RunSettingsRoboTests
If we try to set an inline result when it has not yet been
accessed in settings, nothing is read from Settings.
Thus, include a default value for a fallback.
Manual merge for: ag/2588219/
Change-Id: I3b8eea4f82764852cea642db4455ba57f10a7d37
Fixes: 63955012
Test: robotests
Check whether the wallpaper picker is enabled in
WallpaperPreferenceController.isAvailable() instead of always returning
true.
Bug: 63939450
Test: make RunSettingsRoboTests
Change-Id: Ie3a4a68b728ccab1a7aa50c0018a5153907c49b4
This is needed for invoking some wifi/connectivity API's. For example,
we switched over using this permission to determine if an app is allowed
to modify any saved wifi network configuration on the device.
Bug: 64001841
Test: Able to forget networks created by SetupWizard.
Change-Id: I932226a74b12bf726a2445188953b1ec34523cf9
Merged-In: I932226a74b12bf726a2445188953b1ec34523cf9
This is needed for invoking some wifi/connectivity API's. For example,
we switched over using this permission to determine if an app is allowed
to modify any saved wifi network configuration on the device.
Bug: 64001841
Test: Able to forget networks created by SetupWizard.
Change-Id: I932226a74b12bf726a2445188953b1ec34523cf9
(cherry-picked from b0a09304e380645a84651c0de668a78a7beaac3b)
Although there is a security check for IMM#showInputMethodPicker() [1],
any background application can virtually call the method via explicit
broadcast intent to Settings app.
Since showing IME picker from the notification has implemented in
InputMethodManagerService using protected-broadcast [2], the receiver in
Settings app isn't necessary and should be removed to close the security
bypass.
Note that this broadcast receiver stops working from Android-O due to
background check [3].
[1]: I4f0fc21268200c64d12b31ca54416acfbf62f37b
[2]: Id36c8c34159bea8b72557b40bcf024d401f580b6
[3]: https://developer.android.com/preview/features/background.html#broadcasts
Test: The following broadcast intent will not show IME picker.
$ adb shell am broadcast \
-a android.settings.SHOW_INPUT_METHOD_PICKER \
com.android.settings
Fixes: 64008672
Bug: 63644555
Change-Id: Id990c66516c9b3ed7ada6891746ec0e0eecbe545