Commit Graph

74 Commits

Author SHA1 Message Date
Yanting Yang
863d2e50e7 Remove silky flag for searching and help menu
Bug: 183670633
Test: robotests
Change-Id: Ia62936e9f48a111ab36d74b852ec04090e42039a
2021-06-02 16:49:27 +08:00
Bonian Chen
234b698fb2 Revert "[Settings] Support getSystemService(Class<T>)"
This reverts commit d5ccde31a8.

Reason for revert: failure on test cases

Change-Id: I0a179a6ebb5ef1dec566ce6e8facd5f3b82d7c8a
2021-03-30 00:51:15 +00:00
Bonian Chen
d5ccde31a8 [Settings] Support getSystemService(Class<T>)
Add getSystemService(Class<T>) to align the capability with framework
part.

This is a back port from aosp/1639943, aosp/1645152 and aosp/1648047

Bug: 179640862
Test: local
Change-Id: I035db55a71f94000ca35f8d71f03c19208423c73
2021-03-24 00:59:46 +08:00
Janis Danisevskis
5cef487b4b resolve merge conflicts of d42d9a41f6 to sc-dev
Change-Id: Ifa6a4af09d7cd45773a8c057416ab90fac23061e
2021-03-17 19:09:29 +00:00
Bonian Chen
203f0fe89d [Settings] Code refactor - remove unused import lines
Remove some unused import lines within source code based on
https://source.android.com/setup/contribute/code-style

Bug: 182867979
Test: build pass
Change-Id: I76dbcfa9e5b435b2838401dfee15b12f472d07d0
2021-03-16 10:24:24 +00:00
Zoey Chen
b8a639f8fd [Settings] Use TelephonyManasger.registerTelephonyCallback instead of TelephonyManager.listen
Bug: 175270951
Test: make and atest
Change-Id: I15e1a199e6a34914db97055bfea9392c5bbdc9c6
2021-03-12 19:27:05 +08:00
Stanley Wang
86cc0579f3 Replace the SwitchBar with MainSwitch.
- Update wi-fi calling switch.
- Update the switches in Accessibility

Fix: 178673860
Fix: 177968565
Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: Id10e6a110f418ea500a2eaf3c54752bef4f36507
2021-02-23 16:21:52 +08:00
Jeremy Goldman
9d87cd9126 SubscriptionsPreferenceController shows the unique sim description.
Bug: 148303118
Bug: 150370656
Test: atest -c SubscriptionsPreferenceControllerTest
Change-Id: I041536fe0148087a068c6000383b382b0ff4e17c
2021-01-22 07:02:52 +00:00
Mill Chen
b126caa0e7 Remove both help and search icons from toolbar of wifi calling
On Android S, both help and search icons will be removed from each
toolbar of subsetting page. Using a feature flage to turn on/off these
menu items. After the collaping toolbar feature rolled out, the option
menu of toolbar will be removed entirely.

Bug: 177640645
Test: visual verified
Change-Id: I005fe85f23f8d28b3a6ca273ddb86ad3390ee0da
2021-01-15 19:01:03 +08:00
Jeremy Goldman
cd669b84bc WifiSliceHelper and associated test uses immutable PendingIntent flags
Bug: 172203646
Bug: 172810495
Test: atest -c WifiSliceHelperTest
Change-Id: Ie4de9517461a56b2328e8506d9eb640914924822
2021-01-12 16:49:36 +08:00
Ashwini Oruganti
2f349da025 Bulk apply PendingIntent.FLAG_MUTABLE_UNAUDITED.
We've been working hard to require PendingIntents explicitly declare
if they allow their contents to be mutated or not, and to finish
landing that work this change applies the new FLAG_MUTABLE_UNAUDITED
flag to all remaining code locations until they can be manually
inspected.

Bug: 160794467
Test: manual
Change-Id: I7b9ef5dcd35187facef1ec424589b81f834f23c0
2021-01-08 13:14:05 -08:00
Jeremy Goldman
9e1e47fef7 Add goldmanj to settings owners files.
Test: N/A, code not edited.
Change-Id: I23a64e52d01ebeda1509d1e207200d868444d955
2020-09-11 18:55:46 +00:00
changbetty
0383d76a5e Add setPackage for PendingIntent in SliceHelper
Bug: 151645867
Bug: 151646375
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiCallingSliceHelperTest
      make RunSettingsRoboTests ROBOTEST_FILTER=Enhanced4gLteSliceHelperTest
