diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-11 19:54:20 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-11 19:54:20 +0200 |
commit | 88a04ac016f57c2d78e714682445dff2e7db4ade (patch) | |
tree | a48ca81ee3b29953121308168db22532d5b57fe2 /Source/WebCore/page/FrameView.cpp | |
parent | 284837daa07b29d6a63a748544a90b1f5842ac5c (diff) | |
download | qtwebkit-88a04ac016f57c2d78e714682445dff2e7db4ade.tar.gz |
Imported WebKit commit 42d95198c30c2d1a94a5081181aad0b2be7c316c (http://svn.webkit.org/repository/webkit/trunk@128206)
This includes the rewrite of the configure part of the build system which should fix the QtQuick2 detection
and allow for further simplifications in the future
Diffstat (limited to 'Source/WebCore/page/FrameView.cpp')
-rw-r--r-- | Source/WebCore/page/FrameView.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/Source/WebCore/page/FrameView.cpp b/Source/WebCore/page/FrameView.cpp index f4924f121..d6d6c567e 100644 --- a/Source/WebCore/page/FrameView.cpp +++ b/Source/WebCore/page/FrameView.cpp @@ -1252,7 +1252,7 @@ void FrameView::layout(bool allowSubtree) m_actionScheduler->resume(); } - InspectorInstrumentation::didLayout(cookie); + InspectorInstrumentation::didLayout(cookie, root); m_nestedLayoutCount--; if (m_nestedLayoutCount) @@ -2745,14 +2745,22 @@ void FrameView::setVisibleScrollerThumbRect(const IntRect& scrollerThumb) page->chrome()->client()->notifyScrollerThumbIsVisibleInRect(scrollerThumb); } -bool FrameView::isOnActivePage() const +bool FrameView::scrollbarsCanBeActive() const { if (!m_frame) return false; + if (m_frame->view() != this) return false; + + if (Page* page = m_frame->page()) { + if (page->shouldSuppressScrollbarAnimations()) + return false; + } + if (Document* document = m_frame->document()) return !document->inPageCache(); + return false; } @@ -2838,7 +2846,7 @@ void FrameView::setAnimatorsAreActive() for (HashSet<ScrollableArea*>::const_iterator it = m_scrollableAreas->begin(), end = m_scrollableAreas->end(); it != end; ++it) { ScrollableArea* scrollableArea = *it; - ASSERT(scrollableArea->isOnActivePage()); + ASSERT(scrollableArea->scrollbarsCanBeActive()); scrollableArea->scrollAnimator()->setIsActive(); } } @@ -2857,7 +2865,7 @@ void FrameView::notifyPageThatContentAreaWillPaint() const for (HashSet<ScrollableArea*>::const_iterator it = m_scrollableAreas->begin(), end = m_scrollableAreas->end(); it != end; ++it) { ScrollableArea* scrollableArea = *it; - if (!scrollableArea->isOnActivePage()) + if (!scrollableArea->scrollbarsCanBeActive()) continue; scrollableArea->contentAreaWillPaint(); |