5400 Commits

Author SHA1 Message Date
Chris Craik
62828dfca2 Merge "Add private circular reveal API on View/RenderNode" 2014-03-26 17:40:32 +00:00
Chris Craik
8c271ca63b Add private circular reveal API on View/RenderNode
Change-Id: I139c8e12b354083149a665f6768f3f6931a8dd15
2014-03-25 16:03:48 -07:00
Chris Craik
e08f166955 am 72cf99ab: am 7e55b35a: am 4118480a: am 80470cdf: Merge "Solve three memory leaks related to PatchCache"
* commit '72cf99abdb6648f9346b72e0ef6d4da3c4dc9d17':
  Solve three memory leaks related to PatchCache
2014-03-25 21:23:52 +00:00
Chris Craik
72cf99abdb am 7e55b35a: am 4118480a: am 80470cdf: Merge "Solve three memory leaks related to PatchCache"
* commit '7e55b35a603fe64e8db2c6050a1b778baaccd920':
  Solve three memory leaks related to PatchCache
2014-03-25 20:36:15 +00:00
Chris Craik
7e55b35a60 am 4118480a: am 80470cdf: Merge "Solve three memory leaks related to PatchCache"
* commit '4118480aabb4a7b332e289ebb71d2e4f9bc05d7e':
  Solve three memory leaks related to PatchCache
2014-03-25 20:28:00 +00:00
Chris Craik
4118480aab am 80470cdf: Merge "Solve three memory leaks related to PatchCache"
* commit '80470cdf6c6995f4afe8d5e2c4b6e898625173fb':
  Solve three memory leaks related to PatchCache
2014-03-25 13:21:01 -07:00
Adam Lesinski
de898ff429 Shared library resource support
Shared libraries can now export resources for applications
to use.

Exporting resources works the same way the framework exports
resources, by defining the public symbols in res/values/public.xml.

Building a shared library requires aapt to be invoked with the
--shared-lib option. Shared libraries will be assigned a package
ID of 0x00 at build-time. At runtime, all loaded shared libraries
will be assigned a new package ID.

Currently, shared libraries should not import other shared libraries,
as those dependencies will not be loaded at runtime.

At runtime, reflection is used to update the package ID of resource
symbols in the shared library's R class file. The package name of
the R class file is assumed to be the same as the shared library's
package name declared in its manifest. This will be customizable in
a future commit.

See /tests/SharedLibrary/ for examples of a shared library and its
client.

Bug:12724178
Change-Id: I60c0cb8ab87849f8f8a1a13431562fe8603020a7
2014-03-25 12:09:56 -07:00
John Reck
bcad68ad80 Merge "Move where updateProperties is called" 2014-03-25 17:46:18 +00:00
John Reck
632717e609 Merge "Add missing null check" 2014-03-25 17:25:33 +00:00
John Reck
5bf11bb98f Add missing null check
Bug: 13635394
 mDisplayListData can be null, make sure
 to check for that before trying to walk through the
 children list in updateProperties

Change-Id: I8d97b1656c1acf47b7c5df8a8771b0f30907261d
2014-03-25 10:22:09 -07:00
John Reck
bfb07a0377 Move where updateProperties is called
Change-Id: I27da448996019094c44487ce28c5689d098d6535
2014-03-24 21:00:18 -07:00
Jens Gulin
6056e10271 Solve three memory leaks related to PatchCache
A Patch can be fairly large, holding bitmap data, but
is also frequently leaked which adds to the severity.
The feature is used in many important processes such
as Home, SystemUI and Chrome.

The following leaks are solved:

1. The Patch itself was not always freed.
PatchCache::removeDeferred() can mark patches to be
cared for by PatchCache::clearGarbage(). But
mCache.remove() would only destroy the container
and the pointer, not the Patch object itself.

2. The vertices stored in the Patch at Patch::createMesh()
would always leak. The empty/default destructor in Patch
would not properly destroy "vertices" since it's just a
pointer.

