]> git.pld-linux.org Git - packages/rdesktop.git/blob - rdesktop-kde-krdc.patch
a027799c01ea4fbb7ca53ec9883a363753065349
[packages/rdesktop.git] / rdesktop-kde-krdc.patch
1 --- rdesktop.c.orig     2004-03-08 18:02:58.000000000 +0100
2 +++ rdesktop.c  2004-03-09 22:32:19.000000000 +0100
3 @@ -27,6 +27,7 @@
4  #include <sys/time.h>          /* gettimeofday */
5  #include <sys/times.h>         /* times */
6  #include <errno.h>
7 +#include <X11/Xlib.h>           /* Window */
8  #include "rdesktop.h"
9  
10  #ifdef EGD_SOCKET
11 @@ -68,6 +69,7 @@
12  BOOL g_console_session = False;
13  BOOL g_numlock_sync = False;
14  extern BOOL g_owncolmap;
15 +extern Window g_embed_wnd;
16  
17  #ifdef WITH_RDPSND
18  BOOL g_rdpsnd = False;
19 @@ -112,6 +114,7 @@
20         fprintf(stderr, "   -S: caption button size (single application mode)\n");
21         fprintf(stderr, "   -T: window title\n");
22         fprintf(stderr, "   -N: enable numlock synchronisation\n");
23 +        fprintf(stderr, "   -X: embed into another window with a given id.\n");
24         fprintf(stderr, "   -a: connection colour depth\n");
25         fprintf(stderr, "   -r: enable specified device redirection (currently: sound)\n");
26         fprintf(stderr, "   -0: attach to console\n");
27 @@ -224,6 +227,7 @@
28         prompt_password = False;
29         domain[0] = password[0] = shell[0] = directory[0] = 0;
30         strcpy(keymapname, "en-us");
31 +       g_embed_wnd = 0;
32  
33  #ifdef RDP2VNC
34  #define VNCOPT "V:Q:"
35 @@ -231,7 +235,7 @@
36  #define VNCOPT
37  #endif
38  
39 -       while ((c = getopt(argc, argv, VNCOPT "u:d:s:c:p:n:k:g:fbeEmCDKS:T:Na:r:045h?")) != -1)
40 +       while ((c = getopt(argc, argv, VNCOPT "u:d:s:c:p:n:k:g:fbeEmCDKS:T:NX:a:r:045h?")) != -1)
41         {
42                 switch (c)
43                 {
44 @@ -374,6 +378,10 @@
45                                 g_numlock_sync = True;
46                                 break;
47  
48 +                        case 'X':
49 +                                g_embed_wnd = strtod(optarg, NULL);
50 +                                break;
51 +
52                         case 'a':
53                                 g_server_bpp = strtol(optarg, NULL, 10);
54                                 if (g_server_bpp != 8 && g_server_bpp != 16 && g_server_bpp != 15
55 --- xwin.c.orig 2004-03-08 18:02:58.000000000 +0100
56 +++ xwin.c      2004-03-10 16:17:59.000000000 +0100
57 @@ -41,6 +41,7 @@
58  static int g_x_socket;
59  static Screen *g_screen;
60  Window g_wnd;
61 +Window g_embed_wnd;
62  BOOL g_enable_compose = False;
63  static GC g_gc;
64  static BOOL g_gc_initialized = False;
65 @@ -929,6 +930,11 @@
66                 XFree(sizehints);
67         }
68  
69 +        if ( g_embed_wnd )
70 +        {
71 +                XReparentWindow(g_display, g_wnd, g_embed_wnd, 0, 0);
72 +        }
73 +
74         input_mask = KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask |
75                 VisibilityChangeMask | FocusChangeMask;
76  
This page took 0.085434 seconds and 2 git commands to generate.