Merge "callForwarding: Add service class" am: bfb22afef2 am: 421d3248ec
Change-Id: I94b5432ba0f7d2419a3ef8bc7362e927c4c36996
diff --git a/src/com/android/phone/CallForwardEditPreference.java b/src/com/android/phone/CallForwardEditPreference.java
index 76f17b1..c1f219c 100644
--- a/src/com/android/phone/CallForwardEditPreference.java
+++ b/src/com/android/phone/CallForwardEditPreference.java
@@ -159,6 +159,7 @@
mPhone.setCallForwardingOption(action,
reason,
number,
+ mServiceClass,
time,
mHandler.obtainMessage(MyHandler.MESSAGE_SET_CF,
action,
@@ -216,7 +217,7 @@
*/
void startCallForwardOptionsQuery() {
if (!mCallForwardByUssd) {
- mPhone.getCallForwardingOption(reason,
+ mPhone.getCallForwardingOption(reason, mServiceClass,
mHandler.obtainMessage(MyHandler.MESSAGE_GET_CF,
// unused in this case
CommandsInterface.CF_ACTION_DISABLE,
@@ -423,7 +424,7 @@
}
Log.d(LOG_TAG, "handleSetCFResponse: re get");
if (!mCallForwardByUssd) {
- mPhone.getCallForwardingOption(reason,
+ mPhone.getCallForwardingOption(reason, mServiceClass,
obtainMessage(MESSAGE_GET_CF, msg.arg1, MESSAGE_SET_CF, ar.exception));
} else {
mHandler.sendMessage(mHandler.obtainMessage(mHandler.MESSAGE_GET_CF_USSD,
diff --git a/src/com/android/phone/settings/CallForwardInfoUtil.java b/src/com/android/phone/settings/CallForwardInfoUtil.java
index 1983fab..b963df8 100644
--- a/src/com/android/phone/settings/CallForwardInfoUtil.java
+++ b/src/com/android/phone/settings/CallForwardInfoUtil.java
@@ -82,6 +82,7 @@
phone.setCallForwardingOption(commandInterfaceCfAction,
info.reason,
info.number,
+ info.serviceClass,
info.timeSeconds,
message);
}
@@ -93,10 +94,12 @@
*/
public static CallForwardInfo getCallForwardInfo(CallForwardInfo[] infos, int reason) {
CallForwardInfo info = null;
- for (int i = 0 ; i < infos.length; i++) {
- if (isServiceClassVoice(infos[i])) {
- info = infos[i];
- break;
+ if (infos != null) {
+ for (int i = 0 ; i < infos.length; i++) {
+ if (isServiceClassVoice(infos[i])) {
+ info = infos[i];
+ break;
+ }
}
}
diff --git a/src/com/android/phone/settings/VoicemailSettingsActivity.java b/src/com/android/phone/settings/VoicemailSettingsActivity.java
index e18dc93..66b1af9 100644
--- a/src/com/android/phone/settings/VoicemailSettingsActivity.java
+++ b/src/com/android/phone/settings/VoicemailSettingsActivity.java
@@ -43,6 +43,7 @@
import android.widget.Toast;
import com.android.internal.telephony.CallForwardInfo;
+import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.util.NotificationChannelController;
@@ -733,6 +734,7 @@
for (int i = 0; i < mForwardingReadResults.length; i++) {
mPhone.getCallForwardingOption(
VoicemailProviderSettings.FORWARDING_SETTINGS_REASONS[i],
+ CommandsInterface.SERVICE_CLASS_VOICE,
mGetOptionComplete.obtainMessage(EVENT_FORWARDING_GET_COMPLETED, i, 0));
}
showDialogIfForeground(VoicemailDialogUtil.VM_FWD_READING_DIALOG);