Merge "Construct Region object with nativeObject" into tm-dev am: 41eed22418
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17801211 Change-Id: I1b11fc8518ca98d7f3add0b2ab664d3930cc8876 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -79,7 +79,6 @@ static struct {
|
|||||||
static struct {
|
static struct {
|
||||||
jclass clazz;
|
jclass clazz;
|
||||||
jmethodID ctor;
|
jmethodID ctor;
|
||||||
jfieldID nativeRegion;
|
|
||||||
} gRegionClassInfo;
|
} gRegionClassInfo;
|
||||||
|
|
||||||
static Mutex gHandleMutex;
|
static Mutex gHandleMutex;
|
||||||
@@ -290,10 +289,8 @@ jobject android_view_InputWindowHandle_fromWindowInfo(JNIEnv* env, gui::WindowIn
|
|||||||
region->op({r.left, r.top, r.right, r.bottom}, SkRegion::kUnion_Op);
|
region->op({r.left, r.top, r.right, r.bottom}, SkRegion::kUnion_Op);
|
||||||
}
|
}
|
||||||
ScopedLocalRef<jobject> regionObj(env,
|
ScopedLocalRef<jobject> regionObj(env,
|
||||||
env->NewObject(gRegionClassInfo.clazz,
|
env->NewObject(gRegionClassInfo.clazz, gRegionClassInfo.ctor,
|
||||||
gRegionClassInfo.ctor));
|
reinterpret_cast<jlong>(region)));
|
||||||
env->SetLongField(regionObj.get(), gRegionClassInfo.nativeRegion,
|
|
||||||
reinterpret_cast<jlong>(region));
|
|
||||||
env->SetObjectField(inputWindowHandle, gInputWindowHandleClassInfo.touchableRegion,
|
env->SetObjectField(inputWindowHandle, gInputWindowHandleClassInfo.touchableRegion,
|
||||||
regionObj.get());
|
regionObj.get());
|
||||||
|
|
||||||
@@ -453,8 +450,7 @@ int register_android_view_InputWindowHandle(JNIEnv* env) {
|
|||||||
jclass regionClazz;
|
jclass regionClazz;
|
||||||
FIND_CLASS(regionClazz, "android/graphics/Region");
|
FIND_CLASS(regionClazz, "android/graphics/Region");
|
||||||
gRegionClassInfo.clazz = MakeGlobalRefOrDie(env, regionClazz);
|
gRegionClassInfo.clazz = MakeGlobalRefOrDie(env, regionClazz);
|
||||||
GET_METHOD_ID(gRegionClassInfo.ctor, gRegionClassInfo.clazz, "<init>", "()V");
|
GET_METHOD_ID(gRegionClassInfo.ctor, gRegionClassInfo.clazz, "<init>", "(J)V");
|
||||||
GET_FIELD_ID(gRegionClassInfo.nativeRegion, gRegionClassInfo.clazz, "mNativeRegion", "J");
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user