Merge "[Settings] Apply WifiCallingQueryImsState" into rvc-dev
This commit is contained in:
@@ -54,9 +54,7 @@ import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.SettingsPreferenceFragment;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settings.network.SubscriptionUtil;
|
||||
import com.android.settings.network.ims.WifiCallingQueryImsState;
|
||||
import com.android.settings.network.telephony.MobileNetworkUtils;
|
||||
import com.android.settings.widget.SwitchBar;
|
||||
|
||||
/**
|
||||
@@ -100,7 +98,6 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
||||
private boolean mUseWfcHomeModeForRoaming = false;
|
||||
|
||||
private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||
private com.android.ims.ImsManager mImsManager;
|
||||
private ImsMmTelManager mImsMmTelManager;
|
||||
private ProvisioningManager mProvisioningManager;
|
||||
private TelephonyManager mTelephonyManager;
|
||||
@@ -270,12 +267,6 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
||||
return ProvisioningManager.createForSubscriptionId(mSubId);
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
com.android.ims.ImsManager getImsManager() {
|
||||
return com.android.ims.ImsManager.getInstance(getActivity(),
|
||||
SubscriptionUtil.getPhoneId(getActivity(), mSubId));
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
ImsMmTelManager getImsMmTelManager() {
|
||||
if (!SubscriptionManager.isValidSubscriptionId(mSubId)) {
|
||||
@@ -299,12 +290,9 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
||||
FRAGMENT_BUNDLE_SUBID, SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
||||
}
|
||||
|
||||
mImsManager = getImsManager();
|
||||
mProvisioningManager = getImsProvisioningManager();
|
||||
mImsMmTelManager = getImsMmTelManager();
|
||||
|
||||
mTelephonyManager = getActivity().getSystemService(TelephonyManager.class);
|
||||
|
||||
mButtonWfcMode = findPreference(BUTTON_WFC_MODE);
|
||||
mButtonWfcMode.setOnPreferenceChangeListener(this);
|
||||
|
||||
@@ -341,7 +329,7 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
||||
|
||||
@VisibleForTesting
|
||||
boolean isWfcProvisionedOnDevice() {
|
||||
return MobileNetworkUtils.isWfcProvisionedOnDevice(mSubId);
|
||||
return queryImsState(mSubId).isWifiCallingProvisioned();
|
||||
}
|
||||
|
||||
private void updateBody() {
|
||||
|
@@ -19,10 +19,8 @@ package com.android.settings.wifi.calling;
|
||||
import android.content.Context;
|
||||
import android.telephony.SubscriptionManager;
|
||||
|
||||
import com.android.ims.ImsManager;
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.network.ims.WifiCallingQueryImsState;
|
||||
import com.android.settings.network.telephony.MobileNetworkUtils;
|
||||
|
||||
public class WifiCallingSuggestionActivity extends SettingsActivity {
|
||||
|
||||
@@ -30,11 +28,7 @@ public class WifiCallingSuggestionActivity extends SettingsActivity {
|
||||
final WifiCallingQueryImsState queryState =
|
||||
new WifiCallingQueryImsState(context,
|
||||
SubscriptionManager.getDefaultVoiceSubscriptionId());
|
||||
if (!ImsManager.isWfcEnabledByPlatform(context) ||
|
||||
!MobileNetworkUtils.isWfcProvisionedOnDevice(
|
||||
SubscriptionManager.getDefaultVoiceSubscriptionId())) {
|
||||
return true;
|
||||
}
|
||||
return queryState.isEnabledByUser() && queryState.isAllowUserControl();
|
||||
return (!queryState.isWifiCallingProvisioned())
|
||||
|| (queryState.isEnabledByUser() && queryState.isAllowUserControl());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user