9 class ScreenDbusObj(dbus.service.Object):
11 # stuff the logging into a temporary and hidden directory.
13 os.chdir(os.environ['HOME'] + "/.zz_temp_screenlock_menu");
15 os.mkdir(os.environ['HOME'] + "/.zz_temp_screenlock_menu");
16 os.chdir(os.environ['HOME'] + "/.zz_temp_screenlock_menu");
17 session_bus = dbus.SessionBus()
18 bus_name=dbus.service.BusName("org.gnome.ScreenSaver",bus=session_bus)
19 dbus.service.Object.__init__(self,bus_name, '/org/gnome/ScreenSaver')
21 @dbus.service.method("org.gnome.ScreenSaver")
23 os.system( "xscreensaver-command -lock" )
25 if __name__ == '__main__':
26 object=ScreenDbusObj()
27 gobject.MainLoop().run()