summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/xterm.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 3b60dba69bd..a6ef2bfd159 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -4349,11 +4349,16 @@ x_update_opaque_region (struct frame *f, XEvent *configure)
(unsigned char *) &opaque_region, 4);
else
{
- object_class = G_OBJECT_GET_CLASS (FRAME_GTK_OUTER_WIDGET (f));
- class = GTK_WIDGET_CLASS (object_class);
+ /* This causes child frames to not update correctly for an
+ unknown reason. (bug#55779) */
+ if (!FRAME_PARENT_FRAME (f))
+ {
+ object_class = G_OBJECT_GET_CLASS (FRAME_GTK_OUTER_WIDGET (f));
+ class = GTK_WIDGET_CLASS (object_class);
- if (class->style_updated)
- class->style_updated (FRAME_GTK_OUTER_WIDGET (f));
+ if (class->style_updated)
+ class->style_updated (FRAME_GTK_OUTER_WIDGET (f));
+ }
}
#endif
unblock_input ();