diff options
author | Benjamin Otte <otte.benjamin@googlemail.com> | 2022-04-12 23:48:55 +0000 |
---|---|---|
committer | Benjamin Otte <otte.benjamin@googlemail.com> | 2022-04-12 23:48:55 +0000 |
commit | a2599c2bb938b0b1afa9bed2f762d18772aa5fc0 (patch) | |
tree | da1eb5bb74d298cb880d29814d4f8d8c4ca2e754 | |
parent | 7d1429cb91c4a6b6eb851af5dce9c27334045e8c (diff) | |
parent | e2675306e1b7f92313e3e9c9dc930aa4d207db5e (diff) | |
download | gtk+-a2599c2bb938b0b1afa9bed2f762d18772aa5fc0.tar.gz |
Merge branch 'clarify-scrollable-docs' into 'main'
scrollable: Clarify when to set adjustment props
See merge request GNOME/gtk!4632
-rw-r--r-- | gtk/gtkscrollable.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/gtk/gtkscrollable.c b/gtk/gtkscrollable.c index 041f09ac04..4df0c170f6 100644 --- a/gtk/gtkscrollable.c +++ b/gtk/gtkscrollable.c @@ -29,13 +29,11 @@ * All scrollable widgets should do the following. * * - When a parent widget sets the scrollable child widget’s adjustments, - * the widget should populate the adjustments’ - * [property@Gtk.Adjustment:lower], - * [property@Gtk.Adjustment:upper], - * [property@Gtk.Adjustment:step-increment], - * [property@Gtk.Adjustment:page-increment] and - * [property@Gtk.Adjustment:page-size] properties and connect to the - * [signal@Gtk.Adjustment::value-changed] signal. + * the widget should connect to the [signal@Gtk.Adjustment::value-changed] + * signal. The child widget should then populate the adjustments’ properties + * as soon as possible, which usually means queueing an allocation right away + * and populating the properties in the [vfunc@Gtk.Widget.size_allocate] + * implementation. * * - Because its preferred size is the size for a fully expanded widget, * the scrollable widget must be able to cope with underallocations. @@ -43,7 +41,8 @@ * [vfunc@Gtk.Widget.size_allocate] implementation. * * - When the parent allocates space to the scrollable child widget, - * the widget should update the adjustments’ properties with new values. + * the widget must ensure the adjustments’ property values are correct and up + * to date, for example using [method@Gtk.Adjustment.configure]. * * - When any of the adjustments emits the [signal@Gtk.Adjustment::value-changed] * signal, the scrollable widget should scroll its contents. |