summaryrefslogtreecommitdiff
path: root/Userland/Libraries
diff options
context:
space:
mode:
authorLinus Groh <mail@linusgroh.de>2022-03-04 18:57:29 +0100
committerAndreas Kling <kling@serenityos.org>2022-03-04 23:03:29 +0100
commited03f37ae93d30263337d9cc72c9a820d25adff6 (patch)
tree6bcac1c0793efd95a2196f66f64bcdbb58aaf33e /Userland/Libraries
parent6521c04bf393baebde84bf4e44e533630619edc8 (diff)
downloadserenity-ed03f37ae93d30263337d9cc72c9a820d25adff6.zip
LibWeb: Add CanvasRenderingContext2D's origin-clean flag
Diffstat (limited to 'Userland/Libraries')
-rw-r--r--Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.cpp2
-rw-r--r--Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.h3
2 files changed, 5 insertions, 0 deletions
diff --git a/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.cpp b/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.cpp
index 50d2279f49..aa431eb51f 100644
--- a/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.cpp
+++ b/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.cpp
@@ -31,6 +31,7 @@ CanvasRenderingContext2D::~CanvasRenderingContext2D()
void CanvasRenderingContext2D::set_fill_style(String style)
{
+ // FIXME: 2. If the given value is a CanvasPattern object that is marked as not origin-clean, then set this's origin-clean flag to false.
m_drawing_state.fill_style = Gfx::Color::from_string(style).value_or(Color::Black);
}
@@ -63,6 +64,7 @@ void CanvasRenderingContext2D::clear_rect(float x, float y, float width, float h
void CanvasRenderingContext2D::set_stroke_style(String style)
{
+ // FIXME: 2. If the given value is a CanvasPattern object that is marked as not origin-clean, then set this's origin-clean flag to false.
m_drawing_state.stroke_style = Gfx::Color::from_string(style).value_or(Color::Black);
}
diff --git a/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.h b/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.h
index dede820e9f..14c232f0aa 100644
--- a/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.h
+++ b/Userland/Libraries/LibWeb/HTML/CanvasRenderingContext2D.h
@@ -121,6 +121,9 @@ private:
DrawingState m_drawing_state;
Vector<DrawingState> m_drawing_state_stack;
+ // https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-origin-clean
+ bool m_origin_clean { true };
+
// https://html.spec.whatwg.org/multipage/canvas.html#concept-canvas-context-lost
bool m_context_lost { false };