3. A BufferBlock that's added to the mFreeBlocks
in PatchCache could leak. The leak happened when a
patch later needed the entire free block, because the
object was removed from the list but never deleted
in PatchCache::setupMesh().

Change-Id: I41e60824479230b67426fc546d3dbff294c8891f
2014-03-25 09:37:02 +09:00
John Reck
78ce1c5247 Add back clobbered cleanup
Change-Id: I418b612710850bbc3033c4bd0143fb0f0befd2cb
2014-03-24 15:43:49 -07:00
John Reck
d0a0b2a314 Add stagingProperties
Change-Id: Ic7de551f8843fd70a77f738e33028e25c020bb3c
2014-03-24 15:31:34 -07:00
Chris Craik
b49f446c98 Rework Outline API, remove isolatedZVolume remnants
Change-Id: I30c2fe832dcb98fa6329b1a595b3d3aafbdcad6b
2014-03-24 11:37:06 -07:00
ztenghui
32ff540c74 Merge "Early rejection on shadows which are outside of the clip bound." 2014-03-20 22:30:59 +00:00
ztenghui
af6f7ed8dd Early rejection on shadows which are outside of the clip bound.
All the computations are estimated using bounding box.
TODO: Spot shadow could have more accurate but also more expensive methods, we need
more experiments to decide.

Change-Id: I9c10c419576cee55daf0f9f278b0db78cb847447
2014-03-20 15:25:47 -07:00
Michael Wright
09cb894140 am 11e0ead8: am 69e58e44: Merge "Add idc config option for handling key repeats" into klp-modular-dev
* commit '11e0ead8118d97d0e76a98065a4811fdb01b2db2':
  Add idc config option for handling key repeats
2014-03-20 16:33:25 +00:00
Michael Wright
11e0ead811 am 69e58e44: Merge "Add idc config option for handling key repeats" into klp-modular-dev
* commit '69e58e446bc2a030ae423d650e60dbfe317331e6':
  Add idc config option for handling key repeats
2014-03-20 16:23:50 +00:00
Chris Craik
db2895e977 am 4eefde23: am 29f00c9f: am 7c9bd98a: am 89513ee5: Merge "Fix projection offset caching - DO NOT MERGE" into klp-dev
* commit '4eefde23de23a5e9145a634e843964f6f6eaa6bd':
  Fix projection offset caching - DO NOT MERGE
2014-03-20 16:05:02 +00:00
Chris Craik
4eefde23de am 29f00c9f: am 7c9bd98a: am 89513ee5: Merge "Fix projection offset caching - DO NOT MERGE" into klp-dev
* commit '29f00c9f35d8565bb3e6b8a2526cbb237db6446a':
  Fix projection offset caching - DO NOT MERGE
2014-03-20 15:47:34 +00:00
Michael Wright
69e58e446b Merge "Add idc config option for handling key repeats" into klp-modular-dev 2014-03-20 01:55:16 +00:00
Chris Craik
29f00c9f35 am 7c9bd98a: am 89513ee5: Merge "Fix projection offset caching - DO NOT MERGE" into klp-dev
* commit '7c9bd98a4bb0aa6954d5f612c197d03f309980f0':
  Fix projection offset caching - DO NOT MERGE
2014-03-20 01:14:44 +00:00
John Reck
c5dc251e22 Merge "Move RenderNode to own file" 2014-03-19 23:47:14 +00:00
John Reck
113e0824d6 Move RenderNode to own file
Change-Id: I9380d161fd3ddd7b569c262dd8e7aa0c96151b1e
2014-03-19 16:40:04 -07:00
Chris Craik
5d39a77992 Fix projection offset caching - DO NOT MERGE
bug:13214038

Because the caching of projection matrix didn't account for changes in
the offset flag, the flag could be ignored. Now we use both to verify
that the cached matrix can be used.

