rendered paste body#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <stdio.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main ( int argc, char **argv )
{
Display *disp;
Window win;
char *data;
int size, loop;
XEvent ev;
disp= XOpenDisplay(NULL);
if (!disp) {
perror("XOpenDisplay");
exit(-1);
}
win= XCreateSimpleWindow(disp, DefaultRootWindow(disp), 10, 10,
100, 100, 0, 0, 0);
XSelectInput(disp, win, ButtonPressMask | KeyPressMask);
XMapWindow(disp, win);
for (loop= 1; loop;) {
data= XFetchBuffer(disp, &size, XA_PRIMARY);
if (!data)
data= XFetchBuffer(disp, &size, 0);
if (data) {
printf("Data size: %d\n", size);
printf("String: [%s]\n", data);
XFree(data);
}
while(XPending(disp)) {
XNextEvent(disp, &ev);
if (ev.type==ButtonPress)
loop= 0;
else if (ev.type==KeyPress)
loop= 0;
}
}
XDestroyWindow(disp, win);
XCloseDisplay(disp);
return(0);
}