def __init__(self, options): SessionsGUI.__init__(self, options) listener_class = get_listener_class() assert listener_class self.listener = listener_class(XPRA_MDNS_TYPE, mdns_found=None, mdns_add=self.mdns_add, mdns_remove=self.mdns_remove) log("%s%s=%s", listener_class, (XPRA_MDNS_TYPE, None, self.mdns_add, self.mdns_remove), self.listener) self.listener.start()
def has_mdns(self): try: from xpra.net.mdns import get_listener_class lc = get_listener_class() log("mdns listener class: %s", lc) if lc: return True except ImportError as e: log("no mdns support: %s", e) return False
def do_main(opts): from xpra.platform import program_context, command_error from xpra.log import enable_color with program_context("Xpra-Session-Browser", "Xpra Session Browser"): enable_color() if not get_listener_class(): command_error("no mDNS support in this build") return 1 gui = mdns_sessions(opts) gtk_main() return gui.exit_code
def browse(self, *_args): subcommand = "sessions" try: from xpra.net.mdns import get_listener_class listener = get_listener_class() if listener: subcommand = "mdns-gui" except ImportError: pass cmd = get_xpra_command() + [subcommand] proc = exec_command(cmd) if proc.poll() is None: self.busy_cursor(self.browse_button)
def do_main(opts): from xpra.platform import program_context, command_error from xpra.log import enable_color from xpra.platform.gui import init, set_default_icon with program_context("xpra-session-browser", "Xpra Session Browser"): enable_color() set_default_icon("mdns.png") init() if not get_listener_class(): command_error("no mDNS support in this build") return 1 mdns = opts.mdns if mdns: gui = mdns_sessions(opts) else: gui = SessionsGUI(opts) Gtk.main() return gui.exit_code