Change-Id: I193b94eaf0b98f046a6484f0866c3d25048653fd
(cherry picked from commit d04a6b15f74035fd2068f34225825b55e94521f4)
2014-03-19 20:09:04 +00:00
ztenghui
bd6e460b76 Merge "Get rid of useless code" 2014-03-19 19:59:47 +00:00
Mark Salyzyn
7e9e305994 am 9ca25502: am 48250e14: am 9a09a523: am 0b472ae1: Merge "androidfw: resolve 64-bit build issues"
* commit '9ca25502c05854288733ee5142e8bf6594821f83':
  androidfw: resolve 64-bit build issues
2014-03-19 19:58:00 +00:00
Mark Salyzyn
9ca25502c0 am 48250e14: am 9a09a523: am 0b472ae1: Merge "androidfw: resolve 64-bit build issues"
* commit '48250e141dc738578f6957f86ac841f3cb522057':
  androidfw: resolve 64-bit build issues
2014-03-19 19:52:02 +00:00
Mark Salyzyn
48250e141d am 9a09a523: am 0b472ae1: Merge "androidfw: resolve 64-bit build issues"
* commit '9a09a5236529962afbaba9893e5eaf72bd6621b4':
  androidfw: resolve 64-bit build issues
2014-03-19 19:47:02 +00:00
Mark Salyzyn
9a09a52365 am 0b472ae1: Merge "androidfw: resolve 64-bit build issues"
* commit '0b472ae13d38dd166a1a35782e028ade85bf2975':
  androidfw: resolve 64-bit build issues
2014-03-19 12:42:15 -07:00
Mark Salyzyn
00adb8685e androidfw: resolve 64-bit build issues
- uid_t/gid_t cast to unsigned long
- unused argument warnings
- tab and space requirements

Change-Id: Ib446d8165b9082be02edb55e6b71fd1a03ea3431
2014-03-19 11:11:14 -07:00
ztenghui
28c3ea0187 Get rid of useless code
Change-Id: I7fedd0df349e1d9408d58edcab25396e2ff2edd6
2014-03-18 15:58:57 -07:00
John Reck
3ebdf00217 Merge "Fix functor removal" 2014-03-18 16:35:49 +00:00
John Reck
16efa9a330 Fix functor removal
Bug: 12179257

Change-Id: Ib63a351b1b289b08452f17086cb6c8b688e2ba4d
2014-03-18 09:24:28 -07:00
ztenghui
d5a8503c7a Merge "Fix the missing spot shadow when DEBUG_SHADOW is turned on" 2014-03-17 22:38:47 +00:00
ztenghui
99af9429cd Fix the missing spot shadow when DEBUG_SHADOW is turned on
In the current design, this error should be tolerated since the delta should
be small enough. So we should not return here.

Change-Id: I251db2882b331d37ae7f0896e9aa95d69a5650da
2014-03-17 15:35:25 -07:00
Michael Wright
39ca052292 Add idc config option for handling key repeats
Bug: 13285870
Change-Id: Iea2a5d03e29c86dcee5f99a25e48736ebc6dd913
2014-03-17 14:13:25 -07:00
ztenghui
630c0abaea Merge "Create one hole inside the umbra area to avoid overdraw." 2014-03-17 21:12:48 +00:00
Chris Craik
34f67f26e3 Remove castsShadow and globalCamera APIs
Change-Id: I5c1c375f45946609b1635d952c5adf55e23bdd60
2014-03-17 13:24:08 -07:00
Chris Craik
618236fe88 Revert "Remove castsShadow and globalCamera APIs"
This reverts commit 0334c314a5721f49b4d172a9cefe10f157cb28a4.

Change-Id: I64714d17fb877e1b43c65eb44820d1128281c7a2
2014-03-17 19:27:49 +00:00
Chris Craik
0334c314a5 Remove castsShadow and globalCamera APIs
Change-Id: I4d81a7849eba60a1a9debce74eedd55d6331842d
2014-03-17 18:13:31 +00:00
ztenghui
50ecf849cb Create one hole inside the umbra area to avoid overdraw.
bug:13439450

