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

Unified Diff: third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp

Issue 2894843002: Revert of Remove cullRect() from PaintOpBuffer. (Closed)
Patch Set: rebase TestExpectations Created 3 years, 7 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: third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp
diff --git a/third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp b/third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp
index 1a9250f70c46e70e013d529d4450f97d59802a1d..2b0bdb54cbb3da23f6cfd21070b6d82c635f2e24 100644
--- a/third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp
+++ b/third_party/WebKit/Source/platform/graphics/PaintRecordPattern.cpp
@@ -13,18 +13,13 @@ namespace blink {
PassRefPtr<PaintRecordPattern> PaintRecordPattern::Create(
sk_sp<PaintRecord> record,
- const FloatRect& record_bounds,
RepeatMode repeat_mode) {
- return AdoptRef(
- new PaintRecordPattern(std::move(record), record_bounds, repeat_mode));
+ return AdoptRef(new PaintRecordPattern(std::move(record), repeat_mode));
}
PaintRecordPattern::PaintRecordPattern(sk_sp<PaintRecord> record,
- const FloatRect& record_bounds,
RepeatMode mode)
- : Pattern(mode),
- tile_record_(std::move(record)),
- tile_record_bounds_(record_bounds) {
+ : Pattern(mode), tile_record_(std::move(record)) {
// All current clients use RepeatModeXY, so we only support this mode for now.
DCHECK(IsRepeatXY());
@@ -35,9 +30,11 @@ PaintRecordPattern::~PaintRecordPattern() {}
sk_sp<PaintShader> PaintRecordPattern::CreateShader(
const SkMatrix& local_matrix) {
- return MakePaintShaderRecord(tile_record_, tile_record_bounds_,
- SkShader::kRepeat_TileMode,
- SkShader::kRepeat_TileMode, &local_matrix);
+ SkRect tile_bounds = tile_record_->cullRect();
+
+ return MakePaintShaderRecord(tile_record_, SkShader::kRepeat_TileMode,
+ SkShader::kRepeat_TileMode, &local_matrix,
+ &tile_bounds);
}
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698