[gimp] Bug 791689 - On-Canvas GUI broken with extended input device
- From: N/A <ell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] Bug 791689 - On-Canvas GUI broken with extended input device
- Date: Thu, 4 Jan 2018 11:12:50 +0000 (UTC)
commit d3b45f1875d9665573f8a027aee7c208ee97ef64
Author: Ell <ell_se yahoo com>
Date: Thu Jan 4 06:07:44 2018 -0500
Bug 791689 - On-Canvas GUI broken with extended input device
Improve the disabling/enabling of extended input events for the
canvas during enter/leave-notify events, in particular, so that
enter-notify events that are a result of pointer ungrabbing don't
erroneously reeanble extended input events.
app/display/gimpdisplayshell-tool-events.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/app/display/gimpdisplayshell-tool-events.c b/app/display/gimpdisplayshell-tool-events.c
index 12f93da..633d69b 100644
--- a/app/display/gimpdisplayshell-tool-events.c
+++ b/app/display/gimpdisplayshell-tool-events.c
@@ -583,7 +583,9 @@ gimp_display_shell_canvas_tool_events_internal (GtkWidget *canvas,
{
GdkEventCrossing *cevent = (GdkEventCrossing *) event;
- if (shell->inferior_ignore_mode)
+ if (shell->inferior_ignore_mode &&
+ cevent->subwindow == NULL &&
+ cevent->mode == GDK_CROSSING_NORMAL)
{
shell->inferior_ignore_mode = FALSE;
gtk_widget_set_extension_events (shell->canvas,
@@ -611,7 +613,10 @@ gimp_display_shell_canvas_tool_events_internal (GtkWidget *canvas,
{
GdkEventCrossing *cevent = (GdkEventCrossing *) event;
- if (cevent->detail == GDK_NOTIFY_INFERIOR)
+ if (! shell->inferior_ignore_mode &&
+ cevent->subwindow == NULL &&
+ cevent->mode == GDK_CROSSING_NORMAL &&
+ cevent->detail == GDK_NOTIFY_INFERIOR)
{
shell->inferior_ignore_mode = TRUE;
gtk_widget_set_extension_events (shell->canvas,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]