| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "config.h" | 5 #include "config.h" |
| 6 #include "core/paint/BlockPainter.h" | 6 #include "core/paint/BlockPainter.h" |
| 7 | 7 |
| 8 #include "core/editing/DragCaretController.h" | 8 #include "core/editing/DragCaretController.h" |
| 9 #include "core/editing/FrameSelection.h" | 9 #include "core/editing/FrameSelection.h" |
| 10 #include "core/frame/Settings.h" | 10 #include "core/frame/Settings.h" |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 166 | 166 |
| 167 { | 167 { |
| 168 Optional<ScrollRecorder> scrollRecorder; | 168 Optional<ScrollRecorder> scrollRecorder; |
| 169 Optional<PaintInfo> scrolledPaintInfo; | 169 Optional<PaintInfo> scrolledPaintInfo; |
| 170 if (m_layoutBlock.hasOverflowClip()) { | 170 if (m_layoutBlock.hasOverflowClip()) { |
| 171 IntSize scrollOffset = m_layoutBlock.scrolledContentOffset(); | 171 IntSize scrollOffset = m_layoutBlock.scrolledContentOffset(); |
| 172 if (m_layoutBlock.layer()->scrollsOverflow() || !scrollOffset.isZero
()) { | 172 if (m_layoutBlock.layer()->scrollsOverflow() || !scrollOffset.isZero
()) { |
| 173 scrollRecorder.emplace(*paintInfo.context, m_layoutBlock, paintP
hase, scrollOffset); | 173 scrollRecorder.emplace(*paintInfo.context, m_layoutBlock, paintP
hase, scrollOffset); |
| 174 scrolledPaintInfo.emplace(paintInfo); | 174 scrolledPaintInfo.emplace(paintInfo); |
| 175 scrolledPaintInfo->rect.move(scrollOffset); | 175 scrolledPaintInfo->rect.move(scrollOffset); |
| 176 scrolledPaintInfo->accumulatedScrollOffsetSincePaintContainer +=
scrollOffset; |
| 176 } | 177 } |
| 177 } | 178 } |
| 178 | 179 |
| 179 // We're done. We don't bother painting any children. | 180 // We're done. We don't bother painting any children. |
| 180 if (paintPhase == PaintPhaseBlockBackground || paintInfo.paintRootBackgr
oundOnly()) | 181 if (paintPhase == PaintPhaseBlockBackground || paintInfo.paintRootBackgr
oundOnly()) |
| 181 return; | 182 return; |
| 182 | 183 |
| 183 const PaintInfo& contentsPaintInfo = scrolledPaintInfo ? *scrolledPaintI
nfo : paintInfo; | 184 const PaintInfo& contentsPaintInfo = scrolledPaintInfo ? *scrolledPaintI
nfo : paintInfo; |
| 184 | 185 |
| 185 if (paintPhase != PaintPhaseSelfOutline) | 186 if (paintPhase != PaintPhaseSelfOutline) |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 | 273 |
| 273 // We don't paint our own background, but we do let the kids paint their
backgrounds. | 274 // We don't paint our own background, but we do let the kids paint their
backgrounds. |
| 274 PaintInfo paintInfoForChild(paintInfo); | 275 PaintInfo paintInfoForChild(paintInfo); |
| 275 paintInfoForChild.phase = newPhase; | 276 paintInfoForChild.phase = newPhase; |
| 276 paintInfoForChild.updatePaintingRootForChildren(&m_layoutBlock); | 277 paintInfoForChild.updatePaintingRootForChildren(&m_layoutBlock); |
| 277 m_layoutBlock.paintChildren(paintInfoForChild, paintOffset); | 278 m_layoutBlock.paintChildren(paintInfoForChild, paintOffset); |
| 278 } | 279 } |
| 279 } | 280 } |
| 280 | 281 |
| 281 } // namespace blink | 282 } // namespace blink |
| OLD | NEW |