Enrico Weigelt, metux IT consult
b64a6afcfe
( !1654 ) Xnest: replace XChangeGC() by xcb_change_gc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
ff8b7b9931
( !1654 ) Xnest: replace XChangeKeyboardControl() by xcb_change_keyboard_control()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
7c8e0da19e
( !1654 ) Xnest: replace XChangePointerControl() by xcb_change_pointer_control
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
c33da97436
( !1654 ) Xnest: replace XChangeWindowAttributes() by xcb_aux_change_window_attributes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
102fe02372
( !1654 ) Xnest: replace XDrawImageString() by xcb_image_text_8()
...
Replace XDrawImageString() by xcb_image_text_8(), as well as their 16-bit
counterparts.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
a171e85008
( !1654 ) Xnest: replace XDrawString[8|16]() by xcb_poly_text_[8|16]()
...
Replace XDrawString8() by xcb_poly_text_8(), as well as XDrawString16()
by xcb_poly_text_16(). Some care needs to be taken to prepend the xTextElt
header before sending the request out.
GC operation handlers don't need to care about poly-strings or length
above 254, as this is already handled by their caller, doPolyText().
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
9c496e1ee7
( !1654 ) Xnest: replace XFillRectangles() by xcb_poly_fill_rectangle()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
d96cd1474c
( !1654 ) Xnest: directly pass ClearArea request to upstream server
...
Instead of going through mi machinery, just pass the ClearArea
request to the upstream window.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
cfb828e8db
( !1654 ) Xnest: replace XFillArcs() by xcb_poly_fill_arc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
c9f31b6c20
( !1654 ) Xnest: replace XFillPolygon() by xcb_fill_poly()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:07 +02:00
Enrico Weigelt, metux IT consult
926ddd661e
( !1654 ) Xnest: replace XCopyPlane() by xcb_copy_plane()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
1a2bbef169
( !1654 ) Xnest: replace XCopyArea() by xcb_copy_area()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
b828b17091
( !1654 ) Xnest: replace XDrawArcs() by xcb_poly_arc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
aaa55e3f46
( !1654 ) Xnest: replace XDrawRectangles() by xcb_poly_rectangle()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
d672771d34
( !1654 ) Xnest: replace XDrawSegments() by xcb_poly_segment()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
a54b465c32
( !1654 ) Xnest: replace XDrawLines() by xcb_poly_line()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
1e448bbb4f
( !1654 ) Xnest: replace XDrawPoints() by xcb_poly_point()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
b1aa1387ba
( !1654 ) Xnest: replace XCreateColormap() / XFreeColormap() by xcb
...
Use xcb_create_colormap() and XFreeColormap() instead of XCreateColormap()
and XFreeColormap().
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
e4a9f2c579
( !1654 ) Xnest: use xcb instead of XShapeCombineRegion() and XShapeCombineMask()
...
Using xcb_shape_rectangles() and xcb_shape_mask() instead of Xlib's
XShapeCombineRegion() and XShapeCombineMask().
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
a8807fddbd
( !1654 ) Xnest: use xcb_put_image() for PutImage requests
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
ffc3960794
( !1654 ) Xnest: use xcb_put_image() for creating cursors
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
004641ca21
( !1654 ) Xnest: replace XCreatePixmapCursor() by xcb_create_cursor()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
00b28e24da
( !1654 ) Xnest: replace XConfigureWindow() calls by xcb_configure_window()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
9d5c8a1051
( !1654 ) Xnest: use xcb for creating / destroying pixmaps
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
21d71df72b
( !1654 ) Xnest: replace XBell() by xcb_bell()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
f349ab5a00
( !1654 ) Xnest: use xcb for (un)mapping windows
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
3e24c64b9f
( !1654 ) Xnest: replace XCreateWindow() by use xcb_create_window()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
2d3f8b2f7a
( !1654 ) Xnest: fetch root visual ID from screen data
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
ed1a1073e9
( !1654 ) Xnest: fetch keycode min/max from setup data
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
6b2dbbecd9
( !1654 ) Xnest: fetch image metrics from xcb connection setup data
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
49231a7c21
( !1654 ) Xnest: fetch default screen's root window from screen info
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
8bc22b2932
( !1654 ) Xnest: add helper for retrieving GC XID on upstream connection
...
Upcoming patches will need to retieve GC's XIDs on the upstream connection.
Moving this out into separate .c file, in order to not creating more
dependencies on Xlib headers, which we wanna get rid of.
For now, looking at the Xlib GC structure, attached to our DDX GCs.
When all users of the Xlib GC have gone (ie. moved all consumers to xcb),
we'll create the GC via xcb directly, thus replacing the Xlib GC struct
by XID - the interface of this helper will remain the same.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
6acabf2f19
( !1654 ) Xnest: fetch default colormap from xcb screen info
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
5f123ef921
( !1654 ) Xnest: fetch root window depth from screen info
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
3d959281af
( !1654 ) Xnest: fetch display size from xcb setup data
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
a38a22bb90
( !1654 ) Xnest: fetch BlackPixel and WhitePixel from xcb setup data
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
17261b7484
( !1654 ) Xnest: fetch xcb setup data
...
Fetching the setup data from xcb instead of Xlib, storing in our own struct,
holding all information needed for one particular upstream connection.
For now, there's only one, but future multi-upstream implementation will
change this to an array (and storing pointers to particular upstream in
various places).
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
5bb1bf9671
( !1654 ) Xnest: use XCB_EVENT_MASK_* defines
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
393590afb2
( !1654 ) Xnest: use XCB*_NONE instead of None
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
8ced3ca2a8
( !1654 ) Xnest: use XCB_BACK_PIXMAP_* defines
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
8bd4900313
( !1654 ) xnest: replace ExposureMask by XCB_EVENT_MASK_EXPOSURE
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
90a174978d
( !1654 ) Xnest: replace NotUseful by XCB_BACKING_STORE_NOT_USEFUL
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
5b1dfdaa3e
( !1654 ) Xnest: use XCB_CONFIG_WINDOW_* defines instead of CW*
...
Use xcb's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
6c73c9a4aa
( !1654 ) Xnest: use XCB_CW_* defines instead of CW*
...
Use XCB's defines instead of Xlib's ones.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
48638b9444
( !1654 ) Xnest: add xcb and x11-xcb as dependency
...
In order to transition to XCB, we need to link xcb, but temporarily
also x11-xcb.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:06 +02:00
Enrico Weigelt, metux IT consult
f55da6e260
(1823) xnest: protect from memory allocation failure
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:00 +02:00
Enrico Weigelt, metux IT consult
cc09fb9103
(1823) xnest: replace xallocarray() by calloc()
...
Only key difference that calloc(), in contrast to rellocarray(),
is zero-initializing. The overhead is hard to measure on today's
machines, and it's safer programming practise to always allocate
zero-initialized, so one can't forget to do it explicitly.
Cocci rule:
@@
expression COUNT;
expression LEN;
@@
- xallocarray(COUNT,LEN)
+ calloc(COUNT,LEN)
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:35:00 +02:00
Enrico Weigelt, metux IT consult
f2180400cd
(1841) dix: move ColormapRec declaration out of public header
...
Not used by any external module/driver, so no need to keep it in
public header.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:58 +02:00
Enrico Weigelt, metux IT consult
86cb47628e
(1841) xnest: drop not needed include of colormapst.h
...
We don't need anything from this file here, so no need to include it.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:58 +02:00
Enrico Weigelt, metux IT consult
957c4379c9
( !1393 ) Xnest: drop special hack for Xlib's GC type
...
Now that the name clash on GC type between Xserver and xlib has been fixed,
there's no need to do the special renaming hack anymore.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:52 +02:00