From db2221c97d0532b2a558ba44fb80f2b4e39c2c0a Mon Sep 17 00:00:00 2001 From: Martin Nordholts Date: Sat, 16 Jan 2010 21:22:56 +0100 Subject: [PATCH] app: Fix gimp_dialog_factory_constructor() Fix gimp_dialog_factory_constructor() so that non-dockables can be created by the dialog factory. --- app/widgets/gimpdialogfactory.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/widgets/gimpdialogfactory.c b/app/widgets/gimpdialogfactory.c index c89e4a4b33..83a8381e6c 100644 --- a/app/widgets/gimpdialogfactory.c +++ b/app/widgets/gimpdialogfactory.c @@ -1378,16 +1378,17 @@ gimp_dialog_factory_constructor (GimpDialogFactory *factory, GimpContext *context, gint view_size) { - GtkWidget *dockable = NULL; GtkWidget *widget; widget = entry->new_func (factory, context, view_size); /* The entry is for a dockable, so we simply need to put the created * widget in a dockable - */ + */ if (widget && entry->dockable) { + GtkWidget *dockable = NULL; + dockable = gimp_dockable_new (entry->name, entry->blurb, entry->stock_id, entry->help_id); gtk_container_add (GTK_CONTAINER (dockable), widget); @@ -1396,9 +1397,12 @@ gimp_dialog_factory_constructor (GimpDialogFactory *factory, /* EEK */ g_object_set_data (G_OBJECT (dockable), "gimp-dialog-identifier", entry->identifier); + + /* Return the dockable instead */ + widget = dockable; } - return dockable; + return widget; } static void