diff --git a/Tests/LibWeb/Text/expected/css/CSSConditionRule-conditionText-readonly.txt b/Tests/LibWeb/Text/expected/css/CSSConditionRule-conditionText-readonly.txt
new file mode 100644
index 0000000000..ad30f7725f
--- /dev/null
+++ b/Tests/LibWeb/Text/expected/css/CSSConditionRule-conditionText-readonly.txt
@@ -0,0 +1,4 @@
+ @media rule conditionText initial value: not all
+@media rule conditionText value after assignment: not all
+@supports rule conditionText initial value: not (unsupported-property: unsupported-value)
+@supports rule conditionText value after assignment: not (unsupported-property: unsupported-value)
diff --git a/Tests/LibWeb/Text/input/css/CSSConditionRule-conditionText-readonly.html b/Tests/LibWeb/Text/input/css/CSSConditionRule-conditionText-readonly.html
new file mode 100644
index 0000000000..75073a5f48
--- /dev/null
+++ b/Tests/LibWeb/Text/input/css/CSSConditionRule-conditionText-readonly.html
@@ -0,0 +1,24 @@
+
+
+
This text shouldn't be visible
+
+
diff --git a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.h b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.h
index ebc7505f03..e292437007 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.h
+++ b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.h
@@ -19,7 +19,6 @@ public:
virtual ~CSSConditionRule() = default;
virtual String condition_text() const = 0;
- virtual void set_condition_text(String const&) = 0;
virtual bool condition_matches() const = 0;
virtual void for_each_effective_style_rule(Function const& callback) const override;
diff --git a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl
index c52e78582d..5dc19c87f3 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl
+++ b/Userland/Libraries/LibWeb/CSS/CSSConditionRule.idl
@@ -3,5 +3,5 @@
// https://drafts.csswg.org/css-conditional-3/#the-cssconditionrule-interface
[Exposed=Window]
interface CSSConditionRule : CSSGroupingRule {
- attribute CSSOMString conditionText;
+ readonly attribute CSSOMString conditionText;
};
diff --git a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.cpp b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.cpp
index da212cf9ae..90a7c4418d 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.cpp
+++ b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.cpp
@@ -42,11 +42,6 @@ String CSSMediaRule::condition_text() const
return m_media->media_text();
}
-void CSSMediaRule::set_condition_text(String const& text)
-{
- m_media->set_media_text(text);
-}
-
// https://www.w3.org/TR/cssom-1/#serialize-a-css-rule
String CSSMediaRule::serialized() const
{
diff --git a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.h b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.h
index c29a68f776..ad48924873 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSMediaRule.h
+++ b/Userland/Libraries/LibWeb/CSS/CSSMediaRule.h
@@ -26,7 +26,6 @@ public:
virtual Type type() const override { return Type::Media; }
virtual String condition_text() const override;
- virtual void set_condition_text(String const&) override;
virtual bool condition_matches() const override { return m_media->matches(); }
MediaList* media() const { return m_media; }
diff --git a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.cpp b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.cpp
index b53c234f6b..ed1bb01155 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.cpp
+++ b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.cpp
@@ -35,12 +35,6 @@ String CSSSupportsRule::condition_text() const
return m_supports->to_string();
}
-void CSSSupportsRule::set_condition_text(String const& text)
-{
- if (auto new_supports = parse_css_supports(Parser::ParsingContext { realm() }, text))
- m_supports = new_supports.release_nonnull();
-}
-
// https://www.w3.org/TR/cssom-1/#serialize-a-css-rule
String CSSSupportsRule::serialized() const
{
diff --git a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.h b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.h
index b9b9238738..4a4a537d1f 100644
--- a/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.h
+++ b/Userland/Libraries/LibWeb/CSS/CSSSupportsRule.h
@@ -27,7 +27,6 @@ public:
virtual Type type() const override { return Type::Supports; }
String condition_text() const override;
- void set_condition_text(String const&) override;
virtual bool condition_matches() const override { return m_supports->matches(); }
private: