summaryrefslogtreecommitdiff
path: root/gtk/gtktoolpalette.c
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2013-03-23 14:09:20 -0400
committerColin Walters <walters@verbum.org>2013-03-23 17:07:15 -0400
commit4f0e9cbf8190d55ef65deaa21be4b523807d1697 (patch)
tree65cfb792a81184cae227b87a3a6f000f4c8e6aa9 /gtk/gtktoolpalette.c
parentd6b4e849578910a354f671d8de09616af7f3ebe1 (diff)
downloadgtk+-4f0e9cbf8190d55ef65deaa21be4b523807d1697.tar.gz
gtktoolpalette: Only call gdk_atom_intern when we're constructed
Otherwise we end up trying to instantiate a display manager in class_init which breaks introspection scanning. https://bugzilla.gnome.org/show_bug.cgi?id=696457
Diffstat (limited to 'gtk/gtktoolpalette.c')
-rw-r--r--gtk/gtktoolpalette.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gtk/gtktoolpalette.c b/gtk/gtktoolpalette.c
index 3d9d7f3ccc..a5790531ef 100644
--- a/gtk/gtktoolpalette.c
+++ b/gtk/gtktoolpalette.c
@@ -216,6 +216,12 @@ gtk_tool_palette_init (GtkToolPalette *palette)
palette->priv->style_set = FALSE;
palette->priv->text_size_group = gtk_size_group_new (GTK_SIZE_GROUP_BOTH);
+
+ if (dnd_target_atom_item == GDK_NONE)
+ {
+ dnd_target_atom_item = gdk_atom_intern_static_string (dnd_targets[0].target);
+ dnd_target_atom_group = gdk_atom_intern_static_string (dnd_targets[1].target);
+ }
}
static void
@@ -1080,9 +1086,6 @@ gtk_tool_palette_class_init (GtkToolPaletteClass *cls)
GTK_PARAM_READWRITE));
g_type_class_add_private (cls, sizeof (GtkToolPalettePrivate));
-
- dnd_target_atom_item = gdk_atom_intern_static_string (dnd_targets[0].target);
- dnd_target_atom_group = gdk_atom_intern_static_string (dnd_targets[1].target);
}
/**