aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2015-01-05 07:02:45 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-01-05 07:02:45 -0800
commit49aabde6ef80e39f00a2d00487cf5a881987dd81 (patch)
treea8ed88cafe2326029145188798d7a41a79105fc8 /src
parent5f2ee72f975d8172a65808af7fc4985b40b7ca28 (diff)
Clean up dead clear() code in SkRecord.
This removes the SkRecords::Clear struct and everything that refers to it. Notice there is nothing actually creating a Clear, which means this is all dead code. Now that all ops obey the clip, I don't think we need the weird inflate-empty-to-epsilon hack for BBH queries. BUG=skia: Review URL: https://codereview.chromium.org/835813002
Diffstat (limited to 'src')
-rw-r--r--src/core/SkRecordDraw.cpp7
-rw-r--r--src/core/SkRecords.h4
2 files changed, 1 insertions, 10 deletions
diff --git a/src/core/SkRecordDraw.cpp b/src/core/SkRecordDraw.cpp
index 08c915491c..6b1de4c613 100644
--- a/src/core/SkRecordDraw.cpp
+++ b/src/core/SkRecordDraw.cpp
@@ -26,9 +26,7 @@ void SkRecordDraw(const SkRecord& record,
// lets us query the BBH.
SkRect query;
if (!canvas->getClipBounds(&query)) {
- // We want to make sure our query rectangle is never totally empty.
- // Clear ignores the clip, so it must draw even if the clip is logically empty.
- query = SkRect::MakeWH(SK_ScalarNearlyZero, SK_ScalarNearlyZero);
+ query.setEmpty();
}
SkTDArray<unsigned> ops;
@@ -81,7 +79,6 @@ template <> void Draw::draw(const NoOp&) {}
DRAW(Restore, restore());
DRAW(Save, save());
DRAW(SaveLayer, saveLayer(r.bounds, r.paint, r.flags));
-DRAW(Clear, clear(r.color));
DRAW(SetMatrix, setMatrix(SkMatrix::Concat(fInitialCTM, r.matrix)));
DRAW(ClipPath, clipPath(r.path, r.opAA.op, r.opAA.aa));
@@ -218,7 +215,6 @@ public:
fCTM->mapRect(&rect);
// Nothing can draw outside the current clip.
- // (Only bounded ops call into this method, so oddballs like Clear don't matter here.)
if (!rect.intersect(fCurrentClipBounds)) {
return Bounds::MakeEmpty();
}
@@ -388,7 +384,6 @@ private:
// FIXME: this method could use better bounds
Bounds bounds(const DrawText&) const { return fCurrentClipBounds; }
- Bounds bounds(const Clear&) const { return fCullRect; } // Ignores the clip.
Bounds bounds(const DrawPaint&) const { return fCurrentClipBounds; }
Bounds bounds(const NoOp&) const { return Bounds::MakeEmpty(); } // NoOps don't draw.
diff --git a/src/core/SkRecords.h b/src/core/SkRecords.h
index 1cf29f26f1..aab39498d9 100644
--- a/src/core/SkRecords.h
+++ b/src/core/SkRecords.h
@@ -35,7 +35,6 @@ namespace SkRecords {
M(ClipRRect) \
M(ClipRect) \
M(ClipRegion) \
- M(Clear) \
M(BeginCommentGroup) \
M(AddComment) \
M(EndCommentGroup) \
@@ -236,9 +235,6 @@ RECORD3(ClipRRect, SkIRect, devBounds, SkRRect, rrect, RegionOpAndAA, opAA);
RECORD3(ClipRect, SkIRect, devBounds, SkRect, rect, RegionOpAndAA, opAA);
RECORD3(ClipRegion, SkIRect, devBounds, SkRegion, region, SkRegion::Op, op);
-// Picture version 37 was last to record this op-code; clear is now non-virtual
-RECORD1(Clear, SkColor, color);
-
RECORD1(BeginCommentGroup, PODArray<char>, description);
RECORD2(AddComment, PODArray<char>, key, PODArray<char>, value);
RECORD0(EndCommentGroup);