Index: Source/core/page/FocusController.cpp |
diff --git a/Source/core/page/FocusController.cpp b/Source/core/page/FocusController.cpp |
index 61733ddb1d39229cdc54caa798018f0abb312a5c..c846333d5e3bf67392822cb8ba98eee82a27e998 100644 |
--- a/Source/core/page/FocusController.cpp |
+++ b/Source/core/page/FocusController.cpp |
@@ -725,8 +725,15 @@ void FocusController::setActive(bool active) |
m_isActive = active; |
Frame* frame = focusedOrMainFrame(); |
- if (frame->isLocalFrame()) |
+ if (frame->isLocalFrame()) { |
+ // Invalidate All CustomScrollbars as CustomScrollbars supports |
pdr.
2014/12/22 18:34:48
Please rephrase this as something like the followi
|
+ // CSS window-active attribute.Irrespective of focus on frame, this |
+ // needs to be applied for entire page. So invalidate from root FrameView |
+ // rather than focused frame. |
+ if (FrameView* view = toLocalFrame(frame)->localFrameRoot()->document()->view()) |
+ view->invalidateAllCustomScrollbarsOnActiveChanged(); |
toLocalFrame(frame)->selection().pageActivationChanged(); |
+ } |
} |
static void updateFocusCandidateIfNeeded(FocusType type, const FocusCandidate& current, FocusCandidate& candidate, FocusCandidate& closest) |