5857 Commits

Author SHA1 Message Date
Rob Tsuk
fd15f47554 Log shader source when it fails to compile
So that there will be something to diagnose when such failures occur during
stability tests.

Bug: 18092655
Change-Id: I9a9d8d33b34273a477f2a9dbcf092887dcbc91c0
2014-11-05 13:26:19 -08:00
Rob Tsuk
e6c0bda5dd Merge "Make points drawn with default paint visible" into lmp-mr1-dev 2014-11-04 15:20:00 +00:00
Rob Tsuk
b7c26562d0 Make points drawn with default paint visible
When no stroke width is set, use 0.5 instead of 0.25 to make
sure the resulting rectangle spans at least one pixel.

Bug: 15455111
Change-Id: Id0a4b6d014c542ffc98b13a032f88ae0ce69b3a1
2014-11-04 00:31:45 +00:00
Adam Lesinski
668f0a356c Merge "Fix issues that will be present in C++11" into lmp-mr1-dev 2014-11-03 23:38:43 +00:00
Adam Lesinski
4bf58108d4 Fix issues that will be present in C++11
- char16_t is a distinct type, so stay consistent
  with it throughout the code base.
- char16_t is defined as minimum size of 16 bits.
  Since we mmap and cast data structures onto raw memory,
  we need a precise definition (uint16_t), so we cast between
  that (and static_assert that they are the same size).

Change-Id: I869c32637543bbcfb39d2643e7d9df10d33acd3c
2014-11-03 11:49:47 -08:00
John Reck
88f5fc7c5a Fix counting
Change-Id: I9a3568908a7223d69430c1765fb5a4db96d7ac9c
2014-11-03 10:32:24 -08:00
John Reck
a8d83d639a Merge "Layer changes" into lmp-mr1-dev 2014-10-31 22:55:47 +00:00
John Reck
0e89e2b7bc Layer changes
Bug: 17208461

* Switch Layer to be VirtualLightRefBase instead of
  Caches' side-channel ref-counting
* Include active layers in gfxinfo dump
* Run gfxinfo dump on the correct thread
* Dump gfxinfo on Layer creation failure

Change-Id: I28d195699e2334518e215ab28c7a17355aee9678
2014-10-31 15:30:10 -07:00
Alan Viverette
f296940502 Distinguish unspecified and explicit null values in resources
BUG: 17919345
Change-Id: Ic4f04f7dd0f986f58a749b5950d80c1cfdb074ea
2014-10-29 17:09:36 -07:00
John Reck
141823ec63 Merge "Be more conservative about current buffer" into lmp-mr1-dev 2014-10-29 14:40:02 +00:00
Adam Lesinski
31b76b66b1 Merge "libandroidfw: Do not build device library when building SDK" into lmp-mr1-dev 2014-10-28 17:41:12 +00:00
John Reck
950ff1b88c Be more conservative about current buffer
Bug: 18065565
Change-Id: I0b9c85ecf384ebe525e3a38803ab77d7ee37f33a
2014-10-27 13:23:20 -07:00
John Reck
23d307c8d8 Cleanup debug options
Bug: 18138852
Bug: 18065434
Change-Id: Ibb07b73b147c2a8b287fe8aee3f6624582f21b00
2014-10-27 12:43:25 -07:00
Adam Lesinski
f001e37b31 libandroidfw: Do not build device library when building SDK
Building the windows SDK causes a build failure if the device
libandroidfw target is not omitted.

Change-Id: I587b166342d0d047820911d279f192d2b39b6263
2014-10-24 18:39:56 +00:00
Adam Lesinski
879f237acb Merge "Added some more Split density tests" into lmp-mr1-dev 2014-10-23 23:03:48 +00:00
Adam Lesinski
6029319737 Added some more Split density tests
Change-Id: I3b83515f1240e713bbcff5385cf054bba693f297
2014-10-23 16:01:58 -07:00
John Reck
badac04dfd Merge "Add some free zoom to lockHardwareCanvas" into lmp-mr1-dev 2014-10-23 21:59:26 +00:00
John Reck
1125d1fa92 Add some free zoom to lockHardwareCanvas
Bug: 18099195

Don't use EGL_SWAP_BUFFER_PRESERVED on surfaces that will
never benefit. Also clean up some confusing naming

Change-Id: I674ca64e0464a3282cff79e5ecd350d08f47c014
2014-10-23 13:59:47 -07:00
John Reck
5c9d717d3e Fix damage bug
Bug: 18087374
Change-Id: Ie183392122c73f93010fb3f4be071c924b352966
2014-10-22 11:32:27 -07:00
John Reck
733bb3bc78 Merge "Fix memory corruption in test" into lmp-mr1-dev 2014-10-22 14:18:21 +00:00
John Reck
bb2d0cc7e1 Surface:lockHardwareCanvas
Bug: 17440886

