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

Side by Side Diff: Source/WebCore/page/scrolling/ScrollingCoordinator.h

Issue 11970041: Merge 139461 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1364/
Patch Set: Created 7 years, 11 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2011 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 ScrollingNodeID uniqueScrollLayerID(); 130 ScrollingNodeID uniqueScrollLayerID();
131 131
132 // Dispatched by the scrolling tree whenever the main frame scroll position changes. 132 // Dispatched by the scrolling tree whenever the main frame scroll position changes.
133 void scheduleUpdateMainFrameScrollPosition(const IntPoint&, bool programmati cScroll, SetOrSyncScrollingLayerPosition); 133 void scheduleUpdateMainFrameScrollPosition(const IntPoint&, bool programmati cScroll, SetOrSyncScrollingLayerPosition);
134 void updateMainFrameScrollPosition(const IntPoint&, bool programmaticScroll, SetOrSyncScrollingLayerPosition); 134 void updateMainFrameScrollPosition(const IntPoint&, bool programmaticScroll, SetOrSyncScrollingLayerPosition);
135 135
136 enum MainThreadScrollingReasonFlags { 136 enum MainThreadScrollingReasonFlags {
137 ForcedOnMainThread = 1 << 0, 137 ForcedOnMainThread = 1 << 0,
138 HasSlowRepaintObjects = 1 << 1, 138 HasSlowRepaintObjects = 1 << 1,
139 HasViewportConstrainedObjectsWithoutSupportingFixedLayers = 1 << 2, 139 HasViewportConstrainedObjectsWithoutSupportingFixedLayers = 1 << 2,
140 HasNonLayerFixedObjects = 1 << 3, 140 HasNonLayerViewportConstrainedObjects = 1 << 3,
141 IsImageDocument = 1 << 4 141 IsImageDocument = 1 << 4
142 }; 142 };
143 143
144 MainThreadScrollingReasons mainThreadScrollingReasons() const; 144 MainThreadScrollingReasons mainThreadScrollingReasons() const;
145 bool shouldUpdateScrollLayerPositionOnMainThread() const { return mainThread ScrollingReasons() != 0; } 145 bool shouldUpdateScrollLayerPositionOnMainThread() const { return mainThread ScrollingReasons() != 0; }
146 146
147 // These virtual functions are currently unique to Chromium's WebLayer appro ach. Their meaningful 147 // These virtual functions are currently unique to Chromium's WebLayer appro ach. Their meaningful
148 // implementations are in ScrollingCoordinatorChromium. 148 // implementations are in ScrollingCoordinatorChromium.
149 virtual void frameViewHorizontalScrollbarLayerDidChange(FrameView*, Graphics Layer*) { } 149 virtual void frameViewHorizontalScrollbarLayerDidChange(FrameView*, Graphics Layer*) { }
150 virtual void frameViewVerticalScrollbarLayerDidChange(FrameView*, GraphicsLa yer*) { } 150 virtual void frameViewVerticalScrollbarLayerDidChange(FrameView*, GraphicsLa yer*) { }
(...skipping 16 matching lines...) Expand all
167 167
168 unsigned computeCurrentWheelEventHandlerCount(); 168 unsigned computeCurrentWheelEventHandlerCount();
169 GraphicsLayer* scrollLayerForFrameView(FrameView*); 169 GraphicsLayer* scrollLayerForFrameView(FrameView*);
170 170
171 Page* m_page; 171 Page* m_page;
172 172
173 private: 173 private:
174 virtual void recomputeWheelEventHandlerCountForFrameView(FrameView*) { } 174 virtual void recomputeWheelEventHandlerCountForFrameView(FrameView*) { }
175 virtual void setShouldUpdateScrollLayerPositionOnMainThread(MainThreadScroll ingReasons) { } 175 virtual void setShouldUpdateScrollLayerPositionOnMainThread(MainThreadScroll ingReasons) { }
176 176
177 virtual bool hasVisibleSlowRepaintFixedObjects(FrameView*) const; 177 virtual bool hasVisibleSlowRepaintViewportConstrainedObjects(FrameView*) con st;
178 void updateShouldUpdateScrollLayerPositionOnMainThread(); 178 void updateShouldUpdateScrollLayerPositionOnMainThread();
179 179
180 void updateMainFrameScrollPositionTimerFired(Timer<ScrollingCoordinator>*); 180 void updateMainFrameScrollPositionTimerFired(Timer<ScrollingCoordinator>*);
181 181
182 Timer<ScrollingCoordinator> m_updateMainFrameScrollPositionTimer; 182 Timer<ScrollingCoordinator> m_updateMainFrameScrollPositionTimer;
183 IntPoint m_scheduledUpdateScrollPosition; 183 IntPoint m_scheduledUpdateScrollPosition;
184 bool m_scheduledUpdateIsProgrammaticScroll; 184 bool m_scheduledUpdateIsProgrammaticScroll;
185 SetOrSyncScrollingLayerPosition m_scheduledScrollingLayerPositionAction; 185 SetOrSyncScrollingLayerPosition m_scheduledScrollingLayerPositionAction;
186 186
187 bool m_forceMainThreadScrollLayerPositionUpdates; 187 bool m_forceMainThreadScrollLayerPositionUpdates;
188 }; 188 };
189 189
190 } // namespace WebCore 190 } // namespace WebCore
191 191
192 #endif // ScrollingCoordinator_h 192 #endif // ScrollingCoordinator_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698