diff options
author | marha <marha@users.sourceforge.net> | 2015-02-24 07:44:41 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2015-02-24 07:44:41 +0100 |
commit | f64e43decd0fdac938feddeedee255dc4508aaa5 (patch) | |
tree | 34e1cfaaea9ad73d9335197ee79b4f99affe4ea9 /xorg-server/hw/xwin/winclipboardwrappers.c | |
parent | 462f18c7b25fe3e467f837647d07ab0a78aa8d2b (diff) | |
parent | ac2c8a704aac7569f4ae85b890a546644bd86c60 (diff) | |
download | vcxsrv-f64e43decd0fdac938feddeedee255dc4508aaa5.tar.gz vcxsrv-f64e43decd0fdac938feddeedee255dc4508aaa5.tar.bz2 vcxsrv-f64e43decd0fdac938feddeedee255dc4508aaa5.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
apps/xcalc/math.c
freetype/src/base/ftbdf.c
freetype/src/base/fttype1.c
freetype/src/pfr/pfrobjs.c
mesalib/src/mesa/main/.gitignore
openssl/Configure
openssl/Makefile
openssl/crypto/cryptlib.c
openssl/crypto/opensslconf.h
openssl/test/v3nametest.c
openssl/util/mk1mf.pl
openssl/util/pl/VC-32.pl
xorg-server/Xi/xipassivegrab.c
xorg-server/dix/dispatch.c
xorg-server/dix/getevents.c
xorg-server/glx/glxcmds.c
xorg-server/glx/indirect_reqsize.c
xorg-server/glx/indirect_reqsize.h
xorg-server/hw/xwin/winclipboard/internal.h
xorg-server/hw/xwin/winclipboard/thread.c
xorg-server/hw/xwin/winclipboard/wndproc.c
xorg-server/hw/xwin/winclipboard/xevents.c
xorg-server/hw/xwin/winclipboardwrappers.c
xorg-server/hw/xwin/winprocarg.c
xorg-server/render/render.c
Diffstat (limited to 'xorg-server/hw/xwin/winclipboardwrappers.c')
-rwxr-xr-x | xorg-server/hw/xwin/winclipboardwrappers.c | 165 |
1 files changed, 0 insertions, 165 deletions
diff --git a/xorg-server/hw/xwin/winclipboardwrappers.c b/xorg-server/hw/xwin/winclipboardwrappers.c index c0598f9b3..cf0d5f951 100755 --- a/xorg-server/hw/xwin/winclipboardwrappers.c +++ b/xorg-server/hw/xwin/winclipboardwrappers.c @@ -58,7 +58,6 @@ extern Bool g_fClipboardStarted; extern Window g_iClipboardWindow; extern Atom g_atomLastOwnedSelection; extern HWND g_hwndClipboard; -extern Bool g_fClipboardPrimary; /* * Wrapper for internal EstablishConnection function. @@ -166,167 +165,3 @@ winProcEstablishConnection(ClientPtr client) return iReturn; } - -/* - * Wrapper for internal SetSelectionOwner function. - * Grabs ownership of Windows clipboard when X11 clipboard owner changes. - */ -int -winProcSetSelectionOwner(ClientPtr client) -{ - int i; - DrawablePtr pDrawable; - WindowPtr pWindow = None; - static Window s_iOwners[CLIP_NUM_SELECTIONS] = { None }; - static unsigned long s_ulServerGeneration = 0; - - REQUEST(xSetSelectionOwnerReq); - - REQUEST_SIZE_MATCH(xSetSelectionOwnerReq); - - winDebug("winProcSetSelectionOwner - Hello.\n"); - - /* Watch for server reset */ - if (s_ulServerGeneration != serverGeneration) { - /* Save new generation number */ - s_ulServerGeneration = serverGeneration; - - /* Initialize static variables */ - for (i = 0; i < CLIP_NUM_SELECTIONS; ++i) - s_iOwners[i] = None; - } - - /* Abort if clipboard not completely initialized yet */ - if (!g_fClipboardStarted) { - winDebug ("winProcSetSelectionOwner - Clipboard not yet started, " - "aborting.\n"); - goto winProcSetSelectionOwner_Done; - } - - /* Grab window if we have one */ - if (None != stuff->window) { - /* Grab the Window from the request */ - int rc = - dixLookupWindow(&pWindow, stuff->window, client, DixReadAccess); - if (rc != Success) { - ErrorF("winProcSetSelectionOwner - Found BadWindow, aborting.\n"); - goto winProcSetSelectionOwner_Done; - } - } - - /* Now we either have a valid window or None */ - - /* Save selection owners for monitored selections, ignore other selections */ - if (XA_PRIMARY == stuff->selection && g_fClipboardPrimary) { - /* Look for owned -> not owned transition */ - if (None == stuff->window && None != s_iOwners[CLIP_OWN_PRIMARY]) { - winDebug("winProcSetSelectionOwner - PRIMARY - Going from " - "owned to not owned.\n"); - - /* Adjust last owned selection */ - if (None != s_iOwners[CLIP_OWN_CLIPBOARD]) - g_atomLastOwnedSelection = MakeAtom("CLIPBOARD", 9, TRUE); - else - g_atomLastOwnedSelection = None; - } - - /* Save new selection owner or None */ - s_iOwners[CLIP_OWN_PRIMARY] = stuff->window; - - winDebug ("winProcSetSelectionOwner - PRIMARY - Now owned by: 0x%x (clipboard is 0x%x)\n", - stuff->window,g_iClipboardWindow); - } - else if (MakeAtom("CLIPBOARD", 9, TRUE) == stuff->selection) { - /* Look for owned -> not owned transition */ - if (None == stuff->window && None != s_iOwners[CLIP_OWN_CLIPBOARD]) { - winDebug("winProcSetSelectionOwner - CLIPBOARD - Going from " - "owned to not owned.\n"); - - /* Adjust last owned selection */ - if ((None != s_iOwners[CLIP_OWN_PRIMARY]) && g_fClipboardPrimary) - g_atomLastOwnedSelection = XA_PRIMARY; - else - g_atomLastOwnedSelection = None; - } - - /* Save new selection owner or None */ - s_iOwners[CLIP_OWN_CLIPBOARD] = stuff->window; - - winDebug ("winProcSetSelectionOwner - CLIPBOARD - Now owned by: 0x%x, clipboard is 0x%x\n", - stuff->window,g_iClipboardWindow); - } - else - goto winProcSetSelectionOwner_Done; - - /* - * At this point, if one of the selections is still owned by the - * clipboard manager then it should be marked as unowned since - * we will be taking ownership of the Win32 clipboard. - */ - if (g_iClipboardWindow == s_iOwners[CLIP_OWN_PRIMARY]) - s_iOwners[CLIP_OWN_PRIMARY] = None; - if (g_iClipboardWindow == s_iOwners[CLIP_OWN_CLIPBOARD]) - s_iOwners[CLIP_OWN_CLIPBOARD] = None; - - /* Abort if no window at this point */ - if (None == stuff->window) { - winDebug ("winProcSetSelectionOwner - No window, returning.\n"); - goto winProcSetSelectionOwner_Done; - } - - /* Abort if invalid selection */ - if (!ValidAtom(stuff->selection)) { - winDebug ("winProcSetSelectionOwner - Found BadAtom, aborting.\n"); - goto winProcSetSelectionOwner_Done; - } - - /* Cast Window to Drawable */ - pDrawable = (DrawablePtr) pWindow; - - /* Abort if clipboard manager is owning the selection */ - if (pDrawable->id == g_iClipboardWindow) { - winDebug ("winProcSetSelectionOwner - We changed ownership, " - "aborting.\n"); - goto winProcSetSelectionOwner_Done; - } - - /* Abort if root window is taking ownership */ - if (pDrawable->id == 0) { - winDebug ("winProcSetSelectionOwner - Root window taking ownership, " - "aborting\n"); - goto winProcSetSelectionOwner_Done; - } - - /* Access the Windows clipboard */ - if (!OpenClipboard(g_hwndClipboard)) { - ErrorF ("winProcSetSelectionOwner - OpenClipboard () failed: %08x, hwnd: %08x\n", - (int) GetLastError (),g_hwndClipboard); - goto winProcSetSelectionOwner_Done; - } - - /* Take ownership of the Windows clipboard */ - if (!EmptyClipboard()) { - ErrorF("winProcSetSelectionOwner - EmptyClipboard () failed: %08x\n", - (int) GetLastError()); - CloseClipboard (); - goto winProcSetSelectionOwner_Done; - } - - winDebug("winProcSetSelectionOwner - SetClipboardData NULL\n"); - /* Advertise regular text and unicode */ - SetClipboardData(CF_UNICODETEXT, NULL); - SetClipboardData(CF_TEXT, NULL); - - /* Save handle to last owned selection */ - g_atomLastOwnedSelection = stuff->selection; - - /* Release the clipboard */ - if (!CloseClipboard()) { - ErrorF("winProcSetSelectionOwner - CloseClipboard () failed: " - "%08x\n", (int) GetLastError()); - goto winProcSetSelectionOwner_Done; - } - -winProcSetSelectionOwner_Done: - return (*winProcSetSelectionOwnerOrig) (client); -} |