Commit Graph

9376 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
699cef88dc (!1654) Xnest: replace XCreatePixmapCursor() by xcb_create_cursor()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
ce0cf3f0b8 (!1654) Xnest: replace XConfigureWindow() calls by xcb_configure_window()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
33243832f1 (!1654) Xnest: use xcb for creating / destroying pixmaps
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
e6960e1cb1 (!1654) Xnest: replace XBell() by xcb_bell()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
8126a7fec3 (!1654) Xnest: use xcb for (un)mapping windows
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
2c72377eb1 (!1654) Xnest: replace XCreateWindow() by use xcb_create_window()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
00e8dbf33d (!1654) Xnest: fetch root visual ID from screen data
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
27cf9f2743 (!1654) Xnest: fetch keycode min/max from setup data
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
b3ea348878 (!1654) Xnest: fetch image metrics from xcb connection setup data
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
747d70862f (!1654) Xnest: fetch default screen's root window from screen info
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
1780835812 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
7731fd2ace (!1654) Xnest: fetch default colormap from xcb screen info
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
834d9fef60 (!1654) Xnest: fetch root window depth from screen info
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
6eeb73d1e2 (!1654) Xnest: fetch display size from xcb setup data
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
3ab241481b (!1654) Xnest: fetch BlackPixel and WhitePixel from xcb setup data
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
1aa18793ec (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
938e34302c (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
0187586176 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
e5f2605fc1 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
7212dad17b (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
ab6c181a92 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
4ce8e4e8ee (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
20522c25b4 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
0f9ed21949 (!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-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
6f3d9e1c40 (!1681) xfree86: common: use LogMessageVerb() instead of xf86Msg()
Both are doing same job, so no need to keep using an duplicated implementation.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
32ecc23e3c (!1682) os: log: drop now meaningless XLOG_FLUSH option
Since we're not indirectly writing via FILE anymore, this option has
become meaningless: it meant flushing out our in-process buffer to
the kernel, but we're now doing direct write() calls anyways.

xf86 still accepts the "flush" config file flag for backwards compatibility,
but it hasn't any practical meaning anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
7116989896 (!1714) xwayland: use window destructor hook
Wrapping ScreenRec's function pointers is problematic for many reasons, so
use the new window destructor hook instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
9166576be7 (!1714) xfree86: dri: use window destructor hook
Wrapping ScreenRec's function pointers is problematic for many reasons, so
use the new window destructor hook instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
5175fc34cf (!1714) xfree86: xv: use window destructor hook
Wrapping ScreenRec's function pointers is problematic for many reasons, so
use the new window destructor hook instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
a1c271ba55 (!1714) kdrive: xv: use window destructor hook
Wrapping ScreenRec's function pointers is problematic for many reasons, so
use the new window destructor hook instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
3a00eee501 (!1705) xwin: drop wrapping on ScreenRec->ModifyPixmapHeader()
Instead of complicated wrapping, just call fbModifyPixmapHeader() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
2b430b7f2a (!1705) xwin: drop winResizeWindowMultiWindow()
This wrapping function for Screen->ResizeWindow() is does nothing more than
just call the original functions. So no need to keep wrapping it at all.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
92af5f8f4d (!1705) xwin: drop wrapping on ScreenRec->MoveWindow()
Instead of complicated wrapping, just call fbMoveWindow() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
f5c27f3e2f (!1705) xwin: drop wrapping on ScreenRec->RestackWindow()
This proc vector is optional (callers check for non-null) and neither fb nor
mi set it, so we can just assign our function directly. No need for wrapping.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
b01c4f39f5 (!1705) xwin: drop wrapping on ScreenRec->ReparentWindow()
This proc vector is optional (callers check for non-null) and neither fb nor
mi set it, so we can just assign our function directly. No need for wrapping.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
77531a6791 (!1705) xwin: drop wrapping on ScreenRec->UnrealizeWindow()
Instead of complicated wrapping, just call fbUnrealizeWindow() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
b14a92fef0 (!1705) xwin: drop wrapping on ScreenRec->RealizeWindow()
Instead of complicated wrapping, just call fbRealizeWindow() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
b4dba17966 (!1705) xwin: drop wrapping on ScreenRec->SetShape()
Instead of complicated wrapping, just call fbSetShape() directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
8edd5986b2 (!1705) xwin: drop winCopyWindowMultiWindow()
This wrapping function for Screen->CopyWindow() is does nothing more than
just call the original functions. So no need to keep wrapping it at all.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
f13882e313 (!1705) xwin: call winFinishScreenInitFB() directly
Both engines, GDI as well as DirectDraw, using the same screen init finish function,
so no need to keep indirection via per-engine callback pointer.

The winFinishScreenInitFB() can also be made static now.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
d06f5e55ec (!1705) xwin: glx: drop glxWinUnrealizeWindow()
It does nothing more than just calling the original/wrapped function,
so we don't need that at all.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
4193f76de1 (!1705) xwin: glx: drop glxWinRealizeWindow()
It does nothing more than just calling the original/wrapped function,
so we don't need that at all.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:56 +01:00
Enrico Weigelt, metux IT consult
20e8471fec (!1705) xwin: drop wrapping on ScreenRec->ChangeWindowAttributes()
Instead of complicated wrapping, just call fbCreateWindow directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
46212c1739 (!1705) xwin: drop wrapping on ScreenRec->CreateWindow()
Instead of complicated wrapping, just call fbCreateWindow directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
5a2b3e6ac1 (!1705) xwin: drop wrapping on ScreenRec->PositionWindow()
Instead of complicated wrapping, just call fbPositionWindow directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
6fac89c202 (!1705) xwin: drop wrapping on ScreenRec->DestroyWindow()
Instead of complicated wrapping, just call fbDestroyWindow directly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
cdc623b6d1 (!1799) xkb: unexport XkbSetRepeatKeys()
Not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
3293057023 (!1799) xkb: unexport DDX entry points
These functions are entry points of the DDX (or stubs thereof), not supposed
to be called by any drivers, so no need to keep them exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
a248b0aadf (!1799) xkb: unexport internal variables
These aren't used by any drivers/modules, and it doesn't seem make much
sense doing so, thus no need to keep them exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00
Enrico Weigelt, metux IT consult
0800c40caa (!1801) os: unexport xstrtokenize()
Not used by any external drivers/modules, so no need to keep it public.
Since modesetting is using it, still needs _X_EXPORT, as long as it's
a module.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-02-19 20:01:55 +01:00