436df23...
by
Matthias Clasen <email address hidden>
Switch to a single size property for GtkHeaderBar
Having separate start-/end-size properties is nice because it
makes intuitive sense, but unfortunately, the actual headerbar
child properties (position, pack-type) are not sufficient to
fully reconstruct the needed placeholders. This is causing
anomalies and possibly crashes with undo/redo. For now, keep
things working the same way they do in boxes: placeholders
are always in pack-start, and only actual children can be
moved to pack-end.
c595738...
by
Tristan Van Berkom <email address hidden>
GtkHeaderBar: Improving child add/remove/replace support
o Removed misguided code block in ->add_child()
The said code block assumes that any placeholder being added
should be added at the end 'if' anything is at the start.
This big block of code makes things seem to work if you happened
to save the file with one placeholder on each side (sneaky), however
just breaks down when you save more than one placeholder at the
beginning.
In any case, the number of placeholders should be synchronized to
the "start-size" / "end-size" properties (minus the number of real
children which should be placed according to their "position"
packing property).
o Removed destructive calls to gtk_widget_destroy(), widgets are
not destroyed unless the project is finalized or the final reference
to them is part of a GladeCommand that is being cleared from the
undo/redo stack
o Ensure that the replacement placeholder added when ->remove_child()
is called has the special child type set if it's the title widget
(not sure if this is needed, but it doesnt hurt).
dfccf4b...
by
Tristan Van Berkom <email address hidden>
GtkHeaderBar: Fixed property sensitivity issues
The custom editor was calling glade_widget_property_set_sensitive()
directly which does not work with undo/redo.
Cleaned up the editor and adaptor so that the editor issues commands
and the adaptor->set_property() adjusts property sensitivity when
'show-close-button' and 'use-custom-title' properties change.
Also some minor changes to the gtk+.xml.in, no need for the
decoration layout property to be optional really, since the property
is a string and will not be saved if it's not set.
7fb37bf...
by
Matthias Clasen <email address hidden>
Fixes for actions
Make add/remove slot work without crashing. Turn 'add slot' into
a widget action, and don't offer 'remove slot' for the custom
title placeholder.
2eb84fd...
by
Matthias Clasen <email address hidden>
Redo sensitivity handling
And ignore show-close-button.
9c239f5...
by
Matthias Clasen <email address hidden>
Coding style cleanups
961733b...
by
Matthias Clasen <email address hidden>
Add a headerbar editor
Among other things, this lets us undoably remove a custom title
widget.
15b4f63...
by
Matthias Clasen <email address hidden>
Initial GtkHeaderBar support
Add support for GtkHeaderBar. Based on a patch by John Stowers.
This allows setting custom titles, and adding multiple children
at either end of the header bar. Repositioning children is not
really working, due to limitations of the GtkHeaderBar API.
9d373e1...
by
Tristan Van Berkom <email address hidden>
Added return if fail warning
In glade_gtk_container_replace_child(), warn if the passed 'current' widget
is not a direct child of 'container'.
3f5e029...
by
Tristan Van Berkom <email address hidden>
GladeCommand: Experimental - properly record child type for removal commands.
This seems to be working well but might cause problems (let's call it
a red flag if things go wrong and we need to bisect), it fixes drag & drop
undo/redo for GtkExpander (Drag and drop the expander label into the
expander content and undo/redo/undo/redo, this was broken, and this commit
fixes that and also improves things for the currently experimental headerbar
support).