aboutsummaryrefslogtreecommitdiffstats
path: root/src/androidterm.c
diff options
context:
space:
mode:
authorPo Lu2023-07-18 10:12:40 +0800
committerPo Lu2023-07-18 10:12:40 +0800
commit5ff31bf36cf00f9d5a378ce139fd5c2ae8d3f25e (patch)
tree5f1d6659da915840edcb12ed1931a8c379cedfce /src/androidterm.c
parent46fd03a49617066fca87000378771caedfd150f3 (diff)
downloademacs-5ff31bf36cf00f9d5a378ce139fd5c2ae8d3f25e.tar.gz
emacs-5ff31bf36cf00f9d5a378ce139fd5c2ae8d3f25e.zip
Update Android port
* doc/lispref/commands.texi (Touchscreen Events): Describe treatment of canceled touch sequences during touch event translation. * java/org/gnu/emacs/EmacsNative.java (EmacsNative): Update JNI prototypes. * java/org/gnu/emacs/EmacsWindow.java (motionEvent): Set cancelation flag in events sent where appropriate. * lisp/touch-screen.el (touch-screen-handle-point-update): Improve treatment of horizontal scrolling near window edges. (touch-screen-handle-touch): Don't handle point up if the touch sequence has been canceled. * src/android.c (sendTouchDown, sendTouchUp, sendTouchMove): New argument `flags'. * src/androidgui.h (enum android_touch_event_flags): New enum. (struct android_touch_event): New field `flags'. * src/androidterm.c (handle_one_android_event): Report cancelation in TOUCHSCREEN_END_EVENTs. * src/keyboard.c (make_lispy_event): Fix botched merge.
Diffstat (limited to 'src/androidterm.c')
-rw-r--r--src/androidterm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/androidterm.c b/src/androidterm.c
index 27800a61864..bcb6cd6db45 100644
--- a/src/androidterm.c
+++ b/src/androidterm.c
@@ -1511,6 +1511,11 @@ handle_one_android_event (struct android_display_info *dpyinfo,
1511 inev.ie.kind = TOUCHSCREEN_END_EVENT; 1511 inev.ie.kind = TOUCHSCREEN_END_EVENT;
1512 inev.ie.timestamp = event->touch.time; 1512 inev.ie.timestamp = event->touch.time;
1513 1513
1514 /* Report whether the sequence has been canceled. */
1515
1516 if (event->touch.flags & ANDROID_TOUCH_SEQUENCE_CANCELED)
1517 inev.ie.modifiers = 1;
1518
1514 XSETFRAME (inev.ie.frame_or_window, any); 1519 XSETFRAME (inev.ie.frame_or_window, any);
1515 XSETINT (inev.ie.x, event->touch.x); 1520 XSETINT (inev.ie.x, event->touch.x);
1516 XSETINT (inev.ie.y, event->touch.y); 1521 XSETINT (inev.ie.y, event->touch.y);