~gnome3-team/glade/+git/glade:headerbar

Last commit made on 2014-11-07
Get this branch:
git clone -b headerbar https://git.launchpad.net/~gnome3-team/glade/+git/glade

Branch merges

Branch information

Name:
headerbar
Repository:
lp:~gnome3-team/glade/+git/glade

Recent commits

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.

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

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).