diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Ewmh.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Ewmh.cc b/src/Ewmh.cc index 911c919..fc762e7 100644 --- a/src/Ewmh.cc +++ b/src/Ewmh.cc | |||
@@ -885,6 +885,11 @@ void Ewmh::setState(FluxboxWindow &win, Atom state, bool value) { | |||
885 | if ((value && !win.isFullscreen()) || | 885 | if ((value && !win.isFullscreen()) || |
886 | (!value && win.isFullscreen())) | 886 | (!value && win.isFullscreen())) |
887 | setFullscreen(win, value); | 887 | setFullscreen(win, value); |
888 | } else if (state == m_net_wm_state_hidden) { // minimized | ||
889 | if (value && !win.isIconic()) | ||
890 | win.iconify(); | ||
891 | else if (!value && win.isIconic()) | ||
892 | win.deiconify(); | ||
888 | } else if (state == m_net_wm_state_skip_taskbar) { | 893 | } else if (state == m_net_wm_state_skip_taskbar) { |
889 | win.setIconHidden(value); | 894 | win.setIconHidden(value); |
890 | } else if (state == m_net_wm_state_below) { // bottom layer | 895 | } else if (state == m_net_wm_state_below) { // bottom layer |
@@ -913,6 +918,11 @@ void Ewmh::toggleState(FluxboxWindow &win, Atom state) { | |||
913 | win.maximizeVertical(); | 918 | win.maximizeVertical(); |
914 | } else if (state == m_net_wm_state_fullscreen) { // fullscreen | 919 | } else if (state == m_net_wm_state_fullscreen) { // fullscreen |
915 | setFullscreen(win, getState(win) == 0); // toggle current state | 920 | setFullscreen(win, getState(win) == 0); // toggle current state |
921 | } else if (state == m_net_wm_state_hidden) { // minimized | ||
922 | if(win.isIconic()) | ||
923 | win.deiconify(); | ||
924 | else | ||
925 | win.iconify(); | ||
916 | } else if (state == m_net_wm_state_skip_taskbar) { | 926 | } else if (state == m_net_wm_state_skip_taskbar) { |
917 | win.setIconHidden(!win.isIconHidden()); | 927 | win.setIconHidden(!win.isIconHidden()); |
918 | } else if (state == m_net_wm_state_below) { // bottom layer | 928 | } else if (state == m_net_wm_state_below) { // bottom layer |