Skip to content
Permalink
Browse files
Unreviewed, rolling out r127837.
http://trac.webkit.org/changeset/127837
https://bugs.webkit.org/show_bug.cgi?id=93898

Broke ScrollingCoordinator on chromium

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewFixedObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinator::hasNonLayerFixedObjects):
(WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingCoordinatorNone.cpp:
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::scrollingPeformanceLoggingEnabled):
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::ScrollingTreeNode):
(WebCore::ScrollingTreeNode::update):
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeNode):
* page/scrolling/ScrollingTreeState.cpp:
(WebCore::ScrollingTreeState::ScrollingTreeState):
(WebCore::ScrollingTreeState::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingTreeState.h:
(WebCore::ScrollingTreeState::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeState):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/mac/ScrollingTreeMac.mm:
(WebCore::ScrollingTree::updateDebugRootLayer):
* page/scrolling/mac/ScrollingTreeNodeMac.mm:
(WebCore::ScrollingTreeNodeMac::update):
(WebCore::ScrollingTreeNodeMac::scrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeNodeMac::setScrollLayerPosition):

Source/WebKit2:

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updatePreferences):

Canonical link: https://commits.webkit.org/114225@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@128132 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
jamesr committed Sep 11, 2012
1 parent 8c82933 commit ce57332c8f456d37d82ccbcda93349372a6986ba
Showing 16 changed files with 112 additions and 120 deletions.
@@ -1,3 +1,50 @@
2012-09-10 James Robinson <jamesr@chromium.org>

Unreviewed, rolling out r127837.
http://trac.webkit.org/changeset/127837
https://bugs.webkit.org/show_bug.cgi?id=93898

Broke ScrollingCoordinator on chromium

* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewFixedObjectsDidChange):
(WebCore::ScrollingCoordinator::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinator::hasNonLayerFixedObjects):
(WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingCoordinatorNone.cpp:
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::scrollingPeformanceLoggingEnabled):
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::ScrollingTreeNode):
(WebCore::ScrollingTreeNode::update):
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeNode):
* page/scrolling/ScrollingTreeState.cpp:
(WebCore::ScrollingTreeState::ScrollingTreeState):
(WebCore::ScrollingTreeState::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/ScrollingTreeState.h:
(WebCore::ScrollingTreeState::shouldUpdateScrollLayerPositionOnMainThread):
(ScrollingTreeState):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
* page/scrolling/mac/ScrollingTreeMac.mm:
(WebCore::ScrollingTree::updateDebugRootLayer):
* page/scrolling/mac/ScrollingTreeNodeMac.mm:
(WebCore::ScrollingTreeNodeMac::update):
(WebCore::ScrollingTreeNodeMac::scrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollPositionWithoutContentEdgeConstraints):
(WebCore::ScrollingTreeNodeMac::setScrollLayerPosition):

2012-09-10 Philip Rogers <pdr@google.com>

Remove unnecessary codepaths in SMILTimeContainer::updateAnimations
@@ -511,7 +511,7 @@
1AAADDA314DB409F00AF64B3 /* ScrollingTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AAADDA114DB409F00AF64B3 /* ScrollingTree.cpp */; };
1AAADDA414DB409F00AF64B3 /* ScrollingTree.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AAADDA214DB409F00AF64B3 /* ScrollingTree.h */; settings = {ATTRIBUTES = (Private, ); }; };
1AAADDBE14DC640700AF64B3 /* ScrollingTreeState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AAADDBC14DC640600AF64B3 /* ScrollingTreeState.cpp */; };
1AAADDBF14DC640700AF64B3 /* ScrollingTreeState.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AAADDBD14DC640600AF64B3 /* ScrollingTreeState.h */; settings = {ATTRIBUTES = (Private, ); }; };
1AAADDBF14DC640700AF64B3 /* ScrollingTreeState.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AAADDBD14DC640600AF64B3 /* ScrollingTreeState.h */; };
1AAADDDA14DC74EC00AF64B3 /* ScrollingTreeStateMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1AAADDD814DC74EC00AF64B3 /* ScrollingTreeStateMac.mm */; };
1AAADDE314DC8C8F00AF64B3 /* ScrollingTreeNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1AAADDE114DC8C8F00AF64B3 /* ScrollingTreeNode.cpp */; };
1AAADDE414DC8C8F00AF64B3 /* ScrollingTreeNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AAADDE214DC8C8F00AF64B3 /* ScrollingTreeNode.h */; };
@@ -36,6 +36,7 @@
#include "Region.h"
#include "RenderView.h"
#include "ScrollAnimator.h"
#include "ScrollingTreeState.h"
#include <wtf/MainThread.h>

