diff --git a/ChangeLog b/ChangeLog index 105bce0d2..1651d5652 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-06-23 Neil Roberts + + * clutter/clutter-entry.c (clutter_entry_paint): Set the clip + using COGL directly instead of setting the actor clip. Otherwise + the clip stack will be unbalanced after the first draw. This also + frees up the actor clip to be set by an application. + 2008-06-23 Matthew Allum * NEWS: diff --git a/clutter/clutter-entry.c b/clutter/clutter-entry.c index fd57b6024..0a4b07072 100644 --- a/clutter/clutter-entry.c +++ b/clutter/clutter-entry.c @@ -422,9 +422,8 @@ clutter_entry_paint (ClutterActor *self) else width = priv->width; - clutter_actor_set_clip (self, 0, 0, - width, - clutter_actor_get_height (self)); + cogl_clip_set (0, 0, CLUTTER_INT_TO_FIXED (width), + CLUTTER_INT_TO_FIXED (clutter_actor_get_height (self))); actor_width = width - (2 * priv->entry_padding); clutter_entry_ensure_layout (entry, actor_width); @@ -482,6 +481,8 @@ clutter_entry_paint (ClutterActor *self) if (CLUTTER_ENTRY_GET_CLASS (entry)->paint_cursor) CLUTTER_ENTRY_GET_CLASS (entry)->paint_cursor (entry); + + cogl_clip_unset (); } static void