There're 3 VoLTE configuration UIs sharing the same configuration,
but only 1 of them will be displayed.
The 3 classes extending Enhanced4gBasePreferenceController are:
1. Enhanced4gAdvancedCallingPreferenceController
2. Enhanced4gCallingPreferenceController
3. Enhanced4gLtePreferenceController
They're different in the value of getMode().
The design within Enhanced4gBasePreferenceController only allows to show one of them.
Which means, the other two don't need to register for PhoneStateListener and should ignore actions in response to it when receiving callback from PhoneStateListener.
Through detecting the VoLTE configuration mode, some operations could be
avoided.
This fix is targeting to avoid these operations from happening.
Bug: 172987488
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
Merged-In: I56d4900b5bcb189693c99e870b013da97ed283db
(cherry picked from commit d2e22f4cee)
Change-Id: I92e4b84b81622548fb356a4c7af99668bd2a9e00
1. VoLTE UI should gray out during voice call.
2. UI should be invisible when VoLTE mode mismatch.
Bug: 172781455
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
Merged-In: I8b6a212dc727f1ab78f4dd280cb41966b7054180
(cherry picked from commit 227329b2f7)
Change-Id: I1bd239b6434038323a0689e2bc3bf05182bfcd45
Assigning current call state to mCallState right before registering
PhoneStateListener so that the preferences have correct state before
first onCallStateChanged() by initial registration even.
Bug: 166307650
Test: Check the preferences state when onStop() -> onStart()
Change-Id: I861a687497ba4da7a845540fd92ae2b865392d60
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Move some work out of constructor of
EnabledNetworkModePreferenceController.
Which could avoid callbacks before init() been invoked.
Bug: 141833767
Test: make RunSettingsRoboTests -j
ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=EnabledNetworkModePreferenceControllerTest
Change-Id: I11f25d130a746c75184a21a8991177b02ad237f0
Change-Id: I6aa58a8d9d15b1524bf03f425e3eae3a0254593e
Callback from SubscriptionManager and PhoneStateListner may comes in
under the case of Preference not available.
Bug: 141833767
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=VideoCallingPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingPreferenceControllerTest
Change-Id: I50b83b4488d272f6482bde5f09b57d59e6fc27a3
when the user disables VoLTE, UE show alert dialog for 5G disable.
Bug: 151313654
Test: build pass. manual test: UI show alert dialog.
Change-Id: I5ea4d59017b5d9db6f7c3d8d0ffd24d5a2c61457
There were several errors in indexing mobile related sliceable
controllers, which led them not able to display on Panel and as inline
controls in search result.
It's because indexing mechanism is running in a worker thread and trying
to construct each controller instance, but the failed controllers'
constructors need to initilize something in the main thread.
- Give the main looper to the classes which only can be initialized in
the main thread to fix the indexing.
- Guard null pointer exception in SlicesIndexer after fixing the
indexing.
- Use onStart/onStop in AirplaneModePreferenceController to start/stop
listener.
Fixes: 149720345
Test: robotest
Change-Id: Ibe5a8d6cc713eeddf26eceaabc05e6d1faa45507
When disabling eSIM/Fi, CarrierConfig retrieved on that subscription
becomes null and need to perform null pointer checking when accessing
it.
Bug: 149484288
Test: manual
Change-Id: If8a206788407a65c2cb9e5bafe3bc89b93cf63fe
1. Code refactor
2. Apply ImsQueryProvisioningStat class to VoLTE's use case
Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gLteSliceHelperTest
Change-Id: Ie5a56e9b768b9abe88c635e4e5532d72c9ddd1a2
Remove Looper and update of mSubId
Bug: 144542981
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=VideoCallingPreferenceControllerTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=WifiCallingPreferenceControllerTest
Change-Id: Ie6ae5b5914322644f2655e585b03a6b685bbc84a
Replace isVtProvisionedOnDevice() and isVolteProvisionedOnDevice()
by android.telephony.ims.ProvisioningManager.
Bug: 140542283
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gBasePreferenceControllerTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=Enhanced4gLteSliceHelper
make RunSettingsRoboTests -j ROBOTEST_FILTER=VideoCallingPreferenceController
Change-Id: Ie92794b794a6b9f2d9e161ca5f328cd9fa01064a
Add indexable raw data for type 4G_CALLING or ADVANCED_CALL and
set the volte to non-indexable if current type is not volte.
Fixes: 137155154
Test: manual
Change-Id: I0992f9fb95e0b1cc23fb4f38f356ee0569f3b5b1