Re: rendering-cleanup-next


On Sat, Sep 11, 2010 at 11:46 AM, Havoc Pennington <hp pobox com> wrote:
> * size_allocate vfunc and wrapper change to (* size_allocate)
> (GtkWidget, int w, int h)

Another possible addition here, which is in both Clutter and
HippoCanvas, would be an ORIGIN_CHANGED flag. (Clutter uses a flags
arg, Hippo uses just a boolean.)

One purpose of this flag is that window widgets need to know when the
absolute origin changes. This allows them to keep the window
positioned properly. You would need this to remove knowledge of
windows from the GtkWidget/GtkContainer/GtkSizeRequest/GtkSizeGroup
"core" and confine such knowledge to certain GtkWidgetWithWindow
classes that had to keep the GdkWindow positioned themselves. (While
right now the GTK core takes care of that.)

A related cleanup would be to make the widget translation always be
with respect to the parent container, rather than with respect to the
nearest GdkWindow.

At that point you could traverse widgets for most purposes without
caring whether they had a window.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]