Add media output panel type to launch media output slice.
Bug: 121083246
Test: make -j RunSettingsRoboTests
Change-Id: Ibf706146430e309fef6cbf0e1e86c2d5b78b50d5
NFC Panel only shows the NFC setting slice, for now.
Title is "NFC", and See More takes you to the Advanced Device Connectivity
page.
Possibly use cases would be for apps that need to enable NFC for their
peripheral, or accessory.
Test: Manual App
Test: robotest
Change-Id: I8538fd0e4501fb83672418591616f28bf2436645
Fixes: 120142616
Additional clean-up work related to removal of screenlock dependency
from the credentials installation flow:
* Move the CredentialStorage class to security/ so that Enterprise team
owners could review changes to it.
* Remove the ConfigureKeyGuardDialog class as it is no longer used.
* Remove attempt to unlock KeyStore from VPN settings.
* Remove intents that will no longer be sent from the manifest.
Bug: 120901345
Test: m -j RunSettingsRoboTests
Test: Manual with CtsVerifier
Change-Id: Ia708ede3366892d74c148f3712a63858d5ab53b7
The following Activity classes in the Settings have been marked with
PRIMARY_PROFILE_CONTROLLED = true since work profile was originally
implemented [1].
* Settings$AvailableVirtualKeyboardActivity
* .inputmethod.InputMethodAndSubtypeEnablerActivity
* UserDictionarySettingsActivity
* .inputmethod.UserDictionaryAddWordActivity
This means that even if they are explicitly launched for a managed
profile user, they are always re-launched for the profile owner user
For instance, the following command just ends up launching the system
IME settings for the user 0, not user 10.
adb shell am start --user 10 \
-a "android.settings.INPUT_METHOD_SETTINGS"
In order to enable per-profile IME mode, we need to remove
PRIMARY_PROFILE_CONTROLLED from those classes.
Unfortunately, the settings is baked into ApplicationManifest.xml
hence we canot simply hook it up with the runtime flag
InputMethodSystemProperty.PER_PROFILE_IME_ENABLED. Thus this CL
simply remove PRIMARY_PROFILE_CONTROLLED from those classes, with an
assumption that users basically will not see those Activity classes
running under managed profile users unless per-profile IME flag is
enabled. This is because both LanguageAndInputSettingsActivity and
SettingsActivity are still marked PRIMARY_PROFILE_CONTROLLED=true.
This means that almost all user-visible entry points are still be
running with profile owner's user ID.
Note also that because of Settings redirection implemented with
Settings#CLONE_TO_MANAGED_PROFILE, what are shown on those Activity
classes are basically correct. What they cannot do without enabling
per-profile IME is updating actual secure settings.
[1]: If3ec3866778282219267481b8f419774f7f2c9de
2513851ace
Bug: 120748696
Test: Manually done as follows.
1. adb root
2. adb shell setprop persist.debug.per_profile_ime 1
3. adb reboot
4. Install Test DPC.
5. Enable managed profile with Test DPC.
6. Open "Files" app for the main profile.
7. Tap the search box to show AOSP Keyboard.
8. Long tap the comma key, then "Lauguage" on the "Input options"
dialog.
9. Uncheck "Use system languages" then check "English (UK)".
10. Open "Files" app for the work profile.
11. Long tap the comma key, then "Lauguage" on the "Input options"
dialog.
12. Make sure that "Use system languages" is checked.
13. adb shell am start --user 10 \
-a android.settings.INPUT_METHOD_SETTINGS
14. Make sure there is no Toast message
"You're using this app outside of your work profile".
15. adb shell am start --user 10 \
-a android.settings.INPUT_METHOD_SUBTYPE_SETTINGS
16. Make sure there is no Toast message.
17. adb shell am start --user 10 \
-a android.settings.USER_DICTIONARY_SETTINGS
14. Make sure there is no Toast message.
Change-Id: I6ee1f226a616bb5f802f8e1d3b6f1dbbe492c6e5
PROCESS_WIFI_DPP_QR_CODE for more intuitive naming.
This change also caches the Wi-Fi DPP QR code in activity for
fragment to use.
Bug: 118794978
Test: manual test
Change-Id: I4bdb021883cb21ce7cc56edf656d1eee079359e5
This sidesteps an error saying that the radio
BandMode activity must inherit from an AppCompat
style. Instead the window is now full-screen and
matches the theme of the RadioInfo menu.
Bug: 117571514
Test: manual - open the activity without a crash and
verify that the new style change is effective.
Change-Id: I6e49d731e039709db43dfa6531723781e9e48640
These 2 categories behaves the same, moving suggestions to DEFAULT
can save a PackageManager query in SettingsIntelligence.
Bug: 121158263
Test: manual
Change-Id: I24c84aa61b272120a77bda0ec27b38690f2b4d4d
Change the SettingsPanelActivity to reference the
public API.
Bug: 117804442
Test: robolectric, manual app
Change-Id: I4b128ae9d97c1000fdaa0c3fb5b94f8dc096055f
This partially rolls back ag/5650901. We should revert this change when
dynamic_homepage flag is permanently on.
Change-Id: I5e340421d04bc20c77dd30395fd8522693807954
Fixes: 118444000
Test: manual
- remove all v1 code and the corresponding feature flag switch.
Bug: 117420679
Test: make RunSettingsRoboTests
Change-Id: Ib062c03c671b0f860698f5e5e153ab46d963175a
mIsShowingDashboard is always false, it used to be true when we are
displaying homepage, but now homepage is hosted in a entirely different
activity.
so all related logic can now be removed.
Test: robotests
Misc clean up: remove unused colors
Test: rebuild, color-lint
Change-Id: I1e1628c1e9606c2b7dc40ef3c21d4ed1391a8c03
Framwork will call this activity to start network requesting process.
This activity is simple activity contained NetworkRequestDialogFragment
and any other dialog generated in this process, aka
NetworkRequestTimeoutDialog.
Bug: 117399926
Test: RunSettingsRoboTests
Change-Id: Ib1df28d12427ed3bd7d4b88ec10e52357564c797
Establish the Activity which hosts Settings panels through the
PanelFragment. The Activity's purpose is to validate the intent
data coming in, including:
- Called with startActivityForResult (so we can log who is calling)
- Intent has the proper intent extra to link to a Panel
The fragment takes the Panelable data and builds a Settings Panel.
Each panel will have:
- Title
- List of Slices
- Link to underlying content
The Panelable interface is created to provide all of those datums, and
the new FetureProvider provides the Panelables by linking them with
keys. The keys will eventually become public APIs with CTS tests.For
now, we store them locally.
I included an exmaple panel, the InternetConnectivityPanel which
currently shows Wifi and Airplane mode.
Screenshot: https://screenshot.googleplex.com/c6sv7ZzQ5OJ
Bug: 117804089
Test: make -j40 RunSettingsRobotest
Test: Manual app
Change-Id: I1932f7179cc32088acd6413a736901ddf9651892
WifiDppQrCodeScannerActivity is the activity for user to scan
QR code and add device to a saved network.
Bug: 118797380
Test: manual
Change-Id: If2c8c5ba1620e5584fb47ba7b0ea2bc2d7acb641
1) Fixed the theme for CDCA$InternalActivity to be transparent
2) CDCA only cares about biometrics, which are tied to userId
3) Moved shared methods to a util class
Fixes: 119296586
Test: Followed the steps in comment#1 of the bug linked above
Change-Id: Ie47fc7c3a53dfb7780087937e1ca83287cc52d71
Declare SetupChooseLockGeneric$InternalActivity in AndroidManifest.xml
so that it can be launched properly.
Change-Id: Ia924f759c16d01c17a4f6a99d7c43bf13c0f494a
Fixes: 112706989
Test: atest com.android.settings.password.SetupChooseLockGenericTest
It's faster than tile injection. The fragment comes from Settings
itself, we don't have to use to injection.
Bug: 118168552
Test: robotest
Change-Id: If6a79dd73f8a51dbb21338a40f22dc8b8f8c8cb8
- Create some location icons for different scenario.
- Remove Location in Security page.
- Move Location Setting to top level page.
Test: robotest, visual
Bug: 116628158
Change-Id: I3f57ef49a396877bfbeaefea7dc4f4051e0ccc65