Change-Id: I1f2d98c63ec1a2814c2258cf7e0096139263770a
2014-10-21 13:23:56 -07:00
John Reck
af608319f2 Fix memory corruption in test
Bug: 18012918
Change-Id: I8d69624e9be9f0399ddba10ce3903f93177d5930
2014-10-16 09:18:11 -07:00
John Reck
94c40fe921 CARD LAND!
Bug: 16712006

Initial work towards benchmarking HWUI systems
Currently this will just create a screen full of
"cards" to simulate a high load scenario for
shadows and clipping

Change-Id: Ie9f9a9570844e136db8053e8fc62fe06cb922a5f
2014-10-14 09:02:04 -07:00
Adam Lesinski
be003a3570 am f23e3ea6: am aeef612f: Merge "Search all packages for a given type string when looking up resources by name" into lmp-dev
* commit 'f23e3ea629f29060f34ea10a0d89c6ec22766789':
  Search all packages for a given type string when looking up resources by name
2014-10-10 00:30:39 +00:00
Adam Lesinski
e60a87f552 Search all packages for a given type string when looking up resources by name
Previously we would stop at the first match when looking for a type string,
but we should search all packages in case a feature Split added a type
with the same name.

Bug:17924027

Change-Id: I6bc7ef073324db99448538cd8bdf566658f066ff
2014-10-09 11:26:19 -07:00
Jorim Jaggi
786afcb3ee Trim graphics memory when closing the shade
Graphics memory usually gets trimmed in applications when the
activity goes into the background. We use quite a lot of graphics
memory when the shade/lockscreen is open, and some of them never gets
freed unless the recents activity is closed, because we don't have
these activity-trimming-heuristics for the shade. This change
proactively trims the graphics memory when the shade gets closed or
when the lockscreen is hidden, to emulate the same heuristics as for
activities.

This change also adds trimMemory on RenderThread to systrace to
verify that no jank is introduced with this change.

This change immediately saves around 10-30 MB on an xxhdpi device
after the shade is closed.

Bug: 17581375
Change-Id: I4fb622efb51815fe08187be97ba15d012d4de5d4
2014-10-08 18:30:54 +00:00
ztenghui
8cdb0bc087 Merge "Use float instead of double to increase spot shadow perf" into lmp-mr1-dev 2014-10-06 20:04:08 +00:00
John Reck
6a2296d856 am 9da6e743: am d988a45d: Merge "Cleanup DeferredLayerUpdater" into lmp-dev
* commit '9da6e7435945e34d05e0c8c5c9a324218480c6ff':
  Cleanup DeferredLayerUpdater
2014-10-03 23:57:30 +00:00
ztenghui
9122b1b168 Use float instead of double to increase spot shadow perf
This is helping spot shadow for 15%-20% increase.
With the new algorithm, we are less sensitive to the floating point error.

b/16712006

Change-Id: Ie30a6ce01e73d56054a0cf65a84549454339a7fd
2014-10-03 15:30:53 -07:00
John Reck
749906b468 Cleanup DeferredLayerUpdater
Bug: 17765082

DeferredLayerUpdater had fallen behind RT updates. Re-snap to
latest expectations, ensuring to call requireGlContext() prior
to detachSurfaceTexture to avoid leaking SurfaceTextures

Change-Id: Ic65fb9831e5284f658866da8da9ad5af1d227699
2014-10-03 15:02:19 -07:00
Chris Craik
497cb6c0a9 Merge "Avoid creating Caches instance with gfxinfo dump" into lmp-mr1-dev 2014-10-02 20:02:43 +00:00
Chris Craik
59e129fbc8 Merge "Account for colorfilter transparency in determining paint opacity" into lmp-mr1-dev 2014-10-02 19:28:09 +00:00
ztenghui
5f243860a7 am 9ad17521: am f9033048: Merge "+ correcting shadow visual appearance (b/17610926)" into lmp-dev
* commit '9ad17521ac073562991cddb78f14d6df8d5fd05a':
  + correcting shadow visual appearance (b/17610926)
2014-10-01 23:41:00 +00:00
Chris Craik
c5b5f0556b Account for colorfilter transparency in determining paint opacity
bug:17765601
Change-Id: I90d76ee199bb357c71fc8f537c1abfa20d848416
2014-10-01 16:40:16 -07:00
ztenghui
8def74de33 + correcting shadow visual appearance (b/17610926)
+ adjusting spot and ambient shadow opacity constants to achieve desired appearance
+ reducing ambient scale ratio back to 1.0 to address over-lightening at higher elevations
+ partially revert ag/546290

Change-Id: I9d7f664f73a7b9b83df73b739103c97054bd4f6e
2014-10-01 16:12:28 -07:00
Adam Powell
8628387c60 am b226d295: am c6a06d43: Merge "Revert "Fix issue with using locally defined attrs in a shared lib"" into lmp-dev
* commit 'b226d2951c8641f9851e40b4e13b4ae25cb1a482':
  Revert "Fix issue with using locally defined attrs in a shared lib"
