vcl/unx/gtk3/gtk3gtkframe.cxx | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
New commits: commit 0c62976b4713156e93aa17b9381e010491a49a24 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed May 29 15:41:15 2019 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Wed May 29 18:05:23 2019 +0200 tdf#124694 gtk3 GtkFixed takes the max size of all its children... as its preferred size, causing it to not clip its child, but grow instead to match Change-Id: I57f740177aae619d11966f5382a6cc5f7a964be3 Reviewed-on: https://gerrit.libreoffice.org/73167 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index 27d186923b6f..c180c077bd19 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -763,11 +763,30 @@ void GtkSalFrame::resizeWindow( long nWidth, long nHeight ) window_resize(nWidth, nHeight); } +// tdf#124694 GtkFixed takes the max size of all its children as its +// preferred size, causing it to not clip its child, but grow instead. + +static void +ooo_fixed_get_preferred_height(GtkWidget*, gint *minimum, gint *natural) +{ + *minimum = 0; + *natural = 0; +} + +static void +ooo_fixed_get_preferred_width(GtkWidget*, gint *minimum, gint *natural) +{ + *minimum = 0; + *natural = 0; +} + static void ooo_fixed_class_init(GtkFixedClass *klass) { GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass); widget_class->get_accessible = ooo_fixed_get_accessible; + widget_class->get_preferred_height = ooo_fixed_get_preferred_height; + widget_class->get_preferred_width = ooo_fixed_get_preferred_width; } /* _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits