OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
10 * | 10 * |
(...skipping 1237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1248 { | 1248 { |
1249 for (Frame* frame = m_frame.get(); frame; frame = frame->tree()->traverseNex
t(m_frame.get())) { | 1249 for (Frame* frame = m_frame.get(); frame; frame = frame->tree()->traverseNex
t(m_frame.get())) { |
1250 if (FrameView* view = frame->view()) | 1250 if (FrameView* view = frame->view()) |
1251 view->setCanBlitOnScroll(!view->useSlowRepaints()); | 1251 view->setCanBlitOnScroll(!view->useSlowRepaints()); |
1252 } | 1252 } |
1253 } | 1253 } |
1254 | 1254 |
1255 bool FrameView::contentsInCompositedLayer() const | 1255 bool FrameView::contentsInCompositedLayer() const |
1256 { | 1256 { |
1257 RenderView* renderView = this->renderView(); | 1257 RenderView* renderView = this->renderView(); |
1258 if (renderView && renderView->isComposited()) { | 1258 if (renderView && renderView->compositingState() == PaintsIntoOwnBacking) { |
1259 GraphicsLayer* layer = renderView->layer()->compositedLayerMapping()->ma
inGraphicsLayer(); | 1259 GraphicsLayer* layer = renderView->layer()->compositedLayerMapping()->ma
inGraphicsLayer(); |
1260 if (layer && layer->drawsContent()) | 1260 if (layer && layer->drawsContent()) |
1261 return true; | 1261 return true; |
1262 } | 1262 } |
1263 | 1263 |
1264 return false; | 1264 return false; |
1265 } | 1265 } |
1266 | 1266 |
1267 void FrameView::setCannotBlitToWindow() | 1267 void FrameView::setCannotBlitToWindow() |
1268 { | 1268 { |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1365 ViewportConstrainedObjectSet::const_iterator end = m_viewportConstrainedObje
cts->end(); | 1365 ViewportConstrainedObjectSet::const_iterator end = m_viewportConstrainedObje
cts->end(); |
1366 for (ViewportConstrainedObjectSet::const_iterator it = m_viewportConstrained
Objects->begin(); it != end; ++it) { | 1366 for (ViewportConstrainedObjectSet::const_iterator it = m_viewportConstrained
Objects->begin(); it != end; ++it) { |
1367 RenderObject* renderer = *it; | 1367 RenderObject* renderer = *it; |
1368 if (!renderer->style()->hasViewportConstrainedPosition()) | 1368 if (!renderer->style()->hasViewportConstrainedPosition()) |
1369 continue; | 1369 continue; |
1370 | 1370 |
1371 // Fixed items should always have layers. | 1371 // Fixed items should always have layers. |
1372 ASSERT(renderer->hasLayer()); | 1372 ASSERT(renderer->hasLayer()); |
1373 RenderLayer* layer = toRenderBoxModelObject(renderer)->layer(); | 1373 RenderLayer* layer = toRenderBoxModelObject(renderer)->layer(); |
1374 | 1374 |
1375 // Composited layers may still actually paint into their ancestor. | 1375 // Layers that paint into their ancestor or into a grouped backing will
still need |
1376 // If that happens, the viewport constrained object needs to be | 1376 // to apply a repaint invalidation. If the layer paints into its own bac
king, then |
1377 // repainted on scroll. | 1377 // it does not need repainting just to scroll. |
1378 if (layer->isComposited() && !layer->compositedLayerMapping()->paintsInt
oCompositedAncestor()) | 1378 if (layer->compositingState() == PaintsIntoOwnBacking) |
1379 continue; | 1379 continue; |
1380 | 1380 |
1381 if (layer->viewportConstrainedNotCompositedReason() == RenderLayer::NotC
ompositedForBoundsOutOfView | 1381 if (layer->viewportConstrainedNotCompositedReason() == RenderLayer::NotC
ompositedForBoundsOutOfView |
1382 || layer->viewportConstrainedNotCompositedReason() == RenderLayer::N
otCompositedForNoVisibleContent) { | 1382 || layer->viewportConstrainedNotCompositedReason() == RenderLayer::N
otCompositedForNoVisibleContent) { |
1383 // Don't invalidate for invisible fixed layers. | 1383 // Don't invalidate for invisible fixed layers. |
1384 continue; | 1384 continue; |
1385 } | 1385 } |
1386 | 1386 |
1387 if (layer->hasAncestorWithFilterOutsets()) { | 1387 if (layer->hasAncestorWithFilterOutsets()) { |
1388 // If the fixed layer has a blur/drop-shadow filter applied on at le
ast one of its parents, we cannot | 1388 // If the fixed layer has a blur/drop-shadow filter applied on at le
ast one of its parents, we cannot |
(...skipping 2031 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3420 return frame().document()->existingAXObjectCache(); | 3420 return frame().document()->existingAXObjectCache(); |
3421 return 0; | 3421 return 0; |
3422 } | 3422 } |
3423 | 3423 |
3424 bool FrameView::isMainFrame() const | 3424 bool FrameView::isMainFrame() const |
3425 { | 3425 { |
3426 return m_frame->page() && m_frame->page()->mainFrame() == m_frame; | 3426 return m_frame->page() && m_frame->page()->mainFrame() == m_frame; |
3427 } | 3427 } |
3428 | 3428 |
3429 } // namespace WebCore | 3429 } // namespace WebCore |
OLD | NEW |