1060 Commits

Author SHA1 Message Date
John Reck
6304919732 Unbreak display list debug dumping
Change-Id: I1c6a79f047b29fa60907f6e128cb843a45b88bff
2013-12-10 15:22:01 -08:00
John Reck
cec24ae16e RenderThread work
Hacky prototype needs a private API to enable

Change-Id: I21e0ddf3cdbd38a4036354b5d6012449e1a34849
2013-12-09 15:57:09 -08:00
Leon Scroggins III
aec09b6b98 Merge "Call SkBitmap::config() instead of ::getConfig()" 2013-12-04 18:14:29 +00:00
Victoria Lease
43b692d9a1 Deprecate Android-specific SkPaint functions.
The following functions were problematic:
 const SkGlyph& getUnicharMetrics(SkUnichar, const SkMatrix*);
 const SkGlyph& getGlyphMetrics(uint16_t, const SkMatrix*);
 const void* findImage(const SkGlyph&, const SkMatrix*);

Replacing them with calls through SkGlyphCache solved a nasty crash
bug, so they have all been deprecated.

Bug: 11968757
Change-Id: Id746315d41aec5b211b78b172a883c2061130f08
2013-12-03 15:02:28 -08:00
Leon Scroggins III
4b9a19a8f8 Call SkBitmap::config() instead of ::getConfig()
getConfig() has been deprecated.

Change-Id: I32066256ab82ac4760c752c80856d1b56d291fae
2013-12-03 15:23:11 -05:00
Chris Craik
f0a590781b Clean up quick rejection, especially surrounding points + lines.
bug:4351353

quickReject and quickRejectNoScissor have been renamed and refactored:
- to make the scissor side effect clear and explicit
- dangerous methods no longer public
- to make the simple quick reject check logic const
- simple quick reject is now conservative

This CL also fixes several issues with line and point quickRejection -
sub-pixel and hairline lines are much less likely to be incorrectly
rejected, especially at small canvas scale.

Additionally, alpha modulation for AA points < 1px in size is now
correct, dumplicating SW behavior (similar to lines and stroked
shapes work).

Change-Id: Ibb0710c721b9fb415d05acf54dd3d2b4d602156a
2013-11-22 11:36:12 -08:00
Chris Craik
4063a0e03b Clean up modelView matrix logic
bug:11359533

Also changes shader matrix to correctly account for modelView and
currentTransform()

Change-Id: I6ce18857dc6d08ea08ca7535385c2ad351ec3caa
2013-11-18 12:51:08 -08:00
Chris Craik
16e7d730c5 am 2f70da2b: am 6ed16a89: am 0b807d2e: Merge "Update the layer\'s alpha value upon composition of the layer"
* commit '2f70da2bc5ce9f4766395cc9d848f0afe8f6a2a9':
  Update the layer's alpha value upon composition of the layer
2013-11-06 16:15:38 -08:00
Chris Craik
2f70da2bc5 am 6ed16a89: am 0b807d2e: Merge "Update the layer\'s alpha value upon composition of the layer"
* commit '6ed16a89d836a33b9242f91b05e8ecb149abf909':
  Update the layer's alpha value upon composition of the layer
2013-11-06 16:09:54 -08:00
Digish Pandya
a5ff739d3c Update the layer's alpha value upon composition of the layer
Fixes: This patch makes sure that the layer's alpha value is
up-to-date and does not reflect the previous view's alpha value.
it fixes the square block on marquee fading edge when text view
is applied transparency.

Change-Id: I110649db72a75fecc02ba56c201a05773f80328c
2013-11-05 09:22:37 +05:30
Chris Craik
e63f7c622a Clean unused parameters, disable warnings
Change-Id: Iddb872f53075dd022eeef45265594d1c6a9e2bc0
2013-10-17 10:37:15 -07:00
Romain Guy
ac56414b92 am b4d4d687: am 318ae7bb: Take SkBitmap\'s stride into account when uploading textures Bug #10151807
* commit 'b4d4d68795a10401e3cb50df491a2e5d5b1ac96e':
  Take SkBitmap's stride into account when uploading textures Bug #10151807
2013-09-25 15:37:41 -07:00
Romain Guy
318ae7bb92 Take SkBitmap's stride into account when uploading textures
Bug #10151807

Change-Id: I7ba4804fa3619088fea70eb55f10519fff0bf5f0
2013-09-25 22:31:31 +00:00
Chris Craik
5caebe4c7c am bd842f96: am d8a84a86: Merge "Correct bitmap merging logic" into klp-dev
* commit 'bd842f96ed4a9b7887be4702828ea0034d66ef85':
  Correct bitmap merging logic
2013-09-20 17:37:20 -07:00
Chris Craik
d8a84a8609 Merge "Correct bitmap merging logic" into klp-dev 2013-09-21 00:33:36 +00:00
Chris Craik
996fe65634 Correct bitmap merging logic
bug:10863163

This fixes two issues

The check for pure translation was incorrect. It was fixed and renamed
for clarity.

