7394 Commits

Author SHA1 Message Date
Marco Nelissen
3442519699 am ac875878: am 9823a170: Merge "Make MtpDatabase use libexif instead of libjhead" into klp-dev
* commit 'ac87587875f1dfade5e06a82ccc009d0f0170569':
  Make MtpDatabase use libexif instead of libjhead
2014-03-07 21:18:52 +00:00
Marco Nelissen
aefa427c27 Make MtpDatabase use libexif instead of libjhead
b/12203995

Change-Id: I0e0e6209be7a9d3e493abdcee8619cae6d4b9501
2014-03-07 10:30:23 -08:00
Marco Nelissen
b2c45abc1d am 233e7e9f: am 98a6bcf4: Merge "ExifInterface: fix class load failure" into klp-dev
* commit '233e7e9f64be5e85196dd959824bce9a69b2fd99':
  ExifInterface: fix class load failure
2014-03-07 01:31:22 +00:00
Zhijun He
9f97ac433a ExifInterface: fix class load failure
libexif_jni was renamed as libjhead_jni

b/12203995
Change-Id: I0ceff1ad288c7ce2255826d5d5ba9ca1f121a556
2014-03-06 16:54:05 -08:00
Marco Nelissen
e1af0bd858 am 4f36104f: am e29c96e7: Merge "libexif is now libjhead" into klp-dev
* commit '4f36104f06755dc2c95b3d7c8bac5312d7572199':
  libexif is now libjhead
2014-03-07 00:47:02 +00:00
Marco Nelissen
c0786cc258 libexif is now libjhead
b/12203995
Change-Id: I6b749e251a2e03738550ce911e59527f80d26212
2014-03-06 16:00:35 -08:00
Eric Laurent
3260f25445 am eac19754: am 617e715a: Merge "Fix RemoteController synchronization mode" into klp-dev
* commit 'eac19754ca0822e4c1c50c436affbf5cbf7e08d3':
  Fix RemoteController synchronization mode
2014-03-06 20:06:08 +00:00
Leon Scroggins III
ee008d4264 Merge "Update framework to use M33 Skia. DO NOT MERGE" into klp-dev 2014-03-06 19:37:28 +00:00
Jean-Michel Trivi
4b0f155457 Fix RemoteController synchronization mode
Fix erroneous argument check in RemoteController syncrhonization
  mode setter..

Bug 12189375

Change-Id: Ic2b70ec48cacc6d10f17762387b52b4e4304aa10
2014-03-06 09:22:26 -08:00
Leon Scroggins III
5e49b497ae 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
2014-03-06 12:14:47 -05:00
Narayan Kamath
7ae1726d0b am aa9ba887: am 6e09eb4c: Merge "AArch64: Make graphics classes 64-bit compatible"
* commit 'aa9ba887371e875ffbde49f43fa12bb5f123425b':
  AArch64: Make graphics classes 64-bit compatible
2014-01-28 19:18:40 +00:00
Ashok Bhat
a0398430fc AArch64: Make graphics classes 64-bit compatible
Changes in this patch include

[x] Long is used to store native pointers as they can
    be 64-bit.

[x] Some minor changes have been done to conform with
    standard JNI practice (e.g. use of jint instead of int
    in JNI function prototypes)

[x] AssetAtlasManager is not completely 64-bit compatible
    yet. Specifically mAtlasMap member has to be converted
    to hold native pointer using long. Added a TODO to
    AssetAtlasManager.java to indicate the change required.

Change-Id: I940433f601c6db998c1a8ffff338f5361200d5ed
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
2014-01-28 17:40:38 +00:00
Narayan Kamath
24d63a8382 am bc0468e6: am 6f17adba: Merge "AArch64: Use long for pointers in media classes"
* commit 'bc0468e67626937300e9afd182656469463d96a1':
  AArch64: Use long for pointers in media classes
