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

Unified Diff: src/gpu/text/GrAtlasTextBlob.h

Issue 1615473002: Revert of Fix GrAtlasTextBlob bounds management (Closed) Base URL: https://skia.googlesource.com/skia.git@cleanuptext17
Patch Set: Created 4 years, 11 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 | « src/gpu/batches/GrAtlasTextBatch.cpp ('k') | src/gpu/text/GrAtlasTextBlob.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/text/GrAtlasTextBlob.h
diff --git a/src/gpu/text/GrAtlasTextBlob.h b/src/gpu/text/GrAtlasTextBlob.h
index af6441e003384246a772b493433f21086dc01b67..1c5ea5e60ea73d6e8253794e46813d4f922665c8 100644
--- a/src/gpu/text/GrAtlasTextBlob.h
+++ b/src/gpu/text/GrAtlasTextBlob.h
@@ -210,11 +210,13 @@
// We use this color vs the SkPaint color because it has the colorfilter applied.
void initReusableBlob(GrColor color, const SkMatrix& viewMatrix, SkScalar x, SkScalar y) {
fPaintColor = color;
- this->setupViewMatrix(viewMatrix, x, y);
- }
-
- void initThrowawayBlob(const SkMatrix& viewMatrix, SkScalar x, SkScalar y) {
- this->setupViewMatrix(viewMatrix, x, y);
+ fViewMatrix = viewMatrix;
+ fX = x;
+ fY = y;
+ }
+
+ void initThrowawayBlob(const SkMatrix& viewMatrix) {
+ fViewMatrix = viewMatrix;
}
GrDrawBatch* test_createBatch(int glyphCount, int run, int subRun,
@@ -246,20 +248,6 @@
const GrClip& clip, const SkPaint& skPaint,
SkDrawFilter* drawFilter, const SkMatrix& viewMatrix,
const SkIRect& clipBounds, SkScalar x, SkScalar y);
-
- // This function will only be called when we are regenerating a blob from scratch. We record the
- // initial view matrix and initial offsets(x,y), because we record vertex bounds relative to
- // these numbers. When blobs are reused with new matrices, we need to return to model space so
- // we can update the vertex bounds appropriately.
- void setupViewMatrix(const SkMatrix& viewMatrix, SkScalar x, SkScalar y) {
- fViewMatrix = viewMatrix;
- if (!viewMatrix.invert(&fInitialViewMatrixInverse)) {
- fInitialViewMatrixInverse = SkMatrix::I();
- SkDebugf("Could not invert viewmatrix\n");
- }
- fX = fInitialX = x;
- fY = fInitialY = y;
- }
/*
* Each Run inside of the blob can have its texture coordinates regenerated if required.
@@ -288,6 +276,7 @@
Run()
: fInitialized(false)
, fDrawAsPaths(false) {
+ fVertexBounds.setLargestInverted();
// To ensure we always have one subrun, we push back a fresh run here
fSubRunInfo.push_back();
}
@@ -301,13 +290,10 @@
, fColor(GrColor_ILLEGAL)
, fMaskFormat(kA8_GrMaskFormat)
, fDrawAsDistanceFields(false)
- , fUseLCDText(false) {
- fVertexBounds.setLargestInverted();
- }
+ , fUseLCDText(false) {}
SubRunInfo(const SubRunInfo& that)
: fBulkUseToken(that.fBulkUseToken)
, fStrike(SkSafeRef(that.fStrike.get()))
- , fVertexBounds(that.fVertexBounds)
, fAtlasGeneration(that.fAtlasGeneration)
, fVertexStartIndex(that.fVertexStartIndex)
, fVertexEndIndex(that.fVertexEndIndex)
@@ -352,11 +338,6 @@
fVertexEndIndex = prev.vertexEndIndex();
}
- const SkRect& vertexBounds() const { return fVertexBounds; }
- void joinGlyphBounds(const SkRect& glyphBounds) {
- fVertexBounds.joinNonEmptyArg(glyphBounds);
- }
-
// df properties
void setUseLCDText(bool useLCDText) { fUseLCDText = useLCDText; }
bool hasUseLCDText() const { return fUseLCDText; }
@@ -366,7 +347,6 @@
private:
GrBatchAtlas::BulkUseTokenUpdater fBulkUseToken;
SkAutoTUnref<GrBatchTextStrike> fStrike;
- SkRect fVertexBounds;
uint64_t fAtlasGeneration;
size_t fVertexStartIndex;
size_t fVertexEndIndex;
@@ -388,6 +368,7 @@
}
static const int kMinSubRuns = 1;
SkAutoTUnref<SkTypeface> fTypeface;
+ SkRect fVertexBounds;
SkSTArray<kMinSubRuns, SubRunInfo> fSubRunInfo;
SkAutoDescriptor fDescriptor;
@@ -442,10 +423,7 @@
SkTArray<BigGlyph> fBigGlyphs;
Key fKey;
SkMatrix fViewMatrix;
- SkMatrix fInitialViewMatrixInverse;
GrColor fPaintColor;
- SkScalar fInitialX;
- SkScalar fInitialY;
SkScalar fX;
SkScalar fY;
« no previous file with comments | « src/gpu/batches/GrAtlasTextBatch.cpp ('k') | src/gpu/text/GrAtlasTextBlob.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698