Commit Graph

14370 Commits

Author SHA1 Message Date
joshualitt
62372bcc6a Support GLSL es 3.00
BUG=skia:

Review URL: https://codereview.chromium.org/659443007
2014-10-16 12:25:11 -07:00
piotaixr
65151754b9 Override SkCanvas::drawImage() in SkRecorder.
BUG=skia:2947

Review URL: https://codereview.chromium.org/610003002
2014-10-16 11:58:39 -07:00
piotaixr
687732fe04 Override SkCanvas::drawImage() in SkDeferredCanvas and SkGPipe
BUG=skia:2947

Review URL: https://codereview.chromium.org/613673005
2014-10-16 11:55:35 -07:00
fmalita
19653d1d00 Implicit SkTextBlob bounds
Compute blob bounds when the client doesn't pass explicit run rects to
the builder. This allows us to remove a couple of internal workarounds.

R=reed@google.com,mtklein@google.com,bungeman@google.com

Review URL: https://codereview.chromium.org/654873003
2014-10-16 11:53:30 -07:00
Greg Humphreys
c9df8ce821 fix display of fiddles that DON'T have compile errors
BUG=skia:

Review URL: https://codereview.chromium.org/644253003
2014-10-16 14:23:02 -04:00
halcanary
5bb9700b7e render_pdfs cull rect output formated better
Review URL: https://codereview.chromium.org/657353004
2014-10-16 10:32:52 -07:00
halcanary
2f912f39b0 Const-correctness in PDF drawText() call
If SkPDFDevice::drawText is called with glyph encoding and a font with
cubic outlines (CFF or Type1) and a glyph code > 255 then it was
mutating the in(const) glyph codes in place.  Instead, a copy is made.

BUG=skia:3019

Review URL: https://codereview.chromium.org/656143002
2014-10-16 09:53:21 -07:00
mtklein
4ba7686eb7 Tweak out SkTileGrid::insert() loop.
BUG=skia:

Review URL: https://codereview.chromium.org/658913002
2014-10-16 09:23:21 -07:00
mtklein
71b5628a37 Pull nanomsg from our mirror instead of from github.
https://skia.googlesource.com/third_party/nanomsg/

BUG=skia:3027

Review URL: https://codereview.chromium.org/657113004
2014-10-16 09:23:17 -07:00
humper
ae8ab62966 Properly parse compiler errors for fiddles and mark them in the editor.
You can also click on the errors in the parsed output to jump directly to the offending location in the editor.

BUG=skia:
NOTRY=true

Review URL: https://codereview.chromium.org/660573003
2014-10-16 09:18:16 -07:00
bsalomon
420d7e9a79 Auto-compare GrProcessors' texture accesses in isEqual().
R=joshualitt@google.com

Review URL: https://codereview.chromium.org/654313002
2014-10-16 09:18:09 -07:00
rmistry
6c4b51d3ca Whitespace change to verify lab machines can now sync
TBR=
BUG=skia:3031
NOTRY=true
NOTREECHECKS=true

