summaryrefslogtreecommitdiff
path: root/Source/Android/jni/AndroidCommon
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2021-05-20 16:34:30 +0200
committerJosJuice <josjuice@gmail.com>2021-05-20 16:43:03 +0200
commitb7ba126db0d796348ba884333b341e50252433ad (patch)
treedec3ad31f3a48b269232ff98f3b1a5521fddc3c7 /Source/Android/jni/AndroidCommon
parentece32247159c1a78d44a36779d121a8580d06289 (diff)
Android: Use JNI for getting post-processsing shaders
The Java implementation of getting the list of post-processing shaders only looked in the Sys folder and not the User folder. This could be fixed in the Java implementation, but it's simpler to just call the C++ implementation instead.
Diffstat (limited to 'Source/Android/jni/AndroidCommon')
-rw-r--r--Source/Android/jni/AndroidCommon/AndroidCommon.cpp4
-rw-r--r--Source/Android/jni/AndroidCommon/AndroidCommon.h2
2 files changed, 4 insertions, 2 deletions
diff --git a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
index b5a5a7faaa..06da3774c2 100644
--- a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
+++ b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
@@ -44,7 +44,7 @@ std::vector<std::string> JStringArrayToVector(JNIEnv* env, jobjectArray array)
return result;
}
-jobjectArray JStringArrayFromVector(JNIEnv* env, std::vector<std::string> vector)
+jobjectArray VectorToJStringArray(JNIEnv* env, std::vector<std::string> vector)
{
jobjectArray result = env->NewObjectArray(vector.size(), IDCache::GetStringClass(), nullptr);
for (jsize i = 0; i < vector.size(); ++i)
@@ -145,7 +145,7 @@ std::vector<std::string> DoFileSearchAndroidContent(const std::string& directory
JNIEnv* env = IDCache::GetEnvForThread();
jobject result = env->CallStaticObjectMethod(
IDCache::GetContentHandlerClass(), IDCache::GetContentHandlerDoFileSearch(),
- ToJString(env, directory), JStringArrayFromVector(env, extensions), recursive);
+ ToJString(env, directory), VectorToJStringArray(env, extensions), recursive);
return JStringArrayToVector(env, reinterpret_cast<jobjectArray>(result));
}
diff --git a/Source/Android/jni/AndroidCommon/AndroidCommon.h b/Source/Android/jni/AndroidCommon/AndroidCommon.h
index 7d4f5d0fbc..b5b0d0eaa9 100644
--- a/Source/Android/jni/AndroidCommon/AndroidCommon.h
+++ b/Source/Android/jni/AndroidCommon/AndroidCommon.h
@@ -12,7 +12,9 @@
std::string GetJString(JNIEnv* env, jstring jstr);
jstring ToJString(JNIEnv* env, const std::string& str);
+
std::vector<std::string> JStringArrayToVector(JNIEnv* env, jobjectArray array);
+jobjectArray VectorToJStringArray(JNIEnv* env, std::vector<std::string> vector);
// Returns true if the given path should be opened as Android content instead of a normal file.
bool IsPathAndroidContent(const std::string& uri);