summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-05-10 16:48:00 +0100
committerCaolán McNamara <caolanm@redhat.com>2021-05-10 20:57:50 +0200
commit4e5f2861154e6bccb7a77356c76c5327d8bda6c4 (patch)
treee312411125af4ca5e9e78729dc0d6777d52f80a7
parentf1311618e29315526565797f6edf2918d58f0fe4 (diff)
gtk4: use gtk_window_minimize to replace gtk_window_iconify
Change-Id: I6c50e6f60e24dd5bd93e1ef5f62f3cd3845f9194 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115348 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--vcl/unx/gtk3/gtkframe.cxx15
1 files changed, 10 insertions, 5 deletions
diff --git a/vcl/unx/gtk3/gtkframe.cxx b/vcl/unx/gtk3/gtkframe.cxx
index 06d08ac42580..fd72d3801998 100644
--- a/vcl/unx/gtk3/gtkframe.cxx
+++ b/vcl/unx/gtk3/gtkframe.cxx
@@ -1862,7 +1862,6 @@ void GtkSalFrame::SetWindowState( const SalFrameState* pState )
gtk_window_maximize( GTK_WINDOW(m_pWindow) );
else
gtk_window_unmaximize( GTK_WINDOW(m_pWindow) );
-#if !GTK_CHECK_VERSION(4, 0, 0)
/* #i42379# there is no rollup state in GDK; and rolled up windows are
* (probably depending on the WM) reported as iconified. If we iconify a
* window here that was e.g. a dialog, then it will be unmapped but still
@@ -1871,11 +1870,17 @@ void GtkSalFrame::SetWindowState( const SalFrameState* pState )
* on windows with a parent (that is transient frames) since these tend
* to not be represented in an icon task list.
*/
- if( (pState->mnState & WindowStateState::Minimized)
- && ! m_pParent )
- gtk_window_iconify( GTK_WINDOW(m_pWindow) );
+ bool bMinimize = pState->mnState & WindowStateState::Minimized && !m_pParent;
+#if GTK_CHECK_VERSION(4, 0, 0)
+ if (bMinimize)
+ gtk_window_minimize(GTK_WINDOW(m_pWindow));
+ else
+ gtk_window_unminimize(GTK_WINDOW(m_pWindow));
+#else
+ if (bMinimize)
+ gtk_window_iconify(GTK_WINDOW(m_pWindow));
else
- gtk_window_deiconify( GTK_WINDOW(m_pWindow) );
+ gtk_window_deiconify(GTK_WINDOW(m_pWindow));
#endif
}
TriggerPaintEvent();