2014-10-01 22:15:56 +00:00
Chris Craik
059476a245 Avoid creating Caches instance with gfxinfo dump
bug:17509891
Change-Id: I182851068ba04926d60226b3ace95efea59eac45
2014-10-01 11:14:55 -07:00
Adam Powell
908c748096 Revert "Fix issue with using locally defined attrs in a shared lib"
This reverts commit 5069dd69898bd0d9c69ba2bbd37239ec8d1c9dc6.

The reverted commit caused issues loading resources supplied by static libraries.

Bug 17748356

Change-Id: I860a4f31451ee7c03c02974826472a67226b029f
2014-10-01 18:11:18 +00:00
Adam Lesinski
95731abeae am bb7b5197: am cd8e7381: Merge "Fix issue with using locally defined attrs in a shared lib" into lmp-dev
* commit 'bb7b51978eb5341e9a1204a447c8340bfb248504':
  Fix issue with using locally defined attrs in a shared lib
2014-10-01 15:16:02 +00:00
Adam Lesinski
5069dd6989 Fix issue with using locally defined attrs in a shared lib
The attribute name resource IDs were never fixed up with
the runtime package ID so we weren't finding attributes
whenever the runtime package ID was different than the build
time one, which happened to be when a shared lib referenced itself
(0x00 vs 0x02).

Bug:17666947
Change-Id: Icf3e874bcea0e27eebe42d60fbed626a34bf9266
2014-09-30 16:18:09 -07:00
Chris Craik
a8bea8edde Add tracing for saveLayer
bug:17702227

Change-Id: Ia9cbf31b360c93f712e021bea406cb63e4cc4c2a
2014-09-29 17:19:05 -07:00
Chris Craik
bc341912b1 Reject transparent draws more conservatively
bug:17600162

Transparent draws are not safe to reject for all xfermodes other than
clear. Now, to be safe, only perform the rejection for SrcOver draws
since other modes are fairly uncommon.

We could specifically determine whether the xfermode could change the
output given a transparent input, but there's little to be gained from
the additional complexity.

Change-Id: Ia699ac4bdc4da3353955840b53f1922d3cb1d85d
2014-09-23 01:22:00 +00:00
Chris Craik
9e7c919191 Merge "Account for alpha in hasShadow()" into lmp-dev 2014-09-19 23:36:22 +00:00
Chris Craik
9fa364dc72 Account for alpha in hasShadow()
bug:17587220
Change-Id: Ic7f2dea95302b713dc93edb4a0193a7be77fb2eb
2014-09-19 16:04:45 -07:00
Adam Lesinski
b6812b64c4 Merge "Fix backwards compat problem with AAPT public attrs" into lmp-dev 2014-09-19 18:19:58 +00:00
John Reck
6cc6219f6f Merge "glFinish to flush deletes" into lmp-dev 2014-09-19 17:22:17 +00:00
John Reck
4ced2620b7 glFinish to flush deletes
Bug: 17479800
Change-Id: I4d4a3eeda510e037f806052025184f3cde18c847
2014-09-19 10:10:19 -07:00
Chris Craik
651486d018 Merge "Fix garbage showing up beneath dialogs" into lmp-dev 2014-09-19 15:31:18 +00:00
Chris Craik
284b243584 Fix garbage showing up beneath dialogs
bug:17463894

Fixes the setViewport method to immediately affect the return values
of getViewportWidth/Height methods.

Also works around tiling extension issues observed on first frame
after window resize by disabling tiling for that frame.

Change-Id: Ie172d572d20d74a1be9cc58ad389af2cffa0e4b6
2014-09-18 16:05:35 -07:00
Adam Lesinski
82a2dd8efe Fix backwards compat problem with AAPT public attrs
AAPT has traditionally assigned resource IDs to public attributes,
and then followed those public definitions with private attributes.

--- PUBLIC ---
| 0x01010234 | attr/color
| 0x01010235 | attr/background

--- PRIVATE ---
| 0x01010236 | attr/secret
| 0x01010237 | attr/shhh

Each release, when attributes are added, they take the place of the private
attributes and the private attributes are shifted down again.

--- PUBLIC ---
| 0x01010234 | attr/color
| 0x01010235 | attr/background
| 0x01010236 | attr/shinyNewAttr
| 0x01010237 | attr/highlyValuedFeature

--- PRIVATE ---
| 0x01010238 | attr/secret
| 0x01010239 | attr/shhh

Platform code may look for private attributes set in a theme. If an app
compiled against a newer version of the platform uses a new public
attribute that happens to have the same ID as the private attribute
the older platform is expecting, then the behavior is undefined.

We get around this by detecting any newly defined attributes (in L),
copy the resource into a -v21 qualified resource, and delete the
attribute from the original resource. This ensures that older platforms
don't see the new attribute, but when running on L+ platforms, the
attribute will be respected.

We still need to address this problem in the platform moving forward,
as this will only help us in the transition from pre L to L.

Bug:17520380
Change-Id: Ia2a985798b50006c21c7c3431d30d9598f27cd91
2014-09-18 14:05:24 -07:00