I still have this problem in 11.0.4, and some more info that I can add on.

  • The delay is there when I have Excel 2013 open, and not when it's closed. (I haven't tested other Office programs recently.)
  • The delay is there regardless of the Office Clipboard settings.
  • The delay is there regardless of the PL/SQL Developer setting of "include font style with copy".
  • The delay is there when I Cut or Copy text.
  • The delay is not there when I use Special Copy.
  • The delay is there when I cut/copy from PL/SQL Developer, and not from any other program.
  • The delay is there regardless of how the cut/copy is done (Ctrl-C, Ctrl-Insert, menu option, pop-up menu option, or macro key "copy selection to clipboard").
  • The delay is there regardless of whether the selection is normal or column-mode.
  • The delay is there in editor windows, including the Text tab of the Large Data Editor.
  • The delay is not there in the RTF tab of the Large Data Editor.
  • The delay is not there in the SQL Results grid.

Given the above, my assumption was that whatever PL/SQL Developer puts on the clipboard is causing Excel to hang a bit before PL/SQL Developer gets control back from CopyToClipboard or whatever. (This assumes clipboard-event-notification is synchronous, which may already be a bad assumption.) So I used a clipboard viewer tool (CLCL) to watch what happens.
Unfortunately there is nothing out of the ordinary there, except that for non-column-selection PLD adds "Borland IDE Block Type=3". However since the delay is also there when "Borland IDE Block Type=2", I don't think this is the cause. CLCL even let me store the complete clipboard contents and put them back on the clipboard later, and when I did this with delay-inducing contents, there was no delay when CLCL did it.

So if it's not about the clipboard contents, the only thing left for me to blame is the PLD editor component. I would guess that when it's asked to cut/copy, it does CopyToClipboard (or whatever) and then does something extra afterward that nobody else (including the Large Data Editor RTF tab) does. Maybe it reads the clipboard contents back to make double-sure the cut/copy worked? I don't know. I wish I could just poke through the source code smile