Skip to content

[Unblock Lint Headers] Make Dl*ImageFilter Clang Tidy Approved #135062

@matanlurey

Description

@matanlurey

Blocks #134969.

I'm requesting help if anyone could use a simple~ish task to work on in the background.


The work required is roughly the following:

@@ -5,6 +5,8 @@
 #ifndef FLUTTER_DISPLAY_LIST_EFFECTS_DL_IMAGE_FILTER_H_
 #define FLUTTER_DISPLAY_LIST_EFFECTS_DL_IMAGE_FILTER_H_
 
+#include <utility>
+
 #include "flutter/display_list/dl_attributes.h"
 #include "flutter/display_list/dl_sampling_options.h"
 #include "flutter/display_list/dl_tile_mode.h"
@@ -223,7 +225,7 @@ class DlBlurImageFilter final : public DlImageFilter {
       : DlBlurImageFilter(filter->sigma_x_,
                           filter->sigma_y_,
                           filter->tile_mode_) {}
-  explicit DlBlurImageFilter(const DlBlurImageFilter& filter)
+  DlBlurImageFilter(const DlBlurImageFilter& filter)
       : DlBlurImageFilter(&filter) {}
 
   static std::shared_ptr<DlImageFilter> Make(SkScalar sigma_x,
@@ -295,7 +297,7 @@ class DlDilateImageFilter final : public DlImageFilter {
       : radius_x_(radius_x), radius_y_(radius_y) {}
   explicit DlDilateImageFilter(const DlDilateImageFilter* filter)
       : DlDilateImageFilter(filter->radius_x_, filter->radius_y_) {}
-  explicit DlDilateImageFilter(const DlDilateImageFilter& filter)
+  DlDilateImageFilter(const DlDilateImageFilter& filter)
       : DlDilateImageFilter(&filter) {}
 
   static std::shared_ptr<DlImageFilter> Make(SkScalar radius_x,
@@ -359,7 +361,7 @@ class DlErodeImageFilter final : public DlImageFilter {
       : radius_x_(radius_x), radius_y_(radius_y) {}
   explicit DlErodeImageFilter(const DlErodeImageFilter* filter)
       : DlErodeImageFilter(filter->radius_x_, filter->radius_y_) {}
-  explicit DlErodeImageFilter(const DlErodeImageFilter& filter)
+  DlErodeImageFilter(const DlErodeImageFilter& filter)
       : DlErodeImageFilter(&filter) {}
 
   static std::shared_ptr<DlImageFilter> Make(SkScalar radius_x,
@@ -423,7 +425,7 @@ class DlMatrixImageFilter final : public DlImageFilter {
       : matrix_(matrix), sampling_(sampling) {}
   explicit DlMatrixImageFilter(const DlMatrixImageFilter* filter)
       : DlMatrixImageFilter(filter->matrix_, filter->sampling_) {}
-  explicit DlMatrixImageFilter(const DlMatrixImageFilter& filter)
+  DlMatrixImageFilter(const DlMatrixImageFilter& filter)
       : DlMatrixImageFilter(&filter) {}
 
   static std::shared_ptr<DlImageFilter> Make(const SkMatrix& matrix,
@@ -510,7 +512,7 @@ class DlComposeImageFilter final : public DlImageFilter {
       : DlComposeImageFilter(&outer, &inner) {}
   explicit DlComposeImageFilter(const DlComposeImageFilter* filter)
       : DlComposeImageFilter(filter->outer_, filter->inner_) {}
-  explicit DlComposeImageFilter(const DlComposeImageFilter& filter)
+  DlComposeImageFilter(const DlComposeImageFilter& filter)
       : DlComposeImageFilter(&filter) {}
 
   static std::shared_ptr<const DlImageFilter> Make(
@@ -586,11 +588,11 @@ class DlColorFilterImageFilter final : public DlImageFilter {
       : color_filter_(filter.shared()) {}
   explicit DlColorFilterImageFilter(const DlColorFilterImageFilter* filter)
       : DlColorFilterImageFilter(filter->color_filter_) {}
-  explicit DlColorFilterImageFilter(const DlColorFilterImageFilter& filter)
+  DlColorFilterImageFilter(const DlColorFilterImageFilter& filter)
       : DlColorFilterImageFilter(&filter) {}
 
   static std::shared_ptr<DlImageFilter> Make(
-      std::shared_ptr<const DlColorFilter> filter) {
+      const std::shared_ptr<const DlColorFilter>& filter) {
     if (filter) {
       return std::make_shared<DlColorFilterImageFilter>(filter);
     }
@@ -664,7 +666,7 @@ class DlLocalMatrixImageFilter final : public DlImageFilter {
  public:
   explicit DlLocalMatrixImageFilter(const SkMatrix& matrix,
                                     std::shared_ptr<DlImageFilter> filter)
-      : matrix_(matrix), image_filter_(filter) {}
+      : matrix_(matrix), image_filter_(std::move(filter)) {}
   explicit DlLocalMatrixImageFilter(const DlLocalMatrixImageFilter* filter)
       : DlLocalMatrixImageFilter(filter->matrix_, filter->image_filter_) {}
   DlLocalMatrixImageFilter(const DlLocalMatrixImageFilter& filter)

... and then changing the rest of the repo to use Dl*ImageFilter(filter) explicitly.

I also included above some other style changes that are private to that header, that could be done at the same time or in a separate PR depending on your comfort level (though it doesn't seem worth it to break up into another issue).

Metadata

Metadata

Assignees

Labels

P2Important issues not at the top of the work listc: tech-debtTechnical debt, code quality, testing, etc.engineflutter/engine related. See also e: labels.team-engineOwned by Engine team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions