1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-15 17:00:26 +00:00

Prevent SelectionNotify etc from reaching GTK 3

* src/xterm.c (handle_one_xevent): Prevent selection events from
reaching GTK if they are destined for an Emacs window.
This commit is contained in:
Po Lu 2022-08-12 09:25:12 +08:00
parent 48215c41d1
commit 05c4e7bfbd

View File

@ -17877,6 +17877,12 @@ handle_one_xevent (struct x_display_info *dpyinfo,
if (!x_window_to_frame (dpyinfo, event->xselection.requestor))
goto OTHER;
#endif /* not USE_X_TOOLKIT and not USE_GTK */
#ifdef HAVE_GTK3
/* GTK 3 apparently chokes on these events since they have no
associated device. (bug#56869, another bug as well that I
can't find) */
*finish = X_EVENT_DROP;
#endif
x_handle_selection_notify (&event->xselection);
break;
@ -17885,6 +17891,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
if (!x_window_to_frame (dpyinfo, event->xselectionclear.window))
goto OTHER;
#endif /* not USE_X_TOOLKIT and not USE_GTK */
#ifdef HAVE_GTK3
*finish = X_EVENT_DROP;
#endif
{
const XSelectionClearEvent *eventp = &event->xselectionclear;
@ -17911,6 +17920,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
if (!x_window_to_frame (dpyinfo, event->xselectionrequest.owner))
goto OTHER;
#endif /* USE_X_TOOLKIT */
#ifdef HAVE_GTK3
*finish = X_EVENT_DROP;
#endif
{
const XSelectionRequestEvent *eventp = &event->xselectionrequest;