X-Git-Url: https://git.sesse.net/?p=rdpsrv;a=blobdiff_plain;f=Xserver%2Fprograms%2FXserver%2Fhw%2Fvnc%2Fcutpaste.c;fp=Xserver%2Fprograms%2FXserver%2Fhw%2Fvnc%2Fcutpaste.c;h=0000000000000000000000000000000000000000;hp=2860f514d8b8bcb43d859b41585ed969c3687f0d;hb=ce66b81460e5353db09d45c02339d4583fbda255;hpb=7772d71ffd742cfc9b7ff214659d16c5bb56a391 diff --git a/Xserver/programs/Xserver/hw/vnc/cutpaste.c b/Xserver/programs/Xserver/hw/vnc/cutpaste.c deleted file mode 100644 index 2860f51..0000000 --- a/Xserver/programs/Xserver/hw/vnc/cutpaste.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * cutpaste.c - routines to deal with cut & paste buffers / selection. - */ - -/* - * Copyright (C) 2002 RealVNC Ltd. - * Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved. - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this software; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - * USA. - */ - -#include -#define NEED_EVENTS -#include -#include -#include "rfb.h" -#include "selection.h" -#include "input.h" -#include -#include - -extern WindowPtr *WindowTable; /* Why isn't this in a header file? */ -extern Selection *CurrentSelections; -extern int NumCurrentSelections; - - -static Bool inSetXCutText = FALSE; - -/* - * rfbSetXCutText sets the cut buffer to be the given string. We also clear - * the primary selection. Ideally we'd like to set it to the same thing, but I - * can't work out how to do that without some kind of helper X client. - */ - -void -rfbSetXCutText(char *str, int len) -{ - int i = 0; - - inSetXCutText = TRUE; - ChangeWindowProperty(WindowTable[0], XA_CUT_BUFFER0, XA_STRING, - 8, PropModeReplace, len, - (pointer)str, TRUE); - - while ((i < NumCurrentSelections) && - CurrentSelections[i].selection != XA_PRIMARY) - i++; - - if (i < NumCurrentSelections) { - xEvent event; - - if (CurrentSelections[i].client) { - event.u.u.type = SelectionClear; - event.u.selectionClear.time = GetTimeInMillis(); - event.u.selectionClear.window = CurrentSelections[i].window; - event.u.selectionClear.atom = CurrentSelections[i].selection; - (void) TryClientEvents (CurrentSelections[i].client, &event, 1, - NoEventMask, NoEventMask /* CantBeFiltered */, - NullGrab); - } - - CurrentSelections[i].window = None; - CurrentSelections[i].pWin = NULL; - CurrentSelections[i].client = NullClient; - } - - inSetXCutText = FALSE; -} - - -void rfbGotXCutText(char *str, int len) -{ - if (!inSetXCutText) - rfbSendServerCutText(str, len); -}