diff options
Diffstat (limited to 'vcl/unx/gtk3/gtk3gtkframe.cxx')
-rw-r--r-- | vcl/unx/gtk3/gtk3gtkframe.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx index df407459c569..bfc587d21579 100644 --- a/vcl/unx/gtk3/gtk3gtkframe.cxx +++ b/vcl/unx/gtk3/gtk3gtkframe.cxx @@ -2929,13 +2929,16 @@ gboolean GtkSalFrame::signalDraw(GtkWidget*, cairo_t *cr, gpointer frame) void GtkSalFrame::sizeAllocated(GtkWidget* pWidget, GdkRectangle *pAllocation, gpointer frame) { GtkSalFrame* pThis = static_cast<GtkSalFrame*>(frame); + // ignore size-allocations that occur during configuring an embedded SalObject + if (pThis->m_bSalObjectSetPosSize) + return; pThis->maGeometry.nWidth = pAllocation->width; pThis->maGeometry.nHeight = pAllocation->height; bool bRealized = gtk_widget_get_realized(pWidget); if (bRealized) pThis->AllocateFrame(); pThis->CallCallbackExc( SalEvent::Resize, nullptr ); - if (bRealized && !pThis->m_bSalObjectSetPosSize) + if (bRealized) pThis->TriggerPaintEvent(); } |