menus: Avoid unnecessary right padding
authorMatthias Clasen <mclasen@redhat.com>
Mon, 22 May 2023 20:14:17 +0000 (16:14 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 22 May 2023 20:16:45 +0000 (16:16 -0400)
We are using placeholders in the 'check' column
that are put in a size group, so that they all
take the same space once a check or radio is shown.

Unfortunately, for the inline-buttons option, we
were using a GtkBuiltinIcon as placeholder, and those
respect the -gtk-icon-size CSS property and take
a minimum size of 16px. Use a GtkGizmo instead to
get the expected result of no extra padding unless
there's a check or radio.

Fixes: #5839
gtk/gtkmenusectionbox.c

index 038724a741c55ab9cfc320d343af34330378a9af..739c8905634eb99a7308dfd9b547a594c3be2842 100644 (file)
@@ -664,7 +664,7 @@ gtk_menu_section_box_new_section (GtkMenuTrackerItem *item,
       gtk_orientable_set_orientation (GTK_ORIENTABLE (box->item_box), GTK_ORIENTATION_HORIZONTAL);
       gtk_widget_add_css_class (GTK_WIDGET (box->item_box), "inline-buttons");
 
-      spacer = gtk_builtin_icon_new ("none");
+      spacer = gtk_gizmo_new ("none", NULL, NULL, NULL,NULL, NULL, NULL);
       gtk_box_append (GTK_BOX (box->item_box), spacer);
       gtk_size_group_add_widget (box->indicators, spacer);