| 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 "platform/graphics/RecordingImageBufferSurface.h" | 5 #include "platform/graphics/RecordingImageBufferSurface.h" |
| 6 | 6 |
| 7 #include "platform/Histogram.h" | 7 #include "platform/Histogram.h" |
| 8 #include "platform/graphics/CanvasMetrics.h" | 8 #include "platform/graphics/CanvasMetrics.h" |
| 9 #include "platform/graphics/ExpensiveCanvasHeuristicParameters.h" | 9 #include "platform/graphics/ExpensiveCanvasHeuristicParameters.h" |
| 10 #include "platform/graphics/GraphicsContext.h" | 10 #include "platform/graphics/GraphicsContext.h" |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 EnumerationHistogram, canvasFallbackHistogram, | 92 EnumerationHistogram, canvasFallbackHistogram, |
| 93 new EnumerationHistogram("Canvas.DisplayListFallbackReason", | 93 new EnumerationHistogram("Canvas.DisplayListFallbackReason", |
| 94 FallbackReasonCount)); | 94 FallbackReasonCount)); |
| 95 canvasFallbackHistogram.count(reason); | 95 canvasFallbackHistogram.count(reason); |
| 96 | 96 |
| 97 m_fallbackSurface = m_fallbackFactory->createSurface( | 97 m_fallbackSurface = m_fallbackFactory->createSurface( |
| 98 size(), getOpacityMode(), colorSpace(), colorType()); | 98 size(), getOpacityMode(), colorSpace(), colorType()); |
| 99 m_fallbackSurface->setImageBuffer(m_imageBuffer); | 99 m_fallbackSurface->setImageBuffer(m_imageBuffer); |
| 100 | 100 |
| 101 if (m_previousFrame) { | 101 if (m_previousFrame) { |
| 102 m_previousFrame->playback(m_fallbackSurface->canvas()); | 102 m_fallbackSurface->canvas()->drawPicture(m_previousFrame); |
| 103 m_previousFrame.reset(); | 103 m_previousFrame.reset(); |
| 104 } | 104 } |
| 105 | 105 |
| 106 if (m_currentFrame) { | 106 if (m_currentFrame) { |
| 107 sk_sp<PaintRecord> record = m_currentFrame->finishRecordingAsPicture(); | 107 sk_sp<PaintRecord> record = m_currentFrame->finishRecordingAsPicture(); |
| 108 if (record) | 108 if (record) |
| 109 record->playback(m_fallbackSurface->canvas()); | 109 m_fallbackSurface->canvas()->drawPicture(record); |
| 110 m_currentFrame.reset(); | 110 m_currentFrame.reset(); |
| 111 } | 111 } |
| 112 | 112 |
| 113 if (m_imageBuffer) { | 113 if (m_imageBuffer) { |
| 114 m_imageBuffer->resetCanvas(m_fallbackSurface->canvas()); | 114 m_imageBuffer->resetCanvas(m_fallbackSurface->canvas()); |
| 115 } | 115 } |
| 116 | 116 |
| 117 CanvasMetrics::countCanvasContextUsage( | 117 CanvasMetrics::countCanvasContextUsage( |
| 118 CanvasMetrics::DisplayList2DCanvasFallbackToRaster); | 118 CanvasMetrics::DisplayList2DCanvasFallbackToRaster); |
| 119 } | 119 } |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 406 } | 406 } |
| 407 | 407 |
| 408 void RecordingImageBufferSurface::setIsHidden(bool hidden) { | 408 void RecordingImageBufferSurface::setIsHidden(bool hidden) { |
| 409 if (m_fallbackSurface) | 409 if (m_fallbackSurface) |
| 410 m_fallbackSurface->setIsHidden(hidden); | 410 m_fallbackSurface->setIsHidden(hidden); |
| 411 else | 411 else |
| 412 ImageBufferSurface::setIsHidden(hidden); | 412 ImageBufferSurface::setIsHidden(hidden); |
| 413 } | 413 } |
| 414 | 414 |
| 415 } // namespace blink | 415 } // namespace blink |
| OLD | NEW |