Change-Id: I33c1333f9b5472cdb962b272f6be52a2d2959376
Merged-In: I33c1333f9b5472cdb962b272f6be52a2d2959376
2020-05-12 17:56:48 +08:00
Yanting Yang
96127fe621 Remove sub-text from slice builder
We would like to remove all sub-text from Settings Search. But slice
view does not support API to configure the sub-text visibility.
Therefore, the only way is to remove the sub-text from slices directly.

Since Settings slices are also invoked by other apps, we can not
directly remove the sub-text.

Finally, we decide to check the caller's uid. If it comes from Settings
Search, we will return the slice without the sub-text.

Bug: 143118037
Test: visual, robotests
Change-Id: Iac72f1683a2c930592634e0599058890d86f669d
2020-04-28 14:15:16 +08:00
Bonian Chen
ce92b0efb7 [Settings] Add more owner
Add more owner for code review.

Bug: 0
Test: none
Change-Id: Idf49638e4599b95fe39fe127e5b965cf724f5d7c
2020-04-10 13:13:08 +08:00
Bonian Chen
7520adccee [Settings] Apply WifiCallingQueryImsState
Apply design of WifiCallingQueryImsState to source code which accessing
WifiCalling.

Bug:  140542283
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingSettingsForSubTest
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingPreferenceControllerTest
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingSettingsTest
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingSliceHelperTest

Change-Id: I0db966742d63cfe9a1ef4e1b06f6b5c81f681927
2020-03-31 14:40:18 +08:00
Bonian Chen
21475ae6c6 [Settings] Code Refactor
Code refactor in order to support auto testing

Bug:  140542283
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingSettingsForSubTest

Change-Id: I2427732435b59d7359a102e0dd56317ac6a024b4
2020-03-31 03:46:45 +00:00
Bonian Chen
c134ef08d4 [Settings] Replace ImsManager#isWfcEnabledByPlatform()
Replace ImsManager#isWfcEnabledByPlatform().

Bug:  140542283
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingSettingsForSubTest
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSettingsTest
Test: m RunSettingsRoboTests -j
ROBOTEST_FILTER=WifiCallingPreferenceControllerTest

Change-Id: I85907efb39aecdb3fb18cacf11ce4510b898edc4
2020-03-30 03:34:01 +00:00
Bonian Chen
fedd8fa7ef [Settings] Avoid access hidden constant ACTION_IMS_REGISTRATION_ERROR
Replace ACTION_IMS_REGISTRATION_ERROR by
ACTION_WFC_IMS_REGISTRATION_ERROR.

Bug: 140542283
Test: build pass
Change-Id: I9c54eb63a0df3fde38965ee7e2ae46cc1b7efd47
2020-02-14 21:25:52 +08:00
Bonian Chen
ced9489549 [Settings] Code refactor for Wifi calling IMS API
Replacing logics of
ImsManager#isWfcEnabledByPlatform() &
MobileNetworkUtils#isWfcProvisionedOnDevice()
into WifiCallingQueryImsState#isWifiCallingProvisioned().

Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSliceHelperTest
Change-Id: I68462368669b81e10d09bbb93e74e23ea9a1f446
2020-02-10 00:56:51 +08:00
Bonian Chen
a8f14cb11e [Settings] Apply ImsQueryProvisioningStat to WFC
1. Code refactor
2. Apply ImsQueryProvisioningStat class to WFC's use case

Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingPreferenceControllerTest
Change-Id: I8a09264f83b9fc4fce3f79ec3aeb6ae757b004e4
2020-02-05 16:55:17 +08:00
Bonian Chen
c4413a850f [Settings] replace isNonTtyOrTtyOnVolteEnabled() and isWfcEnabledByUser() in WFC
1. Code refactor
2. Replace ImsManager#isNonTtyOrTtyOnVolteEnabled() by combination of
   TelecomManager#getCurrentTtyMode() and
   ImsMmTelManager#isTtyOverVolteEnabled()
