[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master db74fd0a4d 2/2: Merge branch 'master' of git.savannah.gnu.org:/sr
From: |
Eli Zaretskii |
Subject: |
master db74fd0a4d 2/2: Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs |
Date: |
Wed, 28 Sep 2022 08:38:40 -0400 (EDT) |
branch: master
commit db74fd0a4dba7a7e7abff50501eb6f0961f2e4d6
Merge: 64c07c01c1 5f7d9a1a9f
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
---
src/xterm.c | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/src/xterm.c b/src/xterm.c
index d7ea63bb4f..409d39b27e 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -13584,6 +13584,13 @@ xi_compute_root_window_offset (struct frame *f,
XIDeviceEvent *xev)
xev->event_x, xev->event_y);
}
+static void
+xi_compute_root_window_offset_enter (struct frame *f, XIEnterEvent *enter)
+{
+ x_compute_root_window_offset (f, enter->root_x, enter->root_y,
+ enter->event_x, enter->event_y);
+}
+
#ifdef HAVE_XINPUT2_4
static void
@@ -19495,6 +19502,16 @@ handle_one_xevent (struct x_display_info *dpyinfo,
f = any;
+ if (f && event->xcrossing.window == FRAME_X_WINDOW (f))
+ x_compute_root_window_offset (f, event->xcrossing.x_root,
+ event->xcrossing.y_root,
+ event->xcrossing.x,
+ event->xcrossing.y);
+
+ /* The code below relies on the first several fields of
+ XCrossingEvent being laid out the same way as
+ XMotionEvent. */
+
if (f && x_mouse_click_focus_ignore_position)
{
ignore_next_mouse_click_timeout = (event->xmotion.time
@@ -19639,6 +19656,13 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|| EQ (track_mouse, Qdropping))
&& gui_mouse_grabbed (dpyinfo)))
do_help = -1;
+
+ if (event->xcrossing.window == FRAME_X_WINDOW (f))
+ x_compute_root_window_offset (f, event->xcrossing.x_root,
+ event->xcrossing.y_root,
+ event->xcrossing.x,
+ event->xcrossing.y);
+
}
#ifdef USE_GTK
/* See comment in EnterNotify above */
@@ -21049,6 +21073,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
f = any;
+ if (f && enter->event == FRAME_X_WINDOW (f))
+ xi_compute_root_window_offset_enter (f, enter);
+
if (f && x_mouse_click_focus_ignore_position)
{
ignore_next_mouse_click_timeout = (enter->time
@@ -21245,6 +21272,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|| EQ (track_mouse, Qdropping))
&& gui_mouse_grabbed (dpyinfo)))
do_help = -1;
+
+ if (f && leave->event == FRAME_X_WINDOW (f))
+ xi_compute_root_window_offset_enter (f, leave);
}
#ifdef USE_GTK
/* See comment in EnterNotify above */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master db74fd0a4d 2/2: Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs,
Eli Zaretskii <=