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

Commit 30a2c5b0 authored by Evan Laird's avatar Evan Laird
Browse files

Revert systemui status bar provider model behavior

This CL reverts the status bar provider model behavior. It removes the
logic to show only one icon at a time, and removes showing the call
strength indicators.

This change keeps the Internet tile, and decouples SystemUI from the
system setting SETTING_PROVIDER_MODEL.

Bug: 191903788
Test: atest SystemUITests SystemUIGoogleTests; manual
Test: test with a SIM and a Wi-Fi connection and there should be both
      icons in the status bar and quick settings with this change. As
      well as the Internet tile should stay (rather than going back to
      the Cell and Wi-Fi tiles).
Change-Id: I017c10e4d7c1b15b152c44d092695dbc77e4a0ec
Merged-In: I017c10e4d7c1b15b152c44d092695dbc77e4a0ec
parent 4eaca4eb
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -52,4 +52,6 @@
    <bool name="flag_smartspace">false</bool>

    <bool name="flag_smartspace_deduping">true</bool>

    <bool name="flag_combined_status_bar_signal_icons">false</bool>
</resources>
+3 −0
Original line number Diff line number Diff line
@@ -73,6 +73,7 @@ import com.android.systemui.shared.system.ActivityManagerWrapper;
import com.android.systemui.shared.system.DevicePolicyManagerWrapper;
import com.android.systemui.shared.system.PackageManagerWrapper;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.NotificationListener;
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
import com.android.systemui.statusbar.NotificationMediaManager;
@@ -360,6 +361,7 @@ public class Dependency {
    @Inject Lazy<PrivacyDotViewController> mPrivacyDotViewControllerLazy;
    @Inject Lazy<EdgeBackGestureHandler> mEdgeBackGestureHandler;
    @Inject Lazy<UiEventLogger> mUiEventLogger;
    @Inject Lazy<FeatureFlags> mFeatureFlagsLazy;

    @Inject
    public Dependency() {
@@ -574,6 +576,7 @@ public class Dependency {
        mProviders.put(PrivacyDotViewController.class, mPrivacyDotViewControllerLazy::get);
        mProviders.put(EdgeBackGestureHandler.class, mEdgeBackGestureHandler::get);
        mProviders.put(UiEventLogger.class, mUiEventLogger::get);
        mProviders.put(FeatureFlags.class, mFeatureFlagsLazy::get);

        Dependency.setInstance(this);
    }
+5 −4
Original line number Diff line number Diff line
@@ -27,7 +27,6 @@ import android.provider.Settings.Secure;
import android.service.quicksettings.Tile;
import android.text.TextUtils;
import android.util.ArraySet;
import android.util.FeatureFlagUtils;
import android.util.Log;

import com.android.internal.logging.InstanceId;
@@ -52,6 +51,7 @@ 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;
@@ -123,7 +123,8 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
            UiEventLogger uiEventLogger,
            UserTracker userTracker,
            SecureSettings secureSettings,
            CustomTileStatePersister customTileStatePersister) {
            CustomTileStatePersister customTileStatePersister
    ) {
        mIconController = iconController;
        mContext = context;
        mUserContext = context;
@@ -517,7 +518,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
        //   --WiFiTile
        //   --CellularTIle
        if (tiles.contains("internet") || tiles.contains("wifi") || tiles.contains("cell")) {
            if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL)) {
            if (FeatureFlags.isProviderModelSettingEnabled(context)) {
                if (!tiles.contains("internet")) {
                    if (tiles.contains("wifi")) {
                        // Replace the WiFi with Internet, and remove the Cell
@@ -559,7 +560,7 @@ public class QSTileHost implements QSHost, Tunable, PluginListener<QSFactory>, D
        }
        // TODO(b/174753536): Change the config file directly.
        // Filter out unused tiles from the default QS config.
        if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL)) {
        if (FeatureFlags.isProviderModelSettingEnabled(context)) {
            tiles.remove("cell");
            tiles.remove("wifi");
        } else {
+4 −8
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import android.content.res.Resources;
import android.graphics.Color;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.util.FeatureFlagUtils;
import android.util.Pair;
import android.view.DisplayCutout;
import android.view.View;
@@ -88,11 +87,11 @@ public class QuickStatusBarHeader extends FrameLayout {
    private float mKeyguardExpansionFraction;
    private int mTextColorPrimary = Color.TRANSPARENT;
    private int mTopViewMeasureHeight;
    private boolean mProviderModel;

    private final String mMobileSlotName;
    private final String mNoCallingSlotName;
    private final String mCallStrengthSlotName;
    private final boolean mProviderModel;

    public QuickStatusBarHeader(Context context, AttributeSet attrs) {
        super(context, attrs);
@@ -100,11 +99,6 @@ public class QuickStatusBarHeader extends FrameLayout {
        mNoCallingSlotName = context.getString(com.android.internal.R.string.status_bar_no_calling);
        mCallStrengthSlotName =
                context.getString(com.android.internal.R.string.status_bar_call_strength);
        if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL)) {
            mProviderModel = true;
        } else {
            mProviderModel = false;
        }
    }

    /**
@@ -154,7 +148,9 @@ public class QuickStatusBarHeader extends FrameLayout {
    }

    void onAttach(TintedIconManager iconManager,
            QSExpansionPathInterpolator qsExpansionPathInterpolator) {
            QSExpansionPathInterpolator qsExpansionPathInterpolator,
            boolean providerModel) {
        mProviderModel = providerModel;
        mTintedIconManager = iconManager;
        int fillColor = Utils.getColorAttrDefaultColor(getContext(),
                android.R.attr.textColorPrimary);
+8 −3
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ import com.android.systemui.privacy.PrivacyItemController;
import com.android.systemui.privacy.logging.PrivacyLogger;
import com.android.systemui.qs.carrier.QSCarrierGroupController;
import com.android.systemui.qs.dagger.QSScope;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.phone.StatusBarIconController;
import com.android.systemui.statusbar.phone.StatusIconContainer;
import com.android.systemui.statusbar.policy.Clock;
@@ -69,6 +70,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
    private final PrivacyLogger mPrivacyLogger;
    private final PrivacyDialogController mPrivacyDialogController;
    private final QSExpansionPathInterpolator mQSExpansionPathInterpolator;
    private final FeatureFlags mFeatureFlags;

    private boolean mListening;
    private boolean mMicCameraIndicatorsEnabled;
@@ -130,7 +132,8 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
            PrivacyLogger privacyLogger,
            SysuiColorExtractor colorExtractor,
            PrivacyDialogController privacyDialogController,
            QSExpansionPathInterpolator qsExpansionPathInterpolator) {
            QSExpansionPathInterpolator qsExpansionPathInterpolator,
            FeatureFlags featureFlags) {
        super(view);
        mPrivacyItemController = privacyItemController;
        mActivityStarter = activityStarter;
@@ -141,6 +144,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        mPrivacyLogger = privacyLogger;
        mPrivacyDialogController = privacyDialogController;
        mQSExpansionPathInterpolator = qsExpansionPathInterpolator;
        mFeatureFlags = featureFlags;

        mQSCarrierGroupController = qsCarrierGroupControllerBuilder
                .setQSCarrierGroup(mView.findViewById(R.id.carrier_group))
@@ -150,7 +154,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
        mClockView = mView.findViewById(R.id.clock);
        mIconContainer = mView.findViewById(R.id.statusIcons);

        mIconManager = new StatusBarIconController.TintedIconManager(mIconContainer);
        mIconManager = new StatusBarIconController.TintedIconManager(mIconContainer, mFeatureFlags);
        mDemoModeReceiver = new ClockDemoModeReceiver(mClockView);
        mColorExtractor = colorExtractor;
        mOnColorsChangedListener = (extractor, which) -> {
@@ -174,7 +178,8 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader

        setChipVisibility(mPrivacyChip.getVisibility() == View.VISIBLE);

        mView.onAttach(mIconManager, mQSExpansionPathInterpolator);
        mView.onAttach(mIconManager, mQSExpansionPathInterpolator,
                mFeatureFlags.isCombinedStatusBarSignalIconsEnabled());

        mDemoModeController.addCallback(mDemoModeReceiver);
    }
Loading