Certain matrix paths weren't setting kTypePositiveScale. For
simplicity (and because positive scale is simple to check) removed
flag in favor of dynamic checking.

Change-Id: Ic5ce235653ef49a68b8b242bd89fc2e95874ecc9
2013-09-20 17:25:31 -07:00
Victoria Lease
9e233b54b6 am ab99b39d: am ddc0a63d: Merge "fix emoji clipping in hw draw path" into klp-dev
* commit 'ab99b39d7d152de35ea02a364190ff325da4015b':
  fix emoji clipping in hw draw path
2013-09-20 11:20:06 -07:00
Victoria Lease
16c84069a4 fix emoji clipping in hw draw path
I guess we don't want to overwrite the last line in every RGBA glyph
with our one-line texture atlas spacer?

Bug: 10841207
Change-Id: Ief85ca58650c731e9d21dbf90942b7b44670abcc
2013-09-19 15:38:21 -07:00
Chris Craik
2765c0b716 resolved conflicts for merge of d97303a7 to master
Change-Id: I29e2e64e0ec241675762482cbe5c5e9dc58adca6
2013-09-17 19:17:12 -07:00
Chris Craik
e08e663229 am 7cb404dd: am a42ceb03: Merge "Disallow negative scale matrices in merged Bitmap drawing" into klp-dev
* commit '7cb404dda770da24aaf1b484d6575d5480cf080f':
  Disallow negative scale matrices in merged Bitmap drawing
2013-09-17 18:56:18 -07:00
Chris Craik
ce9ee16d65 Merge "Conservatively estimate geometry bounds" into klp-dev 2013-09-18 01:50:02 +00:00
Chris Craik
a42ceb03cf Merge "Disallow negative scale matrices in merged Bitmap drawing" into klp-dev 2013-09-18 01:49:32 +00:00
Chris Craik
32f05e343c Conservatively estimate geometry bounds
bug:10761696

Avoids a case where a rect with top coordinate of (e.g.) 0.51f is
assumed to not draw in the first row of pixels, which leads to it not
being clipped. Since rounding can cause it to render in this first
pixel anyway, we very slightly expand geometry bounds.

Now, in ambiguous cases, the geometry bounds are expanded so clipping
is more likely to happen.

Change-Id: I119b7c7720de07bac1634549724ffb63935567fc
2013-09-17 17:48:14 -07:00
Chris Craik
d965bc5823 Disallow negative scale matrices in merged Bitmap drawing
bug:10622962

Change-Id: I55ac18ad56b53dc9e6e6ea14cd3ec4bdafa98ac3
2013-09-16 18:19:55 -07:00
Chris Craik
d3979bc5a7 am bb451bda: am 0d3c52d3: Merge "Fix merged operation clipping" into klp-dev
* commit 'bb451bda4a08f79b60f84242647bdb40962f01b5':
  Fix merged operation clipping
2013-09-13 17:32:06 -07:00
Chris Craik
5af5fc50c2 Fix merged operation clipping
bug:10745870

Missing 'const' meant MergingDrawBatch would never clip anything.

Change-Id: Ia6367eff94cf5f437efafbc3ba7f0da102ffd956
2013-09-13 14:44:08 -07:00
Romain Guy
b1c53942f1 am 0885b291: am 4801a4f9: Merge "Always disable the clip for layers Bug #8149344" into klp-dev
* commit '0885b291650c1b85220645943c9eab3080170aca':
  Always disable the clip for layers Bug #8149344
2013-09-12 21:42:25 -07:00
Chris Craik
7cca88352f am 3f30e67a: am 88ee0dac: Merge "Move DeferredDisplayState out of ops" into klp-dev
* commit '3f30e67afbceb185c52833cec539cc0199716ef0':
  Move DeferredDisplayState out of ops
2013-09-12 16:45:16 -07:00
Romain Guy
1de466fc91 Always disable the clip for layers
Bug #8149344

Change-Id: Ifd413cadb171232eb846b3d91b05b2d2457b9f35
2013-09-12 23:13:38 +00:00
Chris Craik
88ee0dac81 Merge "Move DeferredDisplayState out of ops" into klp-dev 2013-09-12 22:08:54 +00:00
Chris Craik
c1c5f08702 Move DeferredDisplayState out of ops
bug:9969358

Instead of storing DeferredDisplayState within an op (thus forcing ops
to be tied to a single state instance), associate each op with a new
state at DeferredDisplayList insertion time.

Now, DisplayLists (and the ops within) can be reused in a single
DeferredDisplayList draw call, as ops will use different state
instances at different points in the frame.

Change-Id: I525ab2abe0c3883679f2fa00b219b293e9ec53d9
2013-09-12 13:33:01 -07:00
John Reck
2f93af4574 am 53760b4a: am 874ae2ad: Merge "Fix scissor for functor invocation" into klp-dev
* commit '53760b4a97fb2f88e94da73d647ff80221b3c454':
  Fix scissor for functor invocation
