Skip to content

Commit

Permalink
SystemUI: Show only one of VoLTE and VoWiFi icon in status bar based …
Browse files Browse the repository at this point in the history
…on WiFi-Calling Preference

Change-Id: Ic8e204321f4b407c9725f88fc03549064b617e95
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Gagan Malvi <malvi@aospa.co>
  • Loading branch information
dwardor authored and althafvly committed May 24, 2021
1 parent 4d85238 commit a982e3e
Showing 1 changed file with 31 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
import android.text.TextUtils;
import android.util.Log;

import com.android.ims.ImsConfig;
import com.android.ims.ImsException;
import com.android.ims.ImsManager;
import com.android.ims.FeatureConnector;
Expand Down Expand Up @@ -505,10 +506,37 @@ public void notifyListeners(SignalCallback callback) {
&& mCurrentState.activityOut;
showDataIcon &= mCurrentState.isDefault || dataDisabled;
int typeIcon = (showDataIcon || mConfig.alwaysShowDataRatIcon) ? icons.mDataType : 0;
int volteIcon = mConfig.showVolteIcon && isVolteSwitchOn() ? getVolteResId() : 0;

int volteResId = isVolteSwitchOn() ? getVolteResId() : 0;
int volteIcon = mConfig.showVolteIcon ? volteResId : 0;
MobileIconGroup vowifiIconGroup = getVowifiIconGroup();
if (mConfig.showVowifiIcon && vowifiIconGroup != null) {
boolean vowifiIcon = mConfig.showVowifiIcon && vowifiIconGroup != null;
if (mImsManager != null) {
if (mImsManager.isWfcEnabledByUser()) {
switch (mImsManager.getWfcMode(mCurrentState.roaming)) {
case ImsConfig.WfcModeFeatureValueConstants.WIFI_ONLY:
// Don't show volte Icon if vowifi only
volteIcon = 0;
break;
case ImsConfig.WfcModeFeatureValueConstants.WIFI_PREFERRED:
// Don't show volte Icon if vowifi preferred and available
volteIcon = vowifiIconGroup != null ? 0 : volteIcon;
break;
case ImsConfig.WfcModeFeatureValueConstants.CELLULAR_PREFERRED:
// Don't show vowifi Icon if cellular/volte preferred and available
vowifiIcon = volteResId != 0 ? false : vowifiIcon;
break;
default:
vowifiIcon = false;
break;
}
} else {
vowifiIcon = false;
}
} else {
volteIcon = 0;
vowifiIcon = false;
}
if (vowifiIcon) {
typeIcon = vowifiIconGroup.mDataType;
statusIcon = new IconState(true,
mCurrentState.enabled && !mCurrentState.airplaneMode? statusIcon.icon : 0,
Expand Down

0 comments on commit a982e3e

Please sign in to comment.