st: Remove custom text direction stuff

Clutter has its own built-in system for managing text directions, like GTK+.
Convert over to use this.

https://bugzilla.gnome.org/show_bug.cgi?id=670034
This commit is contained in:
Jasper St. Pierre
2012-02-13 20:37:28 -05:00
parent d5285674ae
commit 15f881f967
22 changed files with 54 additions and 115 deletions

View File

@ -65,8 +65,6 @@ struct _StWidgetPrivate
gboolean hover : 1;
gboolean can_focus : 1;
StTextDirection direction;
AtkObject *accessible;
ClutterActor *label_actor;
@ -557,7 +555,7 @@ st_widget_get_theme_node (StWidget *widget)
* direction, to allow to adapt the CSS when necessary without
* requiring separate style sheets.
*/
if (st_widget_get_direction (widget) == ST_TEXT_DIRECTION_RTL)
if (clutter_actor_get_text_direction (CLUTTER_ACTOR (widget)) == CLUTTER_TEXT_DIRECTION_RTL)
direction_pseudo_class = "rtl";
else
direction_pseudo_class = "ltr";
@ -1499,47 +1497,6 @@ st_widget_ensure_style (StWidget *widget)
st_widget_recompute_style (widget, NULL);
}
static StTextDirection default_direction = ST_TEXT_DIRECTION_LTR;
StTextDirection
st_widget_get_default_direction (void)
{
return default_direction;
}
void
st_widget_set_default_direction (StTextDirection dir)
{
g_return_if_fail (dir != ST_TEXT_DIRECTION_NONE);
default_direction = dir;
}
StTextDirection
st_widget_get_direction (StWidget *self)
{
g_return_val_if_fail (ST_IS_WIDGET (self), ST_TEXT_DIRECTION_LTR);
if (self->priv->direction != ST_TEXT_DIRECTION_NONE)
return self->priv->direction;
else
return default_direction;
}
void
st_widget_set_direction (StWidget *self, StTextDirection dir)
{
StTextDirection old_direction;
g_return_if_fail (ST_IS_WIDGET (self));
old_direction = st_widget_get_direction (self);
self->priv->direction = dir;
if (old_direction != st_widget_get_direction (self))
st_widget_style_changed (self);
}
/**
* st_widget_set_track_hover:
* @widget: A #StWidget