Xnest: move xnestEventmask into struct xnest_upstream_info
This is per upstream connection state, so it's better of in the upstream information struct. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
parent
b02a5ebc5e
commit
3802b10cdb
|
@ -41,7 +41,6 @@ int xnestNumPixmapFormats;
|
||||||
Drawable xnestDefaultDrawables[MAXDEPTH + 1];
|
Drawable xnestDefaultDrawables[MAXDEPTH + 1];
|
||||||
Pixmap xnestIconBitmap;
|
Pixmap xnestIconBitmap;
|
||||||
Pixmap xnestScreenSaverPixmap;
|
Pixmap xnestScreenSaverPixmap;
|
||||||
uint32_t xnestEventMask;
|
|
||||||
|
|
||||||
void
|
void
|
||||||
xnestOpenDisplay(int argc, char *argv[])
|
xnestOpenDisplay(int argc, char *argv[])
|
||||||
|
@ -57,9 +56,9 @@ xnestOpenDisplay(int argc, char *argv[])
|
||||||
FatalError("Unable to open display \"%s\".\n", xnestDisplayName);
|
FatalError("Unable to open display \"%s\".\n", xnestDisplayName);
|
||||||
|
|
||||||
if (xnestParentWindow != (Window) 0)
|
if (xnestParentWindow != (Window) 0)
|
||||||
xnestEventMask = XCB_EVENT_MASK_STRUCTURE_NOTIFY;
|
xnestUpstreamInfo.eventMask = XCB_EVENT_MASK_STRUCTURE_NOTIFY;
|
||||||
else
|
else
|
||||||
xnestEventMask = 0L;
|
xnestUpstreamInfo.eventMask = 0;
|
||||||
|
|
||||||
for (i = 0; i <= MAXDEPTH; i++)
|
for (i = 0; i <= MAXDEPTH; i++)
|
||||||
xnestDefaultDrawables[i] = XCB_WINDOW_NONE;
|
xnestDefaultDrawables[i] = XCB_WINDOW_NONE;
|
||||||
|
|
|
@ -26,7 +26,6 @@ extern int xnestNumPixmapFormats;
|
||||||
extern Drawable xnestDefaultDrawables[MAXDEPTH + 1];
|
extern Drawable xnestDefaultDrawables[MAXDEPTH + 1];
|
||||||
extern Pixmap xnestIconBitmap;
|
extern Pixmap xnestIconBitmap;
|
||||||
extern Pixmap xnestScreenSaverPixmap;
|
extern Pixmap xnestScreenSaverPixmap;
|
||||||
extern uint32_t xnestEventMask;
|
|
||||||
|
|
||||||
void xnestOpenDisplay(int argc, char *argv[]);
|
void xnestOpenDisplay(int argc, char *argv[]);
|
||||||
void xnestCloseDisplay(void);
|
void xnestCloseDisplay(void);
|
||||||
|
|
|
@ -215,20 +215,20 @@ xnestKeyboardProc(DeviceIntPtr pDev, int onoff)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DEVICE_ON:
|
case DEVICE_ON:
|
||||||
xnestEventMask |= XNEST_KEYBOARD_EVENT_MASK;
|
xnestUpstreamInfo.eventMask |= XNEST_KEYBOARD_EVENT_MASK;
|
||||||
for (i = 0; i < xnestNumScreens; i++)
|
for (i = 0; i < xnestNumScreens; i++)
|
||||||
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
||||||
xnest_screen_by_id(i)->upstream_frame_window,
|
xnest_screen_by_id(i)->upstream_frame_window,
|
||||||
XCB_CW_EVENT_MASK,
|
XCB_CW_EVENT_MASK,
|
||||||
&xnestEventMask);
|
&xnestUpstreamInfo.eventMask);
|
||||||
break;
|
break;
|
||||||
case DEVICE_OFF:
|
case DEVICE_OFF:
|
||||||
xnestEventMask &= ~XNEST_KEYBOARD_EVENT_MASK;
|
xnestUpstreamInfo.eventMask &= ~XNEST_KEYBOARD_EVENT_MASK;
|
||||||
for (i = 0; i < xnestNumScreens; i++)
|
for (i = 0; i < xnestNumScreens; i++)
|
||||||
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
||||||
xnest_screen_by_id(i)->upstream_frame_window,
|
xnest_screen_by_id(i)->upstream_frame_window,
|
||||||
XCB_CW_EVENT_MASK,
|
XCB_CW_EVENT_MASK,
|
||||||
&xnestEventMask);
|
&xnestUpstreamInfo.eventMask);
|
||||||
break;
|
break;
|
||||||
case DEVICE_CLOSE:
|
case DEVICE_CLOSE:
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -104,20 +104,20 @@ xnestPointerProc(DeviceIntPtr pDev, int onoff)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DEVICE_ON:
|
case DEVICE_ON:
|
||||||
xnestEventMask |= XNEST_POINTER_EVENT_MASK;
|
xnestUpstreamInfo.eventMask |= XNEST_POINTER_EVENT_MASK;
|
||||||
for (i = 0; i < xnestNumScreens; i++)
|
for (i = 0; i < xnestNumScreens; i++)
|
||||||
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
||||||
xnest_screen_by_id(i)->upstream_frame_window,
|
xnest_screen_by_id(i)->upstream_frame_window,
|
||||||
XCB_CW_EVENT_MASK,
|
XCB_CW_EVENT_MASK,
|
||||||
&xnestEventMask);
|
&xnestUpstreamInfo.eventMask);
|
||||||
break;
|
break;
|
||||||
case DEVICE_OFF:
|
case DEVICE_OFF:
|
||||||
xnestEventMask &= ~XNEST_POINTER_EVENT_MASK;
|
xnestUpstreamInfo.eventMask &= ~XNEST_POINTER_EVENT_MASK;
|
||||||
for (i = 0; i < xnestNumScreens; i++)
|
for (i = 0; i < xnestNumScreens; i++)
|
||||||
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
||||||
xnest_screen_by_id(i)->upstream_frame_window,
|
xnest_screen_by_id(i)->upstream_frame_window,
|
||||||
XCB_CW_EVENT_MASK,
|
XCB_CW_EVENT_MASK,
|
||||||
&xnestEventMask);
|
&xnestUpstreamInfo.eventMask);
|
||||||
break;
|
break;
|
||||||
case DEVICE_CLOSE:
|
case DEVICE_CLOSE:
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -410,7 +410,7 @@ breakout:
|
||||||
|
|
||||||
xcb_params_cw_t attributes = {
|
xcb_params_cw_t attributes = {
|
||||||
.back_pixel = xnestUpstreamInfo.screenInfo->white_pixel,
|
.back_pixel = xnestUpstreamInfo.screenInfo->white_pixel,
|
||||||
.event_mask = xnestEventMask,
|
.event_mask = xnestUpstreamInfo.eventMask,
|
||||||
.colormap = xnest_visual_to_upstream_cmap(pScreen->rootVisual),
|
.colormap = xnest_visual_to_upstream_cmap(pScreen->rootVisual),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -423,7 +423,7 @@ breakout:
|
||||||
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
xcb_change_window_attributes(xnestUpstreamInfo.conn,
|
||||||
screenPriv->upstream_frame_window,
|
screenPriv->upstream_frame_window,
|
||||||
XCB_CW_EVENT_MASK,
|
XCB_CW_EVENT_MASK,
|
||||||
&xnestEventMask);
|
&xnestUpstreamInfo.eventMask);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
screenPriv->upstream_frame_window = xcb_generate_id(xnestUpstreamInfo.conn);
|
screenPriv->upstream_frame_window = xcb_generate_id(xnestUpstreamInfo.conn);
|
||||||
|
|
|
@ -37,6 +37,7 @@ struct xnest_upstream_info {
|
||||||
const xcb_setup_t *setup;
|
const xcb_setup_t *setup;
|
||||||
struct xnest_event_queue eventQueue;
|
struct xnest_event_queue eventQueue;
|
||||||
xcb_gc_t bitmapGC;
|
xcb_gc_t bitmapGC;
|
||||||
|
uint32_t eventMask;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern struct xnest_screen_info xnestScreens[MAXSCREENS];
|
extern struct xnest_screen_info xnestScreens[MAXSCREENS];
|
||||||
|
|
Loading…
Reference in New Issue