aboutsummaryrefslogtreecommitdiffstats
path: root/src/textconv.c
diff options
context:
space:
mode:
authorPo Lu2023-05-31 10:13:04 +0800
committerPo Lu2023-05-31 10:13:04 +0800
commit57903519eb61632c4a85fbaf420109892955079a (patch)
tree3dc2f961217870b96e0a1e96f52e9bdb331e4413 /src/textconv.c
parent733a6776f9d665e5fd99bcc2a65c84c4360e277c (diff)
downloademacs-57903519eb61632c4a85fbaf420109892955079a.tar.gz
emacs-57903519eb61632c4a85fbaf420109892955079a.zip
Update Android port
* java/debug.sh (is_root): Go back to using unix sockets; allow adb to forward them correctly. * java/org/gnu/emacs/EmacsInputConnection.java (getExtractedText): Don't print text if NULL. * java/org/gnu/emacs/EmacsService.java (EmacsService): New field `imSyncInProgress'. (updateIC): If an IM sync might be in progress, avoid deadlocks. * java/org/gnu/emacs/EmacsView.java (onCreateInputConnection): Set `imSyncInProgress' across synchronization point. * src/android.c (android_check_query): Use __atomic_store_n. (android_answer_query): New function. (android_begin_query): Set `android_servicing_query' to 2. Check once, and don't spin waiting for query to complete. (android_end_query): Use __atomic_store_n. (android_run_in_emacs_thread): Compare-and-exchange flag. If originally 1, fail. * src/textconv.c (really_set_composing_text): Clear conversion region if text is empty.
Diffstat (limited to 'src/textconv.c')
-rw-r--r--src/textconv.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/textconv.c b/src/textconv.c
index 26f351dc729..1530cc0ce32 100644
--- a/src/textconv.c
+++ b/src/textconv.c
@@ -792,6 +792,12 @@ really_set_composing_text (struct frame *f, ptrdiff_t position,
792 /* Move the composition overlay. */ 792 /* Move the composition overlay. */
793 sync_overlay (f); 793 sync_overlay (f);
794 794
795 /* If TEXT is empty, remove the composing region. This goes against
796 the documentation, but is ultimately what programs expect. */
797
798 if (!SCHARS (text))
799 really_finish_composing_text (f);
800
795 /* If PT hasn't changed, the conversion region definitely has. 801 /* If PT hasn't changed, the conversion region definitely has.
796 Otherwise, redisplay will update the input method instead. */ 802 Otherwise, redisplay will update the input method instead. */
797 803