summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2023-02-20 22:14:29 +0800
committerPo Lu <luangruo@yahoo.com>2023-02-20 22:14:29 +0800
commit57c19f477fddb542fa40747aeb7060fa9756756f (patch)
treeef338aa1f2cbceffb5be82f04aa22ed92c7535e2 /java
parentfecd0a9fed2f392dc0c5f852b705758681ef5266 (diff)
Update Android port
* INSTALL.android: Explain where to get tree-sitter. * configure.ac: Add support for dynamic modules and tree-sitter. * doc/emacs/android.texi (Android Windowing): * java/org/gnu/emacs/EmacsSdk11Clipboard.java (EmacsSdk11Clipboard, ownsClipboard): Improve clipboard handling and documentation.
Diffstat (limited to 'java')
-rw-r--r--java/org/gnu/emacs/EmacsSdk11Clipboard.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/java/org/gnu/emacs/EmacsSdk11Clipboard.java b/java/org/gnu/emacs/EmacsSdk11Clipboard.java
index 2df2015c9c1..ea35a463299 100644
--- a/java/org/gnu/emacs/EmacsSdk11Clipboard.java
+++ b/java/org/gnu/emacs/EmacsSdk11Clipboard.java
@@ -25,6 +25,8 @@ import android.content.ClipData;
import android.util.Log;
+import android.os.Build;
+
import java.io.UnsupportedEncodingException;
/* This class implements EmacsClipboard for Android 3.0 and later
@@ -43,7 +45,12 @@ public class EmacsSdk11Clipboard extends EmacsClipboard
EmacsSdk11Clipboard ()
{
manager = EmacsService.SERVICE.getClipboardManager ();
- manager.addPrimaryClipChangedListener (this);
+
+ /* The system forbids Emacs from reading clipboard data in the
+ background under Android 10 or later. */
+
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q)
+ manager.addPrimaryClipChangedListener (this);
}
@Override
@@ -105,6 +112,9 @@ public class EmacsSdk11Clipboard extends EmacsClipboard
public synchronized int
ownsClipboard ()
{
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q)
+ return -1;
+
return ownsClipboard ? 1 : 0;
}