OSDN Git Service

Update framework to use M33 Skia. DO NOT MERGE
authorLeon Scroggins III <scroggo@google.com>
Tue, 3 Dec 2013 21:26:51 +0000 (16:26 -0500)
committerBen Murdoch <benm@google.com>
Mon, 17 Mar 2014 13:57:18 +0000 (13:57 +0000)
commitf8d8777dddf91c741981b4f795f2fb2b1d81c1b6
tree9f8a8cc7bd4765932295355b6eed44e6e26b6a2a
parentca0aba399326886d1a39c2344bab296044ba5eb0
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
25 files changed:
core/jni/android/graphics/Bitmap.cpp
core/jni/android/graphics/BitmapFactory.cpp
core/jni/android/graphics/BitmapRegionDecoder.cpp
core/jni/android/graphics/Canvas.cpp
core/jni/android/graphics/Graphics.cpp
core/jni/android/graphics/GraphicsJNI.h
core/jni/android/graphics/Movie.cpp
core/jni/android/graphics/NinePatchPeeker.cpp
core/jni/android/graphics/Paint.cpp
core/jni/android/graphics/Region.cpp
core/jni/android/graphics/TextLayoutCache.cpp
core/jni/android/graphics/Typeface.cpp
core/jni/android/graphics/Utils.cpp
core/jni/android/graphics/Utils.h
core/jni/android/opengl/util.cpp
core/jni/android_view_Surface.cpp
core/jni/android_view_SurfaceControl.cpp
core/jni/android_view_TextureView.cpp
graphics/java/android/graphics/Bitmap.java
graphics/java/android/graphics/BitmapFactory.java
libs/hwui/TextureCache.cpp
libs/hwui/font/Font.cpp
libs/hwui/font/Font.h
libs/hwui/font/FontUtil.h
media/tests/omxjpegdecoder/omx_jpeg_decoder.cpp