6474 Commits

Author SHA1 Message Date
Derek Sollenberger
240d52cb96 Merge "Fix DrawFilter's usage in HWUI." 2015-03-25 14:30:51 +00:00
Derek Sollenberger
0b8606266c Fix DrawFilter's usage in HWUI.
Also add additional compile time checks to ensure that the Java
and Skia APIs remain in sync.

bug:19890753
Change-Id: I8503cacf2859307e3f480a78603f9f05901b58cc
2015-03-25 10:08:30 -04:00
John Reck
2f6fb3d1b7 Merge "Shave another 10us off of hwuitask" 2015-03-24 19:35:21 +00:00
John Reck
bf29ee2a49 Shave another 10us off of hwuitask
pthread_cond_signal does not need the mutex
to be held to signal. This results in the thread
waking up trying to grab the lock, failing, the signaling
thread to wake up, release the lock, immediately get preempted
for the signaled thread which can now proceed.

Release the mutex before signaling to avoid the ping-pong
scheduling issue, which shaves another 10us off of this

Change-Id: Ie6bccca031ba6528f357eae8352b74626a6318c7
2015-03-24 12:31:44 -07:00
John Reck
125104f66c Merge "Shave 10us off of hwuitask" 2015-03-24 19:22:00 +00:00
John Reck
815f2a093a Shave 10us off of hwuitask
This prevents an issue where if the signal schedules
hwuiTask it will immediately block and go back to sleep due
to mLock still being held.

This costs 10us in thread scheduling ping-ponging bouncing
between hwuiTask and RenderThread

Change-Id: I47595c1bf5736576483a6aa7aada0b1be1e04268
2015-03-24 12:16:37 -07:00
John Reck
111928fa32 resolved conflicts for merge of 4142f026 to master
Change-Id: Iabe3aa0ac6911a26d2ba7219f18332897276ed6f
2015-03-24 08:34:23 -07:00
Adam Lesinski
47fe60a643 Merge "Output modified bcp47 tag in ResTable_config::toString()" 2015-03-20 20:46:40 +00:00
youngmin0822.lee
c80c9ad188 Don't create unnecessary RenderThread's instance when executing 'dumpsys gfxinfo'
To obtain the gfxinfo for each process, the static method of RenderProxy is used, which is named outputLogBuffer().
In there,
1. RenderTask is created for getting DisplayList Commands in RenderNode.
2. staticPostAndWait() is called
3. RenderThread's instance is created by 'RenderThread::getInstance()' in staticPostAndWait()

In case of the service, they don't use HW Acceleration, so don't need RenderThread.
But, by the process of No.3, RenderThread is created for all process.
As we know, RenderThread never be destroyed while the process is alive.
This patch checks RenderThread instance before the creation of RenderTask.
And, there is no one, just return to prevent the unnecessay creation of it.

Change-Id: I4fe29d83c9ced3e8b67177c0874c5d8ee62e1870
2015-03-20 21:22:32 +09:00
Chris Craik
c6128bae43 Fix clang build
Change-Id: I5336ac347123671a18401121c5f001c8f7caf54d
2015-03-19 10:00:56 -07:00
Chris Craik
e2bb380bc2 Use glops for text rendering
Change-Id: I5e155c8baf3149f0ff231ec3c89dbff6bb8eae92
2015-03-18 16:10:24 -07:00
Mykola Kondratenko
b159633aa3 hwui : fix memory leak due to duplicate in shadow cache
New ShadowTask with the ShadowDescription key that already
exists in the shadow LruCache will leak as it is not being
added.

Fix adds check for the existing key that is common in the hwui
code but missing for the TessellationCache::precacheShadow
function.

Change-Id: I37fd5ec82f8b8da5d1ec0f2ab9fd04c5f8534367
2015-03-17 08:57:41 +01:00
Adam Lesinski
8a9355a98e Output modified bcp47 tag in ResTable_config::toString()
We expect to be able to parse the output of ResTable_config::toString(),
so it should use modified bcp47 (b+en+Latn+US).

