threads / discuss / 10976

gitk's copy pasteboard doesn't persist after it quits

Subject: gitk's copy pasteboard doesn't persist after it quits

## tl;dr

3 messages between Nov 22, 2007 and Nov 22, 2007.

replies: 2people: 3as markdown or json

Jonathan del Strother· Nov 22, 2007, 11:44 UTC · lore

On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put into the system-wide pasteboard. It's definitely copied - I can paste it back into the sha1 field - but it seems to be some sort of local pasteboard that's specific to gitk

If I switch to another app, the sha1 is stored in the pasteboard correctly, and I can then quit gitk and still have it available. I'm guessing that gitk (or Tcl/Tk) is syncing with the system-wide pasteboard on focus change, but not on quit.

I'm using the version of gitk in 388afe7881b, and Tcl 8.4.7
Any suggestions on fixing / working around this?
Jon
Shawn O. Pearce· Nov 22, 2007, 21:01 UTC · re: Jonathan del Strother · lore

Re: gitk's copy pasteboard doesn't persist after it quits

Jonathan del Strother <maillist@steelskies.com> wrote:
Show 9 quoted lines
> On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put  
> into the system-wide pasteboard.  It's definitely copied - I can paste  
> it back into the sha1 field - but it seems to be some sort of local  
> pasteboard that's specific to gitk
> 
> If I switch to another app, the sha1 is stored in the pasteboard  
> correctly, and I can then quit gitk and still have it available.  I'm  
> guessing that gitk (or Tcl/Tk) is syncing with the system-wide  
> pasteboard on focus change, but not on quit.

I've seen this not just on Mac OS X but also on Windows. It seems like Tk wipes the clipboard clean on exit, so I've just learned to not exit a Tk application until I'm done with the clipboard...

-- 
Shawn.
Jean-François Veillette· Nov 22, 2007, 21:29 UTC · re: Shawn O. Pearce · lore

Re: gitk's copy pasteboard doesn't persist after it quits

Le 07-11-22 à 16:01, Shawn O. Pearce a écrit :
Show 6 quoted lines
> Jonathan del Strother <maillist@steelskies.com> wrote:
>> On OS X, if I load gitk, copy a sha1, then quit, the sha1 isn't put
>> into the system-wide pasteboard.  It's definitely copied - I can  
>> paste
>> it back into the sha1 field - but it seems to be some sort of local
>> pasteboard that's specific to gitk

I don't know the specific of Tcl/Tk on OSX, but for Cocoa apps you can choose how you want it pasteboard to behave. Imagine you copy a 1 gig video object, should you have another copy of it in the 'shared space' ? no, that's why you can decide that you make it available on demand only (if someone ask to paste it the system will ask your app for the full content). But if you (as an application) have put something in the pasteboard 'on-demand-only', then when you quit, you should store the real value in there, nut just a pointer to the values. I'm guessing the TclTk implementation doen't answer that kind of notification from the system and quit without filling the real pasteboard content.

- jfv

← back to recent threads