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

Commit d547dfa9 authored by Caitlin Shkuratov's avatar Caitlin Shkuratov Committed by Android (Google) Code Review
Browse files

Merge changes I723cfc04,I1eba794e,I9d421a4a,Icd9c2b14,Idee192ff, ... into tm-qpr-dev

* changes:
  [SB Refactor] Only show wifi icon if (1) the network is active and validated; or (2) we're configured to always show it when enabled.
  [SB Refactor] Listen to the WIFI_STATE_CHANGED_ACTION broadcasts and re-fetch `isWifiEnabled` whenever it happens.
  [SB Refactor] Connect the old pipeline and new pipeline visibility calculations together for wifi.
  [SB Refactor] Add an annotation for the visibility states.
  [SB Refactor] Add tracking for wifi enabled state and pipe it through to the UI.
  [SB Refactor] Turn the wifi ViewModel into an @SysUISingleton and instead create separate view models per location.
  [SB Refactor] Display the activity in and out icons using the new pipeline.
  [SB Refactor] Expose the wifi repository flows as StateFlows.
parents a9a1ba19 2dc080cb
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -131,6 +131,9 @@
    <!-- For StatusIconContainer to tag its icon views -->
    <item type="id" name="status_bar_view_state_tag" />

    <!-- Status bar -->
    <item type="id" name="status_bar_dot" />

    <!-- Default display cutout on the physical top of screen -->
    <item type="id" name="display_cutout" />
    <item type="id" name="display_cutout_left" />
+2 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import com.android.systemui.qs.carrier.QSCarrierGroupController;
import com.android.systemui.qs.dagger.QSScope;
import com.android.systemui.statusbar.phone.StatusBarContentInsetsProvider;
import com.android.systemui.statusbar.phone.StatusBarIconController;
import com.android.systemui.statusbar.phone.StatusBarLocation;
import com.android.systemui.statusbar.phone.StatusIconContainer;
import com.android.systemui.statusbar.policy.Clock;
import com.android.systemui.statusbar.policy.VariableDateViewController;
@@ -104,7 +105,7 @@ class QuickStatusBarHeaderController extends ViewController<QuickStatusBarHeader
                mView.requireViewById(R.id.date_clock)
        );

        mIconManager = tintedIconManagerFactory.create(mIconContainer);
        mIconManager = tintedIconManagerFactory.create(mIconContainer, StatusBarLocation.QS);
        mDemoModeReceiver = new ClockDemoModeReceiver(mClockView);
        mColorExtractor = colorExtractor;
        mOnColorsChangedListener = (extractor, which) -> {
+2 −1
Original line number Diff line number Diff line
@@ -48,6 +48,7 @@ import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.QQS
import com.android.systemui.shade.LargeScreenShadeHeaderController.Companion.QS_HEADER_CONSTRAINT
import com.android.systemui.statusbar.phone.StatusBarContentInsetsProvider
import com.android.systemui.statusbar.phone.StatusBarIconController
import com.android.systemui.statusbar.phone.StatusBarLocation
import com.android.systemui.statusbar.phone.StatusIconContainer
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent.CentralSurfacesScope
import com.android.systemui.statusbar.phone.dagger.StatusBarViewModule.LARGE_SCREEN_BATTERY_CONTROLLER
@@ -261,7 +262,7 @@ class LargeScreenShadeHeaderController @Inject constructor(
        batteryMeterViewController.ignoreTunerUpdates()
        batteryIcon.setPercentShowMode(BatteryMeterView.MODE_ESTIMATE)

        iconManager = tintedIconManagerFactory.create(iconContainer)
        iconManager = tintedIconManagerFactory.create(iconContainer, StatusBarLocation.QS)
        iconManager.setTint(
            Utils.getColorAttrDefaultColor(header.context, android.R.attr.textColorPrimary)
        )
+12 −2
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
import android.annotation.IntDef;
import android.app.ActivityManager;
import android.app.Notification;
import android.content.Context;
@@ -59,6 +60,8 @@ import com.android.systemui.statusbar.notification.NotificationIconDozeHelper;
import com.android.systemui.statusbar.notification.NotificationUtils;
import com.android.systemui.util.drawable.DrawableSize;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -86,6 +89,10 @@ public class StatusBarIconView extends AnimatedImageView implements StatusIconDi
    public static final int STATE_DOT = 1;
    public static final int STATE_HIDDEN = 2;

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({STATE_ICON, STATE_DOT, STATE_HIDDEN})
    public @interface VisibleState { }

    private static final String TAG = "StatusBarIconView";
    private static final Property<StatusBarIconView, Float> ICON_APPEAR_AMOUNT
            = new FloatProperty<StatusBarIconView>("iconAppearAmount") {
@@ -133,6 +140,7 @@ public class StatusBarIconView extends AnimatedImageView implements StatusIconDi
    private final Paint mDotPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
    private float mDotRadius;
    private int mStaticDotRadius;
    @StatusBarIconView.VisibleState
    private int mVisibleState = STATE_ICON;
    private float mIconAppearAmount = 1.0f;
    private ObjectAnimator mIconAppearAnimator;
@@ -746,11 +754,12 @@ public class StatusBarIconView extends AnimatedImageView implements StatusIconDi
    }

    @Override
    public void setVisibleState(int state) {
    public void setVisibleState(@StatusBarIconView.VisibleState int state) {
        setVisibleState(state, true /* animate */, null /* endRunnable */);
    }

    public void setVisibleState(int state, boolean animate) {
    @Override
    public void setVisibleState(@StatusBarIconView.VisibleState int state, boolean animate) {
        setVisibleState(state, animate, null);
    }

@@ -862,6 +871,7 @@ public class StatusBarIconView extends AnimatedImageView implements StatusIconDi
        return mIconAppearAmount;
    }

    @StatusBarIconView.VisibleState
    public int getVisibleState() {
        return mVisibleState;
    }
+4 −2
Original line number Diff line number Diff line
@@ -59,7 +59,8 @@ public class StatusBarMobileView extends FrameLayout implements DarkReceiver,
    private ImageView mOut;
    private ImageView mMobile, mMobileType, mMobileRoaming;
    private View mMobileRoamingSpace;
    private int mVisibleState = -1;
    @StatusBarIconView.VisibleState
    private int mVisibleState = STATE_HIDDEN;
    private DualToneHandler mDualToneHandler;
    private boolean mForceHidden;

@@ -271,7 +272,7 @@ public class StatusBarMobileView extends FrameLayout implements DarkReceiver,
    }

    @Override
    public void setVisibleState(int state, boolean animate) {
    public void setVisibleState(@StatusBarIconView.VisibleState int state, boolean animate) {
        if (state == mVisibleState) {
            return;
        }
@@ -312,6 +313,7 @@ public class StatusBarMobileView extends FrameLayout implements DarkReceiver,
    }

    @Override
    @StatusBarIconView.VisibleState
    public int getVisibleState() {
        return mVisibleState;
    }
Loading