public interface Scrollable : Object
`GtkScrollable` is an interface for widgets with native scrolling ability.
To implement this interface you should override the [property@Gtk.Scrollable:hadjustment] and [property@Gtk.Scrollable:vadjustment] properties.
Creating a scrollable widget
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:
- Because its preferred size is the size for a fully expanded widget, the scrollable widget must be able to cope with underallocations. This means that it must accept any value passed to its GtkWidgetClass.size_allocate() function.
- When the parent allocates space to the scrollable child widget, the widget should update the adjustments’ properties with new values.
- When any of the adjustments emits the [signal@Gtk.Adjustment:
GtkScrollable:value-changed] signal, the scrollable widget should scroll its contents.