93 Commits

Author SHA1 Message Date
ywen
ec45adde70 Merge \"Performance Optimization: Align texture dirty rect\"
am: 4e6a73c16a

Change-Id: I2bafdfadd3d6ff88be44475f77158236015acfde
2016-06-16 21:42:13 +00:00
John Reck
4e6a73c16a Merge "Performance Optimization: Align texture dirty rect" 2016-06-16 21:35:12 +00:00
ywen
229cad0ab2 Performance Optimization: Align texture dirty rect
Align x offset and width to 32, y offset and height to 4.
It improves the font texture upload performance.

Change-Id: I967eeed90658f2ce1eb08cb2740d5dc34c72f40b
2016-06-15 08:32:25 +00:00
Chih-Hung Hsieh
cef190de85 Fix misc-macro-parentheses warnings in hwui and graphic jni.
Bug: 28705665
Change-Id: I7d1eb38a713fe6cc7f41a3cc3f2f9d0aa0114b2c
2016-05-19 15:25:50 -07:00
John Reck
2c0f93798b Add a font microbench
Also remove a low-signal high-frequency trace mark

Fixes: 27894187

Change-Id: I090122a0db8e455eaa9dbce2b0f5b6778a218188
2016-03-29 09:55:13 -07:00
Leon Scroggins III
c46813d724 Clean up some Skia includes
Neither of these files need SkScalerContext.h. Remove those includes.
One really needs SkGlyph.h, so include it instead.

Change-Id: Ic7cfce9e7784c9290c5a2dfdd8385b65d32f9b76
2016-02-16 16:32:13 +00:00
Chris Craik
e8c3c813b0 Fix TextDropShadowCacheTests and glyph_t everywhere
Change-Id: I943eae4e9408c77bdfba6304ba7ee3e862351a41
2016-02-08 22:45:22 +00:00
John Reck
38e0c32852 Track texture memory globally
Also mostly consolidates texture creation

Change-Id: Ifea01303afda531dcec99b8fe2a0f64cf2f24420
2016-01-14 13:42:12 -08:00
Chris Craik
a1717271ca Initial text support in new reorderer/renderer
Removes obsolete drawPosText codepath, and unifies text decoration behavior.

Change-Id: I9c563249ab688a3394445a0e7fe1b9d0661f6f7c
2015-11-20 11:03:18 -08:00
Stephen Hines
0fe8ea2096 am 697e3dd6: am ee144b1e: resolved conflicts for bd57dac5 to stage-aosp-master
* commit '697e3dd6b9a8be4451e19ab7c03ced310602b92a':
  Don't unregister Fonts from renderer at destruction
2015-10-03 00:52:32 +00:00
Stephen Hines
ee144b1e60 resolved conflicts for bd57dac5 to stage-aosp-master
Change-Id: I5107af13712d7cc908d8699e5c15a002f0a3ec85
2015-10-02 17:34:05 -07:00
Chris Craik
148c78f825 Don't unregister Fonts from renderer at destruction
bug:24584749

Fonts are only destroyed when the renderer is destroyed, this prevents
modifying the FontRenderer's LruCache while it's being iterated through
in FontRenderer::~FontRenderer.

Change-Id: I0e2c9f87981bfa50454ec8689df05851839e288e
2015-10-02 14:21:46 -07:00
Leon Scroggins III
0e9059b454 Change from SkDeviceProperties to SkSurfaceProps.
Fixes build.

Change-Id: Id6b0f96830761f8b6896169327de90f3b390e3c9
(cherry picked from commit 8ebf97a668e7a53bb9810aa5049a8b28435143d2)
2015-07-24 15:55:48 +00:00
Chris Craik
5a4690bf26 Clean up unncessary defines
LOG_TAG and TRACE_TAG are already defined in the makefile

Change-Id: I9e53e3dacbe018441edd74cb7c8c90846defee74
2015-07-14 13:25:38 -07:00
Chris Craik
e6a15ee3d0 Remove all usage of fmin and fmax
bug:22208220

Removes needless call, and upconversion to doubles in multiple places.

Change-Id: I1b949fa5f206446ac34de800154c0147d6bd8034
2015-07-07 18:42:42 -07:00
Chris Craik
de25a672b1 Saturate alpha values when overlaying glyphs
bug:19062769

Glyphs were stored to the output buffer with the assumption of
non-overlap, which is incorrect for certain fonts/strings. Instead,
blend src into dst, so new glyphs don't clobber existing content.

Change-Id: I6e22037500e67d5348ee2a43d939416c23c4d1ea
2015-06-30 13:24:18 -07:00
Chris Craik
e2bb380bc2 Use glops for text rendering
Change-Id: I5e155c8baf3149f0ff231ec3c89dbff6bb8eae92
2015-03-18 16:10:24 -07:00
Chris Craik
117bdbcfa3 Glop ColorFilter & VertexBuffer support, initial enable
Enables Glop rendering for supported Rects and VertexBuffers
Also removes unused Query object

