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

Unified Diff: src/core/SkBBoxRecord.h

Issue 380373003: Fix for saveLayer() with filters vs. the BBox Hierarchy. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Eliminate SaveEntry; clone SkPaint on push() Created 6 years, 5 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
« no previous file with comments | « no previous file | src/core/SkBBoxRecord.cpp » ('j') | src/core/SkBBoxRecord.cpp » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/core/SkBBoxRecord.h
diff --git a/src/core/SkBBoxRecord.h b/src/core/SkBBoxRecord.h
index f3d72b044857a2f2810a8adcd13d02f81c7a72d2..0698278cab6043326f90fd8e9133261427597994 100644
--- a/src/core/SkBBoxRecord.h
+++ b/src/core/SkBBoxRecord.h
@@ -10,6 +10,7 @@
#define SkBBoxRecord_DEFINED
#include "SkPictureRecord.h"
+#include "SkTDStack.h"
/**
* This is an abstract SkPictureRecord subclass that intercepts draw calls and computes an
@@ -22,7 +23,7 @@ public:
SkBBoxRecord(const SkISize& size, uint32_t recordFlags)
: INHERITED(size, recordFlags) {
}
- virtual ~SkBBoxRecord() { }
+ virtual ~SkBBoxRecord();
/**
* This is called each time we get a bounding box, it will be axis-aligned,
@@ -66,6 +67,11 @@ protected:
virtual void onDrawTextOnPath(const void* text, size_t byteLength, const SkPath& path,
const SkMatrix* matrix, const SkPaint&) SK_OVERRIDE;
virtual void onDrawPicture(const SkPicture* picture) SK_OVERRIDE;
+ virtual void willSave() SK_OVERRIDE;
+ virtual SaveLayerStrategy willSaveLayer(const SkRect*, const SkPaint*, SaveFlags) SK_OVERRIDE;
+ virtual void willRestore() SK_OVERRIDE;
+
+ SkTDStack<const SkPaint*> fSaveStack;
mtklein 2014/07/11 15:37:14 // Paints from (possibly nested) saveLayers that n
private:
/**
« no previous file with comments | « no previous file | src/core/SkBBoxRecord.cpp » ('j') | src/core/SkBBoxRecord.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698