diff options
author | Koop Mast <kwm@FreeBSD.org> | 2015-12-31 17:37:15 +0000 |
---|---|---|
committer | Koop Mast <kwm@FreeBSD.org> | 2015-12-31 17:37:15 +0000 |
commit | 5b35f2ffb9c88b5dc28ab9fe7e3d8be366f8582e (patch) | |
tree | 162ffed84a7b28530b2143fdbf1a957bb36cb0b7 /x11-toolkits | |
parent | 78b67c4481bfb0a2af505769f4e496e7b6a30b3b (diff) |
Notes
Diffstat (limited to 'x11-toolkits')
-rw-r--r-- | x11-toolkits/gtk30/Makefile | 2 | ||||
-rw-r--r-- | x11-toolkits/gtk30/files/patch-gtk_gtkentrycompletion.c | 50 |
2 files changed, 51 insertions, 1 deletions
diff --git a/x11-toolkits/gtk30/Makefile b/x11-toolkits/gtk30/Makefile index 3d404a7cf70e..105b311c2010 100644 --- a/x11-toolkits/gtk30/Makefile +++ b/x11-toolkits/gtk30/Makefile @@ -5,7 +5,7 @@ PORTNAME= gtk PORTVERSION= 3.16.7 -PORTREVISION?= 1 +PORTREVISION?= 2 CATEGORIES= x11-toolkits MASTER_SITES= GNOME/sources/gtk+/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} PKGNAMESUFFIX= 3 diff --git a/x11-toolkits/gtk30/files/patch-gtk_gtkentrycompletion.c b/x11-toolkits/gtk30/files/patch-gtk_gtkentrycompletion.c new file mode 100644 index 000000000000..cddd08f4b7fb --- /dev/null +++ b/x11-toolkits/gtk30/files/patch-gtk_gtkentrycompletion.c @@ -0,0 +1,50 @@ + +https://git.gnome.org/browse/gtk+/commit/?id=0731c502626d2b739281f7bb87f5cfd9d8a61ade + +From 0731c502626d2b739281f7bb87f5cfd9d8a61ade Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <mclasen@redhat.com> +Date: Thu, 15 Oct 2015 20:16:54 -0400 +Subject: entry completion: Only grab the device if we have one + +When the entry completion is popped up from a timeout, we may +not have a device. In that case, don't call gdk_device_grab, +do avoid criticals. +--- + gtk/gtkentrycompletion.c | 21 ++++++++++++--------- + 1 file changed, 12 insertions(+), 9 deletions(-) + +diff --git a/gtk/gtkentrycompletion.c b/gtk/gtkentrycompletion.c +index cee8f25..9acae9d 100644 +--- gtk/gtkentrycompletion.c ++++ gtk/gtkentrycompletion.c +@@ -1654,15 +1654,18 @@ gtk_entry_completion_popup (GtkEntryCompletion *completion) + + gtk_widget_show (completion->priv->popup_window); + +- gtk_device_grab_add (completion->priv->popup_window, completion->priv->device, TRUE); +- gdk_device_grab (completion->priv->device, gtk_widget_get_window (completion->priv->popup_window), +- GDK_OWNERSHIP_WINDOW, TRUE, +- GDK_BUTTON_PRESS_MASK | +- GDK_BUTTON_RELEASE_MASK | +- GDK_POINTER_MOTION_MASK, +- NULL, GDK_CURRENT_TIME); +- +- completion->priv->has_grab = TRUE; ++ if (completion->priv->device) ++ { ++ gtk_device_grab_add (completion->priv->popup_window, completion->priv->device, TRUE); ++ gdk_device_grab (completion->priv->device, gtk_widget_get_window (completion->priv->popup_window), ++ GDK_OWNERSHIP_WINDOW, TRUE, ++ GDK_BUTTON_PRESS_MASK | ++ GDK_BUTTON_RELEASE_MASK | ++ GDK_POINTER_MOTION_MASK, ++ NULL, GDK_CURRENT_TIME); ++ ++ completion->priv->has_grab = TRUE; ++ } + } + + void +-- +cgit v0.11.2 + |