Review URL: https://codereview.chromium.org/664533002
2014-10-16 08:37:31 -07:00
jvanverth
aab626c367 Revert of Change drawText() to generate positions and send to drawPosText() (patchset #4 id:60001 of https://codereview.chromium.org/653133004/)
Reason for revert:
A large number of GMs on Ubuntu12 are failing. The text layout on GPU is visibly different than that for 8888.

Original issue's description:
> Change drawText() to generate positions and send to drawPosText()
>
> The idea here is to have a central place that does layout for drawText(), and
> then always feed text through drawPosText(). This both makes all of the
> GrTextContexts consistent in drawText() output, and does a better job of
> stressing drawPosText().
>
> Because of the effect of matrices on hinting and approximation error, the
> generated text is not 100% identical to that produced by the raster pipeline.
>
> BUG=skia:2778
>
> Committed: https://skia.googlesource.com/skia/+/7851a56895c9c076f73a835a7dd51d3c6180c16f

TBR=cdalton.nvidia@gmail.com,bungeman@google.com,reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2778

Review URL: https://codereview.chromium.org/659993003
2014-10-16 08:04:39 -07:00
jvanverth
7851a56895 Change drawText() to generate positions and send to drawPosText()
The idea here is to have a central place that does layout for drawText(), and
then always feed text through drawPosText(). This both makes all of the
GrTextContexts consistent in drawText() output, and does a better job of
stressing drawPosText().

Because of the effect of matrices on hinting and approximation error, the
generated text is not 100% identical to that produced by the raster pipeline.

BUG=skia:2778

Review URL: https://codereview.chromium.org/653133004
2014-10-16 06:20:35 -07:00
tfarina
8c0d2aab62 webtry: Do not forget the close the rows.
This should prevent further enumeration according to the docs.

http://golang.org/pkg/database/sql/#Rows.Close

BUG=None
TEST=None
R=humper@google.com

Review URL: https://codereview.chromium.org/638373003
2014-10-16 05:57:39 -07:00
sugoi
ff58e4679b Disabled YUV decoding for subsets
Image subsets were always showing the same tile and were causing an image to be fully YUV decoded once per tile, which was both slow and wrong.

BUG=413001, 419718

Review URL: https://codereview.chromium.org/661483002
2014-10-16 05:19:31 -07:00
kkinnunen
30bc88ccd5 Refactor SkGLContext to be actually extendable
Refactor SkGLContext to be actually extendable. Before, non-trivial subclass
would need to destroy the GL connection upon running the destructor. However,
the base class would run GL commands in its own destructor (with destroyed GL
connection)

Refactor so that SkGLContext subclass object creation is completely done by
the factory function. If the factory function returns a non-NULL ptr, it means the context
is usable.

The destruction is done with the destructor instead of virtual function called
upon destruction. Make the destructors not to call virtual functions, for
clarity.

Remove custom 1x1 FBO setup code from the base class. It appears not to be used
anymore.

BUG=skia:2992

Review URL: https://codereview.chromium.org/640283004
2014-10-15 23:03:54 -07:00
bsalomon
de258cd6b4 Make GrFragmentProcessor auto-compare coord xforms.
Review URL: https://codereview.chromium.org/657923002
2014-10-15 19:06:21 -07:00
bsalomon
000f829f14 Prefer to recycle non-RT scratch textures that don't have pending IO
BUG=skia:2889

Review URL: https://codereview.chromium.org/650283002
2014-10-15 19:04:14 -07:00
bsalomon
f2765410ba Last round of effect->processor (for now)
R=joshualitt@google.com

Review URL: https://codereview.chromium.org/659803005
2014-10-15 18:34:46 -07:00
Thiago Farina
498bc5f036 webtry: Forgot onr log.Fatal.
Update it to use glog variant.

BUG=skia:2980
TEST=go build webtry.go
TBR=jcgregorio@google.com

Review URL: https://codereview.chromium.org/659813003
2014-10-15 19:20:27 -03:00
tfarina
ae6d6222b2 webtry: Switch from Go's log package to golang/glog.
BUG=skia:2980
TEST=go get -d && go build webtry.go
R=jcgregorio@google.com

Review URL: https://codereview.chromium.org/655323002
2014-10-15 14:59:33 -07:00
mtklein
826a503336 Treat (private, internal) grid bounds as doubly-inclusive in SkTileGrid.
The net effect is that two "+1" instructions are removed from insert().
search() nets no change: two +1 removed, two +1 added.

When vectorized, this removes the need to add in userToGrid() at all and
so the need to read an awkward {0, 0, 1, 1} constant from memory.  Mostly
the benefit is less vector code to look at and think about.

BUG=skia:

Review URL: https://codereview.chromium.org/659823004
2014-10-15 14:20:01 -07:00
bungeman
8dfdfff98d Don't use 'defined' in macro expansion.
A careful reading of the preprocessor specification indicates that
any use of the 'defined' operator outside the form of 'defined X' or
'defined ( X )' directly in the constant expression of a '#if' or
'#elif' may cause undefined behavior.

In particular, msvc is very unpredictable. The 'defined X' and
'defined ( X )' forms behave differently when created from marco
expansion, with 'defined ( X )' generally evaluating to '0L'. The
'defined X' form generally behaves more the way one would expect,
but still has a number of quirks which should simply be considered
undefined behavior.

BUG=chromium:419245

Review URL: https://codereview.chromium.org/657183002
2014-10-15 13:53:55 -07:00
egdaniel
9e4d6d180f Move willUseInputColor check to computeInvariantOutput
BUG=skia:

Review URL: https://codereview.chromium.org/656503002
2014-10-15 13:49:02 -07:00
tfarina
ebd90ee211 webtry: Check the result of os.Chdir().
As mentioned in http://golang.org/doc/effective_go.html#blank_assign,
errors are provided for a reason, so always check them.

The documentation for this function is available at
http://golang.org/pkg/os/#Chdir.

BUG=None
TEST=None
R=jcgregorio@google.com

Review URL: https://codereview.chromium.org/651343002
2014-10-15 13:48:47 -07:00
cdalton
6819df3644 Adds a GrTRecorder class that GrInOrderDrawBuffer uses to allocate
all its commands interleaved in contiguous memory. GrTRecorder also
supports extra data associated with objects, so we can store arrays
inline without having to call malloc().

Committed: https://skia.googlesource.com/skia/+/360b6801cfd90485891d709e44cf395d527ba69e

Review URL: https://codereview.chromium.org/628453002
2014-10-15 13:43:48 -07:00
scroggo
80a720eb82 Remove unused NeedsDeepCopy.
It was used to check to see if an SkPaint had mutable fields on it.
Now that all the fields are immutable, this function is no longer
used. Remove it.

BUG=skia:2097

Review URL: https://codereview.chromium.org/661543002
2014-10-15 13:43:36 -07:00
rmistry
3ac569b37a Revert of JPEG YUV Decoding (patchset #5 id:180001 of https://codereview.chromium.org/399683007/)
Reason for revert:
Caused many test bots to go red:
http://build.chromium.org/p/client.skia/builders/Test-ChromeOS-Alex-GMA3150-x86-Release/builds/22/steps/dm/logs/stdio
http://build.chromium.org/p/client.skia/builders/Test-ChromeOS-Link-HD4000-x86_64-Debug/builds/168/steps/dm/logs/stdio
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu12-ShuttleA-GTX660-x86-Release/builds/38/steps/dm/logs/stdio

Original issue's description:
> JPEG YUV Decoding
>
> Enabling JPEG YUV Decoding in Skia
>
> BUG=skia:3005, skia:1674
>
> Committed: https://skia.googlesource.com/skia/+/8e6c3b93a39e19111662a760ede97df55e51d39f

TBR=reed@google.com,scroggo@google.com,sugoi@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:3005, skia:1674

Review URL: https://codereview.chromium.org/656163002
2014-10-15 13:15:58 -07:00
rmistry
7ef2d98301 Whitespace change to confirm Google Storage uploads are working
BUG=skia:
TBR=
NOTRY=true
NOTREECHECKS=true

Review URL: https://codereview.chromium.org/657083004
2014-10-15 11:58:49 -07:00
bsalomon
b762cb548b More effect->processor cleanup
R=joshualitt@google.com

Review URL: https://codereview.chromium.org/660563003
2014-10-15 11:25:21 -07:00
bsalomon
98b33ebe6f Some cleanup in processor header files.
R=joshualitt@google.com

Review URL: https://codereview.chromium.org/659803004
2014-10-15 11:05:26 -07:00
sugoi
8e6c3b93a3 JPEG YUV Decoding
Enabling JPEG YUV Decoding in Skia

BUG=skia:3005, skia:1674

Review URL: https://codereview.chromium.org/399683007
2014-10-15 11:04:18 -07:00
bsalomon
6251d17dfa Split GrFragmentProcessor into its own header
Review URL: https://codereview.chromium.org/660573002
2014-10-15 10:50:36 -07:00
reed
c553b7a717 update dox for bounds in supersampler
BUG=skia:
TBR=caryclark@google.com
NOTRY=True

Review URL: https://codereview.chromium.org/657793003
2014-10-15 09:00:27 -07:00
reed
bcba2c9f9f interesct path bounds with clip bounds before initializing supersampler
BUG=skia:

Review URL: https://codereview.chromium.org/656473004
2014-10-15 08:52:00 -07:00
bsalomon
0e08fc17e4 Push isEqual/onIsEqual down from GrProcessor to subclasses.
R=joshualitt@google.com

Review URL: https://codereview.chromium.org/654273002
2014-10-15 08:19:04 -07:00
reed
157f36d358 add tests for large cordinates bounds when building aaclip
BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/658753002
2014-10-15 07:05:09 -07:00
tfarina
a365947bab bug_chomper: Consolidate public flag in a single place.
BUG=None
TEST=./run_server.sh --help and ./run_server.sh -public
R=borenet@google.com

Review URL: https://codereview.chromium.org/649303003
2014-10-14 20:14:04 -07:00
mtklein
f439c77e9c Revert of Create a single command buffer for GrInOrderDrawBuffer (patchset #17 id:1240001 of https://codereview.chromium.org/628453002/)
Reason for revert:
Leaking memory:
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu12-ShuttleA-GTX550Ti-x86_64-Release-Valgrind/builds/9/steps/gm/logs/stdio

Original issue's description:
> Adds a GrTRecorder class that GrInOrderDrawBuffer uses to allocate
> all its commands interleaved in contiguous memory. GrTRecorder also
> supports extra data associated with objects, so we can store arrays
> inline without having to call malloc().
>
> Committed: https://skia.googlesource.com/skia/+/360b6801cfd90485891d709e44cf395d527ba69e

TBR=bsalomon@google.com,reed@google.com,cdalton@nvidia.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/654863003
2014-10-14 14:29:30 -07:00
sugoi
80cc420934 Changed "Profile" to "Cube" in ColorCube
A few references to "profile" still existed in SkColorCubeFilter, so I removed them.

BUG=skia:

Review URL: https://codereview.chromium.org/651303002
2014-10-14 13:15:58 -07:00
Brian Salomon
5b9cb06761 Ignore ubuntu nvprmsaa4/mixed_xfermodes GM result.
BUG=skia:2443

Review URL: https://codereview.chromium.org/653153003
2014-10-14 16:12:23 -04:00
Brian Salomon
d5da96a814 Rebaseline mixedxfermodes on ubuntu/nvprmsaa4
TBR=

Review URL: https://codereview.chromium.org/657603005
2014-10-14 15:52:46 -04:00
bsalomon
e488d63312 Only use sized format on IMG/ES3 for single channel.
BUG=skia:2922

Review URL: https://codereview.chromium.org/638293004
2014-10-14 12:29:17 -07:00
cdalton
360b6801cf Adds a GrTRecorder class that GrInOrderDrawBuffer uses to allocate
all its commands interleaved in contiguous memory. GrTRecorder also
supports extra data associated with objects, so we can store arrays
inline without having to call malloc().

Review URL: https://codereview.chromium.org/628453002
2014-10-14 11:53:05 -07:00
bsalomon
e30597375c Remove uses of GrAutoScratchTexture.
Rename GrContext::lockAndRefScratchTexture to refScratchTexture.

GrSurface::writePixels returns bool instead of void.

BUG=skia:2889

Review URL: https://codereview.chromium.org/638403003
2014-10-14 11:47:22 -07:00
bsalomon
ec87dc64dd Flush text contexts before drawing text as path
BUG=416289

Review URL: https://codereview.chromium.org/636233008
2014-10-14 10:52:00 -07:00
tfarina
585a5fc243 webtry: Simplify template construction.
text/template and html/template both have a helper function called
"Must" that according to the docs in http://golang.org/pkg/text/template/#Must
and http://golang.org/pkg/html/template/#Must, wraps a call to a function
returning (*Template, error) and panics if the error is non-nil.

So we don't need to that ourselves. Which is a good thing and makes code
cleaner.

BUG=None
TEST=None
R=jcgregorio@google.com

Review URL: https://codereview.chromium.org/642243004
2014-10-14 09:39:02 -07:00
reed
bdc49ae0d4 create and modify matrices in lua
BUG=skia:

Review URL: https://codereview.chromium.org/651823004
2014-10-14 09:34:52 -07:00
jvanverth
8c27a188a0 Change GrTextContext fallbacks to be a linked list chain.
Preliminary work for getting color emoji working with
distance field text.

BUG=skia:2887

Review URL: https://codereview.chromium.org/650273003
2014-10-14 08:45:50 -07:00