44 lines
1.6 KiB
Diff
44 lines
1.6 KiB
Diff
|
diff --git a/src/gtkutil.c b/src/gtkutil.c
|
||
|
index 44f828c..d434a48 100644
|
||
|
--- a/src/gtkutil.c
|
||
|
+++ b/src/gtkutil.c
|
||
|
@@ -784,6 +784,14 @@ xg_hide_tooltip (FRAME_PTR f)
|
||
|
General functions for creating widgets, resizing, events, e.t.c.
|
||
|
***********************************************************************/
|
||
|
|
||
|
+static void
|
||
|
+my_log_handler (const gchar *log_domain, GLogLevelFlags log_level,
|
||
|
+ const gchar *msg, gpointer user_data)
|
||
|
+{
|
||
|
+ if (!strstr (msg, "visible children"))
|
||
|
+ fprintf (stderr, "XX %s-WARNING **: %s\n", log_domain, msg);
|
||
|
+}
|
||
|
+
|
||
|
/* Make a geometry string and pass that to GTK. It seems this is the
|
||
|
only way to get geometry position right if the user explicitly
|
||
|
asked for a position when starting Emacs.
|
||
|
@@ -799,6 +807,7 @@ xg_set_geometry (FRAME_PTR f)
|
||
|
int top = f->top_pos;
|
||
|
int yneg = f->size_hint_flags & YNegative;
|
||
|
char geom_str[sizeof "=x--" + 4 * INT_STRLEN_BOUND (int)];
|
||
|
+ guint id;
|
||
|
|
||
|
if (xneg)
|
||
|
left = -left;
|
||
|
@@ -811,9 +820,15 @@ xg_set_geometry (FRAME_PTR f)
|
||
|
(xneg ? '-' : '+'), left,
|
||
|
(yneg ? '-' : '+'), top);
|
||
|
|
||
|
+ /* Silence warning about visible children. */
|
||
|
+ id = g_log_set_handler ("Gtk", G_LOG_LEVEL_WARNING | G_LOG_FLAG_FATAL
|
||
|
+ | G_LOG_FLAG_RECURSION, my_log_handler, NULL);
|
||
|
+
|
||
|
if (!gtk_window_parse_geometry (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)),
|
||
|
geom_str))
|
||
|
fprintf (stderr, "Failed to parse: '%s'\n", geom_str);
|
||
|
+
|
||
|
+ g_log_remove_handler ("Gtk", id);
|
||
|
}
|
||
|
}
|
||
|
|