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

Commit 4da12d66 authored by Steve Elliott's avatar Steve Elliott Committed by Android (Google) Code Review
Browse files

Merge "Fix initial color of statusbar notif icons" into main

parents 6ea41f31 e15bfa23
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -305,8 +305,6 @@ object NotificationIconContainerViewBinder {
                    }
                }
            }
            // Recalculate all icon positions, to reflect our updates.
            view.calculateIconXTranslations()
        }
    }

+3 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.view.View
import com.android.internal.util.ContrastColorUtil
import com.android.systemui.res.R
import com.android.systemui.statusbar.StatusBarIconView
import com.android.systemui.statusbar.StatusBarIconView.NO_COLOR
import com.android.systemui.statusbar.notification.NotificationUtils
import com.android.systemui.statusbar.notification.icon.ui.viewmodel.NotificationIconColors
import kotlinx.coroutines.flow.Flow
@@ -54,7 +55,8 @@ object StatusBarIconViewBinder {
        iconColors.collect { colors ->
            val isPreL = java.lang.Boolean.TRUE == view.getTag(R.id.icon_is_pre_L)
            val isColorized = !isPreL || NotificationUtils.isGrayscale(view, contrastColorUtil)
            view.staticDrawableColor = colors.staticDrawableColor(view.viewBounds, isColorized)
            view.staticDrawableColor =
                if (isColorized) colors.staticDrawableColor(view.viewBounds) else NO_COLOR
            view.setDecorColor(colors.tint)
        }
    }
+1 −1
Original line number Diff line number Diff line
@@ -35,5 +35,5 @@ interface NotificationIconColors {
     * Returns the color to be applied to an icon, based on that icon's view bounds and whether or
     * not the notification icon is colorized.
     */
    fun staticDrawableColor(viewBounds: Rect, isColorized: Boolean): Int
    fun staticDrawableColor(viewBounds: Rect): Int
}
+2 −2
Original line number Diff line number Diff line
@@ -117,8 +117,8 @@ constructor(
        override val tint: Int,
        private val areas: Collection<Rect>,
    ) : NotificationIconColors {
        override fun staticDrawableColor(viewBounds: Rect, isColorized: Boolean): Int {
            return if (isColorized && DarkIconDispatcher.isInAreas(areas, viewBounds)) {
        override fun staticDrawableColor(viewBounds: Rect): Int {
            return if (DarkIconDispatcher.isInAreas(areas, viewBounds)) {
                tint
            } else {
                DarkIconDispatcher.DEFAULT_ICON_TINT
+2 −1
Original line number Diff line number Diff line
@@ -46,7 +46,8 @@ public interface SysuiDarkIconDispatcher extends DarkIconDispatcher, Dumpable {
    /** Model for {@link #darkChangeFlow()} */
    class DarkChange {

        public static final DarkChange EMPTY = new DarkChange(new ArrayList<>(), 0, 0);
        public static final DarkChange EMPTY =
                new DarkChange(new ArrayList<>(), /* darkIntensity= */ 0f, DEFAULT_ICON_TINT);

        public DarkChange(Collection<Rect> areas, float darkIntensity, int tint) {
            this.areas = areas;
Loading