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

Commit dbeefe33 authored by Evan Laird's avatar Evan Laird
Browse files

Fix icon tinting when in split screen

NotificationIconAreaController, StatusBarWifiView, StatusBarMobileView
all now respect the tintArea when `onDarkChanged` gets called

Test: visual; Split screen, chrome on top and settings on bottom, no icons
should be dark.

Change-Id: I7aa8f3383da3855e8ceab702539fce71edaa6af2
Fixes: 77494939
parent 7219f8ba
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.statusbar;

import static com.android.systemui.statusbar.policy.DarkIconDispatcher.getTint;
import static com.android.systemui.statusbar.policy.DarkIconDispatcher.isInArea;

import android.content.Context;
import android.content.res.ColorStateList;
@@ -161,6 +162,9 @@ public class StatusBarMobileView extends AlphaOptimizedLinearLayout implements D

    @Override
    public void onDarkChanged(Rect area, float darkIntensity, int tint) {
        if (!isInArea(area, this)) {
            return;
        }
        mMobileDrawable.setDarkIntensity(darkIntensity);
        ColorStateList color = ColorStateList.valueOf(getTint(area, this, tint));
        mIn.setImageTintList(color);
+4 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.statusbar;

import static com.android.systemui.statusbar.policy.DarkIconDispatcher.getTint;
import static com.android.systemui.statusbar.policy.DarkIconDispatcher.isInArea;

import android.content.Context;
import android.content.res.ColorStateList;
@@ -175,6 +176,9 @@ public class StatusBarWifiView extends AlphaOptimizedLinearLayout implements Dar

    @Override
    public void onDarkChanged(Rect area, float darkIntensity, int tint) {
        if (!isInArea(area, this)) {
            return;
        }
        mDarkIntensity = darkIntensity;
        Drawable d = mWifiIcon.getDrawable();
        if (d instanceof NeutralGoodDrawable) {
+8 −1
Original line number Diff line number Diff line
@@ -125,7 +125,14 @@ public class NotificationIconAreaController implements DarkReceiver {
        } else {
            mTintArea.set(tintArea);
        }
        if (mNotificationIconArea != null) {
            if (DarkIconDispatcher.isInArea(tintArea, mNotificationIconArea)) {
                mIconTint = iconTint;
            }
        } else {
            mIconTint = iconTint;
        }

        applyNotificationIconsTint();
    }