]> git.pld-linux.org Git - packages/tigervnc.git/blob - tigervnc-xorg111.patch
- rel 9
[packages/tigervnc.git] / tigervnc-xorg111.patch
1 diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc
2 --- tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc.xorg111 2011-08-09 23:16:36.000000000 +0200
3 +++ tigervnc-1.1.0/unix/xserver/hw/vnc/Input.cc 2011-09-14 13:22:19.540000049 +0200
4 @@ -82,10 +82,11 @@ static KeyCode KeysymToKeycode(KeySymsPt
5  /* Event queue is shared between all devices. */
6  #if XORG == 15
7  static xEvent *eventq = NULL;
8 -#else
9 +#elif XORG < 111
10  static EventList *eventq = NULL;
11  #endif
12  
13 +#if XORG < 111
14  static void initEventq(void)
15  {
16         /* eventq is never free()-ed because it exists during server life. */
17 @@ -100,7 +101,9 @@ static void initEventq(void)
18  #endif
19         }
20  }
21 +#endif /* XORG < 111 */
22  
23 +#if XORG < 111
24  static void enqueueEvents(DeviceIntPtr dev, int n)
25  {
26         int i;
27 @@ -122,6 +125,7 @@ static void enqueueEvents(DeviceIntPtr d
28                            );
29         }
30  }
31 +#endif /* XORG < 111 */
32  
33  InputDevice::InputDevice(rfb::VNCServerST *_server)
34         : server(_server), oldButtonMask(0)
35 @@ -141,12 +145,17 @@ InputDevice::InputDevice(rfb::VNCServerS
36                                      keyboardProc, TRUE);
37         RegisterKeyboardDevice(keyboardDev);
38  #endif
39 +#if XORG < 111
40         initEventq();
41 +#endif
42  }
43  
44  void InputDevice::PointerButtonAction(int buttonMask)
45  {
46 -       int i, n;
47 +       int i;
48 +#if XORG < 111
49 +       int n;
50 +#endif
51  #if XORG >= 110
52         ValuatorMask mask;
53  #endif
54 @@ -160,13 +169,17 @@ void InputDevice::PointerButtonAction(in
55  #if XORG < 110
56                         n = GetPointerEvents(eventq, pointerDev, action, i + 1,
57                                              POINTER_RELATIVE, 0, 0, NULL);
58 -#else
59 +                       enqueueEvents(pointerDev, n);
60 +#elif XORG < 111
61                         valuator_mask_set_range(&mask, 0, 0, NULL);
62                         n = GetPointerEvents(eventq, pointerDev, action, i + 1,
63                                              POINTER_RELATIVE, &mask);
64 -#endif
65                         enqueueEvents(pointerDev, n);
66 -
67 +#else
68 +                       valuator_mask_set_range(&mask, 0, 0, NULL);
69 +                       QueuePointerEvents(pointerDev, action, i + 1,
70 +                                          POINTER_RELATIVE, &mask);
71 +#endif
72                 }
73         }
74  
75 @@ -175,7 +188,10 @@ void InputDevice::PointerButtonAction(in
76  
77  void InputDevice::PointerMove(const rfb::Point &pos)
78  {
79 -       int n, valuators[2];
80 +       int valuators[2];
81 +#if XORG < 111
82 +       int n;
83 +#endif
84  #if XORG >= 110
85         ValuatorMask mask;
86  #endif
87 @@ -190,12 +206,16 @@ void InputDevice::PointerMove(const rfb:
88  #if XORG < 110
89         n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, 0,
90                              2, valuators);
91 -#else
92 +       enqueueEvents(pointerDev, n);
93 +#elif XORG < 111
94         valuator_mask_set_range(&mask, 0, 2, valuators);
95         n = GetPointerEvents(eventq, pointerDev, MotionNotify, 0, POINTER_ABSOLUTE,
96                              &mask);
97 -#endif
98         enqueueEvents(pointerDev, n);
99 +#else
100 +       valuator_mask_set_range(&mask, 0, 2, valuators);
101 +       QueuePointerEvents(pointerDev, MotionNotify, 0, POINTER_ABSOLUTE, &mask);
102 +#endif
103  
104         cursorPos = pos;
105  }
106 @@ -299,14 +319,20 @@ void InputDevice::initInputDevice(void)
107  static inline void pressKey(DeviceIntPtr dev, int kc, bool down, const char *msg)
108  {
109         int action;
110 +#if XORG < 111
111         unsigned int n;
112 +#endif
113  
114         if (msg != NULL)
115                 vlog.debug("%s %d %s", msg, kc, down ? "down" : "up");
116  
117         action = down ? KeyPress : KeyRelease;
118 -       n = GetKeyboardEvents(eventq, dev, action, kc);
119 +#if XORG < 111
120 +       n = GetKeyboardEvents(eventq, dev, action, kc, NULL);
121         enqueueEvents(dev, n);
122 +#else
123 +       QueueKeyboardEvents(dev, action, kc, NULL);
124 +#endif
125  }
126  
127  #define IS_PRESSED(keyc, keycode) \
128 @@ -341,8 +367,11 @@ public:
129                 int state, maxKeysPerMod, keycode;
130  #if XORG >= 17
131                 KeyCode *modmap = NULL;
132 +               DeviceIntPtr master;
133  
134 -               state = XkbStateFieldFromRec(&dev->u.master->key->xkbInfo->state);
135 +               master = GetMaster(dev, MASTER_KEYBOARD);
136 +
137 +               state = XkbStateFieldFromRec(&master->key->xkbInfo->state);
138  #else
139                 KeyClassPtr keyc = dev->key;
140                 state = keyc->state;
141 @@ -379,8 +408,10 @@ public:
142                 KeyClassPtr keyc;
143  #if XORG >= 17
144                 KeyCode *modmap = NULL;
145 +               DeviceIntPtr master;
146  
147 -               keyc = dev->u.master->key;
148 +               master = GetMaster(dev, MASTER_KEYBOARD);
149 +               keyc = master->key;
150                 state = XkbStateFieldFromRec(&keyc->xkbInfo->state);
151  #else
152                 keyc = dev->key;
153 @@ -565,9 +596,7 @@ static inline int isModifier(KeySymsPtr
154  
155  void InputDevice::keyEvent(rdr::U32 keysym, bool down)
156  {
157 -#if XORG < 17
158         DeviceIntPtr master;
159 -#endif
160         KeyClassPtr keyc;
161         KeySymsPtr keymap = NULL;
162         KeySym *map = NULL;
163 @@ -596,7 +625,8 @@ void InputDevice::keyEvent(rdr::U32 keys
164         }
165  
166  #if XORG >= 17
167 -       keyc = keyboardDev->u.master->key;
168 +       master = GetMaster(keyboardDev, MASTER_KEYBOARD);
169 +       keyc = master->key;
170  
171         keymap = XkbGetCoreMap(keyboardDev);
172         if (!keymap) {
173 @@ -753,7 +783,7 @@ ModeSwitchFound:
174                         XkbApplyMappingChange(keyboardDev, keymap, minKeyCode,
175                                               maxKeyCode - minKeyCode + 1,
176                                               NULL, serverClient);
177 -                       XkbCopyDeviceKeymap(keyboardDev->u.master, keyboardDev);
178 +                       XkbCopyDeviceKeymap(master, keyboardDev);
179  #endif /* XORG < 17 */
180                         break;
181                 }
182 diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h
183 --- tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h.xorg111   2011-08-09 23:16:36.000000000 +0200
184 +++ tigervnc-1.1.0/unix/xserver/hw/vnc/xorg-version.h   2011-09-12 16:51:36.958000000 +0200
185 @@ -36,6 +36,8 @@
186  #define XORG 19
187  #elif XORG_VERSION_CURRENT < ((1 * 10000000) + (10 * 100000) + (99 * 1000))
188  #define XORG 110
189 +#elif XORG_VERSION_CURRENT < ((1 * 10000000) + (11 * 100000) + (99 * 1000))
190 +#define XORG 111
191  #else
192  #error "X.Org newer than 1.10 is not supported"
193  #endif
194 diff -up tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111 tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc
195 --- tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc.xorg111  2011-08-09 23:16:36.000000000 +0200
196 +++ tigervnc-1.1.0/unix/xserver/hw/vnc/xvnc.cc  2011-09-14 13:49:23.751000543 +0200
197 @@ -211,7 +211,11 @@ static void vfbFreeFramebufferMemory(vfb
198  
199  extern "C" {
200  
201 +#if XORG < 111
202  void ddxGiveUp()
203 +#else
204 +void ddxGiveUp(enum ExitCode error)
205 +#endif
206  {
207      int i;
208  
209 @@ -221,9 +225,17 @@ void ddxGiveUp()
210  }
211  
212  void
213 +#if XORG < 111
214  AbortDDX()
215 +#else
216 +AbortDDX(enum ExitCode error)
217 +#endif
218  {
219 +#if XORG < 111
220      ddxGiveUp();
221 +#else
222 +    ddxGiveUp(error);
223 +#endif
224  }
225  
226  #ifdef __DARWIN__
227 @@ -668,8 +680,13 @@ vfbUninstallColormap(ColormapPtr pmap)
228      {
229         if (pmap->mid != pmap->pScreen->defColormap)
230         {
231 +#if XORG < 111
232             curpmap = (ColormapPtr) LookupIDByType(pmap->pScreen->defColormap,
233                                                    RT_COLORMAP);
234 +#else
235 +           dixLookupResourceByType((pointer *) &curpmap, pmap->pScreen->defColormap,
236 +                                   RT_COLORMAP, serverClient, DixUnknownAccess);
237 +#endif
238             (*pmap->pScreen->InstallColormap)(curpmap);
239         }
240      }
This page took 0.101847 seconds and 3 git commands to generate.