FlowBox: Explain how to avoid inflated min size
authorDaniel Boles <dboles@src.gnome.org>
Tue, 12 Sep 2017 21:48:58 +0000 (22:48 +0100)
committerDaniel Boles <dboles@src.gnome.org>
Tue, 12 Sep 2017 21:48:58 +0000 (22:48 +0100)
along the orthogonal orientation. It seems a FlowBox on its own can only
handle being shrunk along its main orientation. The orthogonal requests
a huge min size – reserving what it would need if the main orientation
got its min size, which would flow all children in 1 line orthogonally.

Adding it to a ScrolledWindow (any policy) enables free shrinking, so
size_allocate() can reflow how users in this situation probably expect.

https://bugzilla.gnome.org/show_bug.cgi?id=787021

gtk/gtkflowbox.c

index e9e2504fd005dcaf94240eeeffc127e8b76f21c4..3f204b9a57edb7b5f68ad761d76ff1ebbf957e1e 100644 (file)
  * Reducing the height will require more columns, so a larger width will
  * be requested.
  *
+ * The size request of a GtkFlowBox alone may not be what you expect; if you
+ * need to be able to shrink it along both axes and dynamically reflow its
+ * children, you may have to wrap it in a #GtkScrolledWindow to enable that.
+ *
  * The children of a GtkFlowBox can be dynamically sorted and filtered.
  *
  * Although a GtkFlowBox must have only #GtkFlowBoxChild children,