From 708e067617f421deba362a853f50fb820bef89fe Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 30 Mar 2023 08:51:19 +0200 Subject: [PATCH] columnviewcellwidget: Ensure for_size is large enough When clipping, we still need to do proper size requests. --- gtk/gtkcolumnviewcellwidget.c | 5 +++++ gtk/gtkcolumnviewtitle.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/gtk/gtkcolumnviewcellwidget.c b/gtk/gtkcolumnviewcellwidget.c index ecbc2806d6..82bd843bb4 100644 --- a/gtk/gtkcolumnviewcellwidget.c +++ b/gtk/gtkcolumnviewcellwidget.c @@ -108,10 +108,15 @@ gtk_column_view_cell_widget_measure (GtkWidget *widget, { if (fixed_width > -1) { + int min; + if (for_size == -1) for_size = unadj_width; else for_size = MIN (for_size, unadj_width); + + gtk_widget_measure (child, GTK_ORIENTATION_HORIZONTAL, -1, &min, NULL, NULL, NULL); + for_size = MAX (for_size, min); } } diff --git a/gtk/gtkcolumnviewtitle.c b/gtk/gtkcolumnviewtitle.c index b55e980821..43ae56224f 100644 --- a/gtk/gtkcolumnviewtitle.c +++ b/gtk/gtkcolumnviewtitle.c @@ -90,10 +90,15 @@ gtk_column_view_title_measure (GtkWidget *widget, { if (fixed_width > -1) { + int min; + if (for_size == -1) for_size = unadj_width; else for_size = MIN (for_size, unadj_width); + + gtk_widget_measure (child, GTK_ORIENTATION_HORIZONTAL, -1, &min, NULL, NULL, NULL); + for_size = MAX (for_size, min); } }