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

Commit 97bc8d59 authored by Felka Chang's avatar Felka Chang
Browse files

Fix notification shade inefficient contrast

Because the color of the notification shade contains alpha channel,
the colors in wallpaper blend with the color of the notification
shade. After the blending with wallpaper colors and notification
shade color, the contrast ratio between gear icon and the blending
color is not enough.
The solution is to use the solid color rather than the colors with
the transparency.
Light Theme: shade=#E8EAED gear=#5f6368
Dark Theme: shade=#202124 gear=#9aa0a6

Fixes: 124379911
Test: atest SystemUITests
Change-Id: I0e436a1f6b5507c5083b4b1b9811166d0fb41da7
parent 2cf040d6
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -31,7 +31,10 @@
    <color name="notification_divider_color">#212121</color>

    <!-- The background color of the notification shade -->
    <color name="notification_shade_background_color">#181818</color>
    <color name="notification_shade_background_color">@color/GM2_grey_900</color>

    <!-- The color of the gear shown behind a notification -->
    <color name="notification_gear_color">@color/GM2_grey_500</color>

    <!-- The color of the ripples on the untinted notifications -->
    <color name="notification_ripple_untinted_color">#30ffffff</color>
+2 −2
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@
    <color name="notification_divider_color">#FF616161</color>

    <!-- The background color of the notification shade -->
    <color name="notification_shade_background_color">#ffeeeeee</color>
    <color name="notification_shade_background_color">@color/GM2_grey_200</color>

    <!-- The color of the ripples on the untinted notifications -->
    <color name="notification_ripple_untinted_color">#28000000</color>
@@ -83,7 +83,7 @@
    <color name="notification_ripple_tinted_color">#30ffffff</color>

    <!-- The color of the gear shown behind a notification -->
    <color name="notification_gear_color">#ff757575</color>
    <color name="notification_gear_color">@color/GM2_grey_700</color>

    <!-- The color of the text inside a notification -->
    <color name="notification_primary_text_color">@*android:color/notification_primary_text_color_light</color>
+1 −8
Original line number Diff line number Diff line
@@ -939,18 +939,11 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
            return;
        }

        float alpha =
                BACKGROUND_ALPHA_DIMMED + (1 - BACKGROUND_ALPHA_DIMMED) * (1.0f - mDimAmount);
        alpha *= 1f - mInterpolatedDarkAmount;
        // We need to manually blend in the background color.
        int scrimColor = mScrimController.getBackgroundColor();
        int awakeColor = ColorUtils.blendARGB(scrimColor, mBgColor, alpha);

        // Interpolate between semi-transparent notification panel background color
        // and white AOD separator.
        float colorInterpolation = MathUtils.smoothStep(0.4f /* start */, 1f /* end */,
                mLinearDarkAmount);
        int color = ColorUtils.blendARGB(awakeColor, Color.WHITE, colorInterpolation);
        int color = ColorUtils.blendARGB(mBgColor, Color.WHITE, colorInterpolation);

        if (mCachedBackgroundColor != color) {
            mCachedBackgroundColor = color;