diff options
Diffstat (limited to 'compiz-screenlock-freedesktop.py')
-rwxr-xr-x | compiz-screenlock-freedesktop.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/compiz-screenlock-freedesktop.py b/compiz-screenlock-freedesktop.py new file mode 100755 index 000000000000..c60e4f2d9191 --- /dev/null +++ b/compiz-screenlock-freedesktop.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python +# Provide DBus service to call compiz+xdotool +# http://ubuntuforums.org/showthread.php?t=1865593&s=1c7f28c50a3f258e1d3404e41f098a0b&p=11418175#post11418175 + +import dbus +import dbus.service +import dbus.glib +from gi.repository import GObject +import subprocess + +class ScreenDbusObj(dbus.service.Object): + def __init__(self): + session_bus = dbus.SessionBus() + bus_name=dbus.service.BusName("org.freedesktop.ScreenSaver",bus=session_bus) + dbus.service.Object.__init__(self,bus_name, '/org/freedesktop/ScreenSaver') + + @dbus.service.method("org.freedesktop.ScreenSaver") + def Lock(self): + subprocess.Popen(['bash','/usr/bin/compiz-cube-screensaver']) + +if __name__ == '__main__': + object=ScreenDbusObj() + GObject.MainLoop().run() + |