diff --git a/pym/desktop/desktop.py b/pym/desktop/desktop.py index 3d4de8d..9268278 100644 --- a/pym/desktop/desktop.py +++ b/pym/desktop/desktop.py @@ -275,9 +275,12 @@ class Desktop(MethodsInterface): logoutCommand = "/usr/bin/kquitapp ksmserver" elif session == 'plasma': logoutCommand = "/usr/bin/pkill -f ksmserver" - elif session == 'gnome': + elif session in ('gnome', 'mate', 'cinnamon-session'): logoutCommand = "/usr/bin/qdbus org.gnome.SessionManager " \ "/org/gnome/SessionManager Logout 1" + elif session == 'lxqt': + logoutCommand = "/usr/bin/qdbus org.lxqt.session " \ + "/LXQtSession org.lxqt.session.logout" else: raise DesktopError(_("Unable to detect the X session")) if process("su", urLogin, "-c", @@ -303,6 +306,7 @@ class Desktop(MethodsInterface): getRunCommands(uid=uid)): break time.sleep(1) + time.sleep(1) if filter(lambda x: "xdm/xdm\x00--logout" in x, getRunCommands()):