2014-01-16 07:34:43 -08:00
Ashok Bhat
075e9a19ce AArch64: Use long for pointers in media classes
For storing pointers, long is used in media classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Idc4ca0124d03df7f9cef412488abafd020e5e774
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-15 13:09:27 +00:00
Marco Nelissen
13249411b1 am a9045d24: am 337aa376: Merge "Add NULL check in updateProxyConfig"
* commit 'a9045d24a73faa6aa1e8ad204a1e14a53711a824':
  Add NULL check in updateProxyConfig
2014-01-14 08:15:13 -08:00
Marco Nelissen
337aa376c0 Merge "Add NULL check in updateProxyConfig" 2014-01-14 16:08:18 +00:00
Jason Sams
411350dd23 am 739ae9b3: am 868173a5: Merge "Fix a JNI local reference leak in MediaDrm"
* commit '739ae9b3b77458b4c77f799cba56dc68d65ab424':
  Fix a JNI local reference leak in MediaDrm
2014-01-10 16:50:54 -08:00
Jason Sams
868173a53f Merge "Fix a JNI local reference leak in MediaDrm" 2014-01-11 00:42:20 +00:00
Narayan Kamath
0dce19caf8 am 79ceb53a: am c58abeea: Merge "AArch64: Use long for pointers in MTP classes"
* commit '79ceb53ae5b867a954476e3f6499f89664fbc669':
  AArch64: Use long for pointers in MTP classes
2014-01-07 05:01:13 -08:00
Narayan Kamath
23ebc24eee am 08467c57: am 9bc6acf2: Merge "AArch64: Use long for pointers in VideoEditor classes"
* commit '08467c5727c04c1fef40ff1e361628944275ef28':
  AArch64: Use long for pointers in VideoEditor classes
2014-01-07 05:01:08 -08:00
Narayan Kamath
bfbe585ed4 am c0c92f20: am 357ea905: Merge "AArch64: Use long for pointers in audio effect classes"
* commit 'c0c92f206eddb6fb319bd11929c1703daf17248f':
  AArch64: Use long for pointers in audio effect classes
2014-01-07 05:00:58 -08:00
Narayan Kamath
568cde557a am 80cff944: am 74675f29: Merge "AArch64: Use long for pointers in AmrInputStream"
* commit '80cff94478a39914012df816179ea57c53040903':
  AArch64: Use long for pointers in AmrInputStream
2014-01-07 05:00:53 -08:00
Ashok Bhat
e2e59326f1 AArch64: Use long for pointers in MTP classes
For storing pointers, long is used in MTP classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I67805547251722e7b77611d47d0bb632a64d3e6d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-07 12:52:57 +00:00
Ashok Bhat
44ba5c1b4e AArch64: Use long for pointers in VideoEditor classes
For storing pointers, long is used in VideoEditor
classes, as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Ifff3a28f2ab6774ee89d31770ad63451c8726431
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-07 12:49:41 +00:00
Ashok Bhat
ea7861c918 AArch64: Use long for pointers in audio effect classes
For storing pointers, long is used in AudioEffect
and Visualizer classes, as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Ief49bbe5baef663e268c7f6d70ac33a4df45621c
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-07 12:47:51 +00:00
Ashok Bhat
b348c3fd87 AArch64: Use long for pointers in AmrInputStream
For storing pointers, long is used in AmrInputStream
class, as native pointers can be 64-bit.

Change-Id: I78fff3eb54fc7101746b0d693cbc4e923c2bad08
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-07 12:44:38 +00:00
Narayan Kamath
91f6aaaf2c am 2d2d5943: am f3172c62: Merge "MediaDrm#mNativeContext is a long, not int."
* commit '2d2d594308693af79bf5c44f0dcc30f29d2dc31a':
  MediaDrm#mNativeContext is a long, not int.
2013-12-19 05:01:34 -08:00
Narayan Kamath
f3172c623e Merge "MediaDrm#mNativeContext is a long, not int." 2013-12-19 12:35:24 +00:00
Patrik2 Carlsson
265551a164 Fix a JNI local reference leak in MediaDrm
A reference leak was found in the subtitle usecase that also
applies to android_media_MediaDrm.cpp
(Code taken from the similar fix in android_media_MediaPlayer.cpp)

