Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Unified Diff: third_party/WebKit/Source/core/dom/ContainerNode.h

Issue 2795143004: [selectors4] Implement :focus-within pseudo-class (Closed)
Patch Set: Now passing all the tests from WPT Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/dom/ContainerNode.h
diff --git a/third_party/WebKit/Source/core/dom/ContainerNode.h b/third_party/WebKit/Source/core/dom/ContainerNode.h
index e91ca9b92d2f0dc9307dec909434be606825eb9c..dfc7fc7364ca1ce237a811e7dd715f064b29f6b9 100644
--- a/third_party/WebKit/Source/core/dom/ContainerNode.h
+++ b/third_party/WebKit/Source/core/dom/ContainerNode.h
@@ -56,8 +56,9 @@ enum DynamicRestyleFlags {
kChildrenAffectedByBackwardPositionalRules = 1 << 9,
kAffectedByFirstChildRules = 1 << 10,
kAffectedByLastChildRules = 1 << 11,
+ kChildrenOrSiblingsAffectedByFocusWithin = 1 << 12,
- kNumberOfDynamicRestyleFlags = 12,
+ kNumberOfDynamicRestyleFlags = 13,
kChildrenAffectedByStructuralRules =
kChildrenAffectedByFirstChildRules | kChildrenAffectedByLastChildRules |
@@ -138,6 +139,7 @@ class CORE_EXPORT ContainerNode : public Node {
LayoutRect BoundingBox() const final;
void SetFocused(bool) override;
void FocusStateChanged();
+ void FocusWithinStateChanged();
void SetActive(bool = true) override;
void SetDragged(bool) override;
void SetHovered(bool = true) override;
@@ -149,6 +151,13 @@ class CORE_EXPORT ContainerNode : public Node {
SetRestyleFlag(kChildrenOrSiblingsAffectedByFocus);
}
+ bool ChildrenOrSiblingsAffectedByFocusWithin() const {
+ return HasRestyleFlag(kChildrenOrSiblingsAffectedByFocusWithin);
+ }
+ void SetChildrenOrSiblingsAffectedByFocusWithin() {
+ SetRestyleFlag(kChildrenOrSiblingsAffectedByFocusWithin);
+ }
+
bool ChildrenOrSiblingsAffectedByHover() const {
return HasRestyleFlag(kChildrenOrSiblingsAffectedByHover);
}

Powered by Google App Engine
This is Rietveld 408576698