Enrico Weigelt, metux IT consult
b00a2a7ee8
( !1654 ) Xnest: replace XParseGeometry() by own implementation
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
2d88e4e086
( !1654 ) Xnest: replace XGetWindowAttributes() by xcb_get_geometry()
...
Use xcb function instead of Xlib, and also spare one additional
(unused) request.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
44bdf0866f
( !1654 ) Xnest: collect upstream window geometry in one xRectangle struct
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
e976d2518d
( !1654 ) Xnest: replace XGetKeyboardControl() by xcb_get_keyboard_control()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
d1c62e9aaa
( !1654 ) Xnest: replace XGetPointerMapping() by xcb_get_pointer_mapping()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
3e4f9a923e
( !1654 ) Xnest: replace XGetPointerControl() by xcb_get_pointer_control()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
2518cadc80
( !1654 ) Xnest: replace XGetModifierMapping() by xcb_get_modifier_mapping()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
acba7d7ef2
( !1654 ) Xnest: fetch keyboard mapping via xcb
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
1f6a405c4b
( !1654 ) Xnest: add own copy of fixed xcb_xkb_get_kbd_by_name()
...
This is a temporary measure, until xcbproto / libxcb is fixed:
keep an own copy of the fixed xcb_xkb_get_kbd_by_name(), renamed
as xcb_xkb_get_kbd_by_name_1().
Once xcbproto/libxcb is fixed (and new xcb release is out), this
commit can be reverted.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
fb0973dd9c
( !1654 ) Xnest: use xcb for retrieving keymap controls
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
c21cb098bb
( !1654 ) Xnest: replace XSelectInput() by xcb_change_window_attributes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
69fd8a353d
( !1654 ) Xnest: replace XSetStandardProperties() by xcb functions
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
5d807b2030
( !1654 ) Xnest: fetch supported pixmap formats from xcb setup data
...
There's even no need to keep our own copies, since we can ask XCB's
copy any time.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
255bad944f
( !1654 ) Xnest: fetch allowed screen depths from xcb screen info
...
There's even no need to keep our own copies, since we can ask XCB's
copy any time.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
6e47d1aeda
( !1654 ) Xnest: Pixmap: replace XGetImage() by xcb_get_image()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
ad1852c0c2
( !1654 ) Xnest: GC: replace XGetImage() by xcb_get_image()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
c0e3a75c82
( !1654 ) Xnest: replace XDestroyWindow() by xnest_destroy_window()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
7f91836413
( !1654 ) Xnest: replace XCreatePixmapFromBitmapData() by xcb_put_image()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
a1663b3a48
( !1654 ) Xnest: replace XCreateBitmapFromData() by xcb_put_image()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
2d1dc7c0f6
( !1654 ) Xnest: replace XDefineCursor() by xcb_change_window_attributes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
bee6771e0a
( !1654 ) Xnest: replace xnestRecolorCursor() by xcb_recolor_cursor()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
089e06982e
( !1654 ) Xnest: replace XFreeCursor() by xcb_free_cursor()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
b6a3fa451c
( !1654 ) Xnest: replace XStoreColors() by xcb_store_colors()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
998123dff6
( !1654 ) Xnest: replace XQueryColors() by xcb_query_colors()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
7ce308063a
( !1654 ) Xnest: replace XSetWindowColormap() by xcb_change_window_attributes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
d115ffdc7d
( !1654 ) Xnest: replace XSetWMColormapWindows() by xcb_icccm_set_wm_colormap_windows_checked()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
66a71ac254
( !1654 ) Xnest: use XIDs directly, instead of Xlib's GC
...
Now that no Xlib drawing functions used anymore, we can finally switch over
to using GC XID's directly, instead of Xlib's GC struct.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
73cdb21add
( !1654 ) Xnest: GC: set stipple filling via xcb_change_gc
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
dea01f180b
( !1654 ) Xnest: replace XSetClipMask() by xcb_change_gc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
2057294127
( !1654 ) Xnest: replace XSetClipRectangles() by xnset_set_clip_rectangles()
...
Use XCB for setting clip rectangles.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
5f00bed662
( !1654 ) Xnest: replace XSetDashes() by xnest_set_dashes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
0b6449bc65
( !1654 ) Xnest: replace XChangeGC() by xcb_change_gc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
9debe09551
( !1654 ) Xnest: replace XChangeKeyboardControl() by xcb_change_keyboard_control()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
80b7481a97
( !1654 ) Xnest: replace XChangePointerControl() by xcb_change_pointer_control
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
865ce1c45c
( !1654 ) Xnest: replace XChangeWindowAttributes() by xcb_aux_change_window_attributes()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
92082c2612
( !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 >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
036c47b0f2
( !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 >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
b4c5c62208
( !1654 ) Xnest: replace XFillRectangles() by xcb_poly_fill_rectangle()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
be16356c0b
( !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 >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
bacaf20be8
( !1654 ) Xnest: replace XFillArcs() by xcb_poly_fill_arc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
407fb39b29
( !1654 ) Xnest: replace XFillPolygon() by xcb_fill_poly()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
370713c90b
( !1654 ) Xnest: replace XCopyPlane() by xcb_copy_plane()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
6a5f0e3178
( !1654 ) Xnest: replace XCopyArea() by xcb_copy_area()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
e6536db788
( !1654 ) Xnest: replace XDrawArcs() by xcb_poly_arc()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
25fd630b0f
( !1654 ) Xnest: replace XDrawRectangles() by xcb_poly_rectangle()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:15 +01:00
Enrico Weigelt, metux IT consult
dcb17450ca
( !1654 ) Xnest: replace XDrawSegments() by xcb_poly_segment()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:14 +01:00
Enrico Weigelt, metux IT consult
4f7589af92
( !1654 ) Xnest: replace XDrawLines() by xcb_poly_line()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:14 +01:00
Enrico Weigelt, metux IT consult
e6f2421c12
( !1654 ) Xnest: replace XDrawPoints() by xcb_poly_point()
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-02-02 17:35:14 +01:00
Enrico Weigelt, metux IT consult
555cf50584
( !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 >
2026-02-02 17:35:14 +01:00
Enrico Weigelt, metux IT consult
a9646e234e
( !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 >
2026-02-02 17:35:14 +01:00