#if USE(ACCELERATED_COMPOSITING)
@@ -45,7 +46,6 @@
#if ENABLE(THREADED_SCROLLING)
#include "ScrollingThread.h"
#include "ScrollingTree.h"
#include "ScrollingTreeState.h"
#include <wtf/Functional.h>
#include <wtf/PassRefPtr.h>
#endif
@@ -192,7 +192,7 @@ void ScrollingCoordinator::frameViewHasSlowRepaintObjectsDidChange(FrameView* fr
if (!coordinatesScrollingForFrameView(frameView))
return;

updateShouldUpdateScrollLayerPositionOnMainThreadReason();
updateShouldUpdateScrollLayerPositionOnMainThread();
}

void ScrollingCoordinator::frameViewFixedObjectsDidChange(FrameView* frameView)
@@ -203,7 +203,7 @@ void ScrollingCoordinator::frameViewFixedObjectsDidChange(FrameView* frameView)
if (!coordinatesScrollingForFrameView(frameView))
return;

updateShouldUpdateScrollLayerPositionOnMainThreadReason();
updateShouldUpdateScrollLayerPositionOnMainThread();
}

static GraphicsLayer* scrollLayerForFrameView(FrameView* frameView)
@@ -232,7 +232,7 @@ void ScrollingCoordinator::frameViewRootLayerDidChange(FrameView* frameView)

frameViewLayoutUpdated(frameView);
recomputeWheelEventHandlerCount();
updateShouldUpdateScrollLayerPositionOnMainThreadReason();
updateShouldUpdateScrollLayerPositionOnMainThread();
setScrollLayer(scrollLayerForFrameView(frameView));
}

@@ -359,7 +359,7 @@ void ScrollingCoordinator::recomputeWheelEventHandlerCount()
setWheelEventHandlerCount(wheelEventHandlerCount);
}

