Пример #1
0
 def init_clipboard(self):
     log("init_clipboard() enabled=%s, filter file=%s", self.clipboard, self.clipboard_filter_file)
     ### Clipboard handling:
     self._clipboard_helper = None
     self._clipboard_client = None
     self._clipboards = []
     if not self.clipboard:
         return
     clipboard_filter_res = []
     if self.clipboard_filter_file:
         if not os.path.exists(self.clipboard_filter_file):
             log.error("invalid clipboard filter file: '%s' does not exist - clipboard disabled!", self.clipboard_filter_file)
             return
         try:
             with open(self.clipboard_filter_file, "r" ) as f:
                 for line in f:
                     clipboard_filter_res.append(line.strip())
                 log("loaded %s regular expressions from clipboard filter file %s", len(clipboard_filter_res), self.clipboard_filter_file)
         except:
             log.error("error reading clipboard filter file %s - clipboard disabled!", self.clipboard_filter_file, exc_info=True)
             return
     try:
         from xpra.clipboard.gdk_clipboard import GDKClipboardProtocolHelper
         kwargs = {
                   "filters"     : clipboard_filter_res,
                   "can-send"    : self.clipboard_direction in ("to-client", "both"),
                   "can-receive" : self.clipboard_direction in ("to-server", "both"),
                   }
         self._clipboard_helper = GDKClipboardProtocolHelper(self.send_clipboard_packet, self.clipboard_progress, **kwargs)
         self._clipboards = CLIPBOARDS
     except Exception:
         #log("gdk clipboard helper failure", exc_info=True)
         log.error("Error: failed to setup clipboard helper", exc_info=True)
         self.clipboard = False
Пример #2
0
 def __init__(self):
     CLIPBOARDS = [SELECTION]
     self.helper = GDKClipboardProtocolHelper(self.send_packet_cb,
                                              self.progress_cb,
                                              clipboards=CLIPBOARDS)