3. Replace ImsManager#isWfcEnabledByUser() by
ImsMmTelManager#isVoWiFiSettingEnabled()

Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSettingsForSubTest
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSliceHelperTest
Change-Id: I57c91a095fc4d454d92e8d78e0b647b4f098c6a3
2020-01-22 00:24:16 +08:00
Bonian Chen
ff1863451f Merge "[Settings] replace isNonTtyOrTtyOnVolteEnabled() in WFC" 2020-01-21 16:11:07 +00:00
Bonian Chen
2c0088be68 Merge "[Settings] apply WifiCallingQueryImsState" 2020-01-21 14:57:10 +00:00
Bonian Chen
72717cb537 [Settings] replace isNonTtyOrTtyOnVolteEnabled() in WFC
1. Code refactor
2. Replace ImsManager#isNonTtyOrTtyOnVolteEnabled() by combination of
   TelecomManager#getCurrentTtyMode() and
   ImsMmTelManager#isTtyOverVolteEnabled()

Bug: 140542283
Test: manual
Change-Id: Ia5179ee1a23f054899bc74c796542bae40cdc8d5
2020-01-21 22:40:33 +08:00
Bonian Chen
a498eae245 [Settings] apply WifiCallingQueryImsState
1. Code refactor
2. Apply WifiCallingQueryImsState to more WifiCalling classes

Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSettingsForSubTest
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingSliceHelperTest
Change-Id: Idd4935a6d8ceed77c15e90f96781014d1940a427
2020-01-21 19:33:16 +08:00
Bonian Chen
106ac9b648 [Settings] Allow more user to take responsibility
1. Add owner to wifi calling folder
2. Add songferngwang and tomhsu to telephony part

Bug: None
Test: Not required
Change-Id: I455685eb26df69d929ff3ed3c26ce84aa5f6b1f8
2020-01-21 18:16:19 +08:00
changbetty
ebe36cf96c [Mainline] To use @SystemApi to replace non-formal APIs for mainline
- getResourcesForSubId(Context, int, boolean)
      - @SystemApi getResourcesForSubId(Context, int)
    - isUsableSubIdValue(int subId)
      - public isUsableSubscriptionId(int subId)

Bug: 147206736
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ResetNetworkTest
      make RunSettingsRoboTests ROBOTEST_FILTER=ResetNetworkConfirmTest
      make RunSettingsRoboTests ROBOTEST_FILTER=CellularFallbackPreferenceControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=WifiCallingSettingsForSubTest

Change-Id: I1a67db80b114a438afda7d45af90e54af38703c3
2020-01-08 22:06:26 +08:00
Malcolm Chen
26e5dbdbfd Mainline: remove usage of hiddepn API SubscriptionManager#getPhoneId
Bug: 140908357
Test: build
Change-Id: Idaa206c7659717a269738c0121a31d957f7d90d0
2019-12-16 11:43:00 -08:00
Torbjorn Eklund
4f44b44168 Consider subId when loading Wfc string resources
Consider subId when loading string resources in screen
WifiCallingSettingsForSub and Wi-Fi Calling slice.

This ensures that correct string resources is loaded in multi sim
scenario when operators are using customized strings.

Bug: 129893058
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiCallingPreferenceController
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiCallingSliceHelper
Change-Id: Ia5b763d4b59f7e738cb741b778bb859884a85198
2019-11-27 14:35:07 +01:00
Pooja Jain
812f8e9065 IMS: Grey out Wifi calling option when either sub is having call.
The WifiCallingSettingsForSub was not checking for call state reported
by telephony manager, hence, when call was on other sub, the option was not
getting greyed out.
Use the TelephonyManager API to fetch callstate.

Test: Manual

Bug: 130706399
Change-Id: Ib4b0e1191c83e23377ccf8ed013252728ef9dd95
2019-11-25 12:10:03 +05:30
Bonian Chen
cacf047daa [Settings] Fix conflict of AOSP merge on wifi call
Merge for fixing conflict of Ib4b0e1191c83e23377ccf8ed013252728ef9dd95

Bug: 144960427
Test: build pass
Change-Id: I2979a9a2ee1bc690486e25b7d470cf905cf02d17
Merged-In: Idb063bdab3d3b11c348804c1c0ecb268cca3068e
2019-11-22 20:38:13 +00:00
Antony Sargent
46d819272a Check isWfcProvisionedOnDevice in WifiCallingSettings
On the SIM details page, the preference leading to a page for
configuring wifi calling will appear based on the results of the
MobileNetworkUtils#isWifiCallingEnabled helper function. That helper
uses the ImsManager to check several conditions, among them both
isWfcEnabledByPlatform and isWfcProvisionedOnDevice.

