From d95f313cb0894e1af2d1cdba7497d20f82526bbd Mon Sep 17 00:00:00 2001 From: Ximi1970 Date: Tue, 29 Dec 2020 16:17:15 +0100 Subject: [PATCH] Also set the x11 hide flags --- app/SysTray-X/SysTray-X-app/windowctrl-unix.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/app/SysTray-X/SysTray-X-app/windowctrl-unix.cpp b/app/SysTray-X/SysTray-X-app/windowctrl-unix.cpp index a818877..d38da7a 100644 --- a/app/SysTray-X/SysTray-X-app/windowctrl-unix.cpp +++ b/app/SysTray-X/SysTray-X-app/windowctrl-unix.cpp @@ -500,6 +500,15 @@ void WindowCtrlUnix::minimizeWindow( quint64 window ) #ifdef DEBUG_DISPLAY_ACTIONS emit signalConsole( "Withdraw window" ); #endif + + /* + * Set the flags (GNOME, Wayland?) + */ + SendEvent( m_display, window, "_NET_WM_STATE", _NET_WM_STATE_ADD, _ATOM_SKIP_TASKBAR ); + SendEvent( m_display, window, "_NET_WM_STATE", _NET_WM_STATE_ADD, _ATOM_SKIP_PAGER ); + + Flush( m_display ); + /* * Remove from taskbar and task switchers */ @@ -572,6 +581,14 @@ void WindowCtrlUnix::normalizeWindow( quint64 window ) MapWindow( m_display, window ); SetWMNormalHints( m_display, window, m_tb_window_hints[ window ] ); + + /* + * Reset the hide flags + */ + SendEvent( m_display, window, "_NET_WM_STATE", _NET_WM_STATE_REMOVE, _ATOM_SKIP_TASKBAR ); + SendEvent( m_display, window, "_NET_WM_STATE", _NET_WM_STATE_REMOVE, _ATOM_SKIP_PAGER ); + + Flush( m_display ); } /*