History log of /external/skia/src/gpu/text/GrAtlasTextBlob.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
caf1ebb95f7fea81d416b81beb4b46c25643c714 01-Mar-2018 Robert Phillips <robertphillips@google.com> sk_sp-ify GrGlyphCache

Hopefully, this makes it clearer that the subRuns of the GrAtlasTextBlobs carry a ref on the GrAtlasTextStrikes

Change-Id: I3d612074d98bc26240465f717711b7a2bcecb6ed
Reviewed-on: https://skia-review.googlesource.com/110981
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
c4039ea466d39ede0ea44fc7a18f1174f893f11d 01-Mar-2018 Robert Phillips <robertphillips@google.com> Fission GrAtlasGlyphCache in two (take 2)

Reland all the things

This CL splits the old GrAtlasGlyphCache into a GrAtlasGlyphCache and an GrAtlasManager.

The GrAtlasManager itself is split into a rather limited base class (GrRestrictedAtlasManager)
and the all powerful GrAtlasManager. The GrRestrictedAtlasManager is available at op creation
time and provides access to the proxies backing the atlases. The full GrAtlasManager is
only available at flush time and allows instantiation of the proxies and uploading to them.

In the DDL world all of the DDL Contexts will receive a GrRestrictedAtlasManager-version of the
GrAtlasManager in the main thread. This future atlas manager will have had all of its
GrDrawOpAtlases created (but not instantiated) so there should be no race conditions.

TBR=jvanverth@google.com
Change-Id: I05c6cd8d301bf2decca39765e5cae62993d9da04
Reviewed-on: https://skia-review.googlesource.com/111362
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
4bc7011802e411da74eb2d213d6328e42f7dce1c 01-Mar-2018 Robert Phillips <robertphillips@google.com> Separate creation time & flush time behavior in GrDrawOpAtlas (take 3)

This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.

For the GrDrawOpAtlas:
At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.

The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush

GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.

During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.

The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
It now carries a GrProxyProvider for when it needs to create an atlas
It passes in a GrResourceProvider* at flush time to allow instantiation.

It does not, yet, allocate that GrDrawOpAtlases it might ever require.