The page for configuring wifi calling has a tabbed UX, with one tab for
each active subscription that supports it. The WifiCallingSettings class
gets a list of the active subscriptions to determine which tabs to show,
and removes any that don't support wifi calling, but was only using the
isWfcEnabledByPlatform test to do so. This is a problem because the code
for showing the contents inside the tab, in WifiCallingSettingsForSub,
includes a sanity check of isWfcProvisionedOnDevice and calls finish()
if that returns false.

What this meant in practice is that if you happened to have 2
subscriptions where one returns true for both isWfcEnabledByPlatform and
isWfcProvisionedOnDevice, but the other only returned true for
isWfcEnabledByPlatform, then you'd never be able to succesfully use the
wifi calling page at all because the tab for the subscription you
*aren't* trying to configure would always call finish() early.

The right long term solution to this problem is probably to remove the
tabbed UX entirely from this page, since we probably don't need it given
the overall new multi-SIM UX. But there may still be legacy uses and
that is likely a bigger change than we want to make right now.

As a stopgap, this CL just adds a check of isWfcProvisionedOnDevice to
the code for filtering out ineligible subscriptions from the tabbed
interface, which we should have always had anyway.

Fixes: 135591718
Test: make RunSettingsRoboTests
Change-Id: I656c3d3fb30cb6fabcb86685eae38c5f0cd0c6f2
2019-06-25 14:16:53 -07:00
Brad Ebinger
6acceb3cd1 Merge "Fix issue that user can't edit WFC mode for SIM2" am: d2727d5d9f
am: c91d33798b

Bug: 117193148
Test: manual CP
Merged-In: Icb3bd924f9e8e3e2e82845ab85ef25c2e38e13dc
Change-Id: Icb3bd924f9e8e3e2e82845ab85ef25c2e38e13dc
(cherry picked from commit ac4a495fc2)
2019-04-11 00:37:37 +00:00
Antony Sargent
02db2ef9b6 Go to the correct subscription in WifiCallingSettings
For subscriptions that support wifi calling, we have a preference on the
mobile network details page which leads to a Wifi Calling page. That
page already supports the concept of multiple subscriptions with a
header strip containing a tab for each subscription that supports wifi
calling. However, we were not necessarily selecting the *correct* tab
when going to this page. So you might be viewing the mobile network
details for subscription B and click on "Wifi Calling", only to land on
the page with the tab for subscription A selected.

This CL fixes the problem by adding an extra with the current
subscription id to the Preference's intent in
WifiCallingPreferenceController, and then reads that extra in
WifiCallingSettings and uses it to select the appropriate tab.

Fixes: 117135894
Test: make RunSettingsRoboTests
Change-Id: I3aec30072712247d14fe0fb6b61207535f9e981c
2019-04-09 16:08:04 -07:00
Hao Zhang
ec20de3eba Show the disclaimer for WFC emergency call limitation
The emergency calls might not work properly via wifi calling, especially
in areas with no 2G/3G coverage. Display the disclaimer for the this
limitation when a user enabled the wifi calling setting.

Test: manual - Checked that the disclaimer for emergency call limitation
is shown when changing wifi calling setting to turned on.
Test: auto - Passed EmergencyCallLimitationDisclaimerTest.
Bug: 68115846

Change-Id: I881d479c1e02525ac614c66594637a5e0347d70c
2019-04-01 17:09:41 -07:00
Yong Shi
a37337349c Show the disclaimer regarding WFC location privacy policy
In some countries the rules is very strict about responsibility and
liability around location data during emergency calls. The purpose of
this feature is to notify end user that the location information will
be shared for calls over wifi calling.

Test: manual - Checked that WFC locatopn privacy policy is shown when
changing wifi calling setting to turned on.
Test: auto - Passed LocationPolicyDisclaimerTest.
Bug: 67872298

Change-Id: I03895743fb8da95269069ad7eda9a7b3e282857e
2019-03-18 20:42:04 +00:00
manabu, shimoda
9fae73915c Base implementation of WFC disclaimer UI
Test: manual - Check that no error occurred when changing the wifi
calling settings to turn on.
Test: auto - Passed WifiCallingSettingsForSubTest,
WifiCallingDisclaimerFragmentTest and DisclaimerItemListAdapterTest.
Bug: 67872298

