def __init__(self, mainloop): self.mainloop = mainloop parser = argparse.ArgumentParser(description='Cinnamon Screensaver Command') parser.add_argument('--exit', '-e', dest="action_id", action='store_const', const=Action.EXIT, help=_('Causes the screensaver to exit gracefully')) parser.add_argument('--query', '-q', dest="action_id", action='store_const', const=Action.QUERY, help=_('Query the state of the screensaver')) parser.add_argument('--time', '-t', dest="action_id", action='store_const', const=Action.TIME, help=_('Query the length of time the screensaver has been active')) parser.add_argument('--lock', '-l', dest="action_id", action='store_const', const=Action.LOCK, help=_('Tells the running screensaver process to lock the screen immediately')) parser.add_argument('--activate', '-a', dest="action_id", action='store_const', const=Action.ACTIVATE, help=_('Turn the screensaver on (blank the screen)')) parser.add_argument('--deactivate', '-d', dest="action_id", action='store_const', const=Action.DEACTIVATE, help=_('If the screensaver is active then deactivate it (un-blank the screen)')) parser.add_argument('--version', '-V', dest="action_id", action='store_const', const=Action.VERSION, help=_('Version of this application')) parser.add_argument('--away-message', '-m', dest="message", action='store', default="", help=_('Message to be displayed in lock screen')) args = parser.parse_args() if not args.action_id: parser.print_help() quit() if args.action_id == Action.VERSION: print("cinnamon-screensaver %s" % (config.VERSION)) quit() self.action_id = args.action_id self.message = args.message self.client = ScreenSaverClient() self.client.connect("client-ready", self.on_client_ready)