Revert "builder: Stop using GtkBuildable.get_id"
This reverts commit 92edd4c476.
This commit changed behavior that GNOME Builder relies on.
This commit is contained in:
@@ -626,7 +626,10 @@ gtk_builder_get_parameters (GtkBuilder *builder,
|
||||
static const char *
|
||||
object_get_id (GObject *object)
|
||||
{
|
||||
return g_object_get_data (object, "gtk-builder-id");
|
||||
if (GTK_IS_BUILDABLE (object))
|
||||
return gtk_buildable_get_buildable_id (GTK_BUILDABLE (object));
|
||||
else
|
||||
return g_object_get_data (object, "gtk-builder-id");
|
||||
}
|
||||
|
||||
static GObject *
|
||||
@@ -669,7 +672,10 @@ static inline void
|
||||
object_set_id (GObject *object,
|
||||
const char *id)
|
||||
{
|
||||
g_object_set_data_full (object, "gtk-builder-id", g_strdup (id), g_free);
|
||||
if (GTK_IS_BUILDABLE (object))
|
||||
gtk_buildable_set_buildable_id (GTK_BUILDABLE (object), id);
|
||||
else
|
||||
g_object_set_data_full (object, "gtk-builder-id", g_strdup (id), g_free);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -608,6 +608,9 @@ static gboolean gtk_widget_real_mnemonic_activate (GtkWidget
|
||||
gboolean group_cycling);
|
||||
static void gtk_widget_accessible_interface_init (GtkAccessibleInterface *iface);
|
||||
static void gtk_widget_buildable_interface_init (GtkBuildableIface *iface);
|
||||
static void gtk_widget_buildable_set_id (GtkBuildable *buildable,
|
||||
const char *id);
|
||||
static const char * gtk_widget_buildable_get_id (GtkBuildable *buildable);
|
||||
static GObject * gtk_widget_buildable_get_internal_child (GtkBuildable *buildable,
|
||||
GtkBuilder *builder,
|
||||
const char *childname);
|
||||
@@ -649,6 +652,7 @@ static GQuark quark_size_groups = 0;
|
||||
static GQuark quark_auto_children = 0;
|
||||
static GQuark quark_font_options = 0;
|
||||
static GQuark quark_font_map = 0;
|
||||
static GQuark quark_builder_set_id = 0;
|
||||
|
||||
GType
|
||||
gtk_widget_get_type (void)
|
||||
@@ -8492,6 +8496,10 @@ gtk_widget_buildable_add_child (GtkBuildable *buildable,
|
||||
static void
|
||||
gtk_widget_buildable_interface_init (GtkBuildableIface *iface)
|
||||
{
|
||||
quark_builder_set_id = g_quark_from_static_string ("gtk-builder-set-id");
|
||||
|
||||
iface->set_id = gtk_widget_buildable_set_id;
|
||||
iface->get_id = gtk_widget_buildable_get_id;
|
||||
iface->get_internal_child = gtk_widget_buildable_get_internal_child;
|
||||
iface->custom_tag_start = gtk_widget_buildable_custom_tag_start;
|
||||
iface->custom_tag_end = gtk_widget_buildable_custom_tag_end;
|
||||
@@ -8499,6 +8507,20 @@ gtk_widget_buildable_interface_init (GtkBuildableIface *iface)
|
||||
iface->add_child = gtk_widget_buildable_add_child;
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_widget_buildable_set_id (GtkBuildable *buildable,
|
||||
const char *id)
|
||||
{
|
||||
g_object_set_qdata_full (G_OBJECT (buildable), quark_builder_set_id,
|
||||
g_strdup (id), g_free);
|
||||
}
|
||||
|
||||
static const char *
|
||||
gtk_widget_buildable_get_id (GtkBuildable *buildable)
|
||||
{
|
||||
return g_object_get_qdata (G_OBJECT (buildable), quark_builder_set_id);
|
||||
}
|
||||
|
||||
static GObject *
|
||||
gtk_widget_buildable_get_internal_child (GtkBuildable *buildable,
|
||||
GtkBuilder *builder,
|
||||
|
||||
Reference in New Issue
Block a user