From c54f348edfb1f8bb798f0060b8190d5bd08c2d9c Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 26 Oct 2016 14:28:17 -0400 Subject: [PATCH] color chooser: Fix a problem with show-editor=TRUE For some reason we end up allocating the colorplane widget before it is realized, and then never initialize the surface. Fix this by explicitly doing it on realize. https://bugzilla.gnome.org/show_bug.cgi?id=773474 --- gtk/gtkcolorplane.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gtk/gtkcolorplane.c b/gtk/gtkcolorplane.c index 0e37406812..cfb9a5983b 100644 --- a/gtk/gtkcolorplane.c +++ b/gtk/gtkcolorplane.c @@ -181,6 +181,14 @@ plane_size_allocate (GtkWidget *widget, create_surface (GTK_COLOR_PLANE (widget)); } +static void +plane_realize (GtkWidget *widget) +{ + GTK_WIDGET_CLASS (gtk_color_plane_parent_class)->realize (widget); + + create_surface (GTK_COLOR_PLANE (widget)); +} + static void set_cross_cursor (GtkWidget *widget, gboolean enabled) @@ -491,6 +499,7 @@ gtk_color_plane_class_init (GtkColorPlaneClass *class) widget_class->draw = plane_draw; widget_class->size_allocate = plane_size_allocate; + widget_class->realize = plane_realize; widget_class->key_press_event = plane_key_press; g_object_class_install_property (object_class,