<br><br><div class="gmail_quote">On Tue, Dec 18, 2012 at 7:55 AM, Pekka Paalanen <span dir="ltr"><<a href="mailto:ppaalanen@gmail.com" target="_blank">ppaalanen@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Tue, 18 Dec 2012 07:24:17 -0700<br>
Scott Moreau <<a href="mailto:oreaus@gmail.com">oreaus@gmail.com</a>> wrote:<br>
<br>
> On Tue, Dec 18, 2012 at 4:58 AM, Pekka Paalanen <<a href="mailto:ppaalanen@gmail.com">ppaalanen@gmail.com</a>> wrote:<br>
><br>
> > Instead of directly setting the dirty flag on weston_surface geometry,<br>
> > use a function for that.<br>
> ><br>
> > This allows us to hook into geometry dirtying in following patches.<br>
> ><br>
> > Also add comments to weston_surface fields, whose modification causes<br>
> > transform state to become outdated.<br>
> ><br>
> > Signed-off-by: Pekka Paalanen <<a href="mailto:ppaalanen@gmail.com">ppaalanen@gmail.com</a>><br>
> > ---<br>
> >  src/compositor.c              |   20 +++++++++++++-------<br>
> >  src/compositor.h              |   17 ++++++++++-------<br>
> >  src/shell.c                   |   24 ++++++++++--------------<br>
> >  src/util.c                    |    4 ++--<br>
> >  src/xwayland/window-manager.c |    4 ++--<br>
> >  tests/weston-test.c           |    2 +-<br>
> >  6 files changed, 38 insertions(+), 33 deletions(-)<br>
> ><br>
</div>...<br>
<div><div class="h5">> > diff --git a/src/compositor.h b/src/compositor.h<br>
> > index 1d790d3..3a3580a 100644<br>
> > --- a/src/compositor.h<br>
> > +++ b/src/compositor.h<br>
> > @@ -360,8 +360,8 @@ struct weston_region {<br>
> >   * To add a transformation to a surface, create a struct<br>
> > weston_transform, and<br>
> >   * add it to the list surface->geometry.transformation_list. Whenever you<br>
> >   * change the list, anything under surface->geometry, or anything in the<br>
> > - * weston_transforms linked into the list, you must set<br>
> > - * surface->geometry.dirty = 1.<br>
> > + * weston_transforms linked into the list, you must call<br>
> > + * weston_surface_geometry_dirty().<br>
> >   *<br>
> >   * The order in the list defines the order of transformations. Let the<br>
> > list<br>
> >   * contain the transformation matrices M1, ..., Mn as head to tail. The<br>
> > @@ -385,17 +385,17 @@ struct weston_surface {<br>
> >         struct weston_compositor *compositor;<br>
> >         pixman_region32_t clip;<br>
> >         pixman_region32_t damage;<br>
> > -       pixman_region32_t opaque;<br>
> > +       pixman_region32_t opaque;        /* geometry dirty */<br>
> ><br>
><br>
> I'm not sure what this comment is supposed to convey.<br>
><br>
><br>
> >         pixman_region32_t input;<br>
> >         struct wl_list link;<br>
> >         struct wl_list layer_link;<br>
> > -       float alpha;<br>
> > +       float alpha;                     /* geometry dirty */<br>
> ><br>
><br>
> This one as well.<br>
<br>
</div></div>Hi Scott,<br>
<br>
like written in the commit message, they are just a reminder of the<br>
fields' unusual nature. We might want to do a couple of additional<br>
patches, moving the fields under the 'geometry' anonymous struct. That<br>
would be also an easy way to review that all modifications actually set<br>
the dirty flag. However, it's a fair amount of churn without any other<br>
benefits.<br><br></blockquote><div><br>Hi Pekka,<br><br>Thanks for clarifying. If the comment is meant to be a reminder to set geometry dirty flag when on of these variables are changed, I think it should be more verbose and say just that. Alone, /* geometry dirty */ next to members that are not directly related may cause more confusion than no comment at all.<br>
<br>- Scott<br></div></div><br>