Change-Id: Icc4b25e4adc9a600ff4ac99a7a8478bb55a6e348
2013-12-19 10:59:42 +09:00
Oscar Rydhé
e795ec73eb Add NULL check in updateProxyConfig
If the exclusionList was null in updateProxyConfig the VM would
crash when converting it to a UTF8 string. Avoid this by adding a
null check.

Change-Id: I0d8106fd54385bd9ae9c652a6c67d459a119cf2b
2013-12-19 09:38:59 +09:00
Narayan Kamath
4dd5c37711 am be8fbb8f: Merge "Remove unused field from MediaMuxer"
* commit 'be8fbb8fb63fddac2310dfbafa2594ed165b16b1':
  Remove unused field from MediaMuxer
2013-12-18 10:14:45 -08:00
Narayan Kamath
535daa191b Remove unused field from MediaMuxer
Change-Id: If1ebb2302654b64924084a52425366f1b69c7c30
2013-12-18 17:58:11 +00:00
Narayan Kamath
f11dd63e0c MediaDrm#mNativeContext is a long, not int.
Therefore, we must use SetLongField and not SetIntField.

Change-Id: I2a805dd6b7c8e4905e742d8632d941f381a05930
2013-12-18 16:58:36 +00:00
Elliott Hughes
a012fee3c3 am 5d6332e3: Merge "AArch64: Use long for pointers in MediaDrm and MediaMuxer"
* commit '5d6332e3744e37ced079e5360f1fa3e0e5681d57':
  AArch64: Use long for pointers in MediaDrm and MediaMuxer
2013-12-16 13:01:19 -08:00
Elliott Hughes
5d6332e374 Merge "AArch64: Use long for pointers in MediaDrm and MediaMuxer" 2013-12-16 20:58:02 +00:00
Kenny Root
62d509d24f am 37c69fdd: Merge "Use java.util.Objects instead on internal API"
* commit '37c69fdd826f3973966430adc1abfbefc19bc16e':
  Use java.util.Objects instead on internal API
2013-12-13 14:17:29 -08:00
Kenny Root
e6585b32ea Use java.util.Objects instead on internal API
Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c
2013-12-13 13:40:30 -08:00
Ashok Bhat
656fd04026 AArch64: Use long for pointers in MediaDrm and MediaMuxer
For storing pointers, long is used in MediaDrm and
MediaMuxer classes, as native pointers can be 64-bit.

Change-Id: I77f26cde627baf0dce70b6aa3a4dbd974051d9a6
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2013-12-10 18:10:47 +00:00
Jeff Brown
2458681b3e am 263c4310: am ce468a35: Stop wifi display discovery when no longer needed.
* commit '263c431017c51fc51c85454a0f9cc7979001a3c1':
  Stop wifi display discovery when no longer needed.
2013-11-21 19:47:30 -08:00
Jeff Brown
ce468a35b3 Stop wifi display discovery when no longer needed.
Keep track of how many clients are requesting scans and scan
continuously until all of them are gone then explicitly terminate the
scan instead of letting it time out as before.

Suspend wifi display scans while connecting or connected to a remote
display.  This is handled by both the display manager and media router
since neither has complete information about what is happening.
Much of this code will no longer be needed once wifi display support
is integrated directly into the media router service.

Ensure that we don't attempt to scan or connect to wifi displays
while the wifi display feature is off.

Infer when a connection attempt fails and unselect the wifi display
route automatically so it doesn't appear to be connecting forever.

Fix issues around correctly canceling and retrying connection attempts.
Often we would cancel but not retry.

Improved connection reliability somewhat.  It seems that discovery must
already be in progress in order for a connection attempt to succeed.

Ensure QuickSettings uses exactly the same logic as the MediaRouteButton
to determine when the remote display tile should be made visible.

Bug: 11717053
Change-Id: I18afc977b0e8c26204b8c96adaa79f05225f7b6e
2013-11-21 19:32:59 -08:00
Chong Zhang
db44cb92ec am 6b0653ff: am bfdecccc: Merge "Only scan for wifi display when there is no active connections" into klp-dev
* commit '6b0653ffadea757c87724594b70922cd11dcd835':
  Only scan for wifi display when there is no active connections
