[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
This commit is contained in:
Bonian Chen
2020-01-21 23:10:17 +08:00
parent ff1863451f
commit c4413a850f
4 changed files with 79 additions and 33 deletions

View File

@@ -115,7 +115,8 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
@Override
public void onCallStateChanged(int state, String incomingNumber) {
final SettingsActivity activity = (SettingsActivity) getActivity();
final boolean isNonTtyOrTtyOnVolteEnabled = mImsManager.isNonTtyOrTtyOnVolteEnabled();
final boolean isNonTtyOrTtyOnVolteEnabled =
queryImsState(WifiCallingSettingsForSub.this.mSubId).isAllowUserControl();
final boolean isWfcEnabled = mSwitchBar.isChecked()
&& isNonTtyOrTtyOnVolteEnabled;
boolean isCallStateIdle =
@@ -403,7 +404,7 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
// NOTE: Buttons will be enabled/disabled in mPhoneStateListener
final WifiCallingQueryImsState queryIms = queryImsState(mSubId);
final boolean wfcEnabled = queryIms.isEnabledByUser()
&& mImsManager.isNonTtyOrTtyOnVolteEnabled();
&& queryIms.isAllowUserControl();
mSwitch.setChecked(wfcEnabled);
final int wfcMode = mImsMmTelManager.getVoWiFiModeSetting();
final int wfcRoamingMode = mImsMmTelManager.getVoWiFiRoamingModeSetting();