On Sep 11, 2008, at 5:28 PM, Jeremy Huddleston wrote:
1) select text in the TK Widget PRIMARY="Owned by TK" CLIPBOARD=NULL PASTEBOARD=NULL 1a) Do X11.app's Edit->Copy PRIMARY="Owned by TK" CLIPBOARD=NULL PASTEBOARD="TK Text 1" 2) do edit->copy in gimp PRIMARY="Owned by TK" CLIPBOARD="Owned by Gimp" PASTEBOARD="GIMP IMAGE" 3) select new text in TK Widget PRIMARY="Owned by TK" CLIPBOARD="Owned by Gimp" PASTEBOARD="GIMP IMAGE" 3a) Do X11.app's Edit->Copy PRIMARY="Owned by TK" CLIPBOARD="Owned by Gimp" PASTEBOARD="GIMP IMAGE"
That isn't, however, quite what George and I had in mind. What we had in mind would look more like this: 1) select text in the TK Widget PRIMARY="Owned by TK" CLIPBOARD=NULL PASTEBOARD=NULL 1a) Do X11.app's Edit->Copy PRIMARY="Owned by TK" CLIPBOARD=NULL PASTEBOARD="TK Text 1" 2a) do edit->copy in gimp Proxy notices change to CLIPBOARD and copies to PRIMARY, becoming owner of PRIMARY 2b) Since we only pay attention to PRIMARY in copy-to-pasteboard operations now: PRIMARY="Owned by Proxy" CLIPBOARD="Owned by Gimp" PASTEBOARD="GIMP IMAGE" 3) select new text in TK Widget PRIMARY="Owned by TK" CLIPBOARD="Owned by Gimp" PASTEBOARD="GIMP IMAGE" 3a) Do X11.app's Edit->Copy PRIMARY="Owned by TK" CLIPBOARD="Owned by Gimp" PASTEBOARD="Tk text" (since, again, we are only looking at PRIMARY). So, in essence, the CLIPBOARD becomes irrelevant to the copy-to- pasteboard operation since the proxy simply takes care to copy the CLIPBOARD to PRIMARY when an application only sets the former. It also becomes essentially impossible for an X11 app to own both CLIPBOARD and PRIMARY with different contents in each, which I consider a feature rather than a bug on our platform since that's just confusing and we're essentially forcing X11 users to face the fact that they're on a Mac. I also think it's fairly close to what you suggested a few rounds ago, so where's the flaw in that thinking? - Jordan