Move android.graphics JNI & APEX files into HWUI
The graphics JNI code is now separate from libandroid_runtime
and it along with HWUI headers are no longer visible to targets
outside the boundary of what is to become the UI mainline module
The exposed headers to targets outside the module are now restriced
to C APIs contained in the apex header directory.
Bug: 137655431
Test: CtsUiRenderingTestCases
Change-Id: I30d34055b6870dc1039f190a88f4a747cee17300
diff --git a/core/jni/Android.bp b/core/jni/Android.bp
index 5912f40..d27be27 100644
--- a/core/jni/Android.bp
+++ b/core/jni/Android.bp
@@ -52,20 +52,11 @@
"system/media/private/camera/include",
],
- static_libs: [
- "libandroid_graphics",
- ],
-
- whole_static_libs: ["libandroid_graphics"],
-
- export_static_lib_headers: ["libandroid_graphics"],
-
shared_libs: [
"libbase",
"libcutils",
"libharfbuzz_ng",
"libhwui",
- "libjpeg",
"liblog",
"libminikin",
"libnativehelper",
@@ -107,6 +98,7 @@
"android_database_SQLiteGlobal.cpp",
"android_database_SQLiteDebug.cpp",
"android_graphics_GraphicBuffer.cpp",
+ "android_graphics_SurfaceTexture.cpp",
"android_view_CompositionSamplingListener.cpp",
"android_view_DisplayEventReceiver.cpp",
"android_view_InputChannel.cpp",
@@ -182,8 +174,6 @@
"android_hardware_UsbRequest.cpp",
"android_hardware_location_ActivityRecognitionHardware.cpp",
"android_util_FileObserver.cpp",
- "android/graphics/GraphicsStatsService.cpp",
- "android/graphics/SurfaceTexture.cpp",
"android/opengl/poly_clip.cpp", // TODO: .arm
"android/opengl/util.cpp",
"android_server_NetworkManagementSocketTagger.cpp",
@@ -324,153 +314,3 @@
},
},
}
-
-cc_library_static {
- name: "libandroid_graphics",
- host_supported: true,
- cflags: [
- "-Wno-unused-parameter",
- "-Wno-non-virtual-dtor",
- "-Wno-maybe-uninitialized",
- "-Wno-parentheses",
-
- "-DGL_GLEXT_PROTOTYPES",
- "-DEGL_EGLEXT_PROTOTYPES",
-
- "-DU_USING_ICU_NAMESPACE=0",
-
- "-Wall",
- "-Werror",
- "-Wno-error=deprecated-declarations",
- "-Wunused",
- "-Wunreachable-code",
- ],
-
- cppflags: ["-Wno-conversion-null"],
-
- srcs: [
- "android/graphics/apex/android_matrix.cpp",
- "android/graphics/apex/android_paint.cpp",
- "android/graphics/apex/android_region.cpp",
-
- "android_graphics_animation_NativeInterpolatorFactory.cpp",
- "android_graphics_animation_RenderNodeAnimator.cpp",
- "android_graphics_Canvas.cpp",
- "android_graphics_ColorSpace.cpp",
- "android_graphics_drawable_AnimatedVectorDrawable.cpp",
- "android_graphics_drawable_VectorDrawable.cpp",
- "android_graphics_HardwareRendererObserver.cpp",
- "android_graphics_Picture.cpp",
- "android_nio_utils.cpp",
- "android_view_DisplayListCanvas.cpp",
- "android_view_RenderNode.cpp",
- "android_util_PathParser.cpp",
-
- "android/graphics/Bitmap.cpp",
- "android/graphics/BitmapFactory.cpp",
- "android/graphics/ByteBufferStreamAdaptor.cpp",
- "android/graphics/Camera.cpp",
- "android/graphics/CanvasProperty.cpp",
- "android/graphics/ColorFilter.cpp",
- "android/graphics/CreateJavaOutputStreamAdaptor.cpp",
- "android/graphics/FontFamily.cpp",
- "android/graphics/FontUtils.cpp",
- "android/graphics/Graphics.cpp",
- "android/graphics/ImageDecoder.cpp",
- "android/graphics/Interpolator.cpp",
- "android/graphics/MaskFilter.cpp",
- "android/graphics/Matrix.cpp",
- "android/graphics/NinePatch.cpp",
- "android/graphics/NinePatchPeeker.cpp",
- "android/graphics/Paint.cpp",
- "android/graphics/PaintFilter.cpp",
- "android/graphics/Path.cpp",
- "android/graphics/PathEffect.cpp",
- "android/graphics/PathMeasure.cpp",
- "android/graphics/Picture.cpp",
- "android/graphics/Region.cpp",
- "android/graphics/Shader.cpp",
- "android/graphics/Typeface.cpp",
- "android/graphics/Utils.cpp",
- "android/graphics/YuvToJpegEncoder.cpp",
- "android/graphics/fonts/Font.cpp",
- "android/graphics/fonts/FontFamily.cpp",
- "android/graphics/text/LineBreaker.cpp",
- "android/graphics/text/MeasuredText.cpp",
- ],
-
- local_include_dirs: [
- "include", // NEEDED FOR ANDROID RUNTIME
- "android/graphics",
- "android/graphics/apex/include",
- ],
-
- export_include_dirs: [
- "android/graphics/apex/include",
- ],
-
- include_dirs: [
- "external/skia/include/private",
- "external/skia/src/codec",
- "external/skia/src/core",
- "external/skia/src/effects",
- "external/skia/src/image",
- "external/skia/src/images",
- ],
-
- shared_libs: [
- "libbase",
- "libcutils",
- "libharfbuzz_ng",
- "libhwui",
- "liblog",
- "libminikin",
- "libnativehelper",
- "libz",
- "libziparchive",
- "libjpeg",
- ],
-
- target: {
- android: {
- srcs: [ // sources that depend on android only libraries
- "android/graphics/apex/android_canvas.cpp",
- "android/graphics/apex/android_bitmap.cpp",
- "android/graphics/apex/renderthread.cpp",
- "android/graphics/apex/jni_runtime.cpp",
-
- "android_view_TextureLayer.cpp",
- "android_view_ThreadedRenderer.cpp",
- "android/graphics/AnimatedImageDrawable.cpp",
- "android/graphics/BitmapRegionDecoder.cpp",
- "android/graphics/GIFMovie.cpp",
- "android/graphics/Movie.cpp",
- "android/graphics/MovieImpl.cpp",
- "android/graphics/pdf/PdfDocument.cpp",
- "android/graphics/pdf/PdfEditor.cpp",
- "android/graphics/pdf/PdfRenderer.cpp",
- "android/graphics/pdf/PdfUtils.cpp",
- ],
- shared_libs: [
- "libandroidfw",
- "libEGL",
- "libmediandk",
- "libnativedisplay",
- "libnativewindow",
- "libpdfium",
- ],
- static_libs: [
- "libgif",
- ],
- },
- host: {
- cflags: [
- "-Wno-unused-const-variable",
- "-Wno-unused-function",
- ],
- static_libs: [
- "libandroidfw",
- ],
- }
- },
-}
diff --git a/core/jni/AndroidRuntime.cpp b/core/jni/AndroidRuntime.cpp
index 4879478..c41398c 100644
--- a/core/jni/AndroidRuntime.cpp
+++ b/core/jni/AndroidRuntime.cpp
@@ -115,6 +115,7 @@
extern int register_android_content_XmlBlock(JNIEnv* env);
extern int register_android_content_res_ApkAssets(JNIEnv* env);
extern int register_android_graphics_BLASTBufferQueue(JNIEnv* env);
+extern int register_android_graphics_SurfaceTexture(JNIEnv* env);
extern int register_android_view_DisplayEventReceiver(JNIEnv* env);
extern int register_android_view_InputApplicationHandle(JNIEnv* env);
extern int register_android_view_InputWindowHandle(JNIEnv* env);
@@ -1484,6 +1485,7 @@
REG_JNI(register_android_graphics_classes),
REG_JNI(register_android_graphics_BLASTBufferQueue),
REG_JNI(register_android_graphics_GraphicBuffer),
+ REG_JNI(register_android_graphics_SurfaceTexture),
REG_JNI(register_android_database_CursorWindow),
REG_JNI(register_android_database_SQLiteConnection),
REG_JNI(register_android_database_SQLiteGlobal),
diff --git a/core/jni/android/graphics/SurfaceTexture.cpp b/core/jni/android_graphics_SurfaceTexture.cpp
similarity index 100%
rename from core/jni/android/graphics/SurfaceTexture.cpp
rename to core/jni/android_graphics_SurfaceTexture.cpp
diff --git a/libs/hwui/Android.bp b/libs/hwui/Android.bp
index 81dedda..954e4da 100644
--- a/libs/hwui/Android.bp
+++ b/libs/hwui/Android.bp
@@ -152,9 +152,229 @@
}
// ------------------------
+// APEX
+// ------------------------
+
+cc_library_headers {
+ name: "android_graphics_apex_headers",
+
+ host_supported: true,
+ export_include_dirs: [
+ "apex/include",
+ ],
+ target: {
+ windows: {
+ enabled: true,
+ },
+ }
+}
+
+cc_defaults {
+ name: "android_graphics_apex",
+ host_supported: true,
+ cflags: [
+ "-Wno-unused-parameter",
+ "-Wno-non-virtual-dtor",
+ "-Wno-maybe-uninitialized",
+ "-Wno-parentheses",
+ "-Wall",
+ "-Werror",
+ "-Wno-error=deprecated-declarations",
+ "-Wunused",
+ "-Wunreachable-code",
+ ],
+
+ cppflags: ["-Wno-conversion-null"],
+
+ srcs: [
+ "apex/android_matrix.cpp",
+ "apex/android_paint.cpp",
+ "apex/android_region.cpp",
+ ],
+
+ header_libs: [ "android_graphics_apex_headers" ],
+
+ target: {
+ android: {
+ srcs: [ // sources that depend on android only libraries
+ "apex/android_bitmap.cpp",
+ "apex/android_canvas.cpp",
+ "apex/jni_runtime.cpp",
+ "apex/renderthread.cpp",
+ ],
+ },
+ },
+}
+
+// ------------------------
+// Android Graphics JNI
+// ------------------------
+
+cc_library_headers {
+ name: "android_graphics_jni_headers",
+
+ host_supported: true,
+ export_include_dirs: [
+ "jni",
+ ],
+ target: {
+ windows: {
+ enabled: true,
+ },
+ }
+}
+
+cc_defaults {
+ name: "android_graphics_jni",
+ host_supported: true,
+ cflags: [
+ "-Wno-unused-parameter",
+ "-Wno-non-virtual-dtor",
+ "-Wno-maybe-uninitialized",
+ "-Wno-parentheses",
+
+ "-DGL_GLEXT_PROTOTYPES",
+ "-DEGL_EGLEXT_PROTOTYPES",
+
+ "-DU_USING_ICU_NAMESPACE=0",
+
+ "-Wall",
+ "-Werror",
+ "-Wno-error=deprecated-declarations",
+ "-Wunused",
+ "-Wunreachable-code",
+ ],
+
+ cppflags: ["-Wno-conversion-null"],
+
+ srcs: [
+ "jni/android_graphics_animation_NativeInterpolatorFactory.cpp",
+ "jni/android_graphics_animation_RenderNodeAnimator.cpp",
+ "jni/android_graphics_Canvas.cpp",
+ "jni/android_graphics_ColorSpace.cpp",
+ "jni/android_graphics_drawable_AnimatedVectorDrawable.cpp",
+ "jni/android_graphics_drawable_VectorDrawable.cpp",
+ "jni/android_graphics_HardwareRendererObserver.cpp",
+ "jni/android_graphics_Matrix.cpp",
+ "jni/android_graphics_Picture.cpp",
+ "jni/android_graphics_DisplayListCanvas.cpp",
+ "jni/android_graphics_RenderNode.cpp",
+ "jni/android_nio_utils.cpp",
+ "jni/android_util_PathParser.cpp",
+
+ "jni/Bitmap.cpp",
+ "jni/BitmapFactory.cpp",
+ "jni/ByteBufferStreamAdaptor.cpp",
+ "jni/Camera.cpp",
+ "jni/CanvasProperty.cpp",
+ "jni/ColorFilter.cpp",
+ "jni/CreateJavaOutputStreamAdaptor.cpp",
+ "jni/FontFamily.cpp",
+ "jni/FontUtils.cpp",
+ "jni/Graphics.cpp",
+ "jni/ImageDecoder.cpp",
+ "jni/Interpolator.cpp",
+ "jni/MaskFilter.cpp",
+ "jni/NinePatch.cpp",
+ "jni/NinePatchPeeker.cpp",
+ "jni/Paint.cpp",
+ "jni/PaintFilter.cpp",
+ "jni/Path.cpp",
+ "jni/PathEffect.cpp",
+ "jni/PathMeasure.cpp",
+ "jni/Picture.cpp",
+ "jni/Region.cpp",
+ "jni/Shader.cpp",
+ "jni/Typeface.cpp",
+ "jni/Utils.cpp",
+ "jni/YuvToJpegEncoder.cpp",
+ "jni/fonts/Font.cpp",
+ "jni/fonts/FontFamily.cpp",
+ "jni/text/LineBreaker.cpp",
+ "jni/text/MeasuredText.cpp",
+ ],
+
+ header_libs: [ "android_graphics_jni_headers" ],
+
+ include_dirs: [
+ "external/skia/include/private",
+ "external/skia/src/codec",
+ "external/skia/src/core",
+ "external/skia/src/effects",
+ "external/skia/src/image",
+ "external/skia/src/images",
+ ],
+
+ shared_libs: [
+ "libbase",
+ "libbinder",
+ "libcutils",
+ "libharfbuzz_ng",
+ "liblog",
+ "libminikin",
+ "libnativehelper",
+ "libz",
+ "libziparchive",
+ "libjpeg",
+ ],
+
+ target: {
+ android: {
+ srcs: [ // sources that depend on android only libraries
+ "jni/AnimatedImageDrawable.cpp",
+ "jni/android_graphics_TextureLayer.cpp",
+ "jni/android_graphics_HardwareRenderer.cpp",
+ "jni/BitmapRegionDecoder.cpp",
+ "jni/GIFMovie.cpp",
+ "jni/GraphicsStatsService.cpp",
+ "jni/Movie.cpp",
+ "jni/MovieImpl.cpp",
+ "jni/pdf/PdfDocument.cpp",
+ "jni/pdf/PdfEditor.cpp",
+ "jni/pdf/PdfRenderer.cpp",
+ "jni/pdf/PdfUtils.cpp",
+ ],
+ shared_libs: [
+ "libandroidfw",
+ "libmediandk",
+ "libnativedisplay",
+ "libnativewindow",
+ "libstatspull",
+ "libstatssocket",
+ "libpdfium",
+ ],
+ static_libs: [
+ "libgif",
+ "libstatslog",
+ ],
+ },
+ host: {
+ cflags: [
+ "-Wno-unused-const-variable",
+ "-Wno-unused-function",
+ ],
+ static_libs: [
+ "libandroidfw",
+ ],
+ }
+ },
+}
+
+// ------------------------
// library
// ------------------------
+cc_library_headers {
+ name: "libhwui_internal_headers",
+
+ host_supported: true,
+ export_include_dirs: [
+ ".",
+ ],
+ header_libs: [ "android_graphics_jni_headers" ],
+ export_header_lib_headers: [ "android_graphics_jni_headers" ],
+}
+
cc_defaults {
name: "libhwui_defaults",
defaults: ["hwui_defaults"],
@@ -205,11 +425,8 @@
export_proto_headers: true,
},
- export_include_dirs: ["."],
-
target: {
android: {
-
srcs: [
"hwui/AnimatedImageThread.cpp",
"pipeline/skia/ATraceMemoryDump.cpp",
@@ -274,7 +491,10 @@
host_supported: true,
defaults: [
"libhwui_defaults",
+ "android_graphics_apex",
+ "android_graphics_jni",
],
+ export_header_lib_headers: ["android_graphics_apex_headers"],
}
cc_library_static {
diff --git a/core/jni/android/graphics/apex/TypeCast.h b/libs/hwui/apex/TypeCast.h
similarity index 100%
rename from core/jni/android/graphics/apex/TypeCast.h
rename to libs/hwui/apex/TypeCast.h
diff --git a/core/jni/android/graphics/apex/android_bitmap.cpp b/libs/hwui/apex/android_bitmap.cpp
similarity index 100%
rename from core/jni/android/graphics/apex/android_bitmap.cpp
rename to libs/hwui/apex/android_bitmap.cpp
diff --git a/core/jni/android/graphics/apex/android_canvas.cpp b/libs/hwui/apex/android_canvas.cpp
similarity index 100%
rename from core/jni/android/graphics/apex/android_canvas.cpp
rename to libs/hwui/apex/android_canvas.cpp
diff --git a/core/jni/android/graphics/apex/android_matrix.cpp b/libs/hwui/apex/android_matrix.cpp
similarity index 97%
rename from core/jni/android/graphics/apex/android_matrix.cpp
rename to libs/hwui/apex/android_matrix.cpp
index 309360d..693b22b 100644
--- a/core/jni/android/graphics/apex/android_matrix.cpp
+++ b/libs/hwui/apex/android_matrix.cpp
@@ -15,7 +15,7 @@
*/
#include "android/graphics/matrix.h"
-#include "Matrix.h"
+#include "android_graphics_Matrix.h"
bool AMatrix_getContents(JNIEnv* env, jobject matrixObj, float values[9]) {
static_assert(SkMatrix::kMScaleX == 0, "SkMatrix unexpected index");
diff --git a/core/jni/android/graphics/apex/android_paint.cpp b/libs/hwui/apex/android_paint.cpp
similarity index 100%
rename from core/jni/android/graphics/apex/android_paint.cpp
rename to libs/hwui/apex/android_paint.cpp
diff --git a/core/jni/android/graphics/apex/android_region.cpp b/libs/hwui/apex/android_region.cpp
similarity index 100%
rename from core/jni/android/graphics/apex/android_region.cpp
rename to libs/hwui/apex/android_region.cpp
diff --git a/core/jni/android/graphics/apex/include/android/graphics/bitmap.h b/libs/hwui/apex/include/android/graphics/bitmap.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/bitmap.h
rename to libs/hwui/apex/include/android/graphics/bitmap.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/canvas.h b/libs/hwui/apex/include/android/graphics/canvas.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/canvas.h
rename to libs/hwui/apex/include/android/graphics/canvas.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/jni_runtime.h b/libs/hwui/apex/include/android/graphics/jni_runtime.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/jni_runtime.h
rename to libs/hwui/apex/include/android/graphics/jni_runtime.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/matrix.h b/libs/hwui/apex/include/android/graphics/matrix.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/matrix.h
rename to libs/hwui/apex/include/android/graphics/matrix.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/paint.h b/libs/hwui/apex/include/android/graphics/paint.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/paint.h
rename to libs/hwui/apex/include/android/graphics/paint.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/region.h b/libs/hwui/apex/include/android/graphics/region.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/region.h
rename to libs/hwui/apex/include/android/graphics/region.h
diff --git a/core/jni/android/graphics/apex/include/android/graphics/renderthread.h b/libs/hwui/apex/include/android/graphics/renderthread.h
similarity index 100%
rename from core/jni/android/graphics/apex/include/android/graphics/renderthread.h
rename to libs/hwui/apex/include/android/graphics/renderthread.h
diff --git a/core/jni/android/graphics/apex/jni_runtime.cpp b/libs/hwui/apex/jni_runtime.cpp
similarity index 97%
rename from core/jni/android/graphics/apex/jni_runtime.cpp
rename to libs/hwui/apex/jni_runtime.cpp
index 35c997d..506c578 100644
--- a/core/jni/android/graphics/apex/jni_runtime.cpp
+++ b/libs/hwui/apex/jni_runtime.cpp
@@ -59,7 +59,6 @@
extern int register_android_graphics_PathMeasure(JNIEnv* env);
extern int register_android_graphics_Picture(JNIEnv*);
extern int register_android_graphics_Region(JNIEnv* env);
-extern int register_android_graphics_SurfaceTexture(JNIEnv* env);
extern int register_android_graphics_animation_NativeInterpolatorFactory(JNIEnv* env);
extern int register_android_graphics_animation_RenderNodeAnimator(JNIEnv* env);
extern int register_android_graphics_drawable_AnimatedVectorDrawable(JNIEnv* env);
@@ -122,7 +121,6 @@
REG_JNI(register_android_graphics_Picture),
REG_JNI(register_android_graphics_Region),
REG_JNI(register_android_graphics_Shader),
- REG_JNI(register_android_graphics_SurfaceTexture),
REG_JNI(register_android_graphics_Typeface),
REG_JNI(register_android_graphics_YuvImage),
REG_JNI(register_android_graphics_animation_NativeInterpolatorFactory),
diff --git a/core/jni/android/graphics/apex/renderthread.cpp b/libs/hwui/apex/renderthread.cpp
similarity index 100%
rename from core/jni/android/graphics/apex/renderthread.cpp
rename to libs/hwui/apex/renderthread.cpp
diff --git a/core/jni/android/graphics/AnimatedImageDrawable.cpp b/libs/hwui/jni/AnimatedImageDrawable.cpp
similarity index 100%
rename from core/jni/android/graphics/AnimatedImageDrawable.cpp
rename to libs/hwui/jni/AnimatedImageDrawable.cpp
diff --git a/core/jni/android/graphics/Bitmap.cpp b/libs/hwui/jni/Bitmap.cpp
similarity index 100%
rename from core/jni/android/graphics/Bitmap.cpp
rename to libs/hwui/jni/Bitmap.cpp
diff --git a/core/jni/android/graphics/Bitmap.h b/libs/hwui/jni/Bitmap.h
similarity index 100%
rename from core/jni/android/graphics/Bitmap.h
rename to libs/hwui/jni/Bitmap.h
diff --git a/core/jni/android/graphics/BitmapFactory.cpp b/libs/hwui/jni/BitmapFactory.cpp
similarity index 100%
rename from core/jni/android/graphics/BitmapFactory.cpp
rename to libs/hwui/jni/BitmapFactory.cpp
diff --git a/core/jni/android/graphics/BitmapFactory.h b/libs/hwui/jni/BitmapFactory.h
similarity index 100%
rename from core/jni/android/graphics/BitmapFactory.h
rename to libs/hwui/jni/BitmapFactory.h
diff --git a/core/jni/android/graphics/BitmapRegionDecoder.cpp b/libs/hwui/jni/BitmapRegionDecoder.cpp
similarity index 100%
rename from core/jni/android/graphics/BitmapRegionDecoder.cpp
rename to libs/hwui/jni/BitmapRegionDecoder.cpp
diff --git a/core/jni/android/graphics/ByteBufferStreamAdaptor.cpp b/libs/hwui/jni/ByteBufferStreamAdaptor.cpp
similarity index 100%
rename from core/jni/android/graphics/ByteBufferStreamAdaptor.cpp
rename to libs/hwui/jni/ByteBufferStreamAdaptor.cpp
diff --git a/core/jni/android/graphics/ByteBufferStreamAdaptor.h b/libs/hwui/jni/ByteBufferStreamAdaptor.h
similarity index 100%
rename from core/jni/android/graphics/ByteBufferStreamAdaptor.h
rename to libs/hwui/jni/ByteBufferStreamAdaptor.h
diff --git a/core/jni/android/graphics/Camera.cpp b/libs/hwui/jni/Camera.cpp
similarity index 100%
rename from core/jni/android/graphics/Camera.cpp
rename to libs/hwui/jni/Camera.cpp
diff --git a/core/jni/android/graphics/CanvasProperty.cpp b/libs/hwui/jni/CanvasProperty.cpp
similarity index 100%
rename from core/jni/android/graphics/CanvasProperty.cpp
rename to libs/hwui/jni/CanvasProperty.cpp
diff --git a/core/jni/android/graphics/ColorFilter.cpp b/libs/hwui/jni/ColorFilter.cpp
similarity index 100%
rename from core/jni/android/graphics/ColorFilter.cpp
rename to libs/hwui/jni/ColorFilter.cpp
diff --git a/core/jni/android/graphics/CreateJavaOutputStreamAdaptor.cpp b/libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp
similarity index 100%
rename from core/jni/android/graphics/CreateJavaOutputStreamAdaptor.cpp
rename to libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp
diff --git a/core/jni/android/graphics/CreateJavaOutputStreamAdaptor.h b/libs/hwui/jni/CreateJavaOutputStreamAdaptor.h
similarity index 100%
rename from core/jni/android/graphics/CreateJavaOutputStreamAdaptor.h
rename to libs/hwui/jni/CreateJavaOutputStreamAdaptor.h
diff --git a/core/jni/android/graphics/FontFamily.cpp b/libs/hwui/jni/FontFamily.cpp
similarity index 100%
rename from core/jni/android/graphics/FontFamily.cpp
rename to libs/hwui/jni/FontFamily.cpp
diff --git a/core/jni/android/graphics/FontUtils.cpp b/libs/hwui/jni/FontUtils.cpp
similarity index 100%
rename from core/jni/android/graphics/FontUtils.cpp
rename to libs/hwui/jni/FontUtils.cpp
diff --git a/core/jni/android/graphics/FontUtils.h b/libs/hwui/jni/FontUtils.h
similarity index 100%
rename from core/jni/android/graphics/FontUtils.h
rename to libs/hwui/jni/FontUtils.h
diff --git a/core/jni/android/graphics/GIFMovie.cpp b/libs/hwui/jni/GIFMovie.cpp
similarity index 100%
rename from core/jni/android/graphics/GIFMovie.cpp
rename to libs/hwui/jni/GIFMovie.cpp
diff --git a/core/jni/android/graphics/Graphics.cpp b/libs/hwui/jni/Graphics.cpp
similarity index 100%
rename from core/jni/android/graphics/Graphics.cpp
rename to libs/hwui/jni/Graphics.cpp
diff --git a/core/jni/android/graphics/GraphicsJNI.h b/libs/hwui/jni/GraphicsJNI.h
similarity index 100%
rename from core/jni/android/graphics/GraphicsJNI.h
rename to libs/hwui/jni/GraphicsJNI.h
diff --git a/core/jni/android/graphics/GraphicsStatsService.cpp b/libs/hwui/jni/GraphicsStatsService.cpp
similarity index 100%
rename from core/jni/android/graphics/GraphicsStatsService.cpp
rename to libs/hwui/jni/GraphicsStatsService.cpp
diff --git a/core/jni/android/graphics/ImageDecoder.cpp b/libs/hwui/jni/ImageDecoder.cpp
similarity index 100%
rename from core/jni/android/graphics/ImageDecoder.cpp
rename to libs/hwui/jni/ImageDecoder.cpp
diff --git a/core/jni/android/graphics/ImageDecoder.h b/libs/hwui/jni/ImageDecoder.h
similarity index 100%
rename from core/jni/android/graphics/ImageDecoder.h
rename to libs/hwui/jni/ImageDecoder.h
diff --git a/core/jni/android/graphics/Interpolator.cpp b/libs/hwui/jni/Interpolator.cpp
similarity index 100%
rename from core/jni/android/graphics/Interpolator.cpp
rename to libs/hwui/jni/Interpolator.cpp
diff --git a/core/jni/android/graphics/MaskFilter.cpp b/libs/hwui/jni/MaskFilter.cpp
similarity index 100%
rename from core/jni/android/graphics/MaskFilter.cpp
rename to libs/hwui/jni/MaskFilter.cpp
diff --git a/core/jni/android/graphics/Movie.cpp b/libs/hwui/jni/Movie.cpp
similarity index 100%
rename from core/jni/android/graphics/Movie.cpp
rename to libs/hwui/jni/Movie.cpp
diff --git a/core/jni/android/graphics/Movie.h b/libs/hwui/jni/Movie.h
similarity index 100%
rename from core/jni/android/graphics/Movie.h
rename to libs/hwui/jni/Movie.h
diff --git a/core/jni/android/graphics/MovieImpl.cpp b/libs/hwui/jni/MovieImpl.cpp
similarity index 100%
rename from core/jni/android/graphics/MovieImpl.cpp
rename to libs/hwui/jni/MovieImpl.cpp
diff --git a/core/jni/android/graphics/NinePatch.cpp b/libs/hwui/jni/NinePatch.cpp
similarity index 100%
rename from core/jni/android/graphics/NinePatch.cpp
rename to libs/hwui/jni/NinePatch.cpp
diff --git a/core/jni/android/graphics/NinePatchPeeker.cpp b/libs/hwui/jni/NinePatchPeeker.cpp
similarity index 100%
rename from core/jni/android/graphics/NinePatchPeeker.cpp
rename to libs/hwui/jni/NinePatchPeeker.cpp
diff --git a/core/jni/android/graphics/NinePatchPeeker.h b/libs/hwui/jni/NinePatchPeeker.h
similarity index 100%
rename from core/jni/android/graphics/NinePatchPeeker.h
rename to libs/hwui/jni/NinePatchPeeker.h
diff --git a/core/jni/android/graphics/Paint.cpp b/libs/hwui/jni/Paint.cpp
similarity index 100%
rename from core/jni/android/graphics/Paint.cpp
rename to libs/hwui/jni/Paint.cpp
diff --git a/core/jni/android/graphics/PaintFilter.cpp b/libs/hwui/jni/PaintFilter.cpp
similarity index 100%
rename from core/jni/android/graphics/PaintFilter.cpp
rename to libs/hwui/jni/PaintFilter.cpp
diff --git a/core/jni/android/graphics/Path.cpp b/libs/hwui/jni/Path.cpp
similarity index 100%
rename from core/jni/android/graphics/Path.cpp
rename to libs/hwui/jni/Path.cpp
diff --git a/core/jni/android/graphics/PathEffect.cpp b/libs/hwui/jni/PathEffect.cpp
similarity index 100%
rename from core/jni/android/graphics/PathEffect.cpp
rename to libs/hwui/jni/PathEffect.cpp
diff --git a/core/jni/android/graphics/PathMeasure.cpp b/libs/hwui/jni/PathMeasure.cpp
similarity index 100%
rename from core/jni/android/graphics/PathMeasure.cpp
rename to libs/hwui/jni/PathMeasure.cpp
diff --git a/core/jni/android/graphics/Picture.cpp b/libs/hwui/jni/Picture.cpp
similarity index 100%
rename from core/jni/android/graphics/Picture.cpp
rename to libs/hwui/jni/Picture.cpp
diff --git a/core/jni/android/graphics/Picture.h b/libs/hwui/jni/Picture.h
similarity index 100%
rename from core/jni/android/graphics/Picture.h
rename to libs/hwui/jni/Picture.h
diff --git a/core/jni/android/graphics/Region.cpp b/libs/hwui/jni/Region.cpp
similarity index 100%
rename from core/jni/android/graphics/Region.cpp
rename to libs/hwui/jni/Region.cpp
diff --git a/core/jni/android/graphics/RtlProperties.h b/libs/hwui/jni/RtlProperties.h
similarity index 100%
rename from core/jni/android/graphics/RtlProperties.h
rename to libs/hwui/jni/RtlProperties.h
diff --git a/core/jni/android/graphics/Shader.cpp b/libs/hwui/jni/Shader.cpp
similarity index 100%
rename from core/jni/android/graphics/Shader.cpp
rename to libs/hwui/jni/Shader.cpp
diff --git a/core/jni/android/graphics/TEST_MAPPING b/libs/hwui/jni/TEST_MAPPING
similarity index 100%
rename from core/jni/android/graphics/TEST_MAPPING
rename to libs/hwui/jni/TEST_MAPPING
diff --git a/core/jni/android/graphics/Typeface.cpp b/libs/hwui/jni/Typeface.cpp
similarity index 100%
rename from core/jni/android/graphics/Typeface.cpp
rename to libs/hwui/jni/Typeface.cpp
diff --git a/core/jni/android/graphics/Utils.cpp b/libs/hwui/jni/Utils.cpp
similarity index 100%
rename from core/jni/android/graphics/Utils.cpp
rename to libs/hwui/jni/Utils.cpp
diff --git a/core/jni/android/graphics/Utils.h b/libs/hwui/jni/Utils.h
similarity index 100%
rename from core/jni/android/graphics/Utils.h
rename to libs/hwui/jni/Utils.h
diff --git a/core/jni/android/graphics/YuvToJpegEncoder.cpp b/libs/hwui/jni/YuvToJpegEncoder.cpp
similarity index 100%
rename from core/jni/android/graphics/YuvToJpegEncoder.cpp
rename to libs/hwui/jni/YuvToJpegEncoder.cpp
diff --git a/core/jni/android/graphics/YuvToJpegEncoder.h b/libs/hwui/jni/YuvToJpegEncoder.h
similarity index 100%
rename from core/jni/android/graphics/YuvToJpegEncoder.h
rename to libs/hwui/jni/YuvToJpegEncoder.h
diff --git a/core/jni/android_graphics_Canvas.cpp b/libs/hwui/jni/android_graphics_Canvas.cpp
similarity index 100%
rename from core/jni/android_graphics_Canvas.cpp
rename to libs/hwui/jni/android_graphics_Canvas.cpp
diff --git a/core/jni/android_graphics_ColorSpace.cpp b/libs/hwui/jni/android_graphics_ColorSpace.cpp
similarity index 100%
rename from core/jni/android_graphics_ColorSpace.cpp
rename to libs/hwui/jni/android_graphics_ColorSpace.cpp
diff --git a/core/jni/android_view_DisplayListCanvas.cpp b/libs/hwui/jni/android_graphics_DisplayListCanvas.cpp
similarity index 100%
rename from core/jni/android_view_DisplayListCanvas.cpp
rename to libs/hwui/jni/android_graphics_DisplayListCanvas.cpp
diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/libs/hwui/jni/android_graphics_HardwareRenderer.cpp
similarity index 100%
rename from core/jni/android_view_ThreadedRenderer.cpp
rename to libs/hwui/jni/android_graphics_HardwareRenderer.cpp
diff --git a/core/jni/android_graphics_HardwareRendererObserver.cpp b/libs/hwui/jni/android_graphics_HardwareRendererObserver.cpp
similarity index 100%
rename from core/jni/android_graphics_HardwareRendererObserver.cpp
rename to libs/hwui/jni/android_graphics_HardwareRendererObserver.cpp
diff --git a/core/jni/android_graphics_HardwareRendererObserver.h b/libs/hwui/jni/android_graphics_HardwareRendererObserver.h
similarity index 100%
rename from core/jni/android_graphics_HardwareRendererObserver.h
rename to libs/hwui/jni/android_graphics_HardwareRendererObserver.h
diff --git a/core/jni/android/graphics/Matrix.cpp b/libs/hwui/jni/android_graphics_Matrix.cpp
similarity index 100%
rename from core/jni/android/graphics/Matrix.cpp
rename to libs/hwui/jni/android_graphics_Matrix.cpp
diff --git a/core/jni/android/graphics/Matrix.h b/libs/hwui/jni/android_graphics_Matrix.h
similarity index 100%
rename from core/jni/android/graphics/Matrix.h
rename to libs/hwui/jni/android_graphics_Matrix.h
diff --git a/core/jni/android_graphics_Picture.cpp b/libs/hwui/jni/android_graphics_Picture.cpp
similarity index 100%
rename from core/jni/android_graphics_Picture.cpp
rename to libs/hwui/jni/android_graphics_Picture.cpp
diff --git a/core/jni/android_view_RenderNode.cpp b/libs/hwui/jni/android_graphics_RenderNode.cpp
similarity index 100%
rename from core/jni/android_view_RenderNode.cpp
rename to libs/hwui/jni/android_graphics_RenderNode.cpp
diff --git a/core/jni/android_view_TextureLayer.cpp b/libs/hwui/jni/android_graphics_TextureLayer.cpp
similarity index 100%
rename from core/jni/android_view_TextureLayer.cpp
rename to libs/hwui/jni/android_graphics_TextureLayer.cpp
diff --git a/core/jni/android_graphics_animation_NativeInterpolatorFactory.cpp b/libs/hwui/jni/android_graphics_animation_NativeInterpolatorFactory.cpp
similarity index 100%
rename from core/jni/android_graphics_animation_NativeInterpolatorFactory.cpp
rename to libs/hwui/jni/android_graphics_animation_NativeInterpolatorFactory.cpp
diff --git a/core/jni/android_graphics_animation_RenderNodeAnimator.cpp b/libs/hwui/jni/android_graphics_animation_RenderNodeAnimator.cpp
similarity index 100%
rename from core/jni/android_graphics_animation_RenderNodeAnimator.cpp
rename to libs/hwui/jni/android_graphics_animation_RenderNodeAnimator.cpp
diff --git a/core/jni/android_graphics_drawable_AnimatedVectorDrawable.cpp b/libs/hwui/jni/android_graphics_drawable_AnimatedVectorDrawable.cpp
similarity index 100%
rename from core/jni/android_graphics_drawable_AnimatedVectorDrawable.cpp
rename to libs/hwui/jni/android_graphics_drawable_AnimatedVectorDrawable.cpp
diff --git a/core/jni/android_graphics_drawable_VectorDrawable.cpp b/libs/hwui/jni/android_graphics_drawable_VectorDrawable.cpp
similarity index 100%
rename from core/jni/android_graphics_drawable_VectorDrawable.cpp
rename to libs/hwui/jni/android_graphics_drawable_VectorDrawable.cpp
diff --git a/core/jni/android_nio_utils.cpp b/libs/hwui/jni/android_nio_utils.cpp
similarity index 100%
rename from core/jni/android_nio_utils.cpp
rename to libs/hwui/jni/android_nio_utils.cpp
diff --git a/core/jni/android_nio_utils.h b/libs/hwui/jni/android_nio_utils.h
similarity index 100%
rename from core/jni/android_nio_utils.h
rename to libs/hwui/jni/android_nio_utils.h
diff --git a/core/jni/android_util_PathParser.cpp b/libs/hwui/jni/android_util_PathParser.cpp
similarity index 100%
rename from core/jni/android_util_PathParser.cpp
rename to libs/hwui/jni/android_util_PathParser.cpp
diff --git a/core/jni/android/graphics/fonts/Font.cpp b/libs/hwui/jni/fonts/Font.cpp
similarity index 100%
rename from core/jni/android/graphics/fonts/Font.cpp
rename to libs/hwui/jni/fonts/Font.cpp
diff --git a/core/jni/android/graphics/fonts/FontFamily.cpp b/libs/hwui/jni/fonts/FontFamily.cpp
similarity index 100%
rename from core/jni/android/graphics/fonts/FontFamily.cpp
rename to libs/hwui/jni/fonts/FontFamily.cpp
diff --git a/core/jni/android/graphics/pdf/PdfDocument.cpp b/libs/hwui/jni/pdf/PdfDocument.cpp
similarity index 100%
rename from core/jni/android/graphics/pdf/PdfDocument.cpp
rename to libs/hwui/jni/pdf/PdfDocument.cpp
diff --git a/core/jni/android/graphics/pdf/PdfEditor.cpp b/libs/hwui/jni/pdf/PdfEditor.cpp
similarity index 100%
rename from core/jni/android/graphics/pdf/PdfEditor.cpp
rename to libs/hwui/jni/pdf/PdfEditor.cpp
diff --git a/core/jni/android/graphics/pdf/PdfRenderer.cpp b/libs/hwui/jni/pdf/PdfRenderer.cpp
similarity index 100%
rename from core/jni/android/graphics/pdf/PdfRenderer.cpp
rename to libs/hwui/jni/pdf/PdfRenderer.cpp
diff --git a/core/jni/android/graphics/pdf/PdfUtils.cpp b/libs/hwui/jni/pdf/PdfUtils.cpp
similarity index 100%
rename from core/jni/android/graphics/pdf/PdfUtils.cpp
rename to libs/hwui/jni/pdf/PdfUtils.cpp
diff --git a/core/jni/android/graphics/pdf/PdfUtils.h b/libs/hwui/jni/pdf/PdfUtils.h
similarity index 100%
rename from core/jni/android/graphics/pdf/PdfUtils.h
rename to libs/hwui/jni/pdf/PdfUtils.h
diff --git a/core/jni/android/graphics/text/LineBreaker.cpp b/libs/hwui/jni/text/LineBreaker.cpp
similarity index 100%
rename from core/jni/android/graphics/text/LineBreaker.cpp
rename to libs/hwui/jni/text/LineBreaker.cpp
diff --git a/core/jni/android/graphics/text/MeasuredText.cpp b/libs/hwui/jni/text/MeasuredText.cpp
similarity index 100%
rename from core/jni/android/graphics/text/MeasuredText.cpp
rename to libs/hwui/jni/text/MeasuredText.cpp