diff options
| author | Po Lu | 2021-12-21 19:25:26 +0800 |
|---|---|---|
| committer | Po Lu | 2021-12-21 19:26:40 +0800 |
| commit | 264589cdf762d015c8ecd102afb7eb61dc0ad65b (patch) | |
| tree | a9b880e25189bd4a65fd253870283677a23bfe85 /src | |
| parent | cf6dc1838af4b3d0604d0848e1ac0d4fbd9c3dbc (diff) | |
| download | emacs-264589cdf762d015c8ecd102afb7eb61dc0ad65b.tar.gz emacs-264589cdf762d015c8ecd102afb7eb61dc0ad65b.zip | |
Fix xg_event_is_scrollbar for grab-related events on XI2
* src/gtkutil.c (xg_event_is_for_scrollbar): Don't return true
if event coordinates are outside the frame on XInput 2.
Diffstat (limited to 'src')
| -rw-r--r-- | src/gtkutil.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gtkutil.c b/src/gtkutil.c index 7370a795c08..0f1c1103649 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c | |||
| @@ -4805,7 +4805,13 @@ xg_event_is_for_scrollbar (struct frame *f, const EVENT *event) | |||
| 4805 | #else | 4805 | #else |
| 4806 | gwin = gdk_display_get_window_at_pointer (gdpy, NULL, NULL); | 4806 | gwin = gdk_display_get_window_at_pointer (gdpy, NULL, NULL); |
| 4807 | #endif | 4807 | #endif |
| 4808 | #ifndef HAVE_XINPUT2 | ||
| 4808 | retval = gwin != gtk_widget_get_window (f->output_data.xp->edit_widget); | 4809 | retval = gwin != gtk_widget_get_window (f->output_data.xp->edit_widget); |
| 4810 | #else | ||
| 4811 | retval = (gwin | ||
| 4812 | && (gwin | ||
| 4813 | != gtk_widget_get_window (f->output_data.xp->edit_widget))); | ||
| 4814 | #endif | ||
| 4809 | #ifdef HAVE_XINPUT2 | 4815 | #ifdef HAVE_XINPUT2 |
| 4810 | GtkWidget *grab = gtk_grab_get_current (); | 4816 | GtkWidget *grab = gtk_grab_get_current (); |
| 4811 | if (event->type == GenericEvent | 4817 | if (event->type == GenericEvent |