diff --git a/src/statusicon.py b/src/statusicon.py index 33c3fa063..17bfa7b83 100644 --- a/src/statusicon.py +++ b/src/statusicon.py @@ -355,18 +355,16 @@ class StatusIcon: 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())