diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarMobileView.java b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarMobileView.java index b7620f30d742e..f81671b2f3b57 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarMobileView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarMobileView.java @@ -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); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarWifiView.java b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarWifiView.java index afd373ed6321e..62cd16fca3bdb 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarWifiView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarWifiView.java @@ -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) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java index b6a11f71f2511..6bc19ea69be72 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationIconAreaController.java @@ -125,7 +125,14 @@ public class NotificationIconAreaController implements DarkReceiver { } else { mTintArea.set(tintArea); } - mIconTint = iconTint; + if (mNotificationIconArea != null) { + if (DarkIconDispatcher.isInArea(tintArea, mNotificationIconArea)) { + mIconTint = iconTint; + } + } else { + mIconTint = iconTint; + } + applyNotificationIconsTint(); }