Change-Id: I597a1779a1fa5cff171c473e6a0368d93b9c7722
2015-03-16 22:25:26 +00:00
Derek Sollenberger
dc16e24afc Merge "Add conic support to HWUI path tessellator." 2015-03-16 19:40:08 +00:00
Derek Sollenberger
b0772a6cc5 Add conic support to HWUI path tessellator.
bug: 19732872
Change-Id: Ic3ae46f746325468ab972c9daf829099165eb596
2015-03-16 15:28:16 -04:00
Mike Reed
2a1ce8a4e5 use SkFilterQuality instead of SkPaint::FilterLevel
Change-Id: I5d26869de746107b8a35a7a662236f993a824b0d
2015-03-16 11:31:38 -04:00
Derek Sollenberger
ee248599d4 Refactor DisplayList path caching.
This removes dependence on SkPath ptrs that HWUI does not control
the lifecycle of. This clears up some errors where the paths are
not generated from Java, but rather the Skia test suites.

Cherry-pick of a change that originally landed in master-skia and is
dependent on a skia merge (ag/655422).

Change-Id: I41b9797a2b0af5d6b4ea51891565469d4f1d832d
2015-03-13 08:05:55 -04:00
Vishwath Mohan
1808d437e6 Merge "Enforce null-termination in ResStringPool::stringAt" 2015-03-12 21:17:50 +00:00
Vishwath Mohan
6521a1b743 Enforce null-termination in ResStringPool::stringAt
Rejects any non null-terminated string that a caller asks
ResStringPool::stringAt for, returning NULL instead.

The rationale for returning NULL rather than amending the string to add
a null-terminator is that conformant APK files will have all their
strings null-terminated anyway, and that this is a possible signal of a
malformed package.

Bug: 15288069
Change-Id: I370937b92f2cadf67fbd54203cbc7d1494be969f
2015-03-11 16:36:53 -07:00
John Reck
b36016c65f Cleanups & simplifications
Change-Id: I5ad5e3b8fe55b1528f2e20c63e5abe51d9e40ff1
2015-03-11 11:29:13 -07:00
Vishwath Mohan
4e9e0047a2 Merge "Prevent integer overflow in ResourceTypes" 2015-03-11 00:41:38 +00:00
Chris Craik
48f650cb24 Track down unsupported texture target
bug:19641517

Change-Id: Idc2e413abef5bb1438ffb3f52efb001504d3e89f
2015-03-10 14:02:06 -07:00
Vishwath Mohan
6a2c23dc1b Prevent integer overflow in ResourceTypes
Adds checks to 2 malloc() calls to ensure that the finally allocated
buffer size is not vulnerable to integer overflows. Also includes a
sanity check on the upper bound for type_info.numEntries before each
call.

Bug: 15171384
Change-Id: Ifdf0276bcca7e3d93da7c3577b9486d3c03a9d03
2015-03-10 12:34:08 -07:00
Chris Craik
edacf22ca1 Merge "Glop based composeLayerRegion/Rect" 2015-03-10 16:29:14 +00:00
Chris Craik
182952f5ee Glop based composeLayerRegion/Rect
Change-Id: I69440cabca84948e8aaead9479d616ebc2496517
2015-03-09 18:06:32 -07:00
Chris Craik
0a75d4e96c Merge "Rewrite glop texture asserts" 2015-03-09 20:40:08 +00:00
Chris Craik
eb911c2b0e Rewrite glop texture asserts
bug:19641517

Also switch Glop VertexAttribFlags to use int for group of flags.

