{"thread":{"id":"10976","subject":"gitk's copy pasteboard doesn't persist after it quits","startedAt":"2007-11-22T11:44:16Z","lastAt":"2007-11-22T21:29:06Z","messageCount":3,"participants":["Jonathan del Strother","Shawn O. Pearce","Jean-François Veillette"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"60670","messageId":"DFBFC631-01BF-4D2D-BCF3-3FC376479CB2@steelskies.com","threadId":"10976","inReplyTo":null,"subject":"gitk's copy pasteboard doesn't persist after it quits","fromName":"Jonathan del Strother","fromEmail":"maillist@steelskies.com","sentAt":"2007-11-22T11:44:16Z","receivedAt":"2007-11-22T11:44:16Z","isPatch":false,"sender":{"key":"jon.delstrother@bestbefore.tv","avatar":"https://gravatar.com/avatar/754e21ab701c00e2d21fc261187254c34b2a1c0b959d9ee5be1a295990be3081?d=mp&s=160"},"body":"On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put  \ninto the system-wide pasteboard.  It's definitely copied - I can paste  \nit back into the sha1 field - but it seems to be some sort of local  \npasteboard that's specific to gitk\n\nIf I switch to another app, the sha1 is stored in the pasteboard  \ncorrectly, and I can then quit gitk and still have it available.  I'm  \nguessing that gitk (or Tcl/Tk) is syncing with the system-wide  \npasteboard on focus change, but not on quit.\n\nI'm using the version of gitk in 388afe7881b, and Tcl 8.4.7\n\n\nAny suggestions on fixing / working around this?\n\nJon\n"},{"id":"60708","messageId":"20071122210105.GY14735@spearce.org","threadId":"10976","inReplyTo":"DFBFC631-01BF-4D2D-BCF3-3FC376479CB2@steelskies.com","subject":"Re: gitk's copy pasteboard doesn't persist after it quits","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-11-22T21:01:05Z","receivedAt":"2007-11-22T21:01:05Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Jonathan del Strother <maillist@steelskies.com> wrote:\n> On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put  \n> into the system-wide pasteboard.  It's definitely copied - I can paste  \n> it back into the sha1 field - but it seems to be some sort of local  \n> pasteboard that's specific to gitk\n> \n> If I switch to another app, the sha1 is stored in the pasteboard  \n> correctly, and I can then quit gitk and still have it available.  I'm  \n> guessing that gitk (or Tcl/Tk) is syncing with the system-wide  \n> pasteboard on focus change, but not on quit.\n\nI've seen this not just on Mac OS X but also on Windows.  It seems\nlike Tk wipes the clipboard clean on exit, so I've just learned to\nnot exit a Tk application until I'm done with the clipboard...\n\n-- \nShawn.\n"},{"id":"60712","messageId":"2F4229F3-C4BE-4BC2-8F2D-90519D25944C@yahoo.ca","threadId":"10976","inReplyTo":"20071122210105.GY14735@spearce.org","subject":"Re: gitk's copy pasteboard doesn't persist after it quits","fromName":"Jean-François Veillette","fromEmail":"jean_francois_veillette@yahoo.ca","sentAt":"2007-11-22T21:29:06Z","receivedAt":"2007-11-22T21:29:06Z","isPatch":false,"sender":{"key":"jean_francois_veillette@yahoo.ca","avatar":null},"body":"\nLe 07-11-22 à 16:01, Shawn O. Pearce a écrit :\n\n> Jonathan del Strother <maillist@steelskies.com> wrote:\n>> On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put\n>> into the system-wide pasteboard.  It's definitely copied - I can  \n>> paste\n>> it back into the sha1 field - but it seems to be some sort of local\n>> pasteboard that's specific to gitk\n\nI don't know the specific of Tcl/Tk on OSX, but for Cocoa apps you  \ncan choose how you want it pasteboard to  behave.  Imagine you copy a  \n1 gig video object, should you have another copy of it in the 'shared  \nspace' ? no, that's why you can decide that you make it available on  \ndemand only (if someone ask to paste it the system will ask your app  \nfor the full content).  But if you (as an application) have put  \nsomething in the pasteboard 'on-demand-only', then when you quit, you  \nshould store the real value in there, nut just a pointer to the  \nvalues.  I'm guessing the TclTk implementation doen't answer that  \nkind of notification from the system and quit without filling the  \nreal pasteboard content.\n\n- jfv\n"}]}