summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2023-11-02 11:11:09 +0200
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2023-11-02 21:46:32 +0200
commit742f45f7cf8c0aa800ee78323726021a30f592a8 (patch)
tree09a3963af15ae85f6f720697c0a1355b364edada
parentbc8f0911a98390106ed1e19ed2348221338cdf99 (diff)
JNI: pass same QJniEnvironment object to QAndroidPlatformClipboard
... registerNatives() call. Change-Id: I42539846249880ed4a215522bdcafb3a2ffa4d14 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r--src/plugins/platforms/android/androidjnimain.cpp2
-rw-r--r--src/plugins/platforms/android/qandroidplatformclipboard.cpp3
-rw-r--r--src/plugins/platforms/android/qandroidplatformclipboard.h2
3 files changed, 3 insertions, 4 deletions
diff --git a/src/plugins/platforms/android/androidjnimain.cpp b/src/plugins/platforms/android/androidjnimain.cpp
index f7de6fb369..bd0f2d5ce3 100644
--- a/src/plugins/platforms/android/androidjnimain.cpp
+++ b/src/plugins/platforms/android/androidjnimain.cpp
@@ -947,7 +947,7 @@ Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void */*reserved*/)
|| !QtAndroidMenu::registerNatives(env)
|| !QtAndroidAccessibility::registerNatives(env)
|| !QtAndroidDialogHelpers::registerNatives(env)
- || !QAndroidPlatformClipboard::registerNatives()) {
+ || !QAndroidPlatformClipboard::registerNatives(env)) {
__android_log_print(ANDROID_LOG_FATAL, "Qt", "registerNatives failed");
return -1;
}
diff --git a/src/plugins/platforms/android/qandroidplatformclipboard.cpp b/src/plugins/platforms/android/qandroidplatformclipboard.cpp
index a27021da01..e5ed33b9b0 100644
--- a/src/plugins/platforms/android/qandroidplatformclipboard.cpp
+++ b/src/plugins/platforms/android/qandroidplatformclipboard.cpp
@@ -106,9 +106,8 @@ bool QAndroidPlatformClipboard::supportsMode(QClipboard::Mode mode) const
return QClipboard::Clipboard == mode;
}
-bool QAndroidPlatformClipboard::registerNatives()
+bool QAndroidPlatformClipboard::registerNatives(QJniEnvironment &env)
{
- QJniEnvironment env;
bool success = env.registerNativeMethods(Traits<QtClipboardManager>::className(),
{ Q_JNI_NATIVE_SCOPED_METHOD(onClipboardDataChanged, QAndroidPlatformClipboard) });
if (!success) {
diff --git a/src/plugins/platforms/android/qandroidplatformclipboard.h b/src/plugins/platforms/android/qandroidplatformclipboard.h
index e3467b83ee..e91252045b 100644
--- a/src/plugins/platforms/android/qandroidplatformclipboard.h
+++ b/src/plugins/platforms/android/qandroidplatformclipboard.h
@@ -24,7 +24,7 @@ public:
void setMimeData(QMimeData *data, QClipboard::Mode mode = QClipboard::Clipboard) override;
bool supportsMode(QClipboard::Mode mode) const override;
- static bool registerNatives();
+ static bool registerNatives(QJniEnvironment &env);
private:
QMimeData *getClipboardMimeData();