2013-11-20 14:30:11 -08:00
Chong Zhang
a68c87eda8 Only scan for wifi display when there is no active connections
Bug: 11717053
Change-Id: I4ab73f6517fbfb8fcc131b89d0e934380dcf69e0
2013-11-19 19:56:16 -08:00
Jeff Brown
2ea480cac8 am 5d0b18cd: am 3de885be: Merge "Disallow applications from initiating cast screen." into klp-dev
* commit '5d0b18cddfcb933d7960c5a6a820045d77a0285c':
  Disallow applications from initiating cast screen.
2013-11-15 00:39:57 -08:00
Jeff Brown
af574183c2 Disallow applications from initiating cast screen.
Only allow the system ui and settings to connect to a remote display.
To do this, we essentially hide the remote displays from applications
by using the ROUTE_TYPE_REMOTE_DISPLAY then add permission checks
around the operations that connect to them.

As a bonus, this may actually save power on devices since applications
that use MediaRouter will not longer be performing discover on
remote display routes at all.

Bug: 11257292
Change-Id: I9ea8c568df4df5a0f0cf3d0f11b39c87e2110795
2013-11-15 00:29:43 -08:00
Jean-Michel Trivi
7c9adaf6b9 am dc6da58a: am 2a96fc1f: Merge "Fix RemoteController update in RemoteControlClient registration" into klp-dev
* commit 'dc6da58aa79f97d6bbd0fa8fd4e694f1e76973f0':
  Fix RemoteController update in RemoteControlClient registration
2013-11-14 15:44:16 -08:00
Jean-Michel Trivi
320ad9fa1d Fix RemoteController update in RemoteControlClient registration
A regression was introduced when trying to limit the number of
 internal synchronization generation IDs that caused RCC
 information to be shown only for applications that requested
 audio focus after media button receiver and RCC registration,
 (such as Play Music), not for applications that requested focus
 first (such as Play Movies).
The correct behavior is to always check and update the
 RemoteControllers (seen by MediaFocusControl as RCD interfaces)
 whenever a RemoteControlClient is registered (even if it's a
 re-registration) when it is associated when an entry at the top
 of the remote control stack.

Bug 11657655

Change-Id: I30716e2028f7f718a31e13401b191178735229ff
2013-11-13 20:06:41 -08:00
Elliott Hughes
3857dbe11c am 84f4ad80: am 87c5eeb4: Merge "Fix a JNI local reference leak in JNIMediaPlayerListener::notify."
* commit '84f4ad807152b6266431144425f153c48db28696':
  Fix a JNI local reference leak in JNIMediaPlayerListener::notify.
2013-11-13 15:26:53 -08:00
Elliott Hughes
84f4ad8071 am 87c5eeb4: Merge "Fix a JNI local reference leak in JNIMediaPlayerListener::notify."
* commit '87c5eeb48b1a0c498eae9bd2877fb33678d90b8a':
  Fix a JNI local reference leak in JNIMediaPlayerListener::notify.
2013-11-13 15:21:51 -08:00
Elliott Hughes
99f752149b Fix a JNI local reference leak in JNIMediaPlayerListener::notify.
Bug: https://code.google.com/p/android/issues/detail?id=62137
Change-Id: I776cd83a66de37fdbbe8af367bf1b26e5e0c7247
2013-11-13 15:10:40 -08:00
Jeff Brown
39ad0e5598 UI tweaks.
Hide disabled routes from the chooser.

Fix layout of chooser dialog when the settings button is visible and
the list is very long to prevent truncation of the settings button.

Fix an issue when we fake the route connecting status when a route
is selected.  The route changed notification needs to be propagated
to apps.  Fake it better.

Immediately disconnect from a route when the connection is lost or
a connection attempt fails.  Added a few new test displays for this
case.

Bug: 11257292
Change-Id: I360ab5dc937ad60d97592eab54b19f034519645e
2013-11-11 21:48:53 -08:00