2013-09-10 14:08:12 -07:00
John Reck
874ae2adf8 Merge "Fix scissor for functor invocation" into klp-dev 2013-09-10 21:03:48 +00:00
Tim Murray
efb6beb438 am 19c727bb: am 895a4375: Merge "Fix FontRenderer bug." into klp-dev
* commit '19c727bbc6371924bfd2f85e804b5b6b093a8413':
  Fix FontRenderer bug.
2013-09-10 14:03:39 -07:00
Tim Murray
7a454ba5fe Fix FontRenderer bug.
bug 10691313

Change-Id: Icd5341a3c2066e337911f040ddc935c48c8d7cd1
2013-09-10 13:46:49 -07:00
John Reck
25d2f7bc1f Fix scissor for functor invocation
Bug: 10677765
 enableScissor() must precede setScissorFromClip() as
 otherwise setScissorFromClip() doesn't do anything.
 Also make sure to call setScissorFromClip() if
 enableScissor() returns true as enableScissor() calls
 resetScissor() if the scissor state has changed.

Change-Id: I9226b20bb256c92066aae344e4e6407540b6eae9
2013-09-10 20:45:29 +00:00
Tim Murray
86ebf2876d am 9163b1d9: am 23ae1461: Merge "Add flags word to initialization." into klp-dev
* commit '9163b1d9ceeca3e956218dda1ca19a748dc48d8d':
  Add flags word to initialization.
2013-09-09 16:58:12 -07:00
Tim Murray
9578e64240 Add flags word to initialization.
bug 10427951

Change-Id: I1356b9b96315ead44aa3898de5604d75f9bb8be5
2013-09-09 16:23:27 -07:00
Chris Craik
0ff8c5f33c am 9b824560: am 9b40bdf6: Merge "Dump the right matrix when logging display lists" into klp-dev
* commit '9b824560726eab653a1044eecdb0bfe5ff804865':
  Dump the right matrix when logging display lists
2013-09-06 13:32:45 -07:00
Chris Craik
66063ae2d6 Dump the right matrix when logging display lists
bug:10631274
Change-Id: I6b32bfcb3e207321da60807091d7ac0ecf6112ab
2013-09-05 16:11:18 -07:00
Chris Craik
815fbbdfca am 7ff37ada: am ff2c22e2: Merge "Move functor GL setup to just before functor" into klp-dev
* commit '7ff37ada138d9023e9d646f7195ae761a7b83ff2':
  Move functor GL setup to just before functor
2013-08-26 15:12:06 -07:00
Chris Craik
54f574acf4 Move functor GL setup to just before functor
bug:10399469

Because the stencil setup can issue draws, it *must* come before the
GL state setup.

Change-Id: I52a36213549fc60b091a90cbb923a1f0d35f9a65
2013-08-26 11:23:46 -07:00
Romain Guy
0a57d65872 am c1acf799: am 243a026b: Merge "Second attempt at avoiding infinite loop in PathCache::trim() Bug #10347089" into klp-dev
* commit 'c1acf7994a975903320ec8146c62118b651debc4':
  Second attempt at avoiding infinite loop in PathCache::trim() Bug #10347089
2013-08-21 20:16:12 -07:00
Romain Guy
5d92320084 Second attempt at avoiding infinite loop in PathCache::trim()
Bug #10347089

Change-Id: I70f5a3933e848632473acc6636c88be5dc6ac430
2013-08-21 18:42:46 -07:00
Romain Guy
880d6fecfc am b7db6d73: am e0a2435c: Merge "Properly account for created paths in the cache" into klp-dev
* commit 'b7db6d73a4a7fc2c2ec189780e1532cb0e2c638b':
  Properly account for created paths in the cache
2013-08-21 17:42:26 -07:00
Romain Guy
0a8c51b1d0 Properly account for created paths in the cache
Change-Id: I47b89b3085cefab6daac9194e7bfd3c140b37fa2
2013-08-21 17:35:38 -07:00
Romain Guy
2f7c6f04cc am dfb79408: am 5b8efc47: Merge "Add overdraw debugging that accounts for Deuteranomaly" into klp-dev
* commit 'dfb79408892b3f168204c54a9b81d813921fb0f9':
  Add overdraw debugging that accounts for Deuteranomaly
2013-08-21 12:02:35 -07:00
Romain Guy
627c6fd913 Add overdraw debugging that accounts for Deuteranomaly
Change-Id: I31f68a07aa7cf0490d2572e24e4c5ac2066a1151
2013-08-21 11:53:18 -07:00
Tim Murray
ede1deaa88 am 816f3058: am cf8e6778: Merge "Handle updates to C++ API." into klp-dev
* commit '816f3058bdd7b888965022888e4a789ea967f444':
  Handle updates to C++ API.
2013-08-20 11:34:04 -07:00
Tim Murray
d8c8aaa82e Handle updates to C++ API.
Change-Id: I8ab17cbae3a9a4cc3c3202b8277d49f27bdf1fec
2013-08-19 12:07:52 -07:00