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

Side by Side Diff: Source/core/rendering/RenderLayerScrollableArea.cpp

Issue 342203004: Get rid of compositing and squashing helper methods on RenderLayerModelObject. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixed compile. Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « Source/core/rendering/RenderLayerRepainter.cpp ('k') | Source/core/rendering/RenderObject.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
5 * 5 *
6 * Other contributors: 6 * Other contributors:
7 * Robert O'Callahan <roc+@cs.cmu.edu> 7 * Robert O'Callahan <roc+@cs.cmu.edu>
8 * David Baron <dbaron@fas.harvard.edu> 8 * David Baron <dbaron@fas.harvard.edu>
9 * Christian Biesinger <cbiesinger@web.de> 9 * Christian Biesinger <cbiesinger@web.de>
10 * Randall Jesup <rjesup@wgate.com> 10 * Randall Jesup <rjesup@wgate.com>
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 destroyScrollbar(VerticalScrollbar); 132 destroyScrollbar(VerticalScrollbar);
133 133
134 if (m_scrollCorner) 134 if (m_scrollCorner)
135 m_scrollCorner->destroy(); 135 m_scrollCorner->destroy();
136 if (m_resizer) 136 if (m_resizer)
137 m_resizer->destroy(); 137 m_resizer->destroy();
138 } 138 }
139 139
140 GraphicsLayer* RenderLayerScrollableArea::layerForScrolling() const 140 GraphicsLayer* RenderLayerScrollableArea::layerForScrolling() const
141 { 141 {
142 return box().hasCompositedLayerMapping() ? box().compositedLayerMapping()->s crollingContentsLayer() : 0; 142 return layer()->hasCompositedLayerMapping() ? layer()->compositedLayerMappin g()->scrollingContentsLayer() : 0;
143 } 143 }
144 144
145 GraphicsLayer* RenderLayerScrollableArea::layerForHorizontalScrollbar() const 145 GraphicsLayer* RenderLayerScrollableArea::layerForHorizontalScrollbar() const
146 { 146 {
147 // See crbug.com/343132. 147 // See crbug.com/343132.
148 DisableCompositingQueryAsserts disabler; 148 DisableCompositingQueryAsserts disabler;
149 149
150 return box().hasCompositedLayerMapping() ? box().compositedLayerMapping()->l ayerForHorizontalScrollbar() : 0; 150 return layer()->hasCompositedLayerMapping() ? layer()->compositedLayerMappin g()->layerForHorizontalScrollbar() : 0;
151 } 151 }
152 152
153 GraphicsLayer* RenderLayerScrollableArea::layerForVerticalScrollbar() const 153 GraphicsLayer* RenderLayerScrollableArea::layerForVerticalScrollbar() const
154 { 154 {
155 // See crbug.com/343132. 155 // See crbug.com/343132.
156 DisableCompositingQueryAsserts disabler; 156 DisableCompositingQueryAsserts disabler;
157 157
158 return box().hasCompositedLayerMapping() ? box().compositedLayerMapping()->l ayerForVerticalScrollbar() : 0; 158 return layer()->hasCompositedLayerMapping() ? layer()->compositedLayerMappin g()->layerForVerticalScrollbar() : 0;
159 } 159 }
160 160
161 GraphicsLayer* RenderLayerScrollableArea::layerForScrollCorner() const 161 GraphicsLayer* RenderLayerScrollableArea::layerForScrollCorner() const
162 { 162 {
163 // See crbug.com/343132. 163 // See crbug.com/343132.
164 DisableCompositingQueryAsserts disabler; 164 DisableCompositingQueryAsserts disabler;
165 165
166 return box().hasCompositedLayerMapping() ? box().compositedLayerMapping()->l ayerForScrollCorner() : 0; 166 return layer()->hasCompositedLayerMapping() ? layer()->compositedLayerMappin g()->layerForScrollCorner() : 0;
167 } 167 }
168 168
169 void RenderLayerScrollableArea::invalidateScrollbarRect(Scrollbar* scrollbar, co nst IntRect& rect) 169 void RenderLayerScrollableArea::invalidateScrollbarRect(Scrollbar* scrollbar, co nst IntRect& rect)
170 { 170 {
171 // See crbug.com/343132. 171 // See crbug.com/343132.
172 DisableCompositingQueryAsserts disabler; 172 DisableCompositingQueryAsserts disabler;
173 173
174 if (scrollbar == m_vBar.get()) { 174 if (scrollbar == m_vBar.get()) {
175 if (GraphicsLayer* layer = layerForVerticalScrollbar()) { 175 if (GraphicsLayer* layer = layerForVerticalScrollbar()) {
176 layer->setNeedsDisplayInRect(rect); 176 layer->setNeedsDisplayInRect(rect);
(...skipping 768 matching lines...) Expand 10 before | Expand all | Expand 10 after
945 const IntRect& scrollCorner = scrollCornerRect(); 945 const IntRect& scrollCorner = scrollCornerRect();
946 if (m_scrollCorner) 946 if (m_scrollCorner)
947 m_scrollCorner->setFrameRect(scrollCorner); 947 m_scrollCorner->setFrameRect(scrollCorner);
948 948
949 if (m_resizer) 949 if (m_resizer)
950 m_resizer->setFrameRect(resizerCornerRect(borderBox, ResizerForPointer)) ; 950 m_resizer->setFrameRect(resizerCornerRect(borderBox, ResizerForPointer)) ;
951 951
952 // FIXME, this should eventually be removed, once we are certain that compos ited 952 // FIXME, this should eventually be removed, once we are certain that compos ited
953 // controls get correctly positioned on a compositor update. For now, conser vatively 953 // controls get correctly positioned on a compositor update. For now, conser vatively
954 // leaving this unchanged. 954 // leaving this unchanged.
955 if (box().hasCompositedLayerMapping()) 955 if (layer()->hasCompositedLayerMapping())
956 box().compositedLayerMapping()->positionOverflowControlsLayers(offsetFro mRoot); 956 layer()->compositedLayerMapping()->positionOverflowControlsLayers(offset FromRoot);
957 } 957 }
958 958
959 void RenderLayerScrollableArea::updateScrollCornerStyle() 959 void RenderLayerScrollableArea::updateScrollCornerStyle()
960 { 960 {
961 if (!m_scrollCorner && !hasScrollbar()) 961 if (!m_scrollCorner && !hasScrollbar())
962 return; 962 return;
963 if (!m_scrollCorner && hasOverlayScrollbars()) 963 if (!m_scrollCorner && hasOverlayScrollbars())
964 return; 964 return;
965 965
966 RenderObject* actualRenderer = rendererForScrollbar(box()); 966 RenderObject* actualRenderer = rendererForScrollbar(box());
(...skipping 446 matching lines...) Expand 10 before | Expand all | Expand 10 after
1413 if (didNeedCompositedScrolling != needsCompositedScrolling()) 1413 if (didNeedCompositedScrolling != needsCompositedScrolling())
1414 layer()->didUpdateNeedsCompositedScrolling(); 1414 layer()->didUpdateNeedsCompositedScrolling();
1415 } 1415 }
1416 1416
1417 void RenderLayerScrollableArea::updateCompositingLayersAfterScroll() 1417 void RenderLayerScrollableArea::updateCompositingLayersAfterScroll()
1418 { 1418 {
1419 RenderLayerCompositor* compositor = box().view()->compositor(); 1419 RenderLayerCompositor* compositor = box().view()->compositor();
1420 if (compositor->inCompositingMode()) { 1420 if (compositor->inCompositingMode()) {
1421 if (usesCompositedScrolling()) { 1421 if (usesCompositedScrolling()) {
1422 DisableCompositingQueryAsserts disabler; 1422 DisableCompositingQueryAsserts disabler;
1423 ASSERT(box().hasCompositedLayerMapping()); 1423 ASSERT(layer()->hasCompositedLayerMapping());
1424 box().compositedLayerMapping()->setNeedsGraphicsLayerUpdate(Graphics LayerUpdateSubtree); 1424 layer()->compositedLayerMapping()->setNeedsGraphicsLayerUpdate(Graph icsLayerUpdateSubtree);
1425 compositor->setNeedsCompositingUpdate(CompositingUpdateAfterGeometry Change); 1425 compositor->setNeedsCompositingUpdate(CompositingUpdateAfterGeometry Change);
1426 } else { 1426 } else {
1427 layer()->setNeedsCompositingInputsUpdate(); 1427 layer()->setNeedsCompositingInputsUpdate();
1428 } 1428 }
1429 } 1429 }
1430 } 1430 }
1431 1431
1432 bool RenderLayerScrollableArea::usesCompositedScrolling() const 1432 bool RenderLayerScrollableArea::usesCompositedScrolling() const
1433 { 1433 {
1434 // Scroll form controls on the main thread so they exhibit correct touch scr oll event bubbling 1434 // Scroll form controls on the main thread so they exhibit correct touch scr oll event bubbling
1435 if (box().isIntristicallyScrollable(VerticalScrollbar) || box().isIntristica llyScrollable(HorizontalScrollbar)) 1435 if (box().isIntristicallyScrollable(VerticalScrollbar) || box().isIntristica llyScrollable(HorizontalScrollbar))
1436 return false; 1436 return false;
1437 1437
1438 // See https://codereview.chromium.org/176633003/ for the tests that fail wi thout this disabler. 1438 // See https://codereview.chromium.org/176633003/ for the tests that fail wi thout this disabler.
1439 DisableCompositingQueryAsserts disabler; 1439 DisableCompositingQueryAsserts disabler;
1440 return box().hasCompositedLayerMapping() && box().compositedLayerMapping()-> scrollingLayer(); 1440 return layer()->hasCompositedLayerMapping() && layer()->compositedLayerMappi ng()->scrollingLayer();
1441 } 1441 }
1442 1442
1443 bool RenderLayerScrollableArea::needsCompositedScrolling() const 1443 bool RenderLayerScrollableArea::needsCompositedScrolling() const
1444 { 1444 {
1445 return scrollsOverflow() && box().view()->compositor()->acceleratedCompositi ngForOverflowScrollEnabled(); 1445 return scrollsOverflow() && box().view()->compositor()->acceleratedCompositi ngForOverflowScrollEnabled();
1446 } 1446 }
1447 1447
1448 } // Namespace WebCore 1448 } // Namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderLayerRepainter.cpp ('k') | Source/core/rendering/RenderObject.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698