TBR=bsalomon@google.com
Change-Id: I276d339d81e7b709140e082a7b58c5584f73ab70
Reviewed-on: https://skia-review.googlesource.com/111100
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
ba7a16519468dc49ea02d9256ee06f319edf9511 28-Feb-2018 Robert Phillips <robertphillips@google.com> Revert "Revert "Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)"""

This reverts commit 934c3d0c548d254a0d986963ee751caf0ffcb500.

Reason for revert: Chrome

Original change's description:
> Revert "Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)""
>
> This reverts commit 84d823a5e2a03b09f7db4964218b9e04e821c878.
>
> Reason for revert: The DFT diffs don't repro on Windows so I'm chalking it up to minor device differences
>
> Original change's description:
> > Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)"
> >
> > This reverts commit 96165ebeaa36a2aae0eedaf12d81f53d3caf999a.
> >
> > Reason for revert: DFT GMs w/ LCD text are slightly different
> >
> > Original change's description:
> > > Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)
> > >
> > > This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.
> > >
> > > For the GrDrawOpAtlas:
> > > At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.
> > >
> > > The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush
> > >
> > > GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.
> > >
> > > During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.
> > >
> > > The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
> > > It now carries a GrProxyProvider for when it needs to create an atlas
> > > It passes in a GrResourceProvider* at flush time to allow instantiation.
> > >
> > > It does not, yet, allocate that GrDrawOpAtlases it might ever require.
> > >
> > > Change-Id: Ie9b64b13e261b01ee14be09fbf7e17841b7781dc
> > > Reviewed-on: https://skia-review.googlesource.com/109749
> > > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > > Commit-Queue: Robert Phillips <robertphillips@google.com>
> >
> > TBR=jvanverth@google.com,robertphillips@google.com
> >
> > Change-Id: I62efc61c8394477e54d6e79fa2f65180c91a4515
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/110220
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
>
> TBR=jvanverth@google.com,robertphillips@google.com
>
> Change-Id: I7c87b4523f9b53285f0de5c2d741a25893522d9a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/110221
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=jvanverth@google.com,robertphillips@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I7dd73ab0159f38595f21b21eef3becc10aa0934d
Reviewed-on: https://skia-review.googlesource.com/111080
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
5c56af1790f58e24d7e9a887c73637fee9b97b38 28-Feb-2018 Robert Phillips <robertphillips@google.com> Revert "Fission GrAtlasGlyphCache in two"

This reverts commit acf17904d6286f2a63a5d895541804d0ea1be646.

Reason for revert: Chrome

Original change's description:
> Fission GrAtlasGlyphCache in two
>
> This CL splits the old GrAtlasGlyphCache into a GrAtlasGlyphCache and an GrAtlasManager.
>
> The GrAtlasManager itself is split into a rather limited base class (GrRestrictedAtlasManager)
> and the all powerful GrAtlasManager. The GrRestrictedAtlasManager is available at op creation
> time and provides access to the proxies backing the atlases. The full GrAtlasManager is
> only available at flush time and allows instantiation of the proxies and uploading to them.
>
> In the DDL world all of the DDL Contexts will receive a GrRestrictedAtlasManager-version of the
> GrAtlasManager in the main thread. This future atlas manager will have had all of its
> GrDrawOpAtlases created (but not instantiated) so there should be no race conditions.
>
> Change-Id: I9967d3a4116af50128f390c5039a712b8cd4db08
> Reviewed-on: https://skia-review.googlesource.com/108001
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I7c760ea1a9f041a310b96d552aa1497ee5902cd8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/111040
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
acf17904d6286f2a63a5d895541804d0ea1be646 27-Feb-2018 Robert Phillips <robertphillips@google.com> Fission GrAtlasGlyphCache in two

This CL splits the old GrAtlasGlyphCache into a GrAtlasGlyphCache and an GrAtlasManager.

The GrAtlasManager itself is split into a rather limited base class (GrRestrictedAtlasManager)
and the all powerful GrAtlasManager. The GrRestrictedAtlasManager is available at op creation
time and provides access to the proxies backing the atlases. The full GrAtlasManager is
only available at flush time and allows instantiation of the proxies and uploading to them.

In the DDL world all of the DDL Contexts will receive a GrRestrictedAtlasManager-version of the
GrAtlasManager in the main thread. This future atlas manager will have had all of its
GrDrawOpAtlases created (but not instantiated) so there should be no race conditions.

Change-Id: I9967d3a4116af50128f390c5039a712b8cd4db08
Reviewed-on: https://skia-review.googlesource.com/108001
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
934c3d0c548d254a0d986963ee751caf0ffcb500 26-Feb-2018 Robert Phillips <robertphillips@google.com> Revert "Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)""

This reverts commit 84d823a5e2a03b09f7db4964218b9e04e821c878.

Reason for revert: The DFT diffs don't repro on Windows so I'm chalking it up to minor device differences

Original change's description:
> Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)"
>
> This reverts commit 96165ebeaa36a2aae0eedaf12d81f53d3caf999a.
>
> Reason for revert: DFT GMs w/ LCD text are slightly different
>
> Original change's description:
> > Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)
> >
> > This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.
> >
> > For the GrDrawOpAtlas:
> > At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.
> >
> > The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush
> >
> > GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.
> >
> > During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.
> >
> > The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
> > It now carries a GrProxyProvider for when it needs to create an atlas
> > It passes in a GrResourceProvider* at flush time to allow instantiation.
> >
> > It does not, yet, allocate that GrDrawOpAtlases it might ever require.
> >
> > Change-Id: Ie9b64b13e261b01ee14be09fbf7e17841b7781dc
> > Reviewed-on: https://skia-review.googlesource.com/109749
> > Reviewed-by: Jim Van Verth <jvanverth@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
>
> TBR=jvanverth@google.com,robertphillips@google.com
>
> Change-Id: I62efc61c8394477e54d6e79fa2f65180c91a4515
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/110220
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=jvanverth@google.com,robertphillips@google.com

Change-Id: I7c87b4523f9b53285f0de5c2d741a25893522d9a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/110221
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
84d823a5e2a03b09f7db4964218b9e04e821c878 26-Feb-2018 Robert Phillips <robertphillips@google.com> Revert "Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)"

This reverts commit 96165ebeaa36a2aae0eedaf12d81f53d3caf999a.

Reason for revert: DFT GMs w/ LCD text are slightly different

Original change's description:
> Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)
>
> This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.
>
> For the GrDrawOpAtlas:
> At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.
>
> The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush
>
> GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.
>
> During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.
>
> The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
> It now carries a GrProxyProvider for when it needs to create an atlas
> It passes in a GrResourceProvider* at flush time to allow instantiation.
>
> It does not, yet, allocate that GrDrawOpAtlases it might ever require.
>
> Change-Id: Ie9b64b13e261b01ee14be09fbf7e17841b7781dc
> Reviewed-on: https://skia-review.googlesource.com/109749
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=jvanverth@google.com,robertphillips@google.com

Change-Id: I62efc61c8394477e54d6e79fa2f65180c91a4515
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/110220
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
96165ebeaa36a2aae0eedaf12d81f53d3caf999a 23-Feb-2018 Robert Phillips <robertphillips@google.com> Separate creation time & flush time behavior in GrDrawOpAtlas (take 2)

This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.

For the GrDrawOpAtlas:
At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.

The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush

GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.

During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.

The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
It now carries a GrProxyProvider for when it needs to create an atlas
It passes in a GrResourceProvider* at flush time to allow instantiation.

It does not, yet, allocate that GrDrawOpAtlases it might ever require.

Change-Id: Ie9b64b13e261b01ee14be09fbf7e17841b7781dc
Reviewed-on: https://skia-review.googlesource.com/109749
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
59ddc6d5ee39c026e78bf39361cc788e30ca0afa 21-Feb-2018 Robert Phillips <robertphillips@google.com> Revert "Separate creation time & flush time behavior in GrDrawOpAtlas"

This reverts commit 056c1a821afcfbe606615ad1a7d1b554549d0846.

Reason for revert: GM issues

Original change's description:
> Separate creation time & flush time behavior in GrDrawOpAtlas
>
> This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.
>
> For the GrDrawOpAtlas:
> At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.
>
> The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush
>
> GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.
>
> During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.
>
> The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
> It now carries a GrProxyProvider for when it needs to create an atlas
> It passes in a GrResourceProvider* at flush time to allow instantiation.
>
> It does not, yet, allocate that GrDrawOpAtlases it might ever require.
>
> Change-Id: I54909b7a3ba4bec2db5f1218f6a2a3a1636f66d6
> Reviewed-on: https://skia-review.googlesource.com/108520
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I36eafe46209380f533aa84e831d1c9d18844b6be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/109280
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
056c1a821afcfbe606615ad1a7d1b554549d0846 21-Feb-2018 Robert Phillips <robertphillips@google.com> Separate creation time & flush time behavior in GrDrawOpAtlas

This CL clarifies what is going on in the GrDrawOpAtlas and GrAtlasGlyphCache.

For the GrDrawOpAtlas:
At creation time all the allowed pages are created (with their backing GrTextureProxies) but they aren't instantiated.

The GrDrawOpAtlas::instantiate call is called in preFlushCB and allocates any pages known to be needed at the start of flush

GrDrawOpAtlas::addToAtlas is called at flush time and, if a new page is activated, will instantiated it at that time.

During compaction, an unused page will be deInstantiated but its Plots and backing GrTextureProxy will remain alive.

The GrAtlasGlyphCache reflects the changes to the GrDrawOpAtlas
It now carries a GrProxyProvider for when it needs to create an atlas
It passes in a GrResourceProvider* at flush time to allow instantiation.

It does not, yet, allocate that GrDrawOpAtlases it might ever require.

Change-Id: I54909b7a3ba4bec2db5f1218f6a2a3a1636f66d6
Reviewed-on: https://skia-review.googlesource.com/108520
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
303cd58870cf1d0d128ff3f37d1dc26778cad5af 15-Feb-2018 Robert Phillips <robertphillips@google.com> Update GrTextBlobCache for DDL

Although, theoretically, we could update the DDLs to maintain pointers to the GrMemoryPools being used by their GrAtlasTextBlobs this method seems simpler.

Change-Id: I4835284630b9cd29eb78cf25bcdfe5c56974a8cb
Reviewed-on: https://skia-review.googlesource.com/107345
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
54d9c889fb6aca043a7b005d61de4e0e65a3ae53 08-Feb-2018 Jim Van Verth <jvanverth@google.com> Cleanup of large text rendering, take 2.

* Switch all path glyphs to be rendered as part of the fBigGlyphs
(now fPathGlyphs) system
* Use one flush command for both cached and throwaway blobs
* Store and render path glyphs per run rather than one list for the
entire blob (fixes a layering bug)
* Fix bug with scaled fallback glyphs, where fallback glyphs were
trying to use more than one descriptor
* Set paint flags correctly for paths

Bug: skia:7562
Change-Id: I9455eda2867860a713fbdbbda79c74109e95f9f2
Reviewed-on: https://skia-review.googlesource.com/105020
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
89737decb4965ec250f02af432884366945d2e53 06-Feb-2018 Jim Van Verth <jvanverth@google.com> Revert "Cleanup of large text rendering."

This reverts commit 2fb7c8aef57e4b94d5215e618d8c3b4cccd35edf.

Reason for revert: Causing flakes and incorrect GMs on ChromeOS.

Original change's description:
> Cleanup of large text rendering.
>
> * Switch all path glyphs to be rendered as part of the fBigGlyphs
> (now fPathGlyphs) system
> * Use one flush command for both cached and throwaway blobs
> * Store and render path glyphs per run rather than one list for the
> entire blob (fixes a layering bug)
> * Fix bug with scaled fallback glyphs, where fallback glyphs were
> trying to use more than one descriptor
>
> Bug: skia:7562
> Change-Id: Ic3d01887e2203a844102a04afe8674a16149b4bb
> Reviewed-on: https://skia-review.googlesource.com/102400
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I103a7419df96db9859e0f6f4d0a8e5aea4ba8ddc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:7562
Reviewed-on: https://skia-review.googlesource.com/104640
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
2fb7c8aef57e4b94d5215e618d8c3b4cccd35edf 06-Feb-2018 Jim Van Verth <jvanverth@google.com> Cleanup of large text rendering.

* Switch all path glyphs to be rendered as part of the fBigGlyphs
(now fPathGlyphs) system
* Use one flush command for both cached and throwaway blobs
* Store and render path glyphs per run rather than one list for the
entire blob (fixes a layering bug)
* Fix bug with scaled fallback glyphs, where fallback glyphs were
trying to use more than one descriptor

Bug: skia:7562
Change-Id: Ic3d01887e2203a844102a04afe8674a16149b4bb
Reviewed-on: https://skia-review.googlesource.com/102400
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
80747ef591ff3c09c2b610eb21258132d1ff4ef5 23-Jan-2018 Mike Reed <reed@google.com> move the guts of SkMaskFilter.h into SkMaskFilterBase.h

Bug: skia:
Change-Id: I29ad0960156562867429542d3cfbf3d639529cab
Reviewed-on: https://skia-review.googlesource.com/98802
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
d8327a8c8bad870112b574c4533270370f5c1ccf 22-Jan-2018 Herb Derby <herb@google.com> Clean up SkScalerContext descriptor creation

Allow a descriptor creation using just a rec and effects.
This is the most complex part of the change.

Cleanup SkScalerContextFlags to be a real thing.
This has spread everywhere.

BUG=skia:7515

Change-Id: I67189c9aeb51f1777a1c60145216524d440cb890
Reviewed-on: https://skia-review.googlesource.com/98320
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f35fd8d2f26ef7217368d1a09d231ee68ed0cb2f 22-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv (take 3)

Change-Id: Ied630e61cf95780bf85032867e6ce663e1ef9c2f
Reviewed-on: https://skia-review.googlesource.com/98000
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
8ad91a9bf896d728b905124847d74787aac698a7 20-Jan-2018 Mike Reed <reed@google.com> remove unused SkRasterizer

Bug: skia:7500
Change-Id: Iaa683cf8f0b18887cce4ec676631d1e1efee1712
Reviewed-on: https://skia-review.googlesource.com/97400
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
2914555e004676465c5255d8b42ee0d25887ac73 20-Jan-2018 Leon Scroggins <scroggo@google.com> Revert "Move more internal methods from GrContext to GrContextPriv (take 2)"

This reverts commit c22e50bd317fe3658445c04e18a6e319d746c510.

Reason for revert: Speculative fix for Android roll

Original change's description:
> Move more internal methods from GrContext to GrContextPriv (take 2)
>
> Change-Id: I47108910517d61edeb52f82793d384fdb5605d45
> Reviewed-on: https://skia-review.googlesource.com/97241
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I3a77ac33c5f48529357cf9c683d5f4cacaa2379f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/97582
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
c22e50bd317fe3658445c04e18a6e319d746c510 19-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv (take 2)

Change-Id: I47108910517d61edeb52f82793d384fdb5605d45
Reviewed-on: https://skia-review.googlesource.com/97241
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
07320e46c0064dc1fe876f4621e94cb9ad529f85 19-Jan-2018 Hal Canary <halcanary@google.com> Revert "Move more internal methods from GrContext to GrContextPriv"

This reverts commit f440cecbfdf1910104f36aedd0e963da2ae8b6a8.

Reason for revert: breaking android builds.

Original change's description:
> Move more internal methods from GrContext to GrContextPriv
>
> TBR=bsalomon@google.com
> Change-Id: Ia8cf0e0d30451c69bc7a08215aafa6abe6e0ddbe
> Reviewed-on: https://skia-review.googlesource.com/97080
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: If263f8161f0fbe3fc6ee8f34bb09e237705c3694
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/97200
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f440cecbfdf1910104f36aedd0e963da2ae8b6a8 19-Jan-2018 Robert Phillips <robertphillips@google.com> Move more internal methods from GrContext to GrContextPriv

TBR=bsalomon@google.com
Change-Id: Ia8cf0e0d30451c69bc7a08215aafa6abe6e0ddbe
Reviewed-on: https://skia-review.googlesource.com/97080
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f4c13166de2ad3c67a4a391d8595b5c8fa04ad4d 11-Jan-2018 Jim Van Verth <jvanverth@google.com> Begin support for large color emoji glyphs

Bug: skia:
Change-Id: I10184a0c2ffae9baf3adb3c670d5e61ceeaf90ff
Reviewed-on: https://skia-review.googlesource.com/93360
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
274218ef0173ff6046f2258c703c1c83ea37c02f 08-Jan-2018 Mike Reed <reed@google.com> move largest apis into private

Related to https://skia-review.googlesource.com/c/skia/+/91860

Bug: skia:
Change-Id: Ia8fd981b422bbab75541b078277d2e09e1fc9d41
Reviewed-on: https://skia-review.googlesource.com/91940
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
5c6ac64516bb56bbdb5d7aedee1a348acc16e29b 19-Dec-2017 Brian Salomon <bsalomon@google.com> Revert "Revert "move homogenous with stride to matrixpriv""

This reverts commit de71572f650005e36d4fc2fe95fb5677a25ae4f6.

Revert "Revert "Transform vertices for distance field glyphs on CPU.""

This reverts commit f226e66d75374e370f3ae2c6895bc689670e9e18.

Change-Id: I2545afae3beb1d6b14bba056853ed826ae7a4679
Reviewed-on: https://skia-review.googlesource.com/86603
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f226e66d75374e370f3ae2c6895bc689670e9e18 18-Dec-2017 Greg Daniel <egdaniel@google.com> Revert "Transform vertices for distance field glyphs on CPU."

This reverts commit 0215e39d7e415d0530231df6ad20d5f215c72152.

Reason for revert: break intel 540 and HD2000 intel release bots on gltestthreading gm dftext_blob_pers

Original change's description:
> Transform vertices for distance field glyphs on CPU.
>
> This allows batching of DF draws with different view matrices.
>
> For perspective matrices this means the transformed position vertex
> attribute must have w values. Currently, non-perspective DF draws still
> use 2 component positions, though this could be changed in the future.
> Consequently, perspective draws can batch with other perspective draws
> but not non-perspective draws.
>
> Adds a GM to test batching and reusing the same blobs with both perspective
> and non-perspective matrices.
>
> Change-Id: I0e42c5449ebf3a5a54025dbcdec824d904d5bd9e
> Reviewed-on: https://skia-review.googlesource.com/79900
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Idc658d9263976d5b5e00a5026c5d6d3c8f4bdc2d
Reviewed-on: https://skia-review.googlesource.com/86560
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
0215e39d7e415d0530231df6ad20d5f215c72152 15-Dec-2017 Brian Salomon <bsalomon@google.com> Transform vertices for distance field glyphs on CPU.

This allows batching of DF draws with different view matrices.

For perspective matrices this means the transformed position vertex
attribute must have w values. Currently, non-perspective DF draws still
use 2 component positions, though this could be changed in the future.
Consequently, perspective draws can batch with other perspective draws
but not non-perspective draws.

Adds a GM to test batching and reusing the same blobs with both perspective
and non-perspective matrices.

Change-Id: I0e42c5449ebf3a5a54025dbcdec824d904d5bd9e
Reviewed-on: https://skia-review.googlesource.com/79900
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
deb53cceea94e2e10d9a0e33912d1c4c1ffbac8a 08-Nov-2017 Brian Salomon <bsalomon@google.com> Make GrTextBlob::VertexRegenerator determine vertex stride from mask format

Change-Id: Ib0910ca563150add6399ba3ca891ee23db3578ec
Reviewed-on: https://skia-review.googlesource.com/68861
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
18923f9a2e83675aecba7561f5095429fb467633 06-Nov-2017 Brian Salomon <bsalomon@google.com> Make GrAtlasTextBlob return to caller when a flush is required during subrun tessellation.

The old code used a helper object in the tessellation code that called flush() on GrAtlasTextOp.
A confusing aspect of this was that the pre-flush vertex data generated for the sub run was copied
to the op's vertex buffer after flush() had already recorded the draw that read the data.

The new code adds a tessellator nested helper class to GrAtlasTextBlob. The helper exits early if
a flush is required, the op performs the flush, and then the helper is invoked again until
tessellation is complete.

This also changes the blob object to use char* instead of unsigned char* for its vertex pointers.

Change-Id: I31bed251435f13b2172e6f5829ba437b882dd44d
Reviewed-on: https://skia-review.googlesource.com/67856
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
56c37143830d8318853663bf2bcd5bc99c960a75 31-Oct-2017 Jim Van Verth <jvanverth@google.com> More attempts at clipping perf.

With the 1.5x allocation strategy, it can take more reallocations
to reach a similar size as before. Increasing this initial size
reduces the number of reallocations.

Also reduce size of Geometry struct slightly.

Bug: skia:7230
Change-Id: Ied3f275b01b07aa300e0b7e1f24abc5fc3853ea7
Reviewed-on: https://skia-review.googlesource.com/64500
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
29b60c9020ce4376df3d31db15d1aa316d640711 31-Oct-2017 Brian Salomon <bsalomon@google.com> Make deferred upload handling and draw recording be virtual interfaces implemented by GrOpFlushState.

The motivation for this is to allow other clients of GrDrawOpAtlas. Making GrMeshDrawOp::Target also be an abstract interface is somewhat incidental to this goal.

Bug: skia:
Change-Id: I0987adfa8a269aa2ca94147e933a2827d734c1cc
Reviewed-on: https://skia-review.googlesource.com/65121
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f18b1d88aa98f81d2c115a59d887265fea63f876 27-Oct-2017 Brian Salomon <bsalomon@google.com> Add GrTextUtils::Target

This abstracts the portion of GrRenderTargetContext that is used by GrAtlasTextContext and opens the door to creating alternative consumers of GrAtlasTextOps.

Change-Id: Iaa48f93f4d7d49e231744d44427e9396c5d36fe7
Reviewed-on: https://skia-review.googlesource.com/64760
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
58c3cce1144f83bc7e4ee5e93931b8721560735b 19-Oct-2017 Jim Van Verth <jvanverth@google.com> Clip text geometrically when possible.

Currently when we clip text we can't batch the clipped text with non-clipped text.
By modifying the quads and texCoords we can produce the same effect, and allow batching.
Includes some minor text code cleanup.

Bug: skia:6990
Change-Id: Ibfd4bc2fdc2d7680071e2abddd4d77fc3017e3d3
Reviewed-on: https://skia-review.googlesource.com/60780
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
b4aab9ae6d27c446af8302b79d15b832c816c633 16-Aug-2017 Ben Wagner <bungeman@google.com> Replace SkFAIL with SK_ABORT.

SkFAIL is a legacy macro which is just SK_ABORT. This CL mechanically
changes uses of SkFAIL to SK_ABORT in preparation for its removal. The
related sk_throw macro will be changed independently, due to needing to
actually clean up its users.

Change-Id: Id70b5c111a02d2458dc60c8933f444df27d9cebb
Reviewed-on: https://skia-review.googlesource.com/35284
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
e5b399ee69332e0d68a660d6695d1182a4cb16b1 19-Jul-2017 Brian Salomon <bsalomon@google.com> Remove GrLegacyMeshDrawOp and GrPipelineBuilder

Change-Id: Ib301a0e7d4b4c4f05417d28862017307949748c9
Reviewed-on: https://skia-review.googlesource.com/23584
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
44acb5b09bb87163bc9c010be915b3f33e3157eb 19-Jul-2017 Brian Salomon <bsalomon@google.com> Revert "Revert "Make GrAtlasTextOp a non-legacy GrMeshDrawOp""

This reverts commit e3e9628ecf863f433f26bf6107d6a39ced57fe30.

Adds blendmode_mask_* benchs to blacklist for Chromecast.
Otherwise a clean revert of the revert.

Bug: skia:
Change-Id: I9f64ae55804fa4aad97c1785834281039570c56c
Reviewed-on: https://skia-review.googlesource.com/24409
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
e3e9628ecf863f433f26bf6107d6a39ced57fe30 16-Jul-2017 Brian Salomon <bsalomon@google.com> Revert "Make GrAtlasTextOp a non-legacy GrMeshDrawOp"

This reverts commit 434a58ab5fefcc1b86588c7fce898b1e5bd248ba.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Make GrAtlasTextOp a non-legacy GrMeshDrawOp
>
> Change-Id: Ib9eaf149100b0ccecf1c18a755263f2579b8e6f6
> Reviewed-on: https://skia-review.googlesource.com/23482
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=jvanverth@google.com,bsalomon@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I7fd8503b4e0c297b2cfaf979545354aa58d1f989
Reviewed-on: https://skia-review.googlesource.com/23760
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
434a58ab5fefcc1b86588c7fce898b1e5bd248ba 14-Jul-2017 Brian Salomon <bsalomon@google.com> Make GrAtlasTextOp a non-legacy GrMeshDrawOp

Change-Id: Ib9eaf149100b0ccecf1c18a755263f2579b8e6f6
Reviewed-on: https://skia-review.googlesource.com/23482
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
90e89b366a7dc90111c861ba76c492ce1743a0d1 06-Jul-2017 Jim Van Verth <jvanverth@google.com> Add proper aliased support for SDF text

Previously, when asked to render aliased text with distance fields,
we would get the aliased glyph from the cache and then try to
anti-alias the edge. This change instead grabs the anti-aliased glyph,
then deliberately aliases the edge.

Bug: chromium:707979
Change-Id: I05766af17d7ae58bca27aaffd9e08e5c586e789c
Reviewed-on: https://skia-review.googlesource.com/21728
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
bc2cdd154bf5a031ca9d3a530123d9f7a4c0925d 08-Jun-2017 Jim Van Verth <jvanverth@google.com> Fix LCD distance field text color filtering

Distance field text was applying the color filter to determine any gamma
adjustments, but not any effects of the shader as well.

Bug: skia:6669
Change-Id: I73384f68141fb523ea2058e00d0a9fbb2fbc622b
Reviewed-on: https://skia-review.googlesource.com/19049
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
ec8f8b064340b030fc4ce10f6cbbc3d6f63b946f 11-May-2017 Brian Osman <brianosman@google.com> Fix GPU text colors when color spaces are involved

1) Only store GrColors in GrTextUtils::Paint. We still store
premul and unpremul versions, but this is slightly clearer.
2) GrTextUtils::Paint also needs info from the render target
context to linearize and transform the color to dst space.

Bug: skia:6605
Change-Id: I6e12c55eafaecd2a090c82b4f56827401305bf3a
Reviewed-on: https://skia-review.googlesource.com/16486
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
d3ccb0a37f0e62c84fdcd6a77b7b15476b04db7a 03-Apr-2017 Brian Salomon <bsalomon@google.com> Move pipeline handling out of GrMeshDrawOp.

The monolithic GrPipeline is moved to a subclass GrLegacyDrawMeshOp.

The pipeline used to record a GrMesh draw in a GrMeshDrawOp must now be passed rather than implicitly using the op's pipeline.

Change-Id: I50d77e4dcc8d91a523fa7566ce43a9a291174706
Reviewed-on: https://skia-review.googlesource.com/11002
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
c337c9e02057fc61ef22ac80fa2e5f3dae92b498 10-Mar-2017 Florin Malita <fmalita@chromium.org> Revert "Revert "Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs""

This reverts commit 3304c447b953dad79fe7f355184ac13ed7e302e0.

Reason for revert: Fix for SkTHashMap issue landed

Original change's description:
> Revert "Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs"
>
> This reverts commit db3ceb86421fb9da86bb920e3a1f0957beec08d9.
>
> Reason for revert: observing some strange budget behavior w/ instrumented Chromium builds; need to investigate.
>
> Original change's description:
> > Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs
> >
> > Refactor to store sk_sps, and minimize explicit ref manipulation.
> >
> > Change-Id: Ie3d18e5fe1cefbbc5c2f3c4941287a24038522a6
> > Reviewed-on: https://skia-review.googlesource.com/9490
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I8ca9862ad1519a9ec69ad1ce8e4d129b0dae7b0a
> Reviewed-on: https://skia-review.googlesource.com/9524
> Reviewed-by: Florin Malita <fmalita@google.com>
> Commit-Queue: Florin Malita <fmalita@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,fmalita@chromium.org,fmalita@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1ba50e3b574381717fbbf46b829d72aceff8f7fe
Reviewed-on: https://skia-review.googlesource.com/9535
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
3304c447b953dad79fe7f355184ac13ed7e302e0 09-Mar-2017 Florin Malita <fmalita@google.com> Revert "Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs"

This reverts commit db3ceb86421fb9da86bb920e3a1f0957beec08d9.

Reason for revert: observing some strange budget behavior w/ instrumented Chromium builds; need to investigate.

Original change's description:
> Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs
>
> Refactor to store sk_sps, and minimize explicit ref manipulation.
>
> Change-Id: Ie3d18e5fe1cefbbc5c2f3c4941287a24038522a6
> Reviewed-on: https://skia-review.googlesource.com/9490
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,fmalita@chromium.org,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I8ca9862ad1519a9ec69ad1ce8e4d129b0dae7b0a
Reviewed-on: https://skia-review.googlesource.com/9524
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
db3ceb86421fb9da86bb920e3a1f0957beec08d9 09-Mar-2017 Florin Malita <fmalita@chromium.org> Hold sk_sp<GrAtlasTextBlob> refs in GrTextBlobCache instead of raw ptrs

Refactor to store sk_sps, and minimize explicit ref manipulation.

Change-Id: Ie3d18e5fe1cefbbc5c2f3c4941287a24038522a6
Reviewed-on: https://skia-review.googlesource.com/9490
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
649a3411f99a8aea3c46e4ef1f495f61b9801164 09-Mar-2017 Brian Salomon <bsalomon@google.com> Add a separate draw function to GrRenderTargetContext for GrMeshDrawOp derived classes.

The first phase of deferring GrPipeline creation until flush will apply only to GrDrawOp subclasses that do not derive from GrMeshDrawOp. This change prepares for that by creating separate draw functions on GrRenderTargetContext for GrMeshDrawOp-derived ops. This is temporary and will incrementally be undone as pipeline-creation deferral rolls out to the GrMeshDrawOps in a later phase of this work.


Change-Id: I0f5b71fe913f3273cfe9e965f7d8bbe7f01ad0ef
Reviewed-on: https://skia-review.googlesource.com/9481
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
6f1d36cc54dc635f5e4d0f925ef79c14914342bb 13-Jan-2017 Brian Salomon <bsalomon@google.com> Delay SkPaint->GrPaint conversion in text rendering.

This fixes an issue where color filters aren't correctly applied to color glyphs. Instead we apply the filter to the SkPaint's color which is correct for mask glyphs only.

Add color filter and alpha + various effects to coloremoji gm

Change-Id: If77dece71d43468fec65499857eaaaedb56428e9
Reviewed-on: https://skia-review.googlesource.com/6891
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
82f44319159bb98dcacdbbec7ea643dde5ed024b 11-Jan-2017 Brian Salomon <bsalomon@google.com> Make GrPaints move their GrProcessor ownership into GrPipelineBuilder.

This makes GrPaints usable only once. In some places we must make copies in order to issue draws with the same paint state.

Change-Id: Ie816e5185ce93a064111cad64c6880e1e21184c2
Reviewed-on: https://skia-review.googlesource.com/6844
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f8334781914363caf537f22f012fcd5c03c60dad 03-Jan-2017 Brian Salomon <bsalomon@google.com> Remove ref counting from GrOp.

Instead use std::unique_ptr to manage GrOp lifetime.

Change-Id: Ic1dc1e0ffd7254c3994221f498677af5bbf66a71
Reviewed-on: https://skia-review.googlesource.com/6479
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
09d994ecb30de2e62a31af2c16307af31fe0e0b3 21-Dec-2016 Brian Salomon <bsalomon@google.com> Misc batch->op cleanup Part 1 of 2

Change-Id: I80f951976558a284e55386e0a368f08bd835d8ca
Reviewed-on: https://skia-review.googlesource.com/6359
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
2ee084e73056b0ad76b721017f576168b7306da3 17-Dec-2016 Brian Salomon <bsalomon@google.com> Rename GrBatchAtlas -> GrDrawOpAtlas.

Change-Id: I776f37e42dcab8b16535c48df9c405b1f211f6c9
Reviewed-on: https://skia-review.googlesource.com/6165
Commit-Queue: Brian Salomon <brian@thesalomons.net>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
903da79a19c35723ff198d56923250d5f3fe0f15 16-Dec-2016 Brian Salomon <bsalomon@google.com> Rename GrBatchAtlas files to GrDrawOpAtlas

This intermediary change only exists to make the actual class rename change readable on gerrit due to gerrit not recognizing file renames correctly.

Change-Id: I919f84837fb17191ca49f00f82e56330f84766da
Reviewed-on: https://skia-review.googlesource.com/6190
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f856fd1ccdd839646159767f6aa9a2f2a1b97f04 16-Dec-2016 Brian Salomon <bsalomon@google.com> Rename GrBatchFontCache->GrAtlasGlyphCache

Change-Id: Ie21e18b631daa24e70df630b9f910213f62bdbdf
Reviewed-on: https://skia-review.googlesource.com/6164
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
344ec42f60fd9d10f14d4ffaf8e7b7916bb20bcc 15-Dec-2016 Brian Salomon <bsalomon@google.com> Rename GrAtlasTextBatch->GrAtlasTextOp and sk_sp

Change-Id: I409048988cccb68daaeb66828e2772fcb6a0cb06
Reviewed-on: https://skia-review.googlesource.com/6104
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
9afd371a8a66f992f98eb2a3fc75ae64bddc730b 01-Dec-2016 Brian Salomon <bsalomon@google.com> Rename GrDrawBatch->GrDrawOp

Change-Id: I18f520924b8a2548566fd61dbea4e3e12bd253dd
Reviewed-on: https://skia-review.googlesource.com/5411
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
08576e618883c3f8eb2cdf425e2f2bd7842f3f2e 16-Nov-2016 Jim Van Verth <jvanverth@google.com> Fix error with transforming custom/large glyphs

BUG=661244
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4738

Change-Id: I9f14ca830f9de92000e751a4a99ff1eb9b01db33
Reviewed-on: https://skia-review.googlesource.com/4866
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
144caf55ffc692bcda77703a73bb9a894f7d024f 07-Nov-2016 Hal Canary <halcanary@google.com> src/gpu: s/SkAutoTUnref/sk_sp/g

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4527

Change-Id: I23f0548f98e7c355da05e143e8baa330d4bc04cc
Reviewed-on: https://skia-review.googlesource.com/4527
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
145dbcd165d9d27298eb8888bc240e2d06a95464 03-Nov-2016 Ben Wagner <bungeman@google.com> Remove SkAutoTDelete.

Replace with std::unique_ptr.

Change-Id: I5806cfbb30515fcb20e5e66ce13fb5f3b8728176
Reviewed-on: https://skia-review.googlesource.com/4381
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
1105224f9701e57ec5ce0354d6a380b664f5c638 27-Oct-2016 Brian Osman <brianosman@google.com> Rename GrDrawContext to GrRenderTargetContext

This is in preparation for GrTextureContext and GrSurfaceContext

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4030

Change-Id: Ie58c93052e68f3f1f5fe8d15d63760de274a6fbd
Reviewed-on: https://skia-review.googlesource.com/4030
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
/external/skia/src/gpu/text/GrAtlasTextBlob.h
4e97607d9a1cef66fac16f347c5ca813ec4f9515 08-Aug-2016 mtklein <mtklein@chromium.org> Use sse4.2 CRC32 instructions to hash when available.

About 9x faster than Murmur3 for long inputs.

Most of this is a mechanical change from SkChecksum::Murmur3(...) to SkOpts::hash(...).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2208903002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot;master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot

Review-Url: https://codereview.chromium.org/2208903002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
640789d64bcce565856fde5bbfc845d56bb470c8 18-Jul-2016 robertphillips <robertphillips@google.com> Push GrPipelineBuilder down to the drawBatch calls in the TextContext

This is split out of https://codereview.chromium.org/2092893003/ (Retract PipelineBuilder some more)

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2155983003

Review-Url: https://codereview.chromium.org/2155983003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
8b6fa5e8a9016ebbf3a03009abc3845b71452550 20-May-2016 bsalomon <bsalomon@google.com> Make GrAtlasTextBlob::run own effects it points to.

BUG=chromium:608566

Currently the run has bare pointers and the effects can be destroyed while a run is pointing at them.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1993213003

Review-Url: https://codereview.chromium.org/1993213003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
d1c71fd56c293afb986cb5e7546a3a8e4b190d48 19-May-2016 bsalomon <bsalomon@google.com> Attempt to improve lifetime management of SkGlyphCache in Ganesh atlas text code.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1983353003

Review-Url: https://codereview.chromium.org/1983353003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
c2878e23d405e7ae77f6110602ad75ce1f6b941c 17-May-2016 bsalomon <bsalomon@google.com> Remove GrFontScaler class.

This class is now effectively a set of helpers for interacting with a SkGlyphCache by GrBatchTextStrike. The class is deleted and the code is made into static functions in GrBatchFontCache.cpp

BUG=chromium:608566

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985163002

Review-Url: https://codereview.chromium.org/1985163002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
862cff30eaa16206d76d7de7594c9167375ca87e 13-May-2016 cdalton <cdalton@nvidia.com> Remove clip from GrPipelineBuilder

This eliminates a copy and will allow us to make the GrClip class
virutal.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966903004

Review-Url: https://codereview.chromium.org/1966903004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
8d7ffcee75661a50ce298dc1b3bc0b76bea018e7 21-Apr-2016 brianosman <brianosman@google.com> Include scaler context flags (gamma and contrast boost) in the text blob cache key.

Fixes a bug in skiaserve when switching between L32 and S32 modes - we were
reusing blobs created with the other (wrong) masks.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1905683004

Review URL: https://codereview.chromium.org/1905683004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
b461d3457567cf79a3efac3123c00f7afc37fecb 13-Apr-2016 brianosman <brianosman@google.com> Rename lots of things from 'sRGB' to 'GammaCorrect', where appropriate

Trying to be much more explicit about where we really mean sRGB as a format,
and where we mean gamma-correct, as in: "not legacy behavior". Most of the
changes to rendering behavior are dependent on the latter, so let's be precise.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1884873006

Review URL: https://codereview.chromium.org/1884873006
/external/skia/src/gpu/text/GrAtlasTextBlob.h
0586f5cc9713268238394411a5daa2c7758b092b 12-Apr-2016 brianosman <brianosman@google.com> sRGB support for distance field text.

Add a second distance field adjust table that only applies contrast,
not fake-gamma correction. Store a flag in the batch at creation time,
using the same logic we apply elsewhere (render target format, plus
paint flags).

That gets us close, but not as good as bitmap text. The final step is
to use a linear step function (rather than smoothstep) to map distance
to coverage, when we have sRGB output. Smoothstep's nonlinear response
is actually doing some fake-gamma, so it ends up over-correcting when
the output is already gamma-correct.

Results are now very close between L32 (old table, smoothstep) and S32
(contrast-only table, linstep).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1885613002

Review URL: https://codereview.chromium.org/1885613002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
a9322c2d86aaef1085c267dfc43cf0747f170a86 12-Apr-2016 reed <reed@google.com> Revert "Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ )"

add SK_SUPPORT_NEW_ONCREATESCALERCONTEXT for chrome

this has now landed https://codereview.chromium.org/1878913002/
TBR=

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1880873002

Review URL: https://codereview.chromium.org/1880873002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
25e0a0416e5b37c1e0bef1934dc67ff62e442916 11-Apr-2016 borenet <borenet@google.com> Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ )

Reason for revert:
Seems to have broken the DEPS roll.

Original issue's description:
> Pass effects directly to fontcache
>
> BUG=skia:5176
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003
>
> Committed: https://skia.googlesource.com/skia/+/c79172857c3f69cc46837e1beeae0c1ead377bb2

TBR=djsollen@google.com,bungeman@google.com,mtklein@google.com,fmalita@chromium.org,msarett@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5176

Review URL: https://codereview.chromium.org/1872253004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
c79172857c3f69cc46837e1beeae0c1ead377bb2 11-Apr-2016 reed <reed@google.com> Pass effects directly to fontcache

BUG=skia:5176
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003

Review URL: https://codereview.chromium.org/1863013003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
a1e8f8d8f1a0b7141136d7d49df1cc2fec0528df 08-Apr-2016 brianosman <brianosman@google.com> Decouple contrast boost from fake gamma.

Replace FakeGamma with FontWeightFlags. Largely mechanical, except for
the changes in ignorePreBlend. With this change, text GMs generally look
the same (or at least more similar) in 8888/srgb/gpu/gpusrgb configs.

No public API changes.
TBR=reed@google.com

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1866293003

Review URL: https://codereview.chromium.org/1866293003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
f6d1e605317917146362706ed460b5ed6624fcc5 22-Feb-2016 bungeman <bungeman@google.com> Only use fake gamma with linear devices.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1711223003

Review URL: https://codereview.chromium.org/1711223003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
8e0ef294d0fc310432308dc09b8a48a53f7aabc1 19-Feb-2016 joshualitt <joshualitt@chromium.org> Calculate translations to apply to vertices in batch

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716443005

Review URL: https://codereview.chromium.org/1716443005
/external/skia/src/gpu/text/GrAtlasTextBlob.h
8e84a1ed07ad5d529d381d43302e597f31723076 16-Feb-2016 joshualitt <joshualitt@chromium.org> Delete GrTextContext

TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1699073004

Review URL: https://codereview.chromium.org/1699073004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
ddd22d86455d95941ea21253b210819c1d4a3863 16-Feb-2016 joshualitt <joshualitt@chromium.org> Remove last bit of privacy violation for GrAtlasTextBlob

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1698503002

Review URL: https://codereview.chromium.org/1698503002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
bc81111f246ce2d5fbb61d7a347c9d890f6c8359 11-Feb-2016 joshualitt <joshualitt@chromium.org> start to chip away at friending of GrAtlasTextBatch/GrAtlasTextBlob

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684253002

Review URL: https://codereview.chromium.org/1684253002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
923037724231f11b9249dbb5bf9688835b5ff9b0 10-Feb-2016 joshualitt <joshualitt@chromium.org> Remove GrTextBlobCache/GrAtlasTextBlob friendliness

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686113002

Review URL: https://codereview.chromium.org/1686113002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
2f2ee83a9c1ff05a94265b175e51c63fc424d554 10-Feb-2016 joshualitt <joshualitt@chromium.org> cleanup textblob cache sanity check and prevent it from bitrotting

TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684513004

Review URL: https://codereview.chromium.org/1684513004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
7481e75830dfae1e9084ff62e3d8438879e31aaa 22-Jan-2016 joshualitt <joshualitt@chromium.org> Fix GrAtlasTextBlob bounds management

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1605013002

Committed: https://skia.googlesource.com/skia/+/ae473fdfc3db2d9dd82b05b2568767d6d4038fcd

Review URL: https://codereview.chromium.org/1605013002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
269a82f2883cbd108d74f69bfa99cc2fdf8fe896 20-Jan-2016 joshualitt <joshualitt@google.com> Revert of Fix GrAtlasTextBlob bounds management (patchset #8 id:140001 of https://codereview.chromium.org/1605013002/ )

Reason for revert:
seems to break upright matrix

Original issue's description:
> Fix GrAtlasTextBlob bounds management
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1605013002
>
> Committed: https://skia.googlesource.com/skia/+/ae473fdfc3db2d9dd82b05b2568767d6d4038fcd

TBR=bsalomon@google.com,jvanverth@google.com,joshualitt@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1615473002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
ae473fdfc3db2d9dd82b05b2568767d6d4038fcd 20-Jan-2016 joshualitt <joshualitt@chromium.org> Fix GrAtlasTextBlob bounds management

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1605013002

Review URL: https://codereview.chromium.org/1605013002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
323c2ebe9e171d399c922f1efb5b6a2ca9d56b2e 20-Jan-2016 joshualitt <joshualitt@chromium.org> A few more small changes to make GrAtlasTextBlob nearly self contained

Note: There is still a bit of friendliness, but its going to require
some creativity to deal with.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1606943002

Review URL: https://codereview.chromium.org/1606943002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
0d2199b3db21e1f22cf328ca090aa0c8abc9067f 20-Jan-2016 joshualitt <joshualitt@chromium.org> Move distance field text positioning into GrTextUtils

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1521633002

Review URL: https://codereview.chromium.org/1521633002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
a6bf4c54aaa3c1d1ae33f43af96a294c65bbd8fc 19-Jan-2016 joshualitt <joshualitt@chromium.org> This CL moves a bit more logic into GrAtlasTextBlob

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1516943004

Review URL: https://codereview.chromium.org/1516943004
/external/skia/src/gpu/text/GrAtlasTextBlob.h
e76b4bb3ae03ae85119055eac44f2721578e8202 28-Dec-2015 joshualitt <joshualitt@google.com> Reland of Make draw* lines responsible for cache management (patchset #1 id:1 of https://codereview.chromium.org/1552513003/ )

Reason for revert:
might have been premature

Original issue's description:
> Revert of Make draw* lines responsible for cache management (patchset #1 id:1 of https://codereview.chromium.org/1521613002/ )
>
> Reason for revert:
> seeing crashes on android and linux
>
> Original issue's description:
> > Make draw* lines responsible for cache management
> >
> > TBR=bsalomon@google.com
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/66957946c0c418e71c0f36bb2904cc38c334eba4
>
> TBR=bsalomon@google.com,jvanverth@google.com,joshualitt@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/90e293dae4990a86cb952663ccde8fae55112d7d

TBR=bsalomon@google.com,jvanverth@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1551563003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
90e293dae4990a86cb952663ccde8fae55112d7d 28-Dec-2015 joshualitt <joshualitt@google.com> Revert of Make draw* lines responsible for cache management (patchset #1 id:1 of https://codereview.chromium.org/1521613002/ )

Reason for revert:
seeing crashes on android and linux

Original issue's description:
> Make draw* lines responsible for cache management
>
> TBR=bsalomon@google.com
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/66957946c0c418e71c0f36bb2904cc38c334eba4

TBR=bsalomon@google.com,jvanverth@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1552513003
/external/skia/src/gpu/text/GrAtlasTextBlob.h
66957946c0c418e71c0f36bb2904cc38c334eba4 15-Dec-2015 joshualitt <joshualitt@chromium.org> Make draw* lines responsible for cache management

TBR=bsalomon@google.com
BUG=skia:

Review URL: https://codereview.chromium.org/1521613002
/external/skia/src/gpu/text/GrAtlasTextBlob.h
e804292e805917002cc3d7baa7f967fb20d2c7cb 11-Dec-2015 joshualitt <joshualitt@chromium.org> Move all text stuff to its own folder

BUG=skia:

Review URL: https://codereview.chromium.org/1521453002
/external/skia/src/gpu/text/GrAtlasTextBlob.h