From eba31e19e041fff22c7fa70aaec8a0e5daadc374 Mon Sep 17 00:00:00 2001 From: Meng Wang Date: Tue, 17 Apr 2018 11:27:21 -0700 Subject: setWfcSetting: set WFC mode w.r.t. roaming state When turing on WFC, WFC mode in modem should also be updated to user set WFC mode: roaming mode if in roaming network or home mode otherwise. The code was using home mode always; so it causes user setting mismatch with modem setting in roaming, if home mode is different from roaming mode. Bug: 77882002 Test: manual - force device in roaming state, and turn on WFC; verify that modem uses roaming mode not home mode. Change-Id: I510aa469736de7a9262a87ec6399f5ca97cb3af1 --- src/java/com/android/ims/ImsManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java index e7a857d1..8e547717 100644 --- a/src/java/com/android/ims/ImsManager.java +++ b/src/java/com/android/ims/ImsManager.java @@ -875,7 +875,9 @@ public class ImsManager { SubscriptionManager.setSubscriptionProperty(getSubId(), SubscriptionManager.WFC_IMS_ENABLED, booleanToPropertyString(enabled)); - setWfcNonPersistent(enabled, getWfcMode()); + TelephonyManager tm = (TelephonyManager) + mContext.getSystemService(Context.TELEPHONY_SERVICE); + setWfcNonPersistent(enabled, getWfcMode(tm.isNetworkRoaming(getSubId()))); } /** -- cgit v1.2.3