Merge changes Ia42a37c0,I644bc828
* changes: Make libandroid_runtime build on mac Make HWUI build for macOs
This commit is contained in:
committed by
Android (Google) Code Review
commit
0eb6fbd686
@@ -360,7 +360,6 @@ cc_library_static {
|
||||
"android_view_RenderNode.cpp",
|
||||
"android_util_PathParser.cpp",
|
||||
|
||||
"android/graphics/AnimatedImageDrawable.cpp",
|
||||
"android/graphics/Bitmap.cpp",
|
||||
"android/graphics/BitmapFactory.cpp",
|
||||
"android/graphics/ByteBufferStreamAdaptor.cpp",
|
||||
@@ -436,6 +435,7 @@ cc_library_static {
|
||||
|
||||
"android_view_TextureLayer.cpp",
|
||||
"android_view_ThreadedRenderer.cpp",
|
||||
"android/graphics/AnimatedImageDrawable.cpp",
|
||||
"android/graphics/BitmapRegionDecoder.cpp",
|
||||
"android/graphics/GIFMovie.cpp",
|
||||
"android/graphics/Movie.cpp",
|
||||
|
||||
@@ -171,7 +171,6 @@ cc_defaults {
|
||||
"renderthread/RenderTask.cpp",
|
||||
"renderthread/TimeLord.cpp",
|
||||
"hwui/AnimatedImageDrawable.cpp",
|
||||
"hwui/AnimatedImageThread.cpp",
|
||||
"hwui/Bitmap.cpp",
|
||||
"hwui/Canvas.cpp",
|
||||
"hwui/ImageDecoder.cpp",
|
||||
@@ -213,6 +212,7 @@ cc_defaults {
|
||||
android: {
|
||||
|
||||
srcs: [
|
||||
"hwui/AnimatedImageThread.cpp",
|
||||
"pipeline/skia/ATraceMemoryDump.cpp",
|
||||
"pipeline/skia/GLFunctorDrawable.cpp",
|
||||
"pipeline/skia/LayerDrawable.cpp",
|
||||
|
||||
@@ -15,7 +15,9 @@
|
||||
*/
|
||||
|
||||
#include "AnimatedImageDrawable.h"
|
||||
#ifdef __ANDROID__ // Layoutlib does not support AnimatedImageThread
|
||||
#include "AnimatedImageThread.h"
|
||||
#endif
|
||||
|
||||
#include "utils/TraceUtils.h"
|
||||
|
||||
@@ -160,8 +162,10 @@ void AnimatedImageDrawable::onDraw(SkCanvas* canvas) {
|
||||
} else if (starting) {
|
||||
// The image has animated, and now is being reset. Queue up the first
|
||||
// frame, but keep showing the current frame until the first is ready.
|
||||
#ifdef __ANDROID__ // Layoutlib does not support AnimatedImageThread
|
||||
auto& thread = uirenderer::AnimatedImageThread::getInstance();
|
||||
mNextSnapshot = thread.reset(sk_ref_sp(this));
|
||||
#endif
|
||||
}
|
||||
|
||||
bool finalFrame = false;
|
||||
@@ -187,8 +191,10 @@ void AnimatedImageDrawable::onDraw(SkCanvas* canvas) {
|
||||
}
|
||||
|
||||
if (mRunning && !mNextSnapshot.valid()) {
|
||||
#ifdef __ANDROID__ // Layoutlib does not support AnimatedImageThread
|
||||
auto& thread = uirenderer::AnimatedImageThread::getInstance();
|
||||
mNextSnapshot = thread.decodeNextFrame(sk_ref_sp(this));
|
||||
#endif
|
||||
}
|
||||
|
||||
if (!drawDirectly) {
|
||||
|
||||
Reference in New Issue
Block a user