| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 { | 378 { |
| 379 // If we ever require layout but receive a paint anyway, something has gone
horribly wrong. | 379 // If we ever require layout but receive a paint anyway, something has gone
horribly wrong. |
| 380 ASSERT(!needsLayout()); | 380 ASSERT(!needsLayout()); |
| 381 // RenderViews should never be called to paint with an offset not on device
pixels. | 381 // RenderViews should never be called to paint with an offset not on device
pixels. |
| 382 ASSERT(LayoutPoint(IntPoint(paintOffset.x(), paintOffset.y())) == paintOffse
t); | 382 ASSERT(LayoutPoint(IntPoint(paintOffset.x(), paintOffset.y())) == paintOffse
t); |
| 383 | 383 |
| 384 ANNOTATE_GRAPHICS_CONTEXT(paintInfo, this); | 384 ANNOTATE_GRAPHICS_CONTEXT(paintInfo, this); |
| 385 | 385 |
| 386 // This avoids painting garbage between columns if there is a column gap. | 386 // This avoids painting garbage between columns if there is a column gap. |
| 387 if (m_frameView && m_frameView->pagination().mode != Pagination::Unpaginated
) | 387 if (m_frameView && m_frameView->pagination().mode != Pagination::Unpaginated
) |
| 388 paintInfo.context->fillRect(paintInfo.rect, m_frameView->baseBackgroundC
olor(), ColorSpaceDeviceRGB); | 388 paintInfo.context->fillRect(paintInfo.rect, m_frameView->baseBackgroundC
olor()); |
| 389 | 389 |
| 390 paintObject(paintInfo, paintOffset); | 390 paintObject(paintInfo, paintOffset); |
| 391 } | 391 } |
| 392 | 392 |
| 393 static inline bool isComposited(RenderObject* object) | 393 static inline bool isComposited(RenderObject* object) |
| 394 { | 394 { |
| 395 return object->hasLayer() && toRenderLayerModelObject(object)->layer()->isCo
mposited(); | 395 return object->hasLayer() && toRenderLayerModelObject(object)->layer()->isCo
mposited(); |
| 396 } | 396 } |
| 397 | 397 |
| 398 static inline bool rendererObscuresBackground(RenderObject* rootObject) | 398 static inline bool rendererObscuresBackground(RenderObject* rootObject) |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 464 // if there is a transform on the <html>, or if there is a page scale factor
less than 1. | 464 // if there is a transform on the <html>, or if there is a page scale factor
less than 1. |
| 465 // Only fill with the base background color (typically white) if we're the r
oot document, | 465 // Only fill with the base background color (typically white) if we're the r
oot document, |
| 466 // since iframes/frames with no background in the child document should show
the parent's background. | 466 // since iframes/frames with no background in the child document should show
the parent's background. |
| 467 if (frameView()->isTransparent()) // FIXME: This needs to be dynamic. We sh
ould be able to go back to blitting if we ever stop being transparent. | 467 if (frameView()->isTransparent()) // FIXME: This needs to be dynamic. We sh
ould be able to go back to blitting if we ever stop being transparent. |
| 468 frameView()->setCannotBlitToWindow(); // The parent must show behind the
child. | 468 frameView()->setCannotBlitToWindow(); // The parent must show behind the
child. |
| 469 else { | 469 else { |
| 470 Color baseColor = frameView()->baseBackgroundColor(); | 470 Color baseColor = frameView()->baseBackgroundColor(); |
| 471 if (baseColor.alpha()) { | 471 if (baseColor.alpha()) { |
| 472 CompositeOperator previousOperator = paintInfo.context->compositeOpe
ration(); | 472 CompositeOperator previousOperator = paintInfo.context->compositeOpe
ration(); |
| 473 paintInfo.context->setCompositeOperation(CompositeCopy); | 473 paintInfo.context->setCompositeOperation(CompositeCopy); |
| 474 paintInfo.context->fillRect(paintInfo.rect, baseColor, style()->colo
rSpace()); | 474 paintInfo.context->fillRect(paintInfo.rect, baseColor); |
| 475 paintInfo.context->setCompositeOperation(previousOperator); | 475 paintInfo.context->setCompositeOperation(previousOperator); |
| 476 } else | 476 } else |
| 477 paintInfo.context->clearRect(paintInfo.rect); | 477 paintInfo.context->clearRect(paintInfo.rect); |
| 478 } | 478 } |
| 479 } | 479 } |
| 480 | 480 |
| 481 bool RenderView::shouldRepaint(const LayoutRect& r) const | 481 bool RenderView::shouldRepaint(const LayoutRect& r) const |
| 482 { | 482 { |
| 483 if (printing() || r.width() == 0 || r.height() == 0) | 483 if (printing() || r.width() == 0 || r.height() == 0) |
| 484 return false; | 484 return false; |
| (...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1141 #endif | 1141 #endif |
| 1142 | 1142 |
| 1143 if (layoutState) | 1143 if (layoutState) |
| 1144 layoutState->m_isPaginated = m_fragmenting; | 1144 layoutState->m_isPaginated = m_fragmenting; |
| 1145 | 1145 |
| 1146 if (m_flowThreadState != RenderObject::NotInsideFlowThread) | 1146 if (m_flowThreadState != RenderObject::NotInsideFlowThread) |
| 1147 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); | 1147 m_root->setFlowThreadStateIncludingDescendants(m_flowThreadState); |
| 1148 } | 1148 } |
| 1149 | 1149 |
| 1150 } // namespace WebCore | 1150 } // namespace WebCore |
| OLD | NEW |