Change-Id: Ibe227bc362685a153159f75077664f0947764e06
2015-02-06 13:42:25 -08:00
Chris Craik
44eb2c0086 Refactor blending and texture gl state
Change-Id: Ia6b3c8b2afd3dfcee7f3ce401d846b789612054a
2015-01-30 10:49:05 -08:00
Chris Craik
d41c4d8c73 Add overrides and switch to nullptr keyword for all files
Adds remaining missing overrides and nullptr usages, missed due to
an extreme failure in tool usage.

Change-Id: I56abd72975a3999ad13330003c348db40f59aebf
2015-01-05 16:49:13 -08:00
Chris Craik
e84a208317 Add overrides and switch to nullptr keyword
Changes generated with clang-modernize.

Additionally, fixed some struct-vs-class usage to make clang happy.

Change-Id: Ic6ef2427401ff1e794d26f21f7b44868fc75fb72
2014-12-22 14:56:08 -08:00
John Reck
f088c349df Fix style
Change-Id: I7227b0eac126bf470ed50249a7809b845872983b
2014-12-12 09:49:29 -08:00
Andreas Gampe
64bb413a66 Revert "resolved conflicts for merge of 220c3f4f to master"
Reverted as hwui doesn't agree.

This reverts commit 8a902d9f24e83c87b054adb5836b4a5b8a257be9.

Change-Id: I109e7b02bee2921e2155ded6df36f52e6f574b5a
2014-11-22 00:35:09 +00:00
Andreas Gampe
8a902d9f24 resolved conflicts for merge of 220c3f4f to master
Change-Id: I37ecce8fddecdff82b0eace16f1ee75152f7171e
2014-11-21 15:51:04 -08:00
Andreas Gampe
2ab8298dc3 resolved conflicts for merge of 99377df1 to lmp-mr1-dev-plus-aosp
Change-Id: I3a98f55832ac447b1ed0dd129c7a93d088025943
2014-11-21 14:19:06 -08:00
Andreas Gampe
42ddc18d10 Frameworks/base: Unused parameters in hwui
Remove Clang cutout for unused parameters. Fix warnings.

Remove Clang cutout for deprecated Skia function usage. Has been
fixed in the L push.

Change-Id: I7ea073ff67127cc1e14e798b655e2c50615fe8e7
2014-11-21 10:39:21 -08:00
Chris Craik
06e7fe5a70 resolve merge conflicts of f2235b6 to master.
Change-Id: Ibcef3a37ca0749931d509b53bd52e53a7d30ddbb
2014-11-20 17:27:36 -08:00
Chris Craik
f2235b6a48 resolve merge conflicts of 57b641a to lmp-mr1-dev-plus-aosp.
Change-Id: I1be708f5a0cd4d64021a57f1063d54330f1d2d7e
2014-11-20 16:38:06 -08:00
Chris Craik
70850ea258 Improve logging around performance critical events
bug:17702227

Add details useful to developers (such as layer size/View name), and
switch away from logging implementation names/details, since they
are generally not relevant to developers.

Change-Id: Iee605d182f241450f7e75a6d0c283d51fa1312f5
2014-11-19 17:24:30 -08:00
Andreas Gampe
edaecc1db0 resolved conflicts for merge of 1d03b816 to lmp-mr1-dev-plus-aosp
(cherry picked from commit 1272887050a269d6d506b42099c2857847ad100b)

Change-Id: Ib673768fe5fc03615626ef4b10590e5317f22172
2014-11-10 21:29:52 -08:00
Andreas Gampe
1e19674107 Frameworks/base: Wall Werror in libs/hwui
Turn on -Wall -Werror in libs/hwui. Fix errors.

Change-Id: I74962d08c889712dacbd0d86d6760fc10802b6bd
2014-11-10 15:58:04 -08:00
Derek Sollenberger
1383d1e60f Remove error case
bug: 18051326
Change-Id: I4f2f4abf80b89e540a91251ce55cd65375f6ca65
2014-10-20 16:59:27 -04:00
Derek Sollenberger
5865172542 Add back include that ensures RENDER_TEXT_AS_GLYPHS is set consistently.
bug: 18051326
Change-Id: I1ee9f8acb25fb1684e156c61e2cf2669d15a99cb
2014-10-20 16:26:24 -04:00
Tom Hudson
07c05e38a1 Merge "Clean up physical coupling" 2014-10-16 11:57:16 +00:00
Tom Hudson
2dc236b2ba Clean up physical coupling
Narrow the use of #include directives in hwui, replacing with forward
declarations where straightforward. Speeds compiles; doesn't do any
restructuring of code.

Change-Id: Icac2baffb5896f55d8c6718e9bd9d4bfa02d3ca0
2014-10-15 15:51:39 -04:00
Derek Sollenberger
413995e0be Change in Skia APIs require update to HWUI font implementation
Change-Id: Ib89a27381f740499e26706716f39ad62fa10778c
2014-10-15 14:29:46 +00:00
Chris Craik
39c5e7cbdf Fix glyph positions underflow issue
bug:16450675

