On Tue, 2006-10-24 at 15:12 +0200, Udo Giacomozzi wrote:
> BJ> On a sidenote, I have moved the clipping related Gui code into the
> BJ> relevant glues, because interfacing with the renderer is a glue's job.
>
> gtk.cpp directly speaks to the renderer (line 258):
>
> _renderer->set_invalidated_region(changed_bounds);
That situation I have yet to correct.
> BJ> So that sounds like we should have something like this in
> BJ> Gui::display():
>
> if (this->>glueImplementsClipping()) {
> BJ> _renderer->set_invalidated_region(changed_bounds);
> BJ> }
>
>
> Could be a solution, but the GUI looses control over the coordinates.
> For example, the 2 pixel correction is useless for renderers that
> don't do anti-aliasing anyway. At the other side the GUI might wish
> aligned coordinates (= aligned memcpy) to speed up double buffering.
>
> That's why my implementation worked like this:
>
> - gui.cpp tells the GUI implementation which area *must* be updated
>
> - The GUI implementation can ignore this /hint/ and is allowed to
> enlarge the bounds
>
> - The final bounds are passed to the renderer and only that portion of
> the screen is really updated.
Okay, I'll ensure that the sequence of events matches this description.
> It's probably a good idea to document this.
>
> Do you understand now what I mean?
Yes! Thanks very much for your detailed explanation. I will commit some
changes based upon this information later this week.
Bastiaan
_______________________________________________
Gnash-commit mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnash-commit