Hello!
I'm unable to move the contents of the clipboard between applications. At the end you find an annotated --debugmsg +clipboard log (with a call for IsSelectionOwner inserted into CloseClipboard).
In short, the copying application can read the clipboard, but the other one can't. Seems like the x11drv/clipboard.c data isn't shared between the threads.
Copying between two notepad.exe.so-s works, but through the X selection only (guess from the logs; the IsSelectionOwner status is 1 (ie. S_PRIMARY) during that process).
Is it a mis(configuration|understanding) on my side, or isn't this functionality implemented?
Thanks: Feri.
### Application startup: trace:clipboard:OpenClipboard ((nil))... trace:clipboard:OpenClipboard returning 1 trace:clipboard:EmptyClipboard () trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_AcquireClipboard Grabbed X selection, owner=(00000000) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 fixme:font:WineEngCreateFontInstance Untranslated charset 138 ### Copy to selection: trace:clipboard:OpenClipboard (0x2007a)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:EmptyClipboard () trace:clipboard:GetOpenClipboardWindow () trace:clipboard:SetClipboardData (0000000D, 0x403a2f4a) ! trace:clipboard:GetOpenClipboardWindow () trace:clipboard:SetClipboardData (00000001, 0x403a099a) ! trace:clipboard:GetOpenClipboardWindow () trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 ### Paste selection (other application) trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 [...it fails...] ### Paste selection (application that made to copy) trace:clipboard:OpenClipboard (0x2007a)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:CLIPBOARD_EnumClipboardFormats Next available format 13 trace:clipboard:IsClipboardFormatAvailable (000D)- ret(1) trace:clipboard:GetClipboardData (0000000D) trace:clipboard:CLIPBOARD_RenderText UNICODETEXT -> UNICODETEXT trace:clipboard:CLIPBOARD_RenderFormat enter format=13 trace:clipboard:X11DRV_IsSelectionOwner status: 3 trace:clipboard:GetClipboardData returning 0x4039ec92 (type 13) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 [...success...]
On Mon, 2003-03-17 at 15:32, Ferenc Wagner wrote:
Hello!
I'm unable to move the contents of the clipboard between applications. At the end you find an annotated --debugmsg +clipboard log (with a call for IsSelectionOwner inserted into CloseClipboard).
In short, the copying application can read the clipboard, but the other one can't. Seems like the x11drv/clipboard.c data isn't shared between the threads.
It's shared between threads but not between processes.
Copying between two notepad.exe.so-s works, but through the X selection only (guess from the logs; the IsSelectionOwner status is 1 (ie. S_PRIMARY) during that process).
Is it a mis(configuration|understanding) on my side, or isn't this functionality implemented?
Wine always uses X selections as the transport method for exchanging data via the clipboard among two processes. Even between two wine apps. There are some settings that can change the behaviour of the clipboard. Checkout the clipboard section of your config file.
Thanks: Feri.
### Application startup: trace:clipboard:OpenClipboard ((nil))... trace:clipboard:OpenClipboard returning 1 trace:clipboard:EmptyClipboard () trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_AcquireClipboard Grabbed X selection, owner=(00000000) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 fixme:font:WineEngCreateFontInstance Untranslated charset 138 ### Copy to selection: trace:clipboard:OpenClipboard (0x2007a)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:EmptyClipboard () trace:clipboard:GetOpenClipboardWindow () trace:clipboard:SetClipboardData (0000000D, 0x403a2f4a) ! trace:clipboard:GetOpenClipboardWindow () trace:clipboard:SetClipboardData (00000001, 0x403a099a) ! trace:clipboard:GetOpenClipboardWindow () trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 ### Paste selection (other application) trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 [...it fails...]
X11DRV_IsSelectionOwner should return false. After this check you should see a request to the selection owner for a list of available formats.
### Paste selection (application that made to copy) trace:clipboard:OpenClipboard (0x2007a)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:CLIPBOARD_EnumClipboardFormats Next available format 13 trace:clipboard:IsClipboardFormatAvailable (000D)- ret(1) trace:clipboard:GetClipboardData (0000000D) trace:clipboard:CLIPBOARD_RenderText UNICODETEXT -> UNICODETEXT trace:clipboard:CLIPBOARD_RenderFormat enter format=13 trace:clipboard:X11DRV_IsSelectionOwner status: 3 trace:clipboard:GetClipboardData returning 0x4039ec92 (type 13) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3 [...success...]
Ulrich Czekalla ulrich.czekalla@utoronto.ca writes:
On Mon, 2003-03-17 at 15:32, Ferenc Wagner wrote:
In short, the copying application can read the clipboard, but the other one can't. Seems like the x11drv/clipboard.c data isn't shared between the threads.
It's shared between threads but not between processes. Wine always uses X selections as the transport method for exchanging data via the clipboard among two processes. Even between two wine apps.
Thanks for the clarification.
There are some settings that can change the behaviour of the clipboard.
Unfortunately, neither ClearAllSelections nor PersistentSelection helps with this problem.
### Paste selection (other application) trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 [...it fails...]
X11DRV_IsSelectionOwner should return false.
Sure it does (it returns (BOOL)status).
After this check you should see a request to the selection owner for a list of available formats.
This is a dumb application, it doesn't ask but tries. And goes nuts (see below). Now that I know it's the expected behaviour I will try to look into this. Don't hesitate if you can give me a clue! :)
Thanks for replying, cheers: Feri.
### The above "[...it fails...]" looks like: trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 418 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A2)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A3)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A4)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 13 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 1 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 7 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 2 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 3 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 4 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 5 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 6 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 13 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 1 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 7 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 8 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 9 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 10 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 11 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 12 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 13 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 1 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 7 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 128 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 129 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 131 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 130 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 15 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 14 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 406 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 407 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 408 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 409 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 410 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 411 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 412 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 413 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 414 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 415 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 416 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 417 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 418 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (0001)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 13 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 1 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 7 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 128 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 129 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 131 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 130 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 15 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 14 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 406 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 407 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 408 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 409 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 410 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 411 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 412 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 413 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 414 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 415 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 416 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 417 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 418 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (000D)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A5)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A4)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A3)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:OpenClipboard (0x20065)... trace:clipboard:OpenClipboard returning 1 trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 418 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 419 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 420 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:X11DRV_IsSelectionOwner status: 0 trace:clipboard:X11DRV_IsClipboardFormatAvailable enter for 421 trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_CLIPBOARD_CacheDataFormats enter trace:clipboard:X11DRV_IsClipboardFormatAvailable There is no selection owner trace:clipboard:IsClipboardFormatAvailable (01A2)- ret(0) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 0
I wrote:
In short, the copying application can read the clipboard, but the other one can't. [...] ### Application startup: trace:clipboard:OpenClipboard ((nil))... trace:clipboard:OpenClipboard returning 1 trace:clipboard:EmptyClipboard () trace:clipboard:GetOpenClipboardWindow () trace:clipboard:X11DRV_AcquireClipboard Grabbed X selection, owner=(00000000) trace:clipboard:CloseClipboard () trace:clipboard:X11DRV_IsSelectionOwner status: 3
I found a problem right here. Accoring to MSDN, OpenClipboard can be passed the NULL handle:
"If this parameter is NULL, the open clipboard is associated with the current task."
"If an application or dynamic-link library (DLL) specifies a NULL window handle when calling the OpenClipboard function, the clipboard is opened but is not associated with a window. In such a case, GetOpenClipboardWindow returns NULL."
However, Wine doesn't implement this special case. The NULL handle rolls through to X11DRV_AcquireClipboard, which grabs the selection to None (X11 terminology).
As far as I understand, the X selection must be attached to a window, so I invented the following hack: create a temporary window, grab the selection for it, then destroy the window and let Wine take care of the rest (assign the selection to another window or launch wineclipsrv). Not nice, but works. Unfortunately, I found no way of tricking X11DRV_ResetSelectionOwner into doing this for me. Opinions? Feri.
Index: clipboard.c =================================================================== RCS file: /home/wine/wine/dlls/x11drv/clipboard.c,v retrieving revision 1.8 diff -u -r1.8 clipboard.c --- clipboard.c 23 Jan 2003 21:32:35 -0000 1.8 +++ clipboard.c 24 Mar 2003 00:49:02 -0000 @@ -947,6 +947,16 @@ if ( !(selectionAcquired == (S_PRIMARY | S_CLIPBOARD)) ) { Atom xaClipboard = TSXInternAtom(display, _CLIPBOARD, False); + BOOL TempWndCreated = False; + + if (hWndClipWindow == NULL) + { + hWndClipWindow = CreateWindowA ("STATIC", NULL, 0, + 0, 0, 0, 0, + NULL, NULL, NULL, NULL); + TempWndCreated = True; + } + owner = X11DRV_get_whole_window( GetAncestor( hWndClipWindow, GA_ROOT ) );
/* Grab PRIMARY selection if not owned */ @@ -968,6 +978,9 @@ selectionWindow = owner; TRACE("Grabbed X selection, owner=(%08x)\n", (unsigned) owner); } + + if (TempWndCreated) + DestroyWindow (hWndClipWindow); } }