Tk Source Code

Attachment Details
Login
Overview

Artifact ID: ec963acbc5bca16c3d96cd1c0329ef6d7e0b7e96
Ticket: 939389ffffffffffffffffffffffffffffffffff
Date: 2004-04-21 23:01:06
User: yamako
Artifact Attached: 84f4c2119f80167928c9f980c5bf36800a4e4482
Filename:clipboardPatch.txt
Description:clipboard patch for Win Tk8.4.6
Content:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
*** tkWinX.c.orig	Sat Dec 07 16:46:52 2002
--- tkWinX.c	Wed Apr 21 21:00:48 2004
***************
*** 548,554 ****
      TkDisplay *dispPtr;
  {
      Display *display = dispPtr->display;
-     HWND hwnd;
      ThreadSpecificData *tsdPtr = (ThreadSpecificData *) 
  	    Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
  
--- 548,553 ----
***************
*** 561,575 ****
       * Force the clipboard to be rendered if we are the clipboard owner.
       */
      
!     if (dispPtr->clipWindow) {
! 	hwnd = Tk_GetHWND(Tk_WindowId(dispPtr->clipWindow));
! 	if (GetClipboardOwner() == hwnd) {
! 	    OpenClipboard(hwnd);
  	    EmptyClipboard();
  	    TkWinClipboardRender(dispPtr, CF_TEXT);
  	    CloseClipboard();
  	}
-     }
  
      tsdPtr->winDisplay = NULL;
  
--- 560,571 ----
       * Force the clipboard to be rendered if we are the clipboard owner.
       */
      
! 	if (dispPtr->clipboardActive) {
! 	    OpenClipboard(NULL);
  	    EmptyClipboard();
  	    TkWinClipboardRender(dispPtr, CF_TEXT);
  	    CloseClipboard();
  	}
  
      tsdPtr->winDisplay = NULL;