From d9f3e382fe1b2f1c7d9de54cefa920b4f0502af6 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Thu, 25 Jun 2020 19:38:02 +0200 Subject: Android: Add a progress dialog for disc image conversion --- Source/Android/jni/AndroidCommon/IDCache.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'Source/Android/jni/AndroidCommon/IDCache.cpp') diff --git a/Source/Android/jni/AndroidCommon/IDCache.cpp b/Source/Android/jni/AndroidCommon/IDCache.cpp index 8383f8ed68..0e2e9026c6 100644 --- a/Source/Android/jni/AndroidCommon/IDCache.cpp +++ b/Source/Android/jni/AndroidCommon/IDCache.cpp @@ -36,6 +36,9 @@ static jclass s_ini_file_section_class; static jfieldID s_ini_file_section_pointer; static jmethodID s_ini_file_section_constructor; +static jclass s_compress_cb_class; +static jmethodID s_compress_cb_run; + namespace IDCache { JNIEnv* GetEnvForThread() @@ -161,6 +164,16 @@ jmethodID GetIniFileSectionConstructor() return s_ini_file_section_constructor; } +jclass GetCompressCallbackClass() +{ + return s_compress_cb_class; +} + +jmethodID GetCompressCallbackRun() +{ + return s_compress_cb_run; +} + } // namespace IDCache #ifdef __cplusplus @@ -223,6 +236,11 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved) s_linked_hash_map_put = env->GetMethodID( s_linked_hash_map_class, "put", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;"); + const jclass compress_cb_class = + env->FindClass("org/dolphinemu/dolphinemu/utils/CompressCallback"); + s_compress_cb_class = reinterpret_cast(env->NewGlobalRef(compress_cb_class)); + s_compress_cb_run = env->GetMethodID(s_compress_cb_class, "run", "(Ljava/lang/String;F)Z"); + return JNI_VERSION; } @@ -239,6 +257,7 @@ void JNI_OnUnload(JavaVM* vm, void* reserved) env->DeleteGlobalRef(s_linked_hash_map_class); env->DeleteGlobalRef(s_ini_file_class); env->DeleteGlobalRef(s_ini_file_section_class); + env->DeleteGlobalRef(s_compress_cb_class); } #ifdef __cplusplus -- cgit v1.2.3 From 6e1e6d2311df787e800be199df369b5d12aa6cae Mon Sep 17 00:00:00 2001 From: JosJuice Date: Fri, 26 Jun 2020 17:52:31 +0200 Subject: Android: Add content provider support to File::IOFile Taking the hit now to prepare us for when Google Play will force us to use scoped storage... --- Source/Android/jni/AndroidCommon/IDCache.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'Source/Android/jni/AndroidCommon/IDCache.cpp') diff --git a/Source/Android/jni/AndroidCommon/IDCache.cpp b/Source/Android/jni/AndroidCommon/IDCache.cpp index 0e2e9026c6..f44b5402f8 100644 --- a/Source/Android/jni/AndroidCommon/IDCache.cpp +++ b/Source/Android/jni/AndroidCommon/IDCache.cpp @@ -39,6 +39,9 @@ static jmethodID s_ini_file_section_constructor; static jclass s_compress_cb_class; static jmethodID s_compress_cb_run; +static jclass s_content_handler_class; +static jmethodID s_content_handler_open_fd; + namespace IDCache { JNIEnv* GetEnvForThread() @@ -174,6 +177,16 @@ jmethodID GetCompressCallbackRun() return s_compress_cb_run; } +jclass GetContentHandlerClass() +{ + return s_content_handler_class; +} + +jmethodID GetContentHandlerOpenFd() +{ + return s_content_handler_open_fd; +} + } // namespace IDCache #ifdef __cplusplus @@ -241,6 +254,12 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved) s_compress_cb_class = reinterpret_cast(env->NewGlobalRef(compress_cb_class)); s_compress_cb_run = env->GetMethodID(s_compress_cb_class, "run", "(Ljava/lang/String;F)Z"); + const jclass content_handler_class = + env->FindClass("org/dolphinemu/dolphinemu/utils/ContentHandler"); + s_content_handler_class = reinterpret_cast(env->NewGlobalRef(content_handler_class)); + s_content_handler_open_fd = env->GetStaticMethodID(s_content_handler_class, "openFd", + "(Ljava/lang/String;Ljava/lang/String;)I"); + return JNI_VERSION; } @@ -258,6 +277,7 @@ void JNI_OnUnload(JavaVM* vm, void* reserved) env->DeleteGlobalRef(s_ini_file_class); env->DeleteGlobalRef(s_ini_file_section_class); env->DeleteGlobalRef(s_compress_cb_class); + env->DeleteGlobalRef(s_content_handler_class); } #ifdef __cplusplus -- cgit v1.2.3 From 3805b84906b7994486c1b13eb49f93b2796a9a11 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Sat, 27 Jun 2020 11:04:48 +0200 Subject: Android: Add content provider support to File::Delete --- Source/Android/jni/AndroidCommon/IDCache.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'Source/Android/jni/AndroidCommon/IDCache.cpp') diff --git a/Source/Android/jni/AndroidCommon/IDCache.cpp b/Source/Android/jni/AndroidCommon/IDCache.cpp index f44b5402f8..b4052c42bf 100644 --- a/Source/Android/jni/AndroidCommon/IDCache.cpp +++ b/Source/Android/jni/AndroidCommon/IDCache.cpp @@ -41,6 +41,7 @@ static jmethodID s_compress_cb_run; static jclass s_content_handler_class; static jmethodID s_content_handler_open_fd; +static jmethodID s_content_handler_delete; namespace IDCache { @@ -187,6 +188,11 @@ jmethodID GetContentHandlerOpenFd() return s_content_handler_open_fd; } +jmethodID GetContentHandlerDelete() +{ + return s_content_handler_delete; +} + } // namespace IDCache #ifdef __cplusplus @@ -259,6 +265,8 @@ jint JNI_OnLoad(JavaVM* vm, void* reserved) s_content_handler_class = reinterpret_cast(env->NewGlobalRef(content_handler_class)); s_content_handler_open_fd = env->GetStaticMethodID(s_content_handler_class, "openFd", "(Ljava/lang/String;Ljava/lang/String;)I"); + s_content_handler_delete = + env->GetStaticMethodID(s_content_handler_class, "delete", "(Ljava/lang/String;)Z"); return JNI_VERSION; } -- cgit v1.2.3