summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h')
-rw-r--r--chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h b/chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h
index 4566993fe3d..62288372428 100644
--- a/chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h
+++ b/chromium/third_party/blink/renderer/core/layout/svg/layout_svg_resource_pattern.h
@@ -59,24 +59,23 @@ class LayoutSVGResourcePattern final : public LayoutSVGResourcePaintServer {
}
private:
+ void WillBeDestroyed() override;
+ void StyleDidChange(StyleDifference, const ComputedStyle* old_style) override;
+
+ bool FindCycleFromSelf() const override;
std::unique_ptr<PatternData> BuildPatternData(
const FloatRect& object_bounding_box);
sk_sp<PaintRecord> AsPaintRecord(const FloatSize&,
const AffineTransform&) const;
- const LayoutSVGResourceContainer* ResolveContentElement() const;
-
- bool should_collect_pattern_attributes_ : 1;
+ mutable bool should_collect_pattern_attributes_ : 1;
Persistent<PatternAttributesWrapper> attributes_wrapper_;
- PatternAttributes& MutableAttributes() {
- NOT_DESTROYED();
- return attributes_wrapper_->Attributes();
- }
const PatternAttributes& Attributes() const {
NOT_DESTROYED();
return attributes_wrapper_->Attributes();
}
+ const PatternAttributes& EnsureAttributes() const;
// FIXME: we can almost do away with this per-object map, but not quite: the
// tile size can be relative to the client bounding box, and it gets captured