This CL adds a pencil/edit icon at the top of the mobile network details
page. When clicked, it brings up a dialog that allows the user to set
the display name used for that mobile network - this is most useful in
multi-SIM situations. This dialog also displays the mobile network
operator name and phone number which can help the user keep straight
which one they are renaming.
Bug: 122670283
Test: make RunSettingsRoboTests
Change-Id: Ifd63cfb66ce743bd5ba8a06b52229f06ed56b7bd
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
This adds prefs to the the details page for mobile network subscriptions
that appear in multi-SIM mode. They show which subscription is set as
the default for calls and SMS respectively, and let the user change what
the default is for each. They can be set to either a specific
subscription, or set to "Ask every time".
Bug: 122670283
Test: make RunSettingsRoboTests
Change-Id: Id2b23e4b5c3d1b5c04b5766e73fc8202c05d8f75
As a part of the work for subscriptions UI improvements, we want to show
data usage information at the top of the mobile network details page,
and those details need to be specific to the particular subscription
we're showing details for, even if that SIM isn't the current default
one. This is useful for seeing data usage across your SIMs in dual-SIM
devices.
This CL adapts our already existing DataUsageSummaryPreferenceController
class so that if can be used on any fragment instead of just the
DataUsageSummary one, and changes it to take an explicit subscription
id instead of assuming it should use the default one.
Bug: 122670283
Test: make RunSettingsRoboTests
Change-Id: I41e307b0f32580c73b08adec7cabf01c96d7e835
Replace getActiveSubscriptionInfoList() with
getActiveSubscriptionInfoList(true) so that settings will not show
hidden subscriptions to the user in various pages.
Bug: 121396526
Test: manual
Change-Id: I717999fed7d3a5a037914239694bef52df7c6207
When a device has multiple SIMs, at the bottom of the SIM details page
we show a chooser with an icon for each SIM card. This UX design is
being supplanted by the new network and internet v2 design where there
is a list of networks you can get to from the Network & internet
homepage. So when the v2 mode is turned on, we don't want that bottom
navigation to appear.
Bug: 116349402
Test: visual (will remove existing tests for this feature eventually)
Change-Id: I9cae479a1f4e689adcc4f4262661b10edbbbf2d3
When a device supports simultaneous connection to multiple mobile
networks, we want the "Mobile network" entry on the Network & internet
page to list the number of active SIMs and when clicked, go to a page
that lists them all.
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: Ie642d7801cda07dcbbe74d42c234db6605566be4
In ag/5386198 we added a flag to turn on the new features of the network
and internet settings page, but that flag resets to the default value
(currently false) every time you reboot, which is annoying and hostile
for dogfooders. This CL makes the flag persistent.
Bug: 116349402
Test: manual / should be covered by existing tests
Change-Id: I098073e81feb199751e967a9652bec6a6445b95e
Change Availability Status to UNSUPPORTED_ON_DEVICE when device doesn't
support VoWiFi.
Change-Id: I8ac501cf7442f1cd7d41f61d2db912d82a9e8c25
Fixes: 120806624
Test: manual and robotests
The PreferenceChangeListener was removed from aosp/779634, when the
selected apn is changed, the result is not saved to the database.
In this CL, we add the PreferenceChangeListener back.
Bug: 121229775
Test: build & manual test
Change-Id: Ief1a2e05c072e5eff8060731b044c19878d346be
In some cases we don't set value for listPreference, so we need to set
a default one. This is a bug from code migration.
Change-Id: I8072b2a288a6a1254dceabea963f19459b0a9011
Fixes: 119770064
Test: RunSettingsRoboTests
This CL does 2 things:
-Makes the MobileNetworkActivity class capable of showing details for
"available" in addition to just "active" networks. This is useful for
dual-standby devices where one subscription is active and another is
registered but not currently active. It also changes the title of this
screen to be the network display name (defaults to the carrier name
but can be customized by the user) instead of the generic "Mobile
network".
-Wires up the subscription entries in the multi-network header (which
only appears when a device has multiple subscriptions) so that taps on
a subscription preference bring you to the MobileNetworkActivity screen
to show details for that network.
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: I0e985652c1d8ec3c597b6b6e4426d222e2ad5352
The Network & internet page will have a dynamic header at the top when
users have more than one mobile subscription, showing information about
connectivity.
This CL adds a preference to this header when there is a wifi connection,
showing the same information as on the wifi-page (connection strength,
speed rating if available, etc.).
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: Ia80d6e236a4996b501372ac4cd8e46ba6c5f8841
The new UX for showing multiple active mobile plan subscriptions (SIMs,
eSIMs, etc.) needs a header at the top of the Network & internet page
that shows wifi status and a list of active mobile subscriptions in the
form of one Preference per subscription.
This CL adds display of the mobile subscriptions to this header. It does
not yet show the correct summary text or do anything when you tap on
them - that will be coming in subsequent CLs. Also, since adding a
variable number of items to the top of the page messes up our current
strategy of having a fixed number of hidden items at the bottom based on
overall item count, this CL just makes all items visible. Subsequent CLs
can restore this behavior with dynamic adjustment.
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: Ibfadf8cb61f6f5aff6ce38b7974267b1e4ddc719
APN fetching logic has been encapsulated in URL_SIM_APN_LIST API in
TelephonyProvider
Bug: 115709816
Test: Live network test
Change-Id: I735bc50e912dfbec0903fbcafdc4d6eaa6ccfc7b
Merged-In: I735bc50e912dfbec0903fbcafdc4d6eaa6ccfc7b
For the new multi subscriptions UX, in several places we need to listen
for both subscription changes (eg a sim card was inserted or removed),
as well as airplane mode changing state. This combines those in one
helper class that can be reused.
Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: Ibcbb669ae291a917f89735dbda043742efaa58c9
In several places implementing the new changes for better UX with
multiple mobile subscriptions, we need a bit of code that filters the
results coming from the SubscriptionManager. This CL adds that common
code in a util class that will be used in later CLs.
Bug: 116349402
Test: RunSettingsRoboTests
Change-Id: Ie9376629604ac2c4a2f15123edc380c5999f2f83
Only enable mobile data for one SIM for simplicity. Which means When
turning on mobile data on non-default sub, pop a notification to user
that it will turn off data of the other one.
Bug: 120515679
Test: manual and unittest
Change-Id: I7c190bb70d771b7f280c246038a380e4fc7338a3
This adds the skeleton of a header section which will only appear when
the device has two or more active mobile subscriptions. Subsequent CL's
will add the actual logic implementing it.
Also this moves up the airplane mode toggle higher up on the page, and
removes the proxy selector entry (which has been unconditionally
disabled by the ProxyPreferenceController for a while).
Bug: 116349402
Test: manual (this is mostly a layout change - subsequent changes will
have actual logic to test for the subscriptions header)
Change-Id: Iaee338d5c13e05d3c2d9d04872a94cf90e5da588
- Replace new SliceAction with SliceAction.createDeeplink() or
SliceAction.create()
Test: make RunSettingsRoboTests
Change-Id: Ied34469d2220d8220a2dcc6c2fb4d32dd9cd9b8c
Fixes: 119879284
APN fetching logic has been encapsulated in URL_SIM_APN_LIST API in
TelephonyProvider
Bug: 115709816
Test: Live netwrk test
Change-Id: I735bc50e912dfbec0903fbcafdc4d6eaa6ccfc7b
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