Avoid using unsigned ints in math with negative numbers

Change-Id: Icdfb72451f03380dbf78b3703793869b2cd4e751
2014-08-15 15:46:37 -07:00
Chris Craik
59744b79ec Add hack for custom re-rasterization buckets
bug:14083128

Moves all of the font transform management into
OpenGLRenderer::findBestFontTransform(), and now simply passes down
final rasterization transforms into the FontRenderer.

Change-Id: Ie02752e6af863347b142367c7d628db5f9fc2998
2014-07-07 19:14:55 +00:00
Chris Craik
50b843883d am 3c769ec0: am 00fabcbe: am b1708e9b: Merge "Use alpha channel instead of red in drawCachedGlyphBitmap"
* commit '3c769ec02b8b82bec4dec2169bf76af58be94a9a':
  Use alpha channel instead of red in drawCachedGlyphBitmap
2014-05-19 19:35:59 +00:00
Chris Craik
3c769ec02b am 00fabcbe: am b1708e9b: Merge "Use alpha channel instead of red in drawCachedGlyphBitmap"
* commit '00fabcbeb035fb513293ea01d245002f40b3234f':
  Use alpha channel instead of red in drawCachedGlyphBitmap
2014-05-19 19:32:38 +00:00
Chris Craik
00fabcbeb0 am b1708e9b: Merge "Use alpha channel instead of red in drawCachedGlyphBitmap"
* commit 'b1708e9b764268a06d91219a5c39ee9efd32ab00':
  Use alpha channel instead of red in drawCachedGlyphBitmap
2014-05-19 19:27:52 +00:00
Digish Pandya
c62c1cc17d Use alpha channel instead of red in drawCachedGlyphBitmap
the correct value to copy in bitmap is alpha component from
the cachebuffer. currently it is offset to red channel if format is
RGBA which is wrong.

this is followup fix for https://android-review.googlesource.com/#/c/93943/

Change-Id: I96b5ba35df5ccaef44caf2542d35d6585ba1df80
Signed-off-by: Digish Pandya <digishp@codeaurora.org>
2014-05-15 08:59:22 +05:30
Chris Craik
f9075798d7 am 90eaf92e: am 7e13d1d4: am f6c9c420: Merge "Correct stride for drawing to cached glyph bitmap"
* commit '90eaf92e325457ccb30286879a2f92b7ba517c7d':
  Correct stride for drawing to cached glyph bitmap
2014-05-09 22:00:02 +00:00
Chris Craik
90eaf92e32 am 7e13d1d4: am f6c9c420: Merge "Correct stride for drawing to cached glyph bitmap"
* commit '7e13d1d4a46a01ebaa412d622ef76d90bd39d12a':
  Correct stride for drawing to cached glyph bitmap
2014-05-09 21:51:49 +00:00
Chris Craik
7e13d1d4a4 am f6c9c420: Merge "Correct stride for drawing to cached glyph bitmap"
* commit 'f6c9c4204c2f8f86277d081112c9dd863ddaa778':
  Correct stride for drawing to cached glyph bitmap
2014-05-09 21:46:43 +00:00
Digish Pandya
b9312a54e4 Correct stride for drawing to cached glyph bitmap
fixes the glyph cachebuffer index to account for pixelbuffer
format size.

issue: in launcher home screen create icon group and rename the
group to some text string with emo-icons (smilies). without this
change the drop shadows for emo-icons will look bad.

Change-Id: I525a9219d35f4541363fd64e7fc5fd1053269725
Signed-off-by: Digish Pandya <digishp@codeaurora.org>
2014-05-09 15:05:16 +05:30
Victoria Lease
2c423b22b4 am df64ac68: ask skia to use flat gamma when rendering fonts from hwui
* commit 'df64ac688d400c74438db091952d236fffd5f778':
  ask skia to use flat gamma when rendering fonts from hwui
2014-04-22 22:57:29 +00:00
Victoria Lease
df64ac688d ask skia to use flat gamma when rendering fonts from hwui
Bug: 13748392
Change-Id: I6930629b8e900628f15354f663b86dfb29a4db78
(cherry picked from commit b66270eac288de53207e55d10879b070a0ec8b6b)
2014-04-22 22:54:10 +00:00
Victoria Lease
b66270eac2 ask skia to use flat gamma when rendering fonts from hwui
Bug: 13748392
Change-Id: I6930629b8e900628f15354f663b86dfb29a4db78
2014-04-22 15:00:31 -07:00
Leon Scroggins III
96978ee290 am f8d8777d: Update framework to use M33 Skia. DO NOT MERGE
* commit 'f8d8777dddf91c741981b4f795f2fb2b1d81c1b6':
  Update framework to use M33 Skia. DO NOT MERGE
2014-03-17 15:55:43 +00:00