diff options
author | Oleg Yadrov <oleg.yadrov@qt.io> | 2017-04-19 14:31:43 -0400 |
---|---|---|
committer | Oleg Yadrov <oleg.yadrov@qt.io> | 2017-05-04 19:43:33 +0000 |
commit | e2e874415e1f1c6a96915d9dc85dd31c61f73e24 (patch) | |
tree | 471761795f00d27a9520c2f6bd337369d12ad728 /src/android | |
parent | 4ad030de71fcf87c6b3afd6f12330a4e4b2fa567 (diff) |
QClipboard: make dataChanged() signal work on Android
This part has not been implemented before.
Also replace deprecated android.text.ClipboardManager with modern
android.content.ClipboardManager.
Task-number: QTBUG-58548
Change-Id: I190208042af8a6c87ed391c6c72f3f51e58dfad3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Diffstat (limited to 'src/android')
-rw-r--r-- | src/android/jar/src/org/qtproject/qt5/android/QtNative.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtNative.java b/src/android/jar/src/org/qtproject/qt5/android/QtNative.java index c74e38d997..ccd8ec410e 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtNative.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtNative.java @@ -52,7 +52,8 @@ import android.content.pm.PackageManager; import android.net.Uri; import android.os.Handler; import android.os.Looper; -import android.text.ClipboardManager; +import android.content.ClipboardManager; +import android.content.ClipboardManager.OnPrimaryClipChangedListener; import android.os.Build; import android.util.Log; import android.view.ContextMenu; @@ -584,7 +585,14 @@ public class QtNative @Override public void run() { if (m_activity != null) - m_clipboardManager = (android.text.ClipboardManager) m_activity.getSystemService(Context.CLIPBOARD_SERVICE); + m_clipboardManager = (android.content.ClipboardManager) m_activity.getSystemService(Context.CLIPBOARD_SERVICE); + if (m_clipboardManager != null) { + m_clipboardManager.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener() { + public void onPrimaryClipChanged() { + onClipboardDataChanged(); + } + }); + } semaphore.release(); } }); @@ -844,6 +852,10 @@ public class QtNative public static native void onContextMenuClosed(Menu menu); // menu methods + // clipboard methods + public static native void onClipboardDataChanged(); + // clipboard methods + // activity methods public static native void onActivityResult(int requestCode, int resultCode, Intent data); public static native void onNewIntent(Intent data); |