Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 663aa12c authored by Meng Wang's avatar Meng Wang
Browse files

ImsManager: check roaming status in setWfcSetting

In setWfcSetting(true), setWfcModeInternal(mode) is invoked.
The mode to be passed should be determined by current roaming status.

Bug: 32787997
Change-Id: I9e96de0a1db83adf50a8ba008a6b3741fe3c9b95
parent 8f5ae407
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -445,9 +445,12 @@ public class ImsManager {
                    imsManager.turnOffIms();
                }

                // Force IMS to register over LTE when turning off WFC
                TelephonyManager tm = (TelephonyManager) context
                        .getSystemService(Context.TELEPHONY_SERVICE);
                setWfcModeInternal(context, enabled
                        ? getWfcMode(context)
                        // Choose wfc mode per current roaming preference
                        ? getWfcMode(context, tm.isNetworkRoaming())
                        // Force IMS to register over LTE when turning off WFC
                        : ImsConfig.WfcModeFeatureValueConstants.CELLULAR_PREFERRED);
            } catch (ImsException e) {
                loge("setWfcSetting(): ", e);