This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: test case for clipboard hang?


Lev,

Lev Bishop wrote:
1) Reboot
2) start a fresh xwin, xterm, notepad, and put some text in the xterm and notepad
3) select, ^C copy from notepad, middle-click in xterm. it pastes successfully
4) select in xterm, leave the text reverse-videoed
5) ^V paste into notepad (successfully)
6) drop the selection in xterm (by left clicking somewhere)
7) ^V paste into notepad (successfully, even though the selection is dropped)
8) select a different piece of text in xterm.
9) drop the selection in xterm
10) ^V paste into notepad: it hangs for a few seconds and doesn't paste. (The paste menu option is NOT greyed out at this point).

The problem was that copying something in Notepad caused the clipboard integration manager to take ownership of both the PRIMARY and CLIPBOARD selections in X. Selecting text in an xterm took ownership of the PRIMARY selection away from the clipboard manager. Unselecting the text in xterm released ownership of the PRIMARY selection, but left the CLIPBOARD selection supposedly owned by the clipboard integration manager (which means it thought it had text to copy from Win32 to X, but it didn't).


I changed the behavior slightly to release ownership of the Win32 clipboard and mark both X selections as unowned if one of the selections in X is released and the other is owned by the clipboard integration manager. In fact, I should take this one further and release ownership of any selection owned by the clipboard integration manager when something is selected in X. The current fix will probably work in 90% of cases for the time being.

I'd really appreciate some feedback on the new fix in XFree86-xserv-4.3.0-63, which should be hitting mirrors within a few hours.

Harold


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]