Commit 164b62d7 authored by Anna Malova's avatar Anna Malova Committed by Commit Bot

[Dark mode]: fix bugs with gradients in dark mode.

- Always apply dark mode filter to the gradients in dark mode.
- Apply dark mode filter if applicable to rounded images.

Bug: 936890
Change-Id: Ic1113b201eaab1d0803e67232364623e143a5e98
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1520681Reviewed-by: default avatarStephen Chenney <schenney@chromium.org>
Reviewed-by: default avatarTobias Sargeant <tobiasjs@chromium.org>
Commit-Queue: Anna Malova <amalova@chromium.org>
Cr-Commit-Position: refs/heads/master@{#649161}
parent f1aa737c
......@@ -44,6 +44,10 @@ class PLATFORM_EXPORT GradientGeneratedImage final : public GeneratedImage {
~GradientGeneratedImage() override = default;
bool ApplyShader(PaintFlags&, const SkMatrix&) override;
DarkModeClassification ClassifyImageForDarkMode(
const FloatRect& src_rect) override {
return DarkModeClassification::kApplyDarkModeFilter;
}
protected:
void Draw(cc::PaintCanvas*,
......
......@@ -951,6 +951,8 @@ void GraphicsContext::DrawImageRRect(
image_flags.setColor(SK_ColorBLACK);
image_flags.setFilterQuality(
ComputeFilterQuality(image, dest.Rect(), src_rect));
if (ShouldApplyDarkModeFilterToImage(*image, src_rect))
image_flags.setColorFilter(dark_mode_filter_);
bool use_shader = (visible_src == src_rect) &&
(respect_orientation == kDoNotRespectImageOrientation);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment