[gtk: 1/2] popover: Correctly substract arrow height when measuring popover widget
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk: 1/2] popover: Correctly substract arrow height when measuring popover widget
- Date: Sat, 16 Jul 2022 23:19:11 +0000 (UTC)
commit 50a8cbc0da3118640cf0525d30f94c54e68b73d2
Author: Yubao Liu <yubao liu gmail com>
Date: Sun Jul 17 00:12:39 2022 +0800
popover: Correctly substract arrow height when measuring popover widget
For default popover arrow position and default height-for-width layout mode,
natural_width is calculated first with for_size=-1 and orientation=HORIZONTAL,
at the end of gtk_popover_measure() natural_width won't be added with tail_height.
Then to measure with for_size=natural_width and orientation=VERTICAL, obviously
for_size shouldn't be substract with tail_height.
The wrong logic will force content in popover gets less width and then text labels
in popover may get wrapped unnecessarily.
gtk/gtkpopover.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c
index d6f976daa7..8ac30372b7 100644
--- a/gtk/gtkpopover.c
+++ b/gtk/gtkpopover.c
@@ -1451,7 +1451,7 @@ gtk_popover_measure (GtkWidget *widget,
GtkCssStyle *style;
GtkBorder shadow_width;
- if (for_size >= 0)
+ if (for_size >= 0 && (POS_IS_VERTICAL (priv->position) == (orientation == GTK_ORIENTATION_HORIZONTAL)))
for_size -= tail_height;
style = gtk_css_node_get_style (gtk_widget_get_css_node (GTK_WIDGET (priv->contents_widget)));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]