Applications need a way to fix or adapt the decoration layout,
for situations like split header bars. Setting the layout from
the theme with a style property did not offer a good way to do
this, and the ::show-close-button property does not provide
fine-grained control.
To improve the situation, move the layout string to a property of
GtkHeaderBar which is backed by a setting. This allows platforms to
set a default button layout independent of the theme, while applications
can override the default.
The style GtkWindow style property is now deprecated and ignored.
Turn this into a GtkApplication with an app menu.
Allow to override the gtk-shell-shows-app-menu setting
and the decoration-button-layout style property.
Now that the nice titlebar example is in gtk3-demo, we can
use testtitlebar as an actual testbed for headerbar stuff.
This immediately reveals size allocation issues when titlebar
widgets change size.
Add a boolean property that controls whether a window close button
will be shown in the header bar or not. Doing this in the toolkit
will ensure consistency of the visual apperance.
https://bugzilla.gnome.org/show_bug.cgi?id=702971