Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion packages/SystemUI/res/values/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@

<!-- The default tiles to display in QuickSettings -->
<string name="quick_settings_tiles_default" translatable="false">
wifi,internet,bt,flashlight,cell,hotspot,dark,airplane,location,dataswitch,dnd,qr_code_scanner,heads_up,rotation,battery,cast,screenrecord,alarm,saver,night
wifi,internet,bt,flashlight,cell,hotspot,dark,airplane,location,dataswitch,dnd,qr_code_scanner,heads_up,rotation,battery,cast,screenrecord,alarm,saver,night,preferred_network
</string>

<!-- The class path of the Safety Quick Settings Tile -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;

import com.android.systemui.res.R;
import com.android.settingslib.Utils;
import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.plugins.ActivityStarter;
Expand All @@ -50,6 +50,7 @@
import com.android.systemui.qs.QsEventLogger;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.res.R;

import javax.inject.Inject;

Expand Down Expand Up @@ -80,7 +81,7 @@ public PreferredNetworkTile(

@Override
public boolean isAvailable() {
return true;
return !Utils.isWifiOnly(mContext);
}

@Override
Expand All @@ -89,7 +90,7 @@ public State newTileState() {
}

@Override
protected void handleClick(@Nullable View view) {
public void handleClick(@Nullable View view) {
final int mode = getPreferredNetworkMode();
final int newMode = TelephonyManagerConstants.getTargetMode(mode);
if (newMode == -1) return;
Expand All @@ -114,17 +115,14 @@ public Intent getLongClickIntent() {
@Override
protected void handleUpdateState(State state, Object arg) {
state.icon = mIcon;
state.label =
mContext.getResources().getString(R.string.quick_settings_preferred_network_label);
state.label = mContext.getResources().getString(R.string.quick_settings_preferred_network_label);
final int mode = getPreferredNetworkMode();
final int newMode = TelephonyManagerConstants.getTargetMode(mode);
state.state = newMode == -1 ? Tile.STATE_UNAVAILABLE : Tile.STATE_ACTIVE;
state.secondaryLabel = newMode == -1 ?
mContext.getResources().getString(R.string.quick_settings_preferred_network_unsupported)
state.secondaryLabel = newMode == -1 ? mContext.getResources().getString(R.string.quick_settings_preferred_network_unsupported)
: (TelephonyManagerConstants.is5gMode(mode) ?
mContext.getResources().getString(R.string.quick_settings_preferred_network_nr)
:
mContext.getResources().getString(R.string.quick_settings_preferred_network_lte));
: mContext.getResources().getString(R.string.quick_settings_preferred_network_lte));
}

@Override
Expand All @@ -134,7 +132,7 @@ public CharSequence getTileLabel() {

@Override
public int getMetricsCategory() {
return MetricsEvent.MIST;
return MetricsEvent.MIST;
}

@Override
Expand All @@ -144,8 +142,7 @@ public void handleSetListening(boolean listening) {
private int getPreferredNetworkMode() {
final int subId = SubscriptionManager.getDefaultDataSubscriptionId();
return getNetworkTypeFromRaf(
(int)
mTelephonyManager.createForSubscriptionId(subId).getAllowedNetworkTypesForReason(
(int) mTelephonyManager.createForSubscriptionId(subId).getAllowedNetworkTypesForReason(
TelephonyManager.ALLOWED_NETWORK_TYPES_REASON_USER));
}

Expand Down Expand Up @@ -570,8 +567,7 @@ static class RadioConstants {
public static final int RAF_HSPA = (int) TelephonyManager.NETWORK_TYPE_BITMASK_HSPA;
public static final int RAF_HSPAP = (int) TelephonyManager.NETWORK_TYPE_BITMASK_HSPAP;
public static final int RAF_UMTS = (int) TelephonyManager.NETWORK_TYPE_BITMASK_UMTS;
public static final int RAF_TD_SCDMA = (int)
TelephonyManager.NETWORK_TYPE_BITMASK_TD_SCDMA;
public static final int RAF_TD_SCDMA = (int) TelephonyManager.NETWORK_TYPE_BITMASK_TD_SCDMA;
// 4G
public static final int RAF_LTE = (int) TelephonyManager.NETWORK_TYPE_BITMASK_LTE;
public static final int RAF_LTE_CA = (int) TelephonyManager.NETWORK_TYPE_BITMASK_LTE_CA;
Expand Down