bool ScrollingCoordinator::hasNonLayerViewportConstrainedObjects(FrameView* frameView)
bool ScrollingCoordinator::hasNonLayerFixedObjects(FrameView* frameView)
{
const FrameView::ViewportConstrainedObjectSet* viewportConstrainedObjects = frameView->viewportConstrainedObjects();
if (!viewportConstrainedObjects)
@@ -380,26 +380,15 @@ bool ScrollingCoordinator::hasNonLayerViewportConstrainedObjects(FrameView* fram
#endif
}

void ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThreadReason()
void ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread()
{
#if ENABLE(THREADED_SCROLLING)
FrameView* frameView = m_page->mainFrame()->view();

ReasonForUpdatingScrollLayerPositionOnMainThreadFlags reasonsForUpdatingScrollLayerPositionOnMainThread = (ReasonForUpdatingScrollLayerPositionOnMainThreadFlags)0;

if (m_forceMainThreadScrollLayerPositionUpdates)
reasonsForUpdatingScrollLayerPositionOnMainThread |= ScrollingTreeState::ForcedOnMainThread;
if (frameView->hasSlowRepaintObjects())
reasonsForUpdatingScrollLayerPositionOnMainThread |= ScrollingTreeState::HasSlowRepaintObjects;
if (!supportsFixedPositionLayers() && frameView->hasViewportConstrainedObjects())
reasonsForUpdatingScrollLayerPositionOnMainThread |= ScrollingTreeState::HasNonCompositedViewportConstrainedObjects;
if (supportsFixedPositionLayers() && hasNonLayerViewportConstrainedObjects(frameView))
reasonsForUpdatingScrollLayerPositionOnMainThread |= ScrollingTreeState::HasNonLayerViewportConstrainedObjects;
if (m_page->mainFrame()->document()->isImageDocument())
reasonsForUpdatingScrollLayerPositionOnMainThread |= ScrollingTreeState::IsImageDocument;

setShouldUpdateScrollLayerPositionOnMainThreadReason(reasonsForUpdatingScrollLayerPositionOnMainThread);
#endif
setShouldUpdateScrollLayerPositionOnMainThread(m_forceMainThreadScrollLayerPositionUpdates
|| frameView->hasSlowRepaintObjects()
|| (!supportsFixedPositionLayers() && frameView->hasViewportConstrainedObjects())
|| (supportsFixedPositionLayers() && hasNonLayerFixedObjects(frameView))
|| m_page->mainFrame()->document()->isImageDocument());
}

void ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates(bool forceMainThreadScrollLayerPositionUpdates)
@@ -408,7 +397,7 @@ void ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates(bool for
return;

m_forceMainThreadScrollLayerPositionUpdates = forceMainThreadScrollLayerPositionUpdates;
updateShouldUpdateScrollLayerPositionOnMainThreadReason();
updateShouldUpdateScrollLayerPositionOnMainThread();
}

#if ENABLE(THREADED_SCROLLING)
@@ -446,18 +435,16 @@ void ScrollingCoordinator::setWheelEventHandlerCount(unsigned wheelEventHandlerC
scheduleTreeStateCommit();
}

#if ENABLE(THREADED_SCROLLING)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags reasons)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread(bool shouldUpdateScrollLayerPositionOnMainThread)
{
// The FrameView's GraphicsLayer is likely to be out-of-synch with the PlatformLayer
// at this point. So we'll update it before we switch back to main thread scrolling
// in order to avoid layer positioning bugs.
if (reasons)
if (shouldUpdateScrollLayerPositionOnMainThread)
updateMainFrameScrollLayerPosition();
m_scrollingTreeState->setShouldUpdateScrollLayerPositionOnMainThreadReason(reasons);
m_scrollingTreeState->setShouldUpdateScrollLayerPositionOnMainThread(shouldUpdateScrollLayerPositionOnMainThread);
scheduleTreeStateCommit();
}
#endif

void ScrollingCoordinator::scheduleTreeStateCommit()
{
@@ -34,7 +34,6 @@
#include <wtf/Forward.h>

#if ENABLE(THREADED_SCROLLING)
#include "ScrollingTreeState.h"
#include <wtf/ThreadSafeRefCounted.h>
#include <wtf/Threading.h>
#endif
@@ -132,8 +131,8 @@ class ScrollingCoordinator : public ThreadSafeRefCounted<ScrollingCoordinator> {
explicit ScrollingCoordinator(Page*);

void recomputeWheelEventHandlerCount();
bool hasNonLayerViewportConstrainedObjects(FrameView*);
void updateShouldUpdateScrollLayerPositionOnMainThreadReason();
bool hasNonLayerFixedObjects(FrameView*);
void updateShouldUpdateScrollLayerPositionOnMainThread();

void setScrollLayer(GraphicsLayer*);
void setNonFastScrollableRegion(const Region&);
@@ -156,9 +155,7 @@ class ScrollingCoordinator : public ThreadSafeRefCounted<ScrollingCoordinator> {

void setScrollParameters(const ScrollParameters&);
void setWheelEventHandlerCount(unsigned);
#if ENABLE(THREADED_SCROLLING)
void setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags);
#endif
void setShouldUpdateScrollLayerPositionOnMainThread(bool);

void updateMainFrameScrollLayerPosition();

@@ -67,11 +67,9 @@ void ScrollingCoordinator::setWheelEventHandlerCount(unsigned)
{
}

#if ENABLE(THREADED_SCROLLING)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread(bool)
{
}
#endif

bool ScrollingCoordinator::supportsFixedPositionLayers() const
{
@@ -224,7 +224,7 @@ void ScrollingTree::setScrollingPerformanceLoggingEnabled(bool flag)
m_scrollingPerformanceLoggingEnabled = flag;
}

bool ScrollingTree::scrollingPerformanceLoggingEnabled()
bool ScrollingTree::scrollingPeformanceLoggingEnabled()
{
return m_scrollingPerformanceLoggingEnabled;
}
@@ -98,7 +98,7 @@ class ScrollingTree : public ThreadSafeRefCounted<ScrollingTree> {
#endif

void setScrollingPerformanceLoggingEnabled(bool flag);
bool scrollingPerformanceLoggingEnabled();
bool scrollingPeformanceLoggingEnabled();

private:
explicit ScrollingTree(ScrollingCoordinator*);
@@ -34,7 +34,7 @@ namespace WebCore {

ScrollingTreeNode::ScrollingTreeNode(ScrollingTree* scrollingTree)
: m_scrollingTree(scrollingTree)
, m_shouldUpdateScrollLayerPositionOnMainThreadReason(0)
, m_shouldUpdateScrollLayerPositionOnMainThread(false)
, m_horizontalScrollElasticity(ScrollElasticityNone)
, m_verticalScrollElasticity(ScrollElasticityNone)
, m_hasEnabledHorizontalScrollbar(false)
@@ -56,8 +56,8 @@ void ScrollingTreeNode::update(ScrollingTreeState* state)
if (state->changedProperties() & ScrollingTreeState::ContentsSize)
m_contentsSize = state->contentsSize();

if (state->changedProperties() & ScrollingTreeState::ShouldUpdateScrollLayerPositionOnMainThreadReason)
m_shouldUpdateScrollLayerPositionOnMainThreadReason = state->shouldUpdateScrollLayerPositionOnMainThreadReason();
if (state->changedProperties() & ScrollingTreeState::ShouldUpdateScrollLayerPositionOnMainThread)
m_shouldUpdateScrollLayerPositionOnMainThread = state->shouldUpdateScrollLayerPositionOnMainThread();

if (state->changedProperties() & ScrollingTreeState::HorizontalScrollElasticity)
m_horizontalScrollElasticity = state->horizontalScrollElasticity();
@@ -30,7 +30,6 @@

#include "IntRect.h"
#include "ScrollTypes.h"
#include "ScrollingTreeState.h"
#include <wtf/PassOwnPtr.h>

namespace WebCore {
@@ -48,7 +47,7 @@ class ScrollingTreeNode {
virtual void handleWheelEvent(const PlatformWheelEvent&) = 0;
virtual void setScrollPosition(const IntPoint&) = 0;

ReasonForUpdatingScrollLayerPositionOnMainThreadFlags shouldUpdateScrollLayerPositionOnMainThreadReason() const { return m_shouldUpdateScrollLayerPositionOnMainThreadReason; }
bool shouldUpdateScrollLayerPositionOnMainThread() const { return m_shouldUpdateScrollLayerPositionOnMainThread; }

protected:
explicit ScrollingTreeNode(ScrollingTree*);
@@ -75,7 +74,7 @@ class ScrollingTreeNode {
IntSize m_contentsSize;
IntPoint m_scrollOrigin;

ReasonForUpdatingScrollLayerPositionOnMainThreadFlags m_shouldUpdateScrollLayerPositionOnMainThreadReason;
bool m_shouldUpdateScrollLayerPositionOnMainThread;

ScrollElasticity m_horizontalScrollElasticity;
ScrollElasticity m_verticalScrollElasticity;
@@ -38,7 +38,7 @@ PassOwnPtr<ScrollingTreeState> ScrollingTreeState::create()
ScrollingTreeState::ScrollingTreeState()
: m_changedProperties(0)
, m_wheelEventHandlerCount(0)
, m_shouldUpdateScrollLayerPositionOnMainThreadReason(0)
, m_shouldUpdateScrollLayerPositionOnMainThread(false)
, m_horizontalScrollElasticity(ScrollElasticityNone)
, m_verticalScrollElasticity(ScrollElasticityNone)
, m_hasEnabledHorizontalScrollbar(false)
@@ -88,13 +88,13 @@ void ScrollingTreeState::setWheelEventHandlerCount(unsigned wheelEventHandlerCou
m_changedProperties |= WheelEventHandlerCount;
}

void ScrollingTreeState::setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags reasons)
void ScrollingTreeState::setShouldUpdateScrollLayerPositionOnMainThread(bool shouldUpdateScrollLayerPositionOnMainThread)
{
if ((bool)m_shouldUpdateScrollLayerPositionOnMainThreadReason == (bool)reasons)
if (m_shouldUpdateScrollLayerPositionOnMainThread == shouldUpdateScrollLayerPositionOnMainThread)
return;

m_shouldUpdateScrollLayerPositionOnMainThreadReason = reasons;
m_changedProperties |= ShouldUpdateScrollLayerPositionOnMainThreadReason;
m_shouldUpdateScrollLayerPositionOnMainThread = shouldUpdateScrollLayerPositionOnMainThread;
m_changedProperties |= ShouldUpdateScrollLayerPositionOnMainThread;
}

void ScrollingTreeState::setHorizontalScrollElasticity(ScrollElasticity horizontalScrollElasticity)
@@ -40,8 +40,6 @@

namespace WebCore {

typedef unsigned ReasonForUpdatingScrollLayerPositionOnMainThreadFlags;

// The ScrollingTreeState object keeps track of the current state of scrolling related properties.
// Whenever any properties change, the scrolling coordinator will be informed and will update the state
// and schedule a timer that will clone the new state and send it over to the scrolling thread, avoiding locking.
@@ -56,7 +54,7 @@ class ScrollingTreeState {
ContentsSize = 1 << 1,
NonFastScrollableRegion = 1 << 2,
WheelEventHandlerCount = 1 << 3,
ShouldUpdateScrollLayerPositionOnMainThreadReason = 1 << 4,
ShouldUpdateScrollLayerPositionOnMainThread = 1 << 4,
HorizontalScrollElasticity = 1 << 5,
VerticalScrollElasticity = 1 << 6,
HasEnabledHorizontalScrollbar = 1 << 7,
@@ -68,14 +66,6 @@ class ScrollingTreeState {
RequestedScrollPosition = 1 << 13,
};

enum ReasonForUpdatingScrollLayerPositionOnMainThread {
ForcedOnMainThread = 1 << 0,
HasSlowRepaintObjects = 1 << 1,
HasNonCompositedViewportConstrainedObjects = 1 << 2,
HasNonLayerViewportConstrainedObjects = 1 << 3,
IsImageDocument = 1 << 4
};

bool hasChangedProperties() const { return m_changedProperties; }
unsigned changedProperties() const { return m_changedProperties; }

@@ -91,8 +81,8 @@ class ScrollingTreeState {
unsigned wheelEventHandlerCount() const { return m_wheelEventHandlerCount; }
void setWheelEventHandlerCount(unsigned);

ReasonForUpdatingScrollLayerPositionOnMainThreadFlags shouldUpdateScrollLayerPositionOnMainThreadReason() const { return m_shouldUpdateScrollLayerPositionOnMainThreadReason; }
void setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags);
bool shouldUpdateScrollLayerPositionOnMainThread() const { return m_shouldUpdateScrollLayerPositionOnMainThread; }
void setShouldUpdateScrollLayerPositionOnMainThread(bool);

ScrollElasticity horizontalScrollElasticity() const { return m_horizontalScrollElasticity; }
void setHorizontalScrollElasticity(ScrollElasticity);
@@ -136,7 +126,7 @@ class ScrollingTreeState {

unsigned m_wheelEventHandlerCount;

ReasonForUpdatingScrollLayerPositionOnMainThreadFlags m_shouldUpdateScrollLayerPositionOnMainThreadReason;
bool m_shouldUpdateScrollLayerPositionOnMainThread;

ScrollElasticity m_horizontalScrollElasticity;
ScrollElasticity m_verticalScrollElasticity;
@@ -223,15 +223,13 @@ void ScrollingCoordinator::setWheelEventHandlerCount(unsigned wheelEventHandlerC
m_private->scrollLayer()->setHaveWheelEventHandlers(wheelEventHandlerCount > 0);
}

#if ENABLE(THREADED_SCROLLING)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThreadReason(ReasonForUpdatingScrollLayerPositionOnMainThreadFlags reasons)
void ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread(bool should)
{
// We won't necessarily get a setScrollLayer() call before this one, so grab the root ourselves.
setScrollLayer(scrollLayerForFrameView(m_page->mainFrame()->view()));
if (m_private->scrollLayer())
m_private->scrollLayer()->setShouldScrollOnMainThread(reasons);
m_private->scrollLayer()->setShouldScrollOnMainThread(should);
}
#endif

bool ScrollingCoordinator::supportsFixedPositionLayers() const
{
@@ -62,7 +62,7 @@

RetainPtr<CGColorRef> backgroundColor;

if (m_rootNode->shouldUpdateScrollLayerPositionOnMainThreadReason())
if (m_rootNode->shouldUpdateScrollLayerPositionOnMainThread())
backgroundColor = adoptCF(CGColorCreateGenericRGB(1, 0, 0, .7));

{

0 comments on commit ce57332

Please sign in to comment.