|
 |
f325b2 |
From b7c0576a8e8f39171b94d08fddea868da0459597 Mon Sep 17 00:00:00 2001
|
|
 |
f325b2 |
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
 |
f325b2 |
Date: Tue, 8 Dec 2015 13:09:34 +0000
|
|
 |
f325b2 |
Subject: [PATCH] Resolves: tdf#96285 restore bodge for unresizable windows
|
|
 |
f325b2 |
with no min size set
|
|
 |
f325b2 |
|
|
 |
f325b2 |
(cherry picked from commit e1df21cfe0318bf287ae8ce29261d4759c49bd5a)
|
|
 |
f325b2 |
|
|
 |
f325b2 |
Change-Id: Ia1af11514f6096ac55d561f729bbcba9ee5b0b14
|
|
 |
f325b2 |
---
|
|
 |
f325b2 |
vcl/inc/unx/gtk/gtkframe.hxx | 2 ++
|
|
 |
f325b2 |
vcl/unx/gtk3/gtk3gtkframe.cxx | 21 ++++++++++++++++++++-
|
|
 |
f325b2 |
2 files changed, 22 insertions(+), 1 deletion(-)
|
|
 |
f325b2 |
|
|
 |
f325b2 |
diff --git a/vcl/inc/unx/gtk/gtkframe.hxx b/vcl/inc/unx/gtk/gtkframe.hxx
|
|
 |
f325b2 |
index 0fb5da7..3bd5353 100644
|
|
 |
f325b2 |
--- a/vcl/inc/unx/gtk/gtkframe.hxx
|
|
 |
f325b2 |
+++ b/vcl/inc/unx/gtk/gtkframe.hxx
|
|
 |
f325b2 |
@@ -212,6 +212,8 @@ class GtkSalFrame : public SalFrame, public X11WindowProvider
|
|
 |
f325b2 |
|
|
 |
f325b2 |
#if GTK_CHECK_VERSION(3,0,0)
|
|
 |
f325b2 |
guint32 m_nLastScrollEventTime;
|
|
 |
f325b2 |
+ long m_nWidthRequest;
|
|
 |
f325b2 |
+ long m_nHeightRequest;
|
|
 |
f325b2 |
cairo_region_t* m_pRegion;
|
|
 |
f325b2 |
#else
|
|
 |
f325b2 |
GdkRegion* m_pRegion;
|
|
 |
f325b2 |
diff --git a/vcl/unx/gtk3/gtk3gtkframe.cxx b/vcl/unx/gtk3/gtk3gtkframe.cxx
|
|
 |
f325b2 |
index dcfebbf..1443054 100644
|
|
 |
f325b2 |
--- a/vcl/unx/gtk3/gtk3gtkframe.cxx
|
|
 |
f325b2 |
+++ b/vcl/unx/gtk3/gtk3gtkframe.cxx
|
|
 |
f325b2 |
@@ -885,6 +885,8 @@ void GtkSalFrame::widget_set_size_request(long nWidth, long nHeight)
|
|
 |
f325b2 |
|
|
 |
f325b2 |
void GtkSalFrame::window_resize(long nWidth, long nHeight)
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
+ m_nWidthRequest = nWidth;
|
|
 |
f325b2 |
+ m_nHeightRequest = nHeight;
|
|
 |
f325b2 |
gtk_window_resize(GTK_WINDOW(m_pWindow), nWidth, nHeight);
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
|
|
 |
f325b2 |
@@ -1055,6 +1057,9 @@ void GtkSalFrame::InitCommon()
|
|
 |
f325b2 |
m_aSystemData.pAppContext = NULL;
|
|
 |
f325b2 |
m_aSystemData.pShellWidget = m_aSystemData.pWidget;
|
|
 |
f325b2 |
|
|
 |
f325b2 |
+ m_nWidthRequest = 0;
|
|
 |
f325b2 |
+ m_nHeightRequest = 0;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
// fake an initial geometry, gets updated via configure event or SetPosSize
|
|
 |
f325b2 |
if( m_bDefaultPos || m_bDefaultSize )
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
@@ -1592,6 +1597,20 @@ void GtkSalFrame::setMinMaxSize()
|
|
 |
f325b2 |
aHints |= GDK_HINT_MAX_SIZE;
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
+ else
|
|
 |
f325b2 |
+ {
|
|
 |
f325b2 |
+ if (!m_bFullscreen && m_nWidthRequest && m_nHeightRequest)
|
|
 |
f325b2 |
+ {
|
|
 |
f325b2 |
+ aGeo.min_width = m_nWidthRequest;
|
|
 |
f325b2 |
+ aGeo.min_height = m_nHeightRequest;
|
|
 |
f325b2 |
+ aHints |= GDK_HINT_MIN_SIZE;
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
+ aGeo.max_width = m_nWidthRequest;
|
|
 |
f325b2 |
+ aGeo.max_height = m_nHeightRequest;
|
|
 |
f325b2 |
+ aHints |= GDK_HINT_MAX_SIZE;
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+ }
|
|
 |
f325b2 |
+
|
|
 |
f325b2 |
if( m_bFullscreen && m_aMaxSize.Width() && m_aMaxSize.Height() )
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
aGeo.max_width = m_aMaxSize.Width();
|
|
 |
f325b2 |
@@ -1623,7 +1642,7 @@ void GtkSalFrame::SetMinClientSize( long nWidth, long nHeight )
|
|
 |
f325b2 |
m_aMinSize = Size( nWidth, nHeight );
|
|
 |
f325b2 |
if( m_pWindow )
|
|
 |
f325b2 |
{
|
|
 |
f325b2 |
- widget_set_size_request(nWidth, nHeight );
|
|
 |
f325b2 |
+ widget_set_size_request(nWidth, nHeight);
|
|
 |
f325b2 |
setMinMaxSize();
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
}
|
|
 |
f325b2 |
--
|
|
 |
f325b2 |
2.5.0
|
|
 |
f325b2 |
|