summaryrefslogtreecommitdiff
path: root/java/org/gnu/emacs/EmacsInputConnection.java
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2023-06-02 13:31:40 +0800
committerPo Lu <luangruo@yahoo.com>2023-06-02 13:31:40 +0800
commit189a91bfb699babd936dae48b96d71a332cac8d2 (patch)
tree73ccb99dfebc3c2bb0770781c120a37338bcf76a /java/org/gnu/emacs/EmacsInputConnection.java
parentc3c2289b29df2b723b9db93d9ea4cd5d04fc89a0 (diff)
Update Android port
* java/org/gnu/emacs/EmacsInputConnection.java (EmacsInputConnection): Apply workarounds on Vivo devices as well. * src/android.c (sendKeyPress, sendKeyRelease): Clear counter. * src/androidgui.h (struct android_key_event): New field `counter'. * src/androidterm.c (handle_one_android_event): Generate barriers as appropriate. (JNICALL): Set `counter'. * src/frame.h (enum text_conversion_operation): * src/textconv.c (detect_conversion_events) (really_set_composing_text, handle_pending_conversion_events_1) (handle_pending_conversion_events, textconv_barrier): * src/textconv.h: Implement text conversion barriers and fix various typos.
Diffstat (limited to 'java/org/gnu/emacs/EmacsInputConnection.java')
-rw-r--r--java/org/gnu/emacs/EmacsInputConnection.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/java/org/gnu/emacs/EmacsInputConnection.java b/java/org/gnu/emacs/EmacsInputConnection.java
index eb6fd5f2763..9ced7cb7aaf 100644
--- a/java/org/gnu/emacs/EmacsInputConnection.java
+++ b/java/org/gnu/emacs/EmacsInputConnection.java
@@ -66,11 +66,12 @@ public final class EmacsInputConnection extends BaseInputConnection
|| Build.MANUFACTURER.equalsIgnoreCase ("Honor"))
extractAbsoluteOffsets = syncAfterCommit = true;
- /* The Samsung keyboard takes `selectionStart' at face value if
- some text is returned, and also searches for words solely
- within that text. However, when no text is returned, it falls
- back to getTextAfterCursor and getTextBeforeCursor. */
- if (Build.MANUFACTURER.equalsIgnoreCase ("Samsung"))
+ /* The Samsung and Vivo keyboards take `selectionStart' at face
+ value if some text is returned, and also searches for words
+ solely within that text. However, when no text is returned, it
+ falls back to getTextAfterCursor and getTextBeforeCursor. */
+ if (Build.MANUFACTURER.equalsIgnoreCase ("Samsung")
+ || Build.MANUFACTURER.equalsIgnoreCase ("Vivo"))
extractAbsoluteOffsets = true;
};