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

Unified Diff: core/fxge/skia/fx_skia_device.h

Issue 2064753002: add local caching for skia draws (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: address comments Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: core/fxge/skia/fx_skia_device.h
diff --git a/core/fxge/skia/fx_skia_device.h b/core/fxge/skia/fx_skia_device.h
index 4ea1ad1218dbc7b2b4953326e5eb63387e4862ff..c21119b9a4091413a1aad8f7ab9538044197aa45 100644
--- a/core/fxge/skia/fx_skia_device.h
+++ b/core/fxge/skia/fx_skia_device.h
@@ -14,6 +14,7 @@ class SkMatrix;
class SkPaint;
class SkPath;
class SkPictureRecorder;
+class SkiaState;
struct SkIRect;
class CFX_SkiaDeviceDriver : public IFX_RenderDeviceDriver {
@@ -122,14 +123,20 @@ class CFX_SkiaDeviceDriver : public IFX_RenderDeviceDriver {
void PaintStroke(SkPaint* spaint,
const CFX_GraphStateData* pGraphState,
const SkMatrix& matrix);
+ void Flush();
SkPictureRecorder* GetRecorder() const { return m_pRecorder; }
void PreMultiply();
+ SkCanvas* SkiaCanvas() { return m_pCanvas; }
+ void Dump() const;
private:
+ friend class SkiaState;
+
CFX_DIBitmap* m_pBitmap;
CFX_DIBitmap* m_pOriDevice;
SkCanvas* m_pCanvas;
SkPictureRecorder* const m_pRecorder;
+ std::unique_ptr<SkiaState> m_pCache;
FX_BOOL m_bRgbByteOrder;
FX_BOOL m_bGroupKnockout;
};

Powered by Google App Engine
This is Rietveld 408576698