Merge "[ProviderModel] Internal cleanup, remove the Provider Model flag"

This commit is contained in:
Zoey Chen
2021-12-20 15:27:26 +00:00
committed by Android (Google) Code Review
17 changed files with 65 additions and 224 deletions

View File

@@ -44,8 +44,6 @@ public class FeatureFlagUtils {
public static final String SETTINGS_DO_NOT_RESTORE_PRESERVED =
"settings_do_not_restore_preserved";
/** @hide */
public static final String SETTINGS_PROVIDER_MODEL = "settings_provider_model";
/** @hide */
public static final String SETTINGS_USE_NEW_BACKUP_ELIGIBILITY_RULES
= "settings_use_new_backup_eligibility_rules";
/** @hide */
@@ -80,7 +78,6 @@ public class FeatureFlagUtils {
DEFAULT_FLAGS.put("settings_tether_all_in_one", "false");
DEFAULT_FLAGS.put("settings_contextual_home", "false");
DEFAULT_FLAGS.put(SETTINGS_PROVIDER_MODEL, "true");
DEFAULT_FLAGS.put(SETTINGS_USE_NEW_BACKUP_ELIGIBILITY_RULES, "true");
DEFAULT_FLAGS.put(SETTINGS_ENABLE_SECURITY_HUB, "true");
DEFAULT_FLAGS.put(SETTINGS_SUPPORT_LARGE_SCREEN, "true");
@@ -92,7 +89,6 @@ public class FeatureFlagUtils {
static {
PERSISTENT_FLAGS = new HashSet<>();
PERSISTENT_FLAGS.add(SETTINGS_APP_LANGUAGE_SELECTION);
PERSISTENT_FLAGS.add(SETTINGS_PROVIDER_MODEL);
PERSISTENT_FLAGS.add(SETTINGS_SUPPORT_LARGE_SCREEN);
PERSISTENT_FLAGS.add(SETTINGS_ENABLE_MONITOR_PHANTOM_PROCS);
}

View File

@@ -98,9 +98,6 @@ public class Flags {
/***************************************/
// 600- status bar
public static final BooleanFlag STATUS_BAR_PROVIDER_MODEL =
new BooleanFlag(600, false);
public static final BooleanFlag COMBINED_STATUS_BAR_SIGNAL_ICONS =
new BooleanFlag(601, false);

View File

@@ -39,7 +39,6 @@ import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.plugins.PluginListener;
import com.android.systemui.plugins.qs.QSFactory;
import com.android.systemui.plugins.qs.QSTile;
@@ -53,7 +52,6 @@ import com.android.systemui.qs.external.TileServices;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.plugins.PluginManager;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.statusbar.phone.AutoTileManager;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.phone.StatusBarIconController;
@@ -98,7 +96,6 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
private final UiEventLogger mUiEventLogger;
private final InstanceIdSequence mInstanceIdSequence;
private final CustomTileStatePersister mCustomTileStatePersister;
private final FeatureFlags mFeatureFlags;
private final List<Callback> mCallbacks = new ArrayList<>();
private AutoTileManager mAutoTiles;
@@ -111,7 +108,6 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
private SecureSettings mSecureSettings;
private final TileServiceRequestController mTileServiceRequestController;
private final StatusBarFlags mStatusBarFlags;
@Inject
public QSTileHost(Context context,
@@ -130,9 +126,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
UserTracker userTracker,
SecureSettings secureSettings,
CustomTileStatePersister customTileStatePersister,
TileServiceRequestController.Builder tileServiceRequestControllerBuilder,
FeatureFlags featureFlags,
StatusBarFlags statusBarFlags
TileServiceRequestController.Builder tileServiceRequestControllerBuilder
) {
mIconController = iconController;
mContext = context;
@@ -144,7 +138,6 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
mUiEventLogger = uiEventLogger;
mBroadcastDispatcher = broadcastDispatcher;
mTileServiceRequestController = tileServiceRequestControllerBuilder.create(this);
mStatusBarFlags = statusBarFlags;
mInstanceIdSequence = new InstanceIdSequence(MAX_QS_INSTANCE_ID);
mServices = new TileServices(this, bgLooper, mBroadcastDispatcher, userTracker);
@@ -156,7 +149,6 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
mUserTracker = userTracker;
mSecureSettings = secureSettings;
mCustomTileStatePersister = customTileStatePersister;
mFeatureFlags = featureFlags;
mainHandler.post(() -> {
// This is technically a hack to avoid circular dependency of
@@ -280,7 +272,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
if (newValue == null && UserManager.isDeviceInDemoMode(mContext)) {
newValue = mContext.getResources().getString(R.string.quick_settings_tiles_retail_mode);
}
final List<String> tileSpecs = loadTileSpecs(mContext, newValue, mStatusBarFlags);
final List<String> tileSpecs = loadTileSpecs(mContext, newValue);
int currentUser = mUserTracker.getUserId();
if (currentUser != mCurrentUser) {
mUserContext = mUserTracker.getUserContext();
@@ -349,7 +341,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
if (newTiles.isEmpty() && !tileSpecs.isEmpty()) {
// If we didn't manage to create any tiles, set it to empty (default)
Log.d(TAG, "No valid tiles on tuning changed. Setting to default.");
changeTiles(currentSpecs, loadTileSpecs(mContext, "", mStatusBarFlags));
changeTiles(currentSpecs, loadTileSpecs(mContext, ""));
} else {
for (int i = 0; i < mCallbacks.size(); i++) {
mCallbacks.get(i).onTilesChanged();
@@ -417,7 +409,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
private void changeTileSpecs(Predicate<List<String>> changeFunction) {
final String setting = mSecureSettings.getStringForUser(TILES_SETTING, mCurrentUser);
final List<String> tileSpecs = loadTileSpecs(mContext, setting, mStatusBarFlags);
final List<String> tileSpecs = loadTileSpecs(mContext, setting);
if (changeFunction.test(tileSpecs)) {
saveTilesToSettings(tileSpecs);
}
@@ -506,8 +498,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
throw new RuntimeException("Default factory didn't create view for " + tile.getTileSpec());
}
protected static List<String> loadTileSpecs(
Context context, String tileList, StatusBarFlags statusBarFlags) {
protected static List<String> loadTileSpecs(Context context, String tileList) {
final Resources res = context.getResources();
if (TextUtils.isEmpty(tileList)) {
@@ -540,20 +531,19 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
}
}
}
if (statusBarFlags.isProviderModelSettingEnabled()) {
if (!tiles.contains("internet")) {
if (tiles.contains("wifi")) {
// Replace the WiFi with Internet, and remove the Cell
tiles.set(tiles.indexOf("wifi"), "internet");
tiles.remove("cell");
} else if (tiles.contains("cell")) {
// Replace the Cell with Internet
tiles.set(tiles.indexOf("cell"), "internet");
}
} else {
tiles.remove("wifi");
if (!tiles.contains("internet")) {
if (tiles.contains("wifi")) {
// Replace the WiFi with Internet, and remove the Cell
tiles.set(tiles.indexOf("wifi"), "internet");
tiles.remove("cell");
} else if (tiles.contains("cell")) {
// Replace the Cell with Internet
tiles.set(tiles.indexOf("cell"), "internet");
}
} else {
tiles.remove("wifi");
tiles.remove("cell");
}
return tiles;
}

View File

@@ -41,7 +41,6 @@ import com.android.systemui.qs.dagger.QSScope;
import com.android.systemui.qs.external.CustomTile;
import com.android.systemui.qs.tileimpl.QSTileImpl.DrawableIcon;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.util.leak.GarbageMonitor;
import java.util.ArrayList;
@@ -63,7 +62,6 @@ public class TileQueryHelper {
private final Executor mBgExecutor;
private final Context mContext;
private final UserTracker mUserTracker;
private final StatusBarFlags mStatusBarFlags;
private TileStateListener mListener;
private boolean mFinished;
@@ -73,14 +71,12 @@ public class TileQueryHelper {
Context context,
UserTracker userTracker,
@Main Executor mainExecutor,
@Background Executor bgExecutor,
StatusBarFlags statusBarFlags
@Background Executor bgExecutor
) {
mContext = context;
mMainExecutor = mainExecutor;
mBgExecutor = bgExecutor;
mUserTracker = userTracker;
mStatusBarFlags = statusBarFlags;
}
public void setListener(TileStateListener listener) {
@@ -121,10 +117,8 @@ public class TileQueryHelper {
}
final ArrayList<QSTile> tilesToAdd = new ArrayList<>();
if (mStatusBarFlags.isProviderModelSettingEnabled()) {
possibleTiles.remove("cell");
possibleTiles.remove("wifi");
}
possibleTiles.remove("cell");
possibleTiles.remove("wifi");
for (String spec : possibleTiles) {
// Only add current and stock tiles that can be created from QSFactoryImpl.

View File

@@ -1,14 +0,0 @@
package com.android.systemui.qs.tiles.dialog;
import android.content.Context;
import android.util.FeatureFlagUtils;
public class InternetDialogUtil {
public static boolean isProviderModelEnabled(Context context) {
if (context == null) {
return false;
}
return FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL);
}
}

View File

@@ -81,7 +81,6 @@ public class MobileSignalController extends SignalController<MobileState, Mobile
private final String mNetworkNameSeparator;
private final ContentObserver mObserver;
private final boolean mProviderModelBehavior;
private final boolean mProviderModelSetting;
private final Handler mReceiverHandler;
private int mImsType = IMS_TYPE_WWAN;
// Save entire info for logging, we only use the id.
@@ -193,8 +192,7 @@ public class MobileSignalController extends SignalController<MobileState, Mobile
SubscriptionDefaults defaults,
Looper receiverLooper,
CarrierConfigTracker carrierConfigTracker,
FeatureFlags featureFlags,
StatusBarFlags statusBarFlags
FeatureFlags featureFlags
) {
super("MobileSignalController(" + info.getSubscriptionId() + ")", context,
NetworkCapabilities.TRANSPORT_CELLULAR, callbackHandler,
@@ -229,7 +227,6 @@ public class MobileSignalController extends SignalController<MobileState, Mobile
mMobileStatusTracker = new MobileStatusTracker(mPhone, receiverLooper,
info, mDefaults, mMobileCallback);
mProviderModelBehavior = featureFlags.isEnabled(Flags.COMBINED_STATUS_BAR_SIGNAL_ICONS);
mProviderModelSetting = statusBarFlags.isProviderModelSettingEnabled();
}
void setConfiguration(Config config) {
@@ -396,10 +393,9 @@ public class MobileSignalController extends SignalController<MobileState, Mobile
IconState qsIcon = null;
CharSequence qsDescription = null;
boolean pm = mProviderModelSetting || mProviderModelBehavior;
if (mCurrentState.dataSim) {
// If using provider model behavior, only show QS icons if the state is also default
if (pm && !mCurrentState.isDefault) {
if (!mCurrentState.isDefault) {
return new QsInfo(qsTypeIcon, qsIcon, qsDescription);
}
@@ -814,7 +810,6 @@ public class MobileSignalController extends SignalController<MobileState, Mobile
public void dump(PrintWriter pw) {
super.dump(pw);
pw.println(" mSubscription=" + mSubscriptionInfo + ",");
pw.println(" mProviderModelSetting=" + mProviderModelSetting + ",");
pw.println(" mProviderModelBehavior=" + mProviderModelBehavior + ",");
pw.println(" mInflateSignalStrengths=" + mInflateSignalStrengths + ",");
pw.println(" isDataDisabled=" + isDataDisabled() + ",");

View File

@@ -75,7 +75,6 @@ import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.flags.Flags;
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
import com.android.systemui.qs.tiles.dialog.InternetDialogUtil;
import com.android.systemui.settings.CurrentUserTracker;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.DataSaverController;
@@ -132,11 +131,9 @@ public class NetworkControllerImpl extends BroadcastReceiver
private final DemoModeController mDemoModeController;
private final Object mLock = new Object();
private final boolean mProviderModelBehavior;
private final boolean mProviderModelSetting;
private Config mConfig;
private final CarrierConfigTracker mCarrierConfigTracker;
private final FeatureFlags mFeatureFlags;
private final StatusBarFlags mStatusBarFlags;
private final DumpManager mDumpManager;
private TelephonyCallback.ActiveDataSubscriptionIdListener mPhoneStateListener;
@@ -236,7 +233,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
@Main Handler handler,
InternetDialogFactory internetDialogFactory,
FeatureFlags featureFlags,
StatusBarFlags statusBarFlags,
DumpManager dumpManager) {
this(context, connectivityManager,
telephonyManager,
@@ -256,7 +252,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
demoModeController,
carrierConfigTracker,
featureFlags,
statusBarFlags,
dumpManager);
mReceiverHandler.post(mRegisterListeners);
mMainHandler = handler;
@@ -280,7 +275,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
DemoModeController demoModeController,
CarrierConfigTracker carrierConfigTracker,
FeatureFlags featureFlags,
StatusBarFlags statusBarFlags,
DumpManager dumpManager
) {
mContext = context;
@@ -300,7 +294,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
mDemoModeController = demoModeController;
mCarrierConfigTracker = carrierConfigTracker;
mFeatureFlags = featureFlags;
mStatusBarFlags = statusBarFlags;
mDumpManager = dumpManager;
// telephony
@@ -322,8 +315,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
}
});
mWifiSignalController = new WifiSignalController(mContext, mHasMobileDataFeature,
mCallbackHandler, this, mWifiManager, mConnectivityManager, networkScoreManager,
mStatusBarFlags);
mCallbackHandler, this, mWifiManager, mConnectivityManager, networkScoreManager);
mEthernetSignalController = new EthernetSignalController(mContext, mCallbackHandler, this);
@@ -449,7 +441,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
mDemoModeController.addCallback(this);
mProviderModelBehavior = mFeatureFlags.isEnabled(Flags.COMBINED_STATUS_BAR_SIGNAL_ICONS);
mProviderModelSetting = mStatusBarFlags.isProviderModelSettingEnabled();
mDumpManager.registerDumpable(TAG, this);
}
@@ -499,9 +490,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
filter.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED);
filter.addAction(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED);
if (InternetDialogUtil.isProviderModelEnabled(mContext)) {
filter.addAction(Settings.Panel.ACTION_INTERNET_CONNECTIVITY);
}
filter.addAction(Settings.Panel.ACTION_INTERNET_CONNECTIVITY);
mBroadcastDispatcher.registerReceiverWithHandler(this, filter, mReceiverHandler);
mListening = true;
@@ -734,9 +723,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
TelephonyIcons.FLIGHT_MODE_ICON,
mContext.getString(R.string.accessibility_airplane_mode)));
cb.setNoSims(mHasNoSubs, mSimDetected);
if (mProviderModelSetting) {
cb.setConnectivityStatus(mNoDefaultNetwork, !mInetCondition, mNoNetworksAvailable);
}
cb.setConnectivityStatus(mNoDefaultNetwork, !mInetCondition, mNoNetworksAvailable);
mWifiSignalController.notifyListeners(cb);
mEthernetSignalController.notifyListeners(cb);
for (int i = 0; i < mMobileSignalControllers.size(); i++) {
@@ -965,7 +952,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
mHasMobileDataFeature, mPhone.createForSubscriptionId(subId),
mCallbackHandler, this, subscriptions.get(i),
mSubDefaults, mReceiverHandler.getLooper(), mCarrierConfigTracker,
mFeatureFlags, mStatusBarFlags);
mFeatureFlags);
controller.setUserSetupComplete(mUserSetup);
mMobileSignalControllers.put(subId, controller);
if (subscriptions.get(i).getSimSlotIndex() == 0) {
@@ -1125,8 +1112,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
mobileSignalController.updateNoCallingState();
}
notifyAllListeners();
} else if (mProviderModelSetting) {
// TODO(b/191903788): Replace the flag name once the new flag is added.
} else {
mNoDefaultNetwork = !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_CELLULAR)
&& !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_WIFI)
&& !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_ETHERNET);
@@ -1443,7 +1429,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
mConfig, mHasMobileDataFeature,
mPhone.createForSubscriptionId(info.getSubscriptionId()), mCallbackHandler, this,
info, mSubDefaults, mReceiverHandler.getLooper(), mCarrierConfigTracker,
mFeatureFlags, mStatusBarFlags);
mFeatureFlags);
mMobileSignalControllers.put(id, controller);
controller.getState().userSetup = true;
return info;

View File

@@ -1,43 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.systemui.statusbar.connectivity;
import android.content.Context;
import android.util.FeatureFlagUtils;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.flags.FeatureFlags;
import javax.inject.Inject;
/**
* Class for providing StatusBar specific logic around {@link FeatureFlags}.
*/
@SysUISingleton
public class StatusBarFlags {
private final Context mContext;
@Inject
public StatusBarFlags(Context context) {
mContext = context;
}
/** System setting for provider model behavior */
public boolean isProviderModelSettingEnabled() {
return FeatureFlagUtils.isEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL);
}
}

View File

@@ -44,7 +44,6 @@ public class WifiSignalController extends SignalController<WifiState, IconGroup>
private final IconGroup mUnmergedWifiIconGroup = WifiIcons.UNMERGED_WIFI;
private final MobileIconGroup mCarrierMergedWifiIconGroup = TelephonyIcons.CARRIER_MERGED_WIFI;
private final WifiManager mWifiManager;
private final boolean mProviderModelSetting;
public WifiSignalController(
Context context,
@@ -53,8 +52,7 @@ public class WifiSignalController extends SignalController<WifiState, IconGroup>
NetworkControllerImpl networkController,
WifiManager wifiManager,
ConnectivityManager connectivityManager,
NetworkScoreManager networkScoreManager,
StatusBarFlags statusBarFlags) {
NetworkScoreManager networkScoreManager) {
super("WifiSignalController", context, NetworkCapabilities.TRANSPORT_WIFI,
callbackHandler, networkController);
mWifiManager = wifiManager;
@@ -67,7 +65,6 @@ public class WifiSignalController extends SignalController<WifiState, IconGroup>
new WifiTrafficStateCallback());
}
mCurrentState.iconGroup = mLastState.iconGroup = mUnmergedWifiIconGroup;
mProviderModelSetting = statusBarFlags.isProviderModelSettingEnabled();
}
@Override
@@ -104,37 +101,22 @@ public class WifiSignalController extends SignalController<WifiState, IconGroup>
if (mCurrentState.inetCondition == 0) {
contentDescription += ("," + mContext.getString(R.string.data_connection_no_internet));
}
if (mProviderModelSetting) {
IconState statusIcon = new IconState(
wifiVisible, getCurrentIconId(), contentDescription);
IconState qsIcon = null;
if (mCurrentState.isDefault || (!mNetworkController.isRadioOn()
&& !mNetworkController.isEthernetDefault())) {
qsIcon = new IconState(mCurrentState.connected,
mWifiTracker.isCaptivePortal ? R.drawable.ic_qs_wifi_disconnected
: getQsCurrentIconId(), contentDescription);
}
WifiIndicators wifiIndicators = new WifiIndicators(
mCurrentState.enabled, statusIcon, qsIcon,
ssidPresent && mCurrentState.activityIn,
ssidPresent && mCurrentState.activityOut,
wifiDesc, mCurrentState.isTransient, mCurrentState.statusLabel
);
callback.setWifiIndicators(wifiIndicators);
} else {
IconState statusIcon = new IconState(
wifiVisible, getCurrentIconId(), contentDescription);
IconState qsIcon = new IconState(mCurrentState.connected,
IconState statusIcon = new IconState(
wifiVisible, getCurrentIconId(), contentDescription);
IconState qsIcon = null;
if (mCurrentState.isDefault || (!mNetworkController.isRadioOn()
&& !mNetworkController.isEthernetDefault())) {
qsIcon = new IconState(mCurrentState.connected,
mWifiTracker.isCaptivePortal ? R.drawable.ic_qs_wifi_disconnected
: getQsCurrentIconId(), contentDescription);
WifiIndicators wifiIndicators = new WifiIndicators(
mCurrentState.enabled, statusIcon, qsIcon,
ssidPresent && mCurrentState.activityIn,
ssidPresent && mCurrentState.activityOut,
wifiDesc, mCurrentState.isTransient, mCurrentState.statusLabel
);
callback.setWifiIndicators(wifiIndicators);
}
WifiIndicators wifiIndicators = new WifiIndicators(
mCurrentState.enabled, statusIcon, qsIcon,
ssidPresent && mCurrentState.activityIn,
ssidPresent && mCurrentState.activityOut,
wifiDesc, mCurrentState.isTransient, mCurrentState.statusLabel
);
callback.setWifiIndicators(wifiIndicators);
}
private void notifyListenersForCarrierWifi(SignalCallback callback) {

View File

@@ -42,7 +42,6 @@ import com.android.systemui.Dependency;
import com.android.systemui.SysuiBaseFragmentTest;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.media.MediaHost;
import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
@@ -54,7 +53,6 @@ import com.android.systemui.qs.tileimpl.QSFactoryImpl;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.plugins.PluginManager;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.statusbar.phone.AutoTileManager;
import com.android.systemui.statusbar.phone.KeyguardBypassController;
import com.android.systemui.statusbar.phone.StatusBar;
@@ -100,10 +98,6 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
private TileServiceRequestController.Builder mTileServiceRequestControllerBuilder;
@Mock
private TileServiceRequestController mTileServiceRequestController;
@Mock
private FeatureFlags mFeatureFlags;
@Mock
private StatusBarFlags mStatusBarFlags;
public QSFragmentTest() {
super(QSFragment.class);
@@ -149,7 +143,7 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
mock(BroadcastDispatcher.class), Optional.of(mock(StatusBar.class)),
mock(QSLogger.class), mock(UiEventLogger.class), mock(UserTracker.class),
mock(SecureSettings.class), mock(CustomTileStatePersister.class),
mTileServiceRequestControllerBuilder, mFeatureFlags, mStatusBarFlags);
mTileServiceRequestControllerBuilder);
qs.setHost(host);
qs.setListening(true);

View File

@@ -63,7 +63,6 @@ import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.plugins.PluginManager;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.statusbar.phone.AutoTileManager;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.phone.StatusBarIconController;
@@ -128,10 +127,6 @@ public class QSTileHostTest extends SysuiTestCase {
private TileServiceRequestController.Builder mTileServiceRequestControllerBuilder;
@Mock
private TileServiceRequestController mTileServiceRequestController;
@Mock
private FeatureFlags mFeatureFlags;
@Mock
private StatusBarFlags mStatusBarFlags;
private Handler mHandler;
private TestableLooper mLooper;
@@ -151,10 +146,8 @@ public class QSTileHostTest extends SysuiTestCase {
mQSTileHost = new TestQSTileHost(mContext, mIconController, mDefaultFactory, mHandler,
mLooper.getLooper(), mPluginManager, mTunerService, mAutoTiles, mDumpManager,
mBroadcastDispatcher, mStatusBar, mQSLogger, mUiEventLogger, mUserTracker,
mSecureSettings, mCustomTileStatePersister, mTileServiceRequestControllerBuilder,
mFeatureFlags, mStatusBarFlags);
mSecureSettings, mCustomTileStatePersister, mTileServiceRequestControllerBuilder);
setUpTileFactory();
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(false);
}
private void setUpTileFactory() {
@@ -182,13 +175,13 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testLoadTileSpecs_emptySetting() {
List<String> tiles = QSTileHost.loadTileSpecs(mContext, "", mStatusBarFlags);
List<String> tiles = QSTileHost.loadTileSpecs(mContext, "");
assertFalse(tiles.isEmpty());
}
@Test
public void testLoadTileSpecs_nullSetting() {
List<String> tiles = QSTileHost.loadTileSpecs(mContext, null, mStatusBarFlags);
List<String> tiles = QSTileHost.loadTileSpecs(mContext, null);
assertFalse(tiles.isEmpty());
}
@@ -203,7 +196,6 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testRemoveWifiAndCellularWithoutInternet() {
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "wifi, spec1, cell, spec2");
assertEquals("internet", mQSTileHost.mTileSpecs.get(0));
@@ -213,7 +205,6 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testRemoveWifiAndCellularWithInternet() {
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "wifi, spec1, cell, spec2, internet");
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
@@ -223,7 +214,6 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testRemoveWifiWithoutInternet() {
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1, wifi, spec2");
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
@@ -233,7 +223,6 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testRemoveCellWithInternet() {
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1, spec2, cell, internet");
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
@@ -243,7 +232,6 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testNoWifiNoCellularNoInternet() {
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1,spec2");
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
@@ -383,7 +371,7 @@ public class QSTileHostTest extends SysuiTestCase {
@Test
public void testLoadTileSpec_repeated() {
List<String> specs = QSTileHost.loadTileSpecs(mContext, "spec1,spec1,spec2", mStatusBarFlags);
List<String> specs = QSTileHost.loadTileSpecs(mContext, "spec1,spec1,spec2");
assertEquals(2, specs.size());
assertEquals("spec1", specs.get(0));
@@ -394,7 +382,7 @@ public class QSTileHostTest extends SysuiTestCase {
public void testLoadTileSpec_repeatedInDefault() {
mContext.getOrCreateTestableResources()
.addOverride(R.string.quick_settings_tiles_default, "spec1,spec1");
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default", mStatusBarFlags);
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default");
// Remove spurious tiles, like dbg:mem
specs.removeIf(spec -> !"spec1".equals(spec));
@@ -405,7 +393,7 @@ public class QSTileHostTest extends SysuiTestCase {
public void testLoadTileSpec_repeatedDefaultAndSetting() {
mContext.getOrCreateTestableResources()
.addOverride(R.string.quick_settings_tiles_default, "spec1");
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default,spec1", mStatusBarFlags);
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default,spec1");
// Remove spurious tiles, like dbg:mem
specs.removeIf(spec -> !"spec1".equals(spec));
@@ -444,13 +432,11 @@ public class QSTileHostTest extends SysuiTestCase {
BroadcastDispatcher broadcastDispatcher, StatusBar statusBar, QSLogger qsLogger,
UiEventLogger uiEventLogger, UserTracker userTracker,
SecureSettings secureSettings, CustomTileStatePersister customTileStatePersister,
TileServiceRequestController.Builder tileServiceRequestControllerBuilder,
FeatureFlags featureFlags, StatusBarFlags statusBarFlags) {
TileServiceRequestController.Builder tileServiceRequestControllerBuilder) {
super(context, iconController, defaultFactory, mainHandler, bgLooper, pluginManager,
tunerService, autoTiles, dumpManager, broadcastDispatcher,
Optional.of(statusBar), qsLogger, uiEventLogger, userTracker, secureSettings,
customTileStatePersister, tileServiceRequestControllerBuilder, featureFlags,
statusBarFlags);
customTileStatePersister, tileServiceRequestControllerBuilder);
}
@Override

View File

@@ -53,13 +53,8 @@ public class QSCarrierTest extends SysuiTestCase {
mTestableLooper.runWithLooper(() ->
mQSCarrier = (QSCarrier) inflater.inflate(R.layout.qs_carrier, null));
if (FeatureFlagUtils.isEnabled(mContext, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL)) {
// In this case, the id is an actual drawable id
mSignalIconId = TelephonyIcons.MOBILE_CALL_STRENGTH_ICONS[0];
} else {
// In this case, the id is a level
mSignalIconId = SignalDrawable.getEmptyState(5);
}
// In this case, the id is an actual drawable id
mSignalIconId = TelephonyIcons.MOBILE_CALL_STRENGTH_ICONS[0];
}
@Test

View File

@@ -58,7 +58,6 @@ import com.android.systemui.plugins.qs.QSIconView;
import com.android.systemui.plugins.qs.QSTile;
import com.android.systemui.qs.QSTileHost;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.util.concurrency.FakeExecutor;
import com.android.systemui.util.time.FakeSystemClock;
@@ -82,12 +81,12 @@ import java.util.concurrent.Executor;
@RunWith(AndroidTestingRunner.class)
@TestableLooper.RunWithLooper
public class TileQueryHelperTest extends SysuiTestCase {
private static final String CURRENT_TILES = "wifi,dnd,nfc";
private static final String ONLY_STOCK_TILES = "wifi,dnd";
private static final String WITH_OTHER_TILES = "wifi,dnd,other";
private static final String CURRENT_TILES = "internet,dnd,nfc";
private static final String ONLY_STOCK_TILES = "internet,dnd";
private static final String WITH_OTHER_TILES = "internet,dnd,other";
// Note no nfc in stock tiles
private static final String STOCK_TILES = "wifi,dnd,cell,battery";
private static final String ALL_TILES = "wifi,dnd,nfc,cell,battery";
private static final String STOCK_TILES = "internet,dnd,battery";
private static final String ALL_TILES = "internet,dnd,nfc,battery";
private static final Set<String> FACTORY_TILES = new ArraySet<>();
private static final String TEST_PKG = "test_pkg";
private static final String TEST_CLS = "test_cls";
@@ -95,7 +94,7 @@ public class TileQueryHelperTest extends SysuiTestCase {
static {
FACTORY_TILES.addAll(Arrays.asList(
new String[]{"wifi", "bt", "cell", "dnd", "inversion", "airplane", "work",
new String[]{"internet", "bt", "dnd", "inversion", "airplane", "work",
"rotation", "flashlight", "location", "cast", "hotspot", "user", "battery",
"saver", "night", "nfc"}));
FACTORY_TILES.add(CUSTOM_TILE);
@@ -109,8 +108,6 @@ public class TileQueryHelperTest extends SysuiTestCase {
private PackageManager mPackageManager;
@Mock
private UserTracker mUserTracker;
@Mock
private StatusBarFlags mStatusBarFlags;
@Captor
private ArgumentCaptor<List<TileQueryHelper.TileInfo>> mCaptor;
@@ -136,12 +133,11 @@ public class TileQueryHelperTest extends SysuiTestCase {
}
}
).when(mQSTileHost).createTile(anyString());
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(false);
FakeSystemClock clock = new FakeSystemClock();
mMainExecutor = new FakeExecutor(clock);
mBgExecutor = new FakeExecutor(clock);
mTileQueryHelper = new TileQueryHelper(
mContext, mUserTracker, mMainExecutor, mBgExecutor, mStatusBarFlags);
mContext, mUserTracker, mMainExecutor, mBgExecutor);
mTileQueryHelper.setListener(mListener);
}

View File

@@ -45,13 +45,11 @@ import com.android.internal.logging.UiEventLogger;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.qs.QSTileHost;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSFactoryImpl;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.shared.plugins.PluginManager;
import com.android.systemui.statusbar.connectivity.StatusBarFlags;
import com.android.systemui.statusbar.phone.AutoTileManager;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.phone.StatusBarIconController;
@@ -106,10 +104,6 @@ public class TileServicesTest extends SysuiTestCase {
private TileServiceRequestController.Builder mTileServiceRequestControllerBuilder;
@Mock
private TileServiceRequestController mTileServiceRequestController;
@Mock
private FeatureFlags mFeatureFlags;
@Mock
private StatusBarFlags mStatusBarFlags;
@Before
public void setUp() throws Exception {
@@ -136,9 +130,7 @@ public class TileServicesTest extends SysuiTestCase {
mUserTracker,
mSecureSettings,
mock(CustomTileStatePersister.class),
mTileServiceRequestControllerBuilder,
mFeatureFlags,
mStatusBarFlags);
mTileServiceRequestControllerBuilder);
mTileService = new TestTileServices(host, Looper.getMainLooper(), mBroadcastDispatcher,
mUserTracker);
}

View File

@@ -126,7 +126,6 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
protected CarrierConfigTracker mCarrierConfigTracker;
protected FakeExecutor mFakeExecutor = new FakeExecutor(new FakeSystemClock());
protected FeatureFlags mFeatureFlags;
protected StatusBarFlags mStatusBarFlags;
protected int mSubId;
@@ -157,10 +156,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
@Before
public void setUp() throws Exception {
mFeatureFlags = mock(FeatureFlags.class);
mStatusBarFlags = mock(StatusBarFlags.class);
when(mFeatureFlags.isEnabled(Flags.COMBINED_STATUS_BAR_SIGNAL_ICONS)).thenReturn(false);
when(mStatusBarFlags.isProviderModelSettingEnabled()).thenReturn(true);
mInstrumentation = InstrumentationRegistry.getInstrumentation();
Settings.Global.putInt(mContext.getContentResolver(), Global.AIRPLANE_MODE_ON, 0);
@@ -238,7 +234,6 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
mDemoModeController,
mCarrierConfigTracker,
mFeatureFlags,
mStatusBarFlags,
mock(DumpManager.class)
);
setupNetworkController();
@@ -308,7 +303,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
mock(AccessPointControllerImpl.class),
mock(DataUsageController.class), mMockSubDefaults,
mock(DeviceProvisionedController.class), mMockBd, mDemoModeController,
mCarrierConfigTracker, mFeatureFlags, mStatusBarFlags,
mCarrierConfigTracker, mFeatureFlags,
mock(DumpManager.class));
setupNetworkController();

View File

@@ -130,7 +130,7 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
mock(AccessPointControllerImpl.class),
mock(DataUsageController.class), mMockSubDefaults,
mock(DeviceProvisionedController.class), mMockBd, mDemoModeController,
mock(CarrierConfigTracker.class), mFeatureFlags, mStatusBarFlags,
mock(CarrierConfigTracker.class), mFeatureFlags,
mock(DumpManager.class));
setupNetworkController();

View File

@@ -70,7 +70,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
mDemoModeController, mock(CarrierConfigTracker.class), mFeatureFlags,
mStatusBarFlags, mock(DumpManager.class));
mock(DumpManager.class));
setupNetworkController();
verifyLastMobileDataIndicators(false, -1, 0);
@@ -91,7 +91,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
mDemoModeController, mock(CarrierConfigTracker.class), mFeatureFlags,
mStatusBarFlags, mock(DumpManager.class));
mock(DumpManager.class));
mNetworkController.registerListeners();
// Wait for the main looper to execute the previous command
@@ -160,7 +160,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
mDemoModeController, mock(CarrierConfigTracker.class), mFeatureFlags,
mStatusBarFlags, mock(DumpManager.class));
mock(DumpManager.class));
setupNetworkController();
// No Subscriptions.