Change-Id: Ib7b1934197a62206a55baa6ab484ac59f5bec816
2015-03-09 13:36:35 -07:00
Chih-Hung Hsieh
7830c81cd2 Merge "Fix unused local variale warning from clang/llvm." 2015-03-07 01:13:50 +00:00
Chih-Hung Hsieh
9ad6ac08a9 Fix unused local variale warning from clang/llvm.
Change-Id: Ib9b5d06313e5bf933edfb38a4522929104c7917a
2015-03-06 17:07:57 -08:00
John Reck
aa35d91905 Merge "Add percentiles" 2015-03-06 23:47:26 +00:00
John Reck
e70c5754d0 Add percentiles
Change-Id: Ieb6badd177bb6f67dda199dfcb3e0f483c8c4e59
2015-03-06 15:40:03 -08:00
Derek Sollenberger
c0bf700441 SkPorterDuff Multiply mode maps to SkXfermode modulate.
bug:19627342
Change-Id: I97f26ca1bc8abe2768f4a12cc70fb0fa5d905098
2015-03-06 13:51:04 -05:00
Chris Craik
97a351a329 Merge "Avoid invalid shader creation for certain blend modes" 2015-03-06 18:44:17 +00:00
Chris Craik
1c1c3fe9eb Avoid invalid shader creation for certain blend modes
bug:19627342

Change-Id: I41e3c1ce8e6fa52f046ec492d19de7cab92b9ec5
2015-03-06 10:05:15 -08:00
Derek Sollenberger
0313f2680c Remove uncessary include for SkPorterDuff.h
Change-Id: Ibcbed5dd2dc327821fc26e87191185f0069c9911
2015-03-05 16:22:17 -05:00
Tom Hudson
8124e6a98c Merge "Fix bug, change crashes to warnings" 2015-03-05 15:40:46 +00:00
Tom Hudson
b1476ae7d5 Fix bug, change crashes to warnings
Improve behavior when we get a call to draw 0 points.
Replace one ALWAYS_FATAL statements with noop.

Change-Id: I864b7a9633dfa3dc6eefa403beca4cc7ae14074f
2015-03-05 10:31:52 -05:00
Chris Craik
8820fd1d82 Patch cleanup, reenable Patch Glops
bug:19597454

Change-Id: If12b95e83588b81a553210cd8c2437c6c771073a
2015-03-04 15:32:47 -08:00
Chris Craik
a9761e698e Temporarily disable Patch glops
bug:19597454

Change-Id: I9dbe781a714582717a5585113b9a56821265b36e
2015-03-04 14:25:10 -08:00
Chris Craik
9b98afca76 Merge "Glop DrawPatch support" 2015-03-03 18:12:27 +00:00
Chris Craik
e2e0073e88 Merge "Glop drawBitmaps, drawPatches" 2015-03-03 18:02:01 +00:00
Chris Craik
0556d90253 Glop DrawPatch support
Change-Id: Icaa78bdb2cf52c1fc2194ec4016634967d17fb6a
2015-03-03 09:54:14 -08:00
Chris Craik
a6b52198b9 Glop drawBitmaps, drawPatches
Change-Id: I3f1cd3f47f97d2e0c9b9d153732e26ee0b1c58c2
2015-03-03 08:58:14 -08:00
Chris Craik
e5c6584a40 Constructor cleanup
Change-Id: Ic39911d08f44c3174de91fb92fcd4cab73fe4654
2015-03-02 17:56:06 -08:00
Chris Craik
083e733e82 Cleanup of FontRenderer
Remove invalid and over complicated buffer unbinding
optimization, and simplify constructor.

Change-Id: I3dd90528de4f377e972bbd7967e7e232875387e4
2015-02-27 17:09:02 -08:00
Chris Craik
6b109c7498 Fix glop rendering within unclipped saveLayers
bug:19541881

Additionally, clean up GlopBuilders
and rename onGetSnapshot() for clarity

Change-Id: I0303e4cd61eef87cf80af2d968c4aa67193cd008
2015-02-27 16:13:26 -08:00
Chris Craik
26bf34200e Glop TextureLayer support
Change-Id: I348a926bd4a2f47be9fdbe74058c0aa2f8dc6276
2015-02-27 10:50:12 -08:00
Chris Craik
b11be294b1 Merge "Glop mesh reorg, support for drawBitmapMesh" 2015-02-26 19:04:42 +00:00
Chris Craik
ef2507439c Glop mesh reorg, support for drawBitmapMesh
Change-Id: Iaf5550bdd93da93e59a5b838234ab5612e067387
2015-02-26 10:56:07 -08:00
Chris Craik
ddd30928a7 Merge "Remove renderer abstract class" 2015-02-26 00:08:12 +00:00