# HG changeset patch # User Olaf Wintermann # Date 1756564777 -7200 # Node ID 2fdfb8a15e826c8b6cd1b383214867ca673c9ab1 # Parent 3236d5ed3a95d44d92a5e65a36f35d09d08bad2e fix gtk3 build, implement workaround for gtk_button_set_can_shrink diff -r 3236d5ed3a95 -r 2fdfb8a15e82 ui/gtk/button.c --- a/ui/gtk/button.c Sat Aug 30 16:08:23 2025 +0200 +++ b/ui/gtk/button.c Sat Aug 30 16:39:37 2025 +0200 @@ -760,7 +760,12 @@ data); } gtk_button_set_label(GTK_BUTTON(button), args->label); +#if GTK_CHECK_VERSION(4, 0, 0) gtk_button_set_can_shrink(GTK_BUTTON(button), TRUE); +#elif GTK_MAJOR_VERSION == 3 + GtkWidget *child = gtk_bin_get_child(GTK_BIN(button)); + gtk_label_set_ellipsize(GTK_LABEL(child), PANGO_ELLIPSIZE_END); +#endif g_object_set_data(G_OBJECT(button), "ui_linkbutton", data); g_signal_connect( button, @@ -807,6 +812,11 @@ if(s->value.free) { s->value.free(s->value.ptr); } +#if GTK_MAJOR_VERSION == 3 + UiLinkButton *data = s->obj; + GtkWidget *child = gtk_bin_get_child(GTK_BIN(data->widget)); + gtk_label_set_ellipsize(GTK_LABEL(child), PANGO_ELLIPSIZE_END); +#endif }