From 5a71dbae42fc98283d9c384db44e1fc8b59a60e4 Mon Sep 17 00:00:00 2001
From: Yann Leboulanger <asterix@lagaule.org>
Date: Wed, 30 Dec 2009 11:10:11 +0100
Subject: [PATCH] hide() roster instead of iconify() it when clicking on
 systray. Fixes #5505

---
 src/systray.py | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/systray.py b/src/systray.py
index e2c09331b1..ccbd2ee2f7 100644
--- a/src/systray.py
+++ b/src/systray.py
@@ -326,18 +326,16 @@ class Systray:
 		win = gajim.interface.roster.window
 		if len(gajim.events.get_systray_events()) == 0:
 			# No pending events, so toggle visible/hidden for roster window
-			if not win.iconify_initially and (win.get_property(
+			if win..get_property('visible') and (win.get_property(
 			'has-toplevel-focus') or os.name == 'nt'):
 				# visible in ANY virtual desktop?
 
 				# we could be in another VD right now. eg vd2
 				# and we want to show it in vd2
 				if not gtkgui_helpers.possibly_move_window_in_current_desktop(win):
-					win.set_property('skip-taskbar-hint', False)
-					win.iconify() # else we hide it from VD that was visible in
-					win.set_property('skip-taskbar-hint', True)
+					win.hide() # else we hide it from VD that was visible in
 			else:
-				win.deiconify()
+				win.show_all()
 				if not gajim.config.get('roster_window_skip_taskbar'):
 					win.set_property('skip-taskbar-hint', False)
 				win.present_with_time(gtk.get_current_event_time())
-- 
GitLab