summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Pokorny <andreas.pokorny@canonical.com>2016-07-19 10:36:45 +0200
committerWilliam Hua <william.hua@canonical.com>2016-08-11 12:23:38 -0400
commit056ddf2567032443f2f7bce03f4c291c253ee7c2 (patch)
tree6423a5c0221eb7e1bbae33ad40b96d5f510bf5fd
parent4e418ed71d1610903dab7568a6f79611d984137b (diff)
downloadgtk+-056ddf2567032443f2f7bce03f4c291c253ee7c2.tar.gz
Fix execution of dialog
When a dialog is created, the mir event source is already executed on the call stack. So without the recurse flag it will not be run in the main loop used for the dialog. https://bugzilla.gnome.org/show_bug.cgi?id=768138
-rw-r--r--gdk/mir/gdkmireventsource.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gdk/mir/gdkmireventsource.c b/gdk/mir/gdkmireventsource.c
index 910d3892a5..b363062167 100644
--- a/gdk/mir/gdkmireventsource.c
+++ b/gdk/mir/gdkmireventsource.c
@@ -725,8 +725,14 @@ _gdk_mir_event_source_new (GdkDisplay *display)
{
GdkMirEventSource *source;
GSource *g_source;
+ char *name;
g_source = g_source_new (&gdk_mir_event_source_funcs, sizeof (GdkMirEventSource));
+ name = g_strdup_printf ("GDK Mir Event source (%s)", gdk_display_get_name (display));
+ g_source_set_name (g_source, name);
+ g_free (name);
+ g_source_set_priority (g_source, GDK_PRIORITY_EVENTS);
+ g_source_set_can_recurse (g_source, TRUE);
g_source_attach (g_source, NULL);
source = (GdkMirEventSource *) g_source;