On the Network & internet page, we have a "Mobile network" pref that in
single-SIM mode leads to a detail page for the current SIM. In multi-SIM
mode it has more complicated behavior (leading either to details about
the current subscription if there is only one, or a list of
subscriptions if more than one).
One of the things we wanted to add was a shortcut to add another eSIM
subscription. So this CL adds a plus button control on the right of the
preference which leads to a flow to add another mobile subscription via
the eSIM manager.
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: I38e0031e3bd603e93c45dcb4557750e7bc1b8b5a
The issues is that TimeZoneData is being loaded with LoaderManager on
every fragment's onCreate(). At the same time this fragment has
onActivityResult() handler that accesses TimeZoneData and relies on the
fact that it has been already initialized prior this call. So when you
enable "Don't keep activities" mode, the TimeZoneSettings fragment [1]
that holds TimeZoneData is immediately destroyed after launching time zone
picker fragment [2] (which result [1] waits for), and when android calls
onActivityResult() for [1] (after time zone has been picked in [2]),
Android has to recreate [1] from scratch. So you get onCreate() called and
immidiately after that onActivityResult() called, and at this point we get
the crash, because the loader hasn't finished yet and onActivityResult()
tries to access uninitialized mTimeZoneData.
This CL fixes this crash issue by postponing
mTimeZoneData.lookupCountryTimeZones call until mTimeZoneData is loaded
by loader. It is done through saving data intent in onActivityResult()
and calling onZonePickerRequestResult() when time zone data is loaded.
Bug: 112351583
Test: m Settings droid successfully builds, manual testing with "Don't
keep activities" mode enabled
Change-Id: Id30d36dc17a0de96ba871f9d0f4a2686479d0eeb
According request to sort the notification channel by average
weekly sent count in descending.
Bug: 119831690
Test: visual, robotests
Change-Id: I96786b077a37dcbc53606f8d98998e01e15b674d
When there is no need to show filter component,
we don't need to set an extra padding top.
Test: robotest, visual
Change-Id: Ieaa65ed9785a06f0737aefaf102d0c857002bbdd
Fixes: 123037802
1. set fragment icon for WifiDppChooseSavedWifiNetworkFragment
2. set fragment icon of success for WifiDppAddDeviceFragment
All Wi-Fi DPP fragment icons are VectorDrawable of instinct size
24dp draw on a 48dp canvas. Except for ic_devices_check_circle_green,
it's a LayerDrawable of different size. I dynamically change ImageView
layout width & height between these 2 different kind of drawable.
Bug: 122982132
Test: manual test
Change-Id: Idab8cd8b0798363e447da00dc6bc68a86498b8be
Framework change intent design from sticky to non-sticky due to
location sensitive data protect. Use APIs to get information when
activity resume.
Intents from sticy to non-sticy:
WifiP2pManager#WIFI_P2P_CONNECTION_CHANGED_ACTION
WifiP2pManager#WIFI_P2P_THIS_DEVICE_CHANGED_ACTION
Bug: 77228252
Test: Manually test Wi-Fi Direct settings
Change-Id: I115515d6832c5c5f290ef9f757ca94afa4e9f1bd
Get the statusbar height dynamically to fix this problem in notch mode.
Change-Id: I4ca0427fc2556f1fb5f868118c5207fdfa035c59
Fixes: 123215804
Test: robotest
This change adds a footer to the current dashboard to show some
descriptions when the whole module is turned off.
Bug: 119221883
Test: make RunSettingsRoboTests
Change-Id: I9788d4c64b06deb099a43e8db7eecab20a85f494
Uncheck the global switch will hide the preference controllers and force
all apps to use system graphics driver. This change also add a content
observer to notify all the preference controllers of settings global
changes.
Bug: 119221883
Test: make RunSettingsRoboTests
Change-Id: Ice9ded17c759791a3728c552f79881e2215ac081
The UiDevice methods have a build in call to UiDevice.waitForIdle()
which will block until the UI has not changed for at least 500ms.
Bug: 123382213
Test: atest WifiDppConfiguratorActivityTest
Change-Id: I57539edecfd60f27a061a3ccc263c053ce158855
With multi-user backup, backup will be available or secondary users and profiles too.
1. When there are profile users, this CL changes UI flow A to B
A. Settings Homepage -> System -> Google Backup Settings for primary user
to
B. Settings Homepage -> System -> Profile Select Dialog -> Google Backup Settings for chosen profile.
Change done as per https://g3doc.corp.google.com/company/teams/apps-android-settings/howto/ia.md?cl=head
2. Functionality remains the same when there are no profiles (BackupSettingsHelper, BackupSettingsContentProvider)
3. Also, enabled Backup Settings for secondary users. (Previously, backup settings were only shown for
system user).(SettingsGateway)
Bug: 121198738
Test: 1) System -> Backup -> shows Profile Select Dialog -> Backup page for selected profile
2) On secondary user without profile, System -> Backup (with summary) -> Backup page for secondary user.
Change-Id: I6e21279978a5dfc6eca6f5a34bbfc15a34eac68b
Remove addManagedUser() and use default shadow for the same purpose.
Test: make RunSettingsRoboTests -j40 ROBOTEST_FILTER=Redaction
Change-Id: I2f86bd51bccbde23a8a37d19b28e30cadb2b9f93
- Displaying/hiding Emergency info, branded account, device header
widget are now driven by config flags
- Also refactored controllers to use BasePreferenceController
Change-Id: Ie601ebf689e0744c6a05a2cca5513fa43ef355e0
Fixes: 119607340
Test: robotests
This reverts commit 8c6d8daaf0.
Reason for revert: <Enabling feature by default. Global flag moved to OEM
configurable overlay instead.>
Bug: 123408542
Test: unit tests
Test: Manual test to verify dev option is gone
Change-Id: Iae667a331b5d4fb4cb6fe07077eb9f3954f3089e
This allows users to toggle non-exclusive roles, such as the temporary
SMS access (non-exclusive) role.
Bug: 110557011
Test: atest MorePreferenceControllerTest
Change-Id: Id9c0338ef2996aaa741c3da8104e867f32050f3a