fixed-layout: Remove the NO_LAYOUT flag set

ClutterFixedLayout is the default layout manager for ClutterActor.

Existing subclasses of ClutterActor will get a fixed layout manager
regardless of whether they are going to use it, but since it sets the
CLUTTER_ACTOR_NO_LAYOUT flag, it will introduce regressions on actors
that perform their own layout management.

The CLUTTER_ACTOR_NO_LAYOUT flag was a bit of a mistake in the first
place, as it was introduced as a last minute workaround in the 1.0
process to deal with broken stuff in Moblin. It's going to be a target
for deprecation towards a removal when we start the 2.0 process.
This commit is contained in:
Emmanuele Bassi 2012-01-27 15:45:11 +00:00
parent 4360fcccf4
commit 31341986b1

View File

@ -146,42 +146,6 @@ clutter_fixed_layout_allocate (ClutterLayoutManager *manager,
} }
} }
void
clutter_fixed_layout_set_container (ClutterLayoutManager *manager,
ClutterContainer *container)
{
ClutterLayoutManagerClass *parent_class;
GObject *obj = G_OBJECT (manager);
if (container != NULL)
{
g_object_set_data (obj,
"-clutter-fixed-layout-container",
container);
/* signal Clutter that we don't impose any layout on
* our children, so we can shave off some relayout
* operations
*/
CLUTTER_ACTOR_SET_FLAGS (container, CLUTTER_ACTOR_NO_LAYOUT);
}
else
{
gpointer old_container;
old_container =
g_object_get_data (obj, "-clutter-fixed-layout-container");
if (old_container != NULL)
CLUTTER_ACTOR_UNSET_FLAGS (old_container, CLUTTER_ACTOR_NO_LAYOUT);
g_object_set_data (obj, "-clutter-fixed-layout-container", NULL);
}
parent_class = CLUTTER_LAYOUT_MANAGER_CLASS (clutter_fixed_layout_parent_class);
parent_class->set_container (manager, container);
}
static void static void
clutter_fixed_layout_class_init (ClutterFixedLayoutClass *klass) clutter_fixed_layout_class_init (ClutterFixedLayoutClass *klass)
{ {
@ -193,7 +157,6 @@ clutter_fixed_layout_class_init (ClutterFixedLayoutClass *klass)
manager_class->get_preferred_height = manager_class->get_preferred_height =
clutter_fixed_layout_get_preferred_height; clutter_fixed_layout_get_preferred_height;
manager_class->allocate = clutter_fixed_layout_allocate; manager_class->allocate = clutter_fixed_layout_allocate;
manager_class->set_container = clutter_fixed_layout_set_container;
} }
static void static void