diff options
| author | jacksonmj <mj-pt@jacksonmj.co.uk> | 2011-04-22 23:20:56 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2011-07-06 12:43:51 (GMT) |
| commit | 34774e7829716b4ef7c0bf54db78193a55f0aa61 (patch) | |
| tree | a0796c5865070d790dc8ffe790bf9359bb74ebb1 /src/misc.c | |
| parent | 3dd82d9ced79467e78be431aa92130542c355645 (diff) | |
| download | powder-34774e7829716b4ef7c0bf54db78193a55f0aa61.zip powder-34774e7829716b4ef7c0bf54db78193a55f0aa61.tar.gz | |
Basic clipboard_push_text support for linux
Diffstat (limited to 'src/misc.c')
| -rw-r--r-- | src/misc.c | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -20,6 +20,8 @@ #include <ApplicationServices/ApplicationServices.h> #endif +char *clipboard_text = NULL; + //Signum function #if defined(WIN32) && !defined(__GNUC__) _inline int isign(float i) @@ -421,6 +423,16 @@ void clipboard_push_text(char * text) SetClipboardData(CF_TEXT, cbuffer); CloseClipboard(); } +#elif (defined(LIN32) || defined(LIN64)) && defined(SDL_VIDEO_DRIVER_X11) + if (clipboard_text!=NULL) { + free(clipboard_text); + clipboard_text = NULL; + } + clipboard_text = mystrdup(text); + sdl_wminfo.info.x11.lock_func(); + XSetSelectionOwner(sdl_wminfo.info.x11.display, XA_CLIPBOARD, sdl_wminfo.info.x11.window, CurrentTime); + XFlush(sdl_wminfo.info.x11.display); + sdl_wminfo.info.x11.unlock_func(); #else printf("Not implemented: put text on clipboard \"%s\"\n", text); #endif |
