Changes between Version 27 and Version 28 of Clipboard
- Timestamp:
- 09/22/19 09:52:06 (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Clipboard
v27 v28 33 33 * on OSX, we have to use polling to see client-side changes (see #11) 34 34 * the HTML5 client can only access the clipboard when the browser decides it is appropriate to do so (usually following clicks or specific key combinations) 35 * the xpra clibboard code is also problematic: the [/browser/xpra/trunk/src/xpra/gtk_common/nested_main.py nested main loop] code is known to cause serious problems on some platforms36 35 }}} 37 36 38 37 39 38 {{{#!div class="box" 40 == Notes and Tuning==39 == Clipboard Tools == 41 40 42 As noted in the [/wiki/FAQ], running a clipboard manager will interfere with the clipboard synchronization. At best, it will cause unnecessary traffic, at worst it can cause sluggishness and even crashes.41 As noted in the [/wiki/FAQ], running a clipboard manager will interfere with the clipboard synchronization. 43 42 44 In order to prevent such issues, the code will automatically disable the clipboard if it looks like the synchronization is entering a loop. 45 You will see a message in the log output indicating: 46 {{{ 47 clipboard disabled: more than 10 clipboard requests per second! 48 }}} 49 The maximum number of requests per second can be tuned setting the environment variable {{{XPRA_CLIPBOARD_LIMIT}}} to the desired value on the server. ie: 50 {{{ 51 XPRA_CLIPBOARD_LIMIT=20 xpra start ... 52 }}} 43 At best, it will cause unnecessary traffic, at worst it can cause sluggishness and synchronization problems. 53 44 }}} 54 45 … … 81 72 == Useful Pointers == 82 73 Here are some pointers: 83 * [http://www.pygtk.org/docs/pygtk/class-gtkclipboard.html gtk.Clipboard] is the nice wrapper class pygtk provides for us84 74 * [http://stackoverflow.com/questions/3571179/how-does-x11-clipboard-handle-multiple-data-formats How does X11 clipboard handle multiple data formats?] 85 75 * [http://www.virtualbox.org/svn/vbox/trunk/src/VBox/GuestHost/SharedClipboard/x11-clipboard.cpp x11-clipboard.cpp] from {{{VirtualBox}}} … … 93 83 {{{#!div class="box" 94 84 == Source code == 95 * [/browser/xpra/trunk/src/xpra/clipboard/clipboard_base.py xpra.clipboard.clipboard_base] - the base class for clipboard implementations 96 * [/browser/xpra/trunk/src/xpra/clipboard/gdk_clipboard.py xpra.clipboard.gdk_clipboard] - the gdk clipboard implementation (which requires Cython to build the C parts that allow us to access X11 atoms). It also contains the {{{TranslatedClipboardProtocolHelper}}} which is used by Windows clients to translate the local clipboard to a particular X11 clipboard. 85 [/browser/xpra/trunk/src/xpra/clipboard/] 97 86 }}} 98 87 … … 100 89 {{{#!div class="box" 101 90 == Related tickets == 91 * #812 clipboard rewrite 92 * #2312 clipboard images with html5 client 93 * #1844 async clipboard api 102 94 * #41: when we support concurrent users on the same session, we currently give the clipboard to the first client - doing anything else will be quite tricky 103 95 * #812 re-implement clipboard without gtk or nested main