gtkmodelbutton: Ensure that accel label is always aligned to end
authorCorey Berla <corey@berla.me>
Mon, 9 Jan 2023 06:32:22 +0000 (22:32 -0800)
committerCorey Berla <corey@berla.me>
Mon, 9 Jan 2023 06:32:22 +0000 (22:32 -0800)
When the model button just has a text label and accel text,
the button fills and the accel label is implicitly aigned to end.
When there's also a icon, even though it's not shown (because
icons are only shown if there's no text), the button doesn't fill
and the accel ends up not aligned (assuming one of the other buttons
is longer). Ensure that the accel label is aligned to the end.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5504
gtk/gtkmodelbutton.c

index d0795315d274581fcccd9f26e5f4fa0916986707..f1409c89ff4f65c7de8676954efc4f8090da52b2 100644 (file)
@@ -832,6 +832,8 @@ update_accel (GtkModelButton *self,
                                             "css-name", "accelerator",
                                             NULL);
           gtk_widget_insert_before (self->accel_label, GTK_WIDGET (self), NULL);
+          gtk_widget_set_hexpand (self->accel_label, TRUE),
+          gtk_widget_set_halign (self->accel_label, GTK_ALIGN_END);
         }
 
       gtk_accelerator_parse (accel, &key, &mods);