From e768f4d0abf33f4e1c2ff0f80f472dfb498f24fa Mon Sep 17 00:00:00 2001 From: Jim Graham Date: Wed, 16 Feb 2022 14:09:22 -0800 Subject: [PATCH] adopt new DlColorFilter objects (#12) --- .../display_list/display_list_dispatcher.cc | 17 +++++++++++++++-- impeller/display_list/display_list_dispatcher.h | 2 +- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/impeller/display_list/display_list_dispatcher.cc b/impeller/display_list/display_list_dispatcher.cc index 1724ecf258942..331e002aa5aba 100644 --- a/impeller/display_list/display_list_dispatcher.cc +++ b/impeller/display_list/display_list_dispatcher.cc @@ -79,9 +79,22 @@ void DisplayListDispatcher::setShader(sk_sp shader) { } // |flutter::Dispatcher| -void DisplayListDispatcher::setColorFilter(sk_sp filter) { +void DisplayListDispatcher::setColorFilter( + const flutter::DlColorFilter* filter) { // Needs https://github.com/flutter/flutter/issues/95434 - UNIMPLEMENTED; + if (filter == nullptr) { + // Reset everything + return; + } + switch (filter->type()) { + case flutter::DlColorFilter::kBlend: + case flutter::DlColorFilter::kMatrix: + case flutter::DlColorFilter::kSrgbToLinearGamma: + case flutter::DlColorFilter::kLinearToSrgbGamma: + case flutter::DlColorFilter::kUnknown: + UNIMPLEMENTED; + break; + } } // |flutter::Dispatcher| diff --git a/impeller/display_list/display_list_dispatcher.h b/impeller/display_list/display_list_dispatcher.h index 139ed5c6858fd..79234d418480a 100644 --- a/impeller/display_list/display_list_dispatcher.h +++ b/impeller/display_list/display_list_dispatcher.h @@ -48,7 +48,7 @@ class DisplayListDispatcher final : public flutter::Dispatcher { void setShader(sk_sp shader) override; // |flutter::Dispatcher| - void setColorFilter(sk_sp filter) override; + void setColorFilter(const flutter::DlColorFilter* filter) override; // |flutter::Dispatcher| void setInvertColors(bool invert) override;