freenode/#clim - IRC Chatlog
Search
3:44:21
loke
slyrus: Found some issues with my implementation that I need to fix before proposing to merge
3:45:19
pillton
loke: Will that protocol work with other operating systems? I can't see why it wouldn't.
3:45:48
loke
By the way, did you know that the old implementation allows you to shift-middle-click in _any_ stream pane to request a paste? It does sends all the events to the primary selection owner, but simply don't insert the result.
3:46:37
loke
I intend to implement a support for a Local-only implementation (that only supporst copy&paste within a single Lisp image)
3:46:56
pillton
loke: Sure, but does the copy and paste mechanism on other platforms fit the abstraction?
3:49:20
loke
Of course, if you make a request and say that you absolutely, positively only want an image, and the backend doesn't support pasting of images, you'll get nothing. But that's no different from the case where the backend does support and image, but there is only text in the clipboard.
3:52:40
pillton
loke: Ok. Just checking. I was surprised by your description of X11's mechanism and thought other systems might have equally weird behaviour.
3:53:41
loke
pillton: I honstly don't know much about how the other systems work, but I can't even think of a system that would be so bizarre that it wouldn't fit in this scheme.
3:55:01
pillton
Yeah. As long as the protocol is fundamentally asynchronous how much worse can it get?
3:57:36
loke
So when copying strings, you need to check for :STRING :TEXT :|text/plain| :|text/plain;charset=utf-8| and probably a few more.
3:58:35
loke
Oh, and when copying rich text, you use :|text/html|, and just include the content as HTML, which works almost everywhere, except for Firefox where the copied content needs to start with a <meta http-equiv...> tag
4:00:39
loke
And even more fun, gnome-terminal just refuses to acknowledge that I hold the clipboard and will simply grey out the "copy" button). There may be some magic property I need to set to make it work, but it's notr eally documented anywhere. Also, it's not just my CLIM code that has problemn with this. It's a common problem with some versions of GNOME and other non-GNOME applciations. As usual, GNOME feels that nothing except them matters.