mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-09 10:20:07 +00:00
GtkMenuSectionBox: Always show separators for labeled sections
...unless they are empty.
This commit is contained in:
parent
4f293c427c
commit
f3ba001a1d
@ -84,16 +84,21 @@ gtk_menu_section_box_sync_separators (GtkMenuSectionBox *box,
|
||||
gint *n_items)
|
||||
{
|
||||
gboolean should_have_separator;
|
||||
gboolean has_separator;
|
||||
gboolean has_label;
|
||||
gint n_items_before = *n_items;
|
||||
|
||||
gtk_container_foreach (GTK_CONTAINER (box->item_box), gtk_menu_section_box_sync_item, n_items);
|
||||
|
||||
should_have_separator = n_items_before > 0 && *n_items > n_items_before;
|
||||
|
||||
if (box->separator == NULL)
|
||||
return;
|
||||
|
||||
if (should_have_separator == (gtk_widget_get_parent (box->separator) != NULL))
|
||||
has_separator = gtk_widget_get_parent (box->separator) != NULL;
|
||||
has_label = !GTK_IS_SEPARATOR (box->separator);
|
||||
|
||||
should_have_separator = (has_label || n_items_before > 0) && *n_items > n_items_before;
|
||||
|
||||
if (should_have_separator == has_separator)
|
||||
return;
|
||||
|
||||
if (should_have_separator)
|
||||
|
@ -1,7 +1,8 @@
|
||||
<interface>
|
||||
<menu id="menu">
|
||||
<section>
|
||||
<attribute name="display-hint">horizontal-buttons</attribute>
|
||||
<!--<attribute name="display-hint">horizontal-buttons</attribute>-->
|
||||
<attribute name="label">Edit</attribute>
|
||||
<item>
|
||||
<attribute name="label">Cut</attribute>
|
||||
<attribute name="action">top.cut</attribute>
|
||||
|
Loading…
Reference in New Issue
Block a user