Revert "[DO NOT MERGE] Make sure WiFi and Cell tiles are not created in Provider Model am: bc6f74dbc3"
This reverts commit b4fcb5842b.
Reason for revert: Breaking the build
Change-Id: Iaee8310ad7d661e3ff4d7f66a1f7813b9b81414a
This commit is contained in:
@@ -51,7 +51,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.FeatureFlags;
|
||||
import com.android.systemui.statusbar.phone.AutoTileManager;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarIconController;
|
||||
@@ -96,7 +95,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;
|
||||
@@ -124,8 +122,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
|
||||
UiEventLogger uiEventLogger,
|
||||
UserTracker userTracker,
|
||||
SecureSettings secureSettings,
|
||||
CustomTileStatePersister customTileStatePersister,
|
||||
FeatureFlags featureFlags
|
||||
CustomTileStatePersister customTileStatePersister
|
||||
) {
|
||||
mIconController = iconController;
|
||||
mContext = context;
|
||||
@@ -147,7 +144,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
|
||||
@@ -269,7 +265,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, mFeatureFlags);
|
||||
final List<String> tileSpecs = loadTileSpecs(mContext, newValue);
|
||||
int currentUser = mUserTracker.getUserId();
|
||||
if (currentUser != mCurrentUser) {
|
||||
mUserContext = mUserTracker.getUserContext();
|
||||
@@ -338,7 +334,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, "", mFeatureFlags));
|
||||
changeTiles(currentSpecs, loadTileSpecs(mContext, ""));
|
||||
} else {
|
||||
for (int i = 0; i < mCallbacks.size(); i++) {
|
||||
mCallbacks.get(i).onTilesChanged();
|
||||
@@ -406,7 +402,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, mFeatureFlags);
|
||||
final List<String> tileSpecs = loadTileSpecs(mContext, setting);
|
||||
if (changeFunction.test(tileSpecs)) {
|
||||
saveTilesToSettings(tileSpecs);
|
||||
}
|
||||
@@ -495,8 +491,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, FeatureFlags featureFlags) {
|
||||
protected static List<String> loadTileSpecs(Context context, String tileList) {
|
||||
final Resources res = context.getResources();
|
||||
|
||||
if (TextUtils.isEmpty(tileList)) {
|
||||
@@ -529,21 +524,6 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
|
||||
}
|
||||
}
|
||||
}
|
||||
if (featureFlags.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");
|
||||
tiles.remove("cell");
|
||||
}
|
||||
}
|
||||
return tiles;
|
||||
}
|
||||
|
||||
|
||||
@@ -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.FeatureFlags;
|
||||
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 FeatureFlags mFeatureFlags;
|
||||
private TileStateListener mListener;
|
||||
|
||||
private boolean mFinished;
|
||||
@@ -73,14 +71,12 @@ public class TileQueryHelper {
|
||||
Context context,
|
||||
UserTracker userTracker,
|
||||
@Main Executor mainExecutor,
|
||||
@Background Executor bgExecutor,
|
||||
FeatureFlags featureFlags
|
||||
@Background Executor bgExecutor
|
||||
) {
|
||||
mContext = context;
|
||||
mMainExecutor = mainExecutor;
|
||||
mBgExecutor = bgExecutor;
|
||||
mUserTracker = userTracker;
|
||||
mFeatureFlags = featureFlags;
|
||||
}
|
||||
|
||||
public void setListener(TileStateListener listener) {
|
||||
@@ -121,10 +117,6 @@ public class TileQueryHelper {
|
||||
}
|
||||
|
||||
final ArrayList<QSTile> tilesToAdd = new ArrayList<>();
|
||||
if (mFeatureFlags.isProviderModelSettingEnabled()) {
|
||||
possibleTiles.remove("cell");
|
||||
possibleTiles.remove("wifi");
|
||||
}
|
||||
|
||||
for (String spec : possibleTiles) {
|
||||
// Only add current and stock tiles that can be created from QSFactoryImpl.
|
||||
|
||||
@@ -139,7 +139,7 @@ public class QSFragmentTest extends SysuiBaseFragmentTest {
|
||||
() -> mock(AutoTileManager.class), mock(DumpManager.class),
|
||||
mock(BroadcastDispatcher.class), Optional.of(mock(StatusBar.class)),
|
||||
mock(QSLogger.class), mock(UiEventLogger.class), mock(UserTracker.class),
|
||||
mock(SecureSettings.class), mock(CustomTileStatePersister.class), mFeatureFlags);
|
||||
mock(SecureSettings.class), mock(CustomTileStatePersister.class));
|
||||
qs.setHost(host);
|
||||
|
||||
qs.setListening(true);
|
||||
|
||||
@@ -60,7 +60,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.FeatureFlags;
|
||||
import com.android.systemui.statusbar.phone.AutoTileManager;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarIconController;
|
||||
@@ -121,8 +120,6 @@ public class QSTileHostTest extends SysuiTestCase {
|
||||
private SecureSettings mSecureSettings;
|
||||
@Mock
|
||||
private CustomTileStatePersister mCustomTileStatePersister;
|
||||
@Mock
|
||||
private FeatureFlags mFeatureFlags;
|
||||
|
||||
private Handler mHandler;
|
||||
private TestableLooper mLooper;
|
||||
@@ -140,14 +137,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, mFeatureFlags);
|
||||
mSecureSettings, mCustomTileStatePersister);
|
||||
setUpTileFactory();
|
||||
<<<<<<< TARGET BRANCH (33be4a Merge "Correctly clip QS during heads-up pull down" into sc-)
|
||||
=======
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(false);
|
||||
when(mSecureSettings.getStringForUser(eq(QSTileHost.TILES_SETTING), anyInt()))
|
||||
.thenReturn("");
|
||||
>>>>>>> SOURCE BRANCH (bc6f74 [DO NOT MERGE] Make sure WiFi and Cell tiles are not created)
|
||||
}
|
||||
|
||||
private void setUpTileFactory() {
|
||||
@@ -175,13 +166,13 @@ public class QSTileHostTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testLoadTileSpecs_emptySetting() {
|
||||
List<String> tiles = QSTileHost.loadTileSpecs(mContext, "", mFeatureFlags);
|
||||
List<String> tiles = QSTileHost.loadTileSpecs(mContext, "");
|
||||
assertFalse(tiles.isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLoadTileSpecs_nullSetting() {
|
||||
List<String> tiles = QSTileHost.loadTileSpecs(mContext, null, mFeatureFlags);
|
||||
List<String> tiles = QSTileHost.loadTileSpecs(mContext, null);
|
||||
assertFalse(tiles.isEmpty());
|
||||
}
|
||||
|
||||
@@ -194,55 +185,6 @@ public class QSTileHostTest extends SysuiTestCase {
|
||||
assertEquals(2, mQSTileHost.getTiles().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRemoveWifiAndCellularWithoutInternet() {
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(true);
|
||||
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "wifi, spec1, cell, spec2");
|
||||
|
||||
assertEquals("internet", mQSTileHost.mTileSpecs.get(0));
|
||||
assertEquals("spec1", mQSTileHost.mTileSpecs.get(1));
|
||||
assertEquals("spec2", mQSTileHost.mTileSpecs.get(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRemoveWifiAndCellularWithInternet() {
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(true);
|
||||
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "wifi, spec1, cell, spec2, internet");
|
||||
|
||||
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
|
||||
assertEquals("spec2", mQSTileHost.mTileSpecs.get(1));
|
||||
assertEquals("internet", mQSTileHost.mTileSpecs.get(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRemoveWifiWithoutInternet() {
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(true);
|
||||
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1, wifi, spec2");
|
||||
|
||||
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
|
||||
assertEquals("internet", mQSTileHost.mTileSpecs.get(1));
|
||||
assertEquals("spec2", mQSTileHost.mTileSpecs.get(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRemoveCellWithInternet() {
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(true);
|
||||
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1, spec2, cell, internet");
|
||||
|
||||
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
|
||||
assertEquals("spec2", mQSTileHost.mTileSpecs.get(1));
|
||||
assertEquals("internet", mQSTileHost.mTileSpecs.get(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNoWifiNoCellularNoInternet() {
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(true);
|
||||
mQSTileHost.onTuningChanged(QSTileHost.TILES_SETTING, "spec1,spec2");
|
||||
|
||||
assertEquals("spec1", mQSTileHost.mTileSpecs.get(0));
|
||||
assertEquals("spec2", mQSTileHost.mTileSpecs.get(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSpecWithInvalidDoesNotUseDefault() {
|
||||
mContext.getOrCreateTestableResources()
|
||||
@@ -376,7 +318,7 @@ public class QSTileHostTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void testLoadTileSpec_repeated() {
|
||||
List<String> specs = QSTileHost.loadTileSpecs(mContext, "spec1,spec1,spec2", mFeatureFlags);
|
||||
List<String> specs = QSTileHost.loadTileSpecs(mContext, "spec1,spec1,spec2");
|
||||
|
||||
assertEquals(2, specs.size());
|
||||
assertEquals("spec1", specs.get(0));
|
||||
@@ -387,7 +329,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", mFeatureFlags);
|
||||
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default");
|
||||
|
||||
// Remove spurious tiles, like dbg:mem
|
||||
specs.removeIf(spec -> !"spec1".equals(spec));
|
||||
@@ -398,7 +340,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", mFeatureFlags);
|
||||
List<String> specs = QSTileHost.loadTileSpecs(mContext, "default,spec1");
|
||||
|
||||
// Remove spurious tiles, like dbg:mem
|
||||
specs.removeIf(spec -> !"spec1".equals(spec));
|
||||
@@ -436,12 +378,11 @@ public class QSTileHostTest extends SysuiTestCase {
|
||||
Provider<AutoTileManager> autoTiles, DumpManager dumpManager,
|
||||
BroadcastDispatcher broadcastDispatcher, StatusBar statusBar, QSLogger qsLogger,
|
||||
UiEventLogger uiEventLogger, UserTracker userTracker,
|
||||
SecureSettings secureSettings, CustomTileStatePersister customTileStatePersister,
|
||||
FeatureFlags featureFlags) {
|
||||
SecureSettings secureSettings, CustomTileStatePersister customTileStatePersister) {
|
||||
super(context, iconController, defaultFactory, mainHandler, bgLooper, pluginManager,
|
||||
tunerService, autoTiles, dumpManager, broadcastDispatcher,
|
||||
Optional.of(statusBar), qsLogger, uiEventLogger, userTracker, secureSettings,
|
||||
customTileStatePersister, featureFlags);
|
||||
customTileStatePersister);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -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.FeatureFlags;
|
||||
import com.android.systemui.util.concurrency.FakeExecutor;
|
||||
import com.android.systemui.util.time.FakeSystemClock;
|
||||
|
||||
@@ -109,8 +108,6 @@ public class TileQueryHelperTest extends SysuiTestCase {
|
||||
private PackageManager mPackageManager;
|
||||
@Mock
|
||||
private UserTracker mUserTracker;
|
||||
@Mock
|
||||
private FeatureFlags mFeatureFlags;
|
||||
@Captor
|
||||
private ArgumentCaptor<List<TileQueryHelper.TileInfo>> mCaptor;
|
||||
|
||||
@@ -136,12 +133,12 @@ public class TileQueryHelperTest extends SysuiTestCase {
|
||||
}
|
||||
}
|
||||
).when(mQSTileHost).createTile(anyString());
|
||||
when(mFeatureFlags.isProviderModelSettingEnabled()).thenReturn(false);
|
||||
|
||||
FakeSystemClock clock = new FakeSystemClock();
|
||||
mMainExecutor = new FakeExecutor(clock);
|
||||
mBgExecutor = new FakeExecutor(clock);
|
||||
mTileQueryHelper = new TileQueryHelper(
|
||||
mContext, mUserTracker, mMainExecutor, mBgExecutor, mFeatureFlags);
|
||||
mContext, mUserTracker, mMainExecutor, mBgExecutor);
|
||||
mTileQueryHelper.setListener(mListener);
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,6 @@ 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.FeatureFlags;
|
||||
import com.android.systemui.statusbar.phone.AutoTileManager;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.phone.StatusBarIconController;
|
||||
@@ -99,8 +98,6 @@ public class TileServicesTest extends SysuiTestCase {
|
||||
private UserTracker mUserTracker;
|
||||
@Mock
|
||||
private SecureSettings mSecureSettings;
|
||||
@Mock
|
||||
private FeatureFlags mFeatureFlags;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
@@ -122,8 +119,7 @@ public class TileServicesTest extends SysuiTestCase {
|
||||
mUiEventLogger,
|
||||
mUserTracker,
|
||||
mSecureSettings,
|
||||
mock(CustomTileStatePersister.class),
|
||||
mFeatureFlags);
|
||||
mock(CustomTileStatePersister.class));
|
||||
mTileService = new TestTileServices(host, Looper.getMainLooper(), mBroadcastDispatcher,
|
||||
mUserTracker);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user