summaryrefslogtreecommitdiff
path: root/Source/WebCore/page/FocusController.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/page/FocusController.cpp')
-rw-r--r--Source/WebCore/page/FocusController.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/WebCore/page/FocusController.cpp b/Source/WebCore/page/FocusController.cpp
index 51426a308..aa98c0249 100644
--- a/Source/WebCore/page/FocusController.cpp
+++ b/Source/WebCore/page/FocusController.cpp
@@ -54,6 +54,7 @@
#include "ScrollAnimator.h"
#include "Settings.h"
#include "ShadowRoot.h"
+#include "ShadowRootList.h"
#include "SpatialNavigation.h"
#include "Widget.h"
#include "htmlediting.h" // For firstPositionInOrBeforeNode
@@ -154,7 +155,7 @@ void FocusController::setFocused(bool focused)
static inline ShadowRoot* shadowRoot(Node* node)
{
- return node->isElementNode() ? toElement(node)->shadowRoot() : 0;
+ return node->isElementNode() && toElement(node)->hasShadowRoot() ? toElement(node)->shadowRootList()->youngestShadowRoot() : 0;
}
static inline bool isTreeScopeOwner(Node* node)