Change-Id: I859575196bd5a3029f447883025a6ec3a1f1face
2014-03-17 10:10:02 -07:00
Leon Scroggins III
7e6fe28b12 am 96978ee2: am f8d8777d: Update framework to use M33 Skia. DO NOT MERGE
* commit '96978ee290ea0ef666c49ffa8733a8c74304c9f1':
  Update framework to use M33 Skia. DO NOT MERGE
2014-03-17 15:58:32 +00: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
Leon Scroggins III
f8d8777ddd Update framework to use M33 Skia. DO NOT MERGE
(These CLs are already in master.)

Bug: 13246311

This cherry-picks 7 CLs:

-----------------------------------------------------------------------

Remove calls to deprecated SkBitmap::setIsOpaque()

setIsOpaque() has been removed from ToT Skia.

Update setters for mIsPremultiplied and hasAlpha to take the
other into consideration.

cherry-pick from: I1b36b0b0ce7126031eb7b769b563c17dcd4b306a

-----------------------------------------------------------------------

Merge AssetStream with AssetStreamAdaptor.

Add enums to the constructor for AssetStreamAdaptor to choose the
different behaviors used by the (former) two different classes.

The old clients of AssetStream now get the following features of
AssetStreamAdaptor
- Debugging statements on error.
- The stream is an SkStreamRewindable.
- getLength() returns the correct value, and the old way of getting
  the length (read(NULL, 0)) is no longer implemented, since it is
  no longer used.
- isAtEnd() returns the correct value. ToT Skia makes it pure virtual,
  so some implementation is necessary.

cherry-pick from: I2a5395914e4f53830aaefee396556459083a1c56

-----------------------------------------------------------------------

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
cherry-pick from: Id746315d41aec5b211b78b172a883c2061130f08

-----------------------------------------------------------------------

pass SkGlyphCache into updateGlyphCache()

Doing so prevents us from double-locking the glyph cache, thereby
effectively locking ourselves out of reusing work that we'd just done.

Bug: 11968757
cherry-pick from: I5c552f2d0bbe30af2ce9054ba684e7da756a0d89

-----------------------------------------------------------------------

Updates to the Skia API needed to merge the WebView m33 version of Skia.

cherry-pick from: I0f63b53f2aae58871413b132742fc84138f069a3

Bugfix for screenshots (recent apps) due to incorrect rowBytes computation

bug: 12915192
cherry-pick from: I4d5fe2a2f75baf66099e0970fb646686a1992714

-----------------------------------------------------------------------

Fix bug in AndroidPixelRef where we did not store the correct imageInfo for a recycled bitmap.

cherry-pick from: I882483b78886e2f19fa4e43a86e69f5a82b3b7e5

-----------------------------------------------------------------------

Change-Id: Ie2b731a9f0795802418cfecddb4b684c92c64d33

Conflicts:
	core/jni/android/graphics/Bitmap.cpp
	core/jni/android/graphics/Graphics.cpp
	core/jni/android/graphics/Typeface.cpp
	graphics/java/android/graphics/Bitmap.java
2014-03-17 13:57:18 +00:00
Michael Wright
444b0c6b72 am f80f60ba: am d23d916e: Merge "Controllers must have buttons and a movement mechanism." into klp-modular-dev
* commit 'f80f60ba2b61df9f9544fcae8d8bdbe5542269fc':
  Controllers must have buttons and a movement mechanism.
2014-03-13 00:42:43 +00:00
Michael Wright
f80f60ba2b am d23d916e: Merge "Controllers must have buttons and a movement mechanism." into klp-modular-dev
* commit 'd23d916e0fc573ccde8a622aaa42ccfae9d31f82':
  Controllers must have buttons and a movement mechanism.
2014-03-13 00:40:03 +00:00
Michael Wright
d23d916e0f Merge "Controllers must have buttons and a movement mechanism." into klp-modular-dev 2014-03-13 00:37:10 +00:00
John Reck
acb6f07623 Split out RenderProperties
Change-Id: Ia9888b4fb2c849d95a8c395cafef2e2294a23aae
2014-03-12 23:32:24 +00:00