Change-Id: I789f530d3e16baa6e56feaa4269f6696976f747e
2019-03-14 14:58:20 -07:00
Fan Zhang
2014d16e46 Fix robotests
Fixes: 128536554
Test: rerun robotests
Change-Id: Ife81f9d161fc416a63a9b2f04ce2ae4f9a1e74db
2019-03-13 14:31:43 -07:00
Hall Liu
843290ccb8 Merge "Add description for Wi-Fi calling mode" 2019-03-12 01:40:43 +00:00
Kazuya Ohshiro
c449048ac1 Add description for Wi-Fi calling mode
Replace the view of dialog with custom view that adds description
as summary.

Test: manual
Bug: 34793636
Change-Id: If9792b0a35c59c1260176b4b2c62107861de73b5
2019-03-11 13:21:51 -07:00
Kitta Koutarou
994d27a2a5 WFC roaming mode setting can not be used with a fixed value
WFC roaming mode setting can not be used with a fixed value because it
is changed as WFC home mode changes if
KEY_EDITABLE_WFC_ROAMING_MODE_BOOL is false.

To solve this issue, separate the WFC mode setting of home and roaming.
These can switch behavior by new carrier config
KEY_USE_WFC_HOME_NETWORK_MODE_IN_ROAMING_NETWORK_BOOL.

Test: manual - Checked that WFC roaming mode is hidden if new config is
true.
Test: manual - Checked that WFC roaming mode is also changed when
change the WFC home mode if new config is true.
Test: auto - Passed WifiCallingSettingsForSubTest.
Bug: 79666081

Change-Id: Ib2363c5d50f5231cc89f287d760ca8728b02b249
2019-03-06 09:49:25 -08:00
tmfang
8b414c9a14 Fix some test cases fail
Test: robo test
Fixes: 125599276
Change-Id: I4b1b15f69ff3021e4330bed49ac95ea871b98e92
2019-02-22 17:37:04 +08:00
Youming Ye
da9e92c4f7 Merge "Fix issue that the wifi calling text cannot be customized based on sim" 2019-02-22 01:55:59 +00:00
Torbjorn Eklund
69dbf4bf84 Close Wi-Fi Calling screen if provisioning status changes to disallow
Starts to listen for provisioning changes in Wi-Fi Calling screen and
closes the screen if the Wi-Fi Calling provisioning status changes to
disallow.

This prevents the Wi-Fi Calling screen from being kept open if the Wi-Fi
Calling provisioning status is changed to disallow while the Wi-Fi
Calling screen is open.

Bug: 119389855
Test: make RunSettingsRoboTests \
ROBOTEST_FILTER=WifiCallingSettingsForSubTest
Change-Id: I2af91c3734274f0aea942a8bb894d6f4ce295354
2019-02-12 15:49:12 -08:00
Wenting Xiong
af5c05392b Fix issue that the wifi calling text cannot be customized based on sim
Some carriers have requirements that the wifi calling text should be
customizable. However, the resources for the wifi calling text are
not obtained based on sim. So it cannot be customized per sim for multi
sim device. To solve this issue, obtain the resources with specified
sim.

Test: manual - Checked that the wifi calling text could be customized
based on sim.
Bug: 117257109

Change-Id: I6b3f6b06c9cc984ee6a68a19ae317b5d1d4e48e2
2019-02-06 13:16:12 -08:00
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00
Malcolm Chen
14dde50c3a Don't show hidden Cellular subscription in Settings.
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
2019-01-16 00:21:30 -08:00
Raff Tsai
626c6e0b17 Replace SliceAction deprecated method
- Replace new SliceAction with SliceAction.createDeeplink() or
SliceAction.create()

Test: make RunSettingsRoboTests
Change-Id: Ied34469d2220d8220a2dcc6c2fb4d32dd9cd9b8c
Fixes: 119879284
2018-12-01 06:21:01 +08:00
Fan Zhang
53f75f0df9 Move all custom slice uris to a registry class.
Change-Id: I192320f95ac81d14c8891ce2531d603912e59f56
Fixes: 119776308
Test: robotests
2018-11-29 16:41:21 -08:00