Merge "IMS: Grey out Wifi calling option when either sub is having call."
This commit is contained in:
@@ -116,8 +116,9 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
|||||||
final boolean isNonTtyOrTtyOnVolteEnabled = mImsManager.isNonTtyOrTtyOnVolteEnabled();
|
final boolean isNonTtyOrTtyOnVolteEnabled = mImsManager.isNonTtyOrTtyOnVolteEnabled();
|
||||||
final boolean isWfcEnabled = mSwitchBar.isChecked()
|
final boolean isWfcEnabled = mSwitchBar.isChecked()
|
||||||
&& isNonTtyOrTtyOnVolteEnabled;
|
&& isNonTtyOrTtyOnVolteEnabled;
|
||||||
|
boolean isCallStateIdle =
|
||||||
mSwitchBar.setEnabled((state == TelephonyManager.CALL_STATE_IDLE)
|
mTelephonyManager.getCallState() == TelephonyManager.CALL_STATE_IDLE;
|
||||||
|
mSwitchBar.setEnabled(isCallStateIdle
|
||||||
&& isNonTtyOrTtyOnVolteEnabled);
|
&& isNonTtyOrTtyOnVolteEnabled);
|
||||||
|
|
||||||
boolean isWfcModeEditable = true;
|
boolean isWfcModeEditable = true;
|
||||||
@@ -138,13 +139,13 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
|||||||
final Preference pref = getPreferenceScreen().findPreference(BUTTON_WFC_MODE);
|
final Preference pref = getPreferenceScreen().findPreference(BUTTON_WFC_MODE);
|
||||||
if (pref != null) {
|
if (pref != null) {
|
||||||
pref.setEnabled(isWfcEnabled && isWfcModeEditable
|
pref.setEnabled(isWfcEnabled && isWfcModeEditable
|
||||||
&& (state == TelephonyManager.CALL_STATE_IDLE));
|
&& isCallStateIdle);
|
||||||
}
|
}
|
||||||
final Preference pref_roam =
|
final Preference pref_roam =
|
||||||
getPreferenceScreen().findPreference(BUTTON_WFC_ROAMING_MODE);
|
getPreferenceScreen().findPreference(BUTTON_WFC_ROAMING_MODE);
|
||||||
if (pref_roam != null) {
|
if (pref_roam != null) {
|
||||||
pref_roam.setEnabled(isWfcEnabled && isWfcRoamingModeEditable
|
pref_roam.setEnabled(isWfcEnabled && isWfcRoamingModeEditable
|
||||||
&& (state == TelephonyManager.CALL_STATE_IDLE));
|
&& isCallStateIdle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -271,8 +272,7 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
|||||||
mImsManager = getImsManager();
|
mImsManager = getImsManager();
|
||||||
mImsMmTelManager = getImsMmTelManager();
|
mImsMmTelManager = getImsMmTelManager();
|
||||||
|
|
||||||
mTelephonyManager = ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE))
|
mTelephonyManager = ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE));
|
||||||
.createForSubscriptionId(mSubId);
|
|
||||||
|
|
||||||
mButtonWfcMode = findPreference(BUTTON_WFC_MODE);
|
mButtonWfcMode = findPreference(BUTTON_WFC_MODE);
|
||||||
mButtonWfcMode.setOnPreferenceChangeListener(this);
|
mButtonWfcMode.setOnPreferenceChangeListener(this);
|
||||||
@@ -406,9 +406,7 @@ public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
|
|||||||
if (mValidListener) {
|
if (mValidListener) {
|
||||||
mValidListener = false;
|
mValidListener = false;
|
||||||
|
|
||||||
final TelephonyManager tm = (TelephonyManager)
|
mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
|
||||||
getSystemService(Context.TELEPHONY_SERVICE);
|
|
||||||
tm.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
|
|
||||||
|
|
||||||
mSwitchBar.removeOnSwitchChangeListener(this);
|
mSwitchBar.removeOnSwitchChangeListener(this);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user