diff options
Diffstat (limited to 'platform/android/src/graphics')
-rw-r--r-- | platform/android/src/graphics/pointf.cpp | 16 | ||||
-rw-r--r-- | platform/android/src/graphics/pointf.hpp | 3 | ||||
-rw-r--r-- | platform/android/src/graphics/rectf.cpp | 18 | ||||
-rw-r--r-- | platform/android/src/graphics/rectf.hpp | 3 |
4 files changed, 16 insertions, 24 deletions
diff --git a/platform/android/src/graphics/pointf.cpp b/platform/android/src/graphics/pointf.cpp index 3f854da2ea..eceb65b07a 100644 --- a/platform/android/src/graphics/pointf.cpp +++ b/platform/android/src/graphics/pointf.cpp @@ -5,23 +5,21 @@ namespace mbgl { namespace android { jni::Object<PointF> PointF::New(jni::JNIEnv& env, float x, float y) { - static auto constructor = PointF::javaClass.GetConstructor<float, float>(env); - return PointF::javaClass.New(env, constructor, x, y); + static auto javaClass = jni::Class<PointF>::Singleton(env); + static auto constructor = javaClass.GetConstructor<float, float>(env); + return javaClass.New(env, constructor, x, y); } mbgl::ScreenCoordinate PointF::getScreenCoordinate(jni::JNIEnv& env, jni::Object<PointF> point) { - static auto xField = PointF::javaClass.GetField<jni::jfloat>(env, "x"); - static auto yField = PointF::javaClass.GetField<jni::jfloat>(env, "y"); + static auto javaClass = jni::Class<PointF>::Singleton(env); + static auto xField = javaClass.GetField<jni::jfloat>(env, "x"); + static auto yField = javaClass.GetField<jni::jfloat>(env, "y"); return mbgl::ScreenCoordinate{point.Get(env, xField), point.Get(env, yField)}; } void PointF::registerNative(jni::JNIEnv& env) { - // Lookup the class - PointF::javaClass = *jni::Class<PointF>::Find(env).NewGlobalRef(env).release(); + jni::Class<PointF>::Singleton(env); } -jni::Class<PointF> PointF::javaClass; - - } // namespace android } // namespace mbgl
\ No newline at end of file diff --git a/platform/android/src/graphics/pointf.hpp b/platform/android/src/graphics/pointf.hpp index e3ef24dd65..27bd49138f 100644 --- a/platform/android/src/graphics/pointf.hpp +++ b/platform/android/src/graphics/pointf.hpp @@ -16,10 +16,7 @@ public: static mbgl::ScreenCoordinate getScreenCoordinate(jni::JNIEnv&, jni::Object<PointF>); - static jni::Class<PointF> javaClass; - static void registerNative(jni::JNIEnv&); - }; diff --git a/platform/android/src/graphics/rectf.cpp b/platform/android/src/graphics/rectf.cpp index 1b375dad18..9f05728b4c 100644 --- a/platform/android/src/graphics/rectf.cpp +++ b/platform/android/src/graphics/rectf.cpp @@ -4,32 +4,32 @@ namespace mbgl { namespace android { float RectF::getLeft(jni::JNIEnv& env, jni::Object<RectF> rectf) { - static auto field = RectF::javaClass.GetField<float>(env, "left"); + static auto javaClass = jni::Class<RectF>::Singleton(env); + static auto field = javaClass.GetField<float>(env, "left"); return rectf.Get(env, field); } float RectF::getTop(jni::JNIEnv& env, jni::Object<RectF> rectf) { - static auto field = RectF::javaClass.GetField<float>(env, "top"); + static auto javaClass = jni::Class<RectF>::Singleton(env); + static auto field = javaClass.GetField<float>(env, "top"); return rectf.Get(env, field); } float RectF::getRight(jni::JNIEnv& env, jni::Object<RectF> rectf) { - static auto field = RectF::javaClass.GetField<float>(env, "right"); + static auto javaClass = jni::Class<RectF>::Singleton(env); + static auto field = javaClass.GetField<float>(env, "right"); return rectf.Get(env, field); } float RectF::getBottom(jni::JNIEnv& env, jni::Object<RectF> rectf) { - static auto field = RectF::javaClass.GetField<float>(env, "bottom"); + static auto javaClass = jni::Class<RectF>::Singleton(env); + static auto field = javaClass.GetField<float>(env, "bottom"); return rectf.Get(env, field); } void RectF::registerNative(jni::JNIEnv& env) { - // Lookup the class - RectF::javaClass = *jni::Class<RectF>::Find(env).NewGlobalRef(env).release(); + jni::Class<RectF>::Singleton(env); } -jni::Class<RectF> RectF::javaClass; - - } // namespace android } // namespace mbgl
\ No newline at end of file diff --git a/platform/android/src/graphics/rectf.hpp b/platform/android/src/graphics/rectf.hpp index 0f3a7756d5..db836e78ba 100644 --- a/platform/android/src/graphics/rectf.hpp +++ b/platform/android/src/graphics/rectf.hpp @@ -20,10 +20,7 @@ public: static float getBottom(jni::JNIEnv&, jni::Object<RectF>); - static jni::Class<RectF> javaClass; - static void registerNative(jni::JNIEnv&); - }; |