ladybird/Userland/Libraries/LibWeb/CSS/CSSConditionRule.cpp
Sam Atkins 439d978ea5 LibWeb: Make style-rule iteration aware of CSSMediaRule
The logic is handled by `CSSGroupingRule` and `CSSConditionRule`, so
`CSSMediaRule` only has to report if its condition matches.

Right now, that condition is always false because we do not evaluate the
media query.
2021-10-08 23:02:57 +02:00

34 lines
779 B
C++

/*
* Copyright (c) 2021, Sam Atkins <atkinssj@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <LibWeb/CSS/CSSConditionRule.h>
namespace Web::CSS {
CSSConditionRule::CSSConditionRule(NonnullRefPtrVector<CSSRule>&& rules)
: CSSGroupingRule(move(rules))
{
}
CSSConditionRule::~CSSConditionRule()
{
}
void CSSConditionRule::for_each_effective_style_rule(Function<void(CSSStyleRule const&)> const& callback) const
{
if (condition_matches())
CSSGroupingRule::for_each_effective_style_rule(callback);
}
bool CSSConditionRule::for_first_not_loaded_import_rule(Function<void(CSSImportRule&)> const& callback)
{
if (condition_matches())
return CSSGroupingRule::for_first_not_loaded_import_rule(callback);
return false;
}
}