xserver/include
Enrico Weigelt, metux IT consult f94064d0ac dix: add CreateScreenResources callback mechanism
Right now, extensions that need to be called after the CreateScreenResources
proc had been run, must wrap the screen proc vector directly (all of them
forming kind of daisy chain), and so - when called - temporarily restore the
previous one, call it, wrap again, and if the call was successful finally
doing it's own stuff. (same is done for many other procs)

While that approach is looking nice and elegant on the drawing board, it's
complicated, dangerous like a chainsaw and makes debugging hard, leading to
pretty blurred API borders.

Instead introducing a simple approach for letting extension hook into a
post-CreateScreenResources callback list safely, w/o having to care much
about side effects with the call chain. Extensions now can simply register
their business logic and get called back - w/o ever having to mess with the
ScreenRec's internal structures.

Note that these hooks are executed *AFTER* the original CreateScreenResources()
proc had been called SUCCESSFULLY (returned TRUE), so callees can rely on
the DDX/driver had already done it's job.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-02 19:43:54 +02:00
..
.gitignore Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
Xprintf.h Remove "All rights reserved" from Oracle copyright notices 2023-02-25 09:40:41 -08:00
Xserver.d Remove "All rights reserved" from Oracle copyright notices 2023-02-25 09:40:41 -08:00
callback.h dix: unexport callback manager init / teardown functions 2024-03-12 15:18:17 +00:00
client.h os: unexport client id retrieval functions 2024-10-10 13:45:29 +00:00
closure.h
colormap.h dix: move colormap flags into colormap_priv.h and rename them 2024-09-01 22:06:50 +00:00
colormapst.h dix: move colormap flags into colormap_priv.h and rename them 2024-09-01 22:06:50 +00:00
cursor.h dix: drop superfluous XineramaGetCursorScreen() 2024-09-02 16:43:29 +00:00
cursorstr.h
displaymode.h hw/xfree86: re-calculate the clock and refresh rate 2023-12-22 05:02:05 +00:00
dix-config-apple-verbatim.h
dix.h drop not needed includes of geext.h 2025-02-24 20:19:55 +00:00
dixaccess.h
dixevents.h
dixfont.h include: drop unused including of closure.h 2024-03-03 22:42:41 +00:00
dixfontstr.h include: dixfontstr.h: drop silent dependency on libxfont2 2024-09-01 17:45:13 +00:00
dixstruct.h os: split off internal definitions from client.h 2024-10-10 13:45:29 +00:00
events.h xi: Implement internal gesture event struct 2021-05-30 13:26:31 +03:00
eventstr.h mi: reset the PointerWindows reference on screen switch 2023-10-25 00:37:47 +00:00
exevents.h include: move private definitions out of exevents.h 2024-04-30 00:47:38 +00:00
extension.h
extinit.h include: unexport no*Extension flags 2025-02-07 12:00:58 +01:00
extinit_priv.h Xext: drop disable flag for GE extension 2025-02-26 13:34:19 +00:00
extnsionst.h dix: Remove extension aliases 2017-06-20 16:37:24 -04:00
fourcc.h glamor: xv: add rgb565 2023-11-29 21:18:29 +00:00
gc.h dix: unexport SetClipRects() 2024-04-15 23:10:31 +00:00
gcstruct.h fb: Remove 24bpp support (v3) 2017-03-17 15:14:42 -04:00
globals.h include: unexport no*Extension flags 2025-02-07 12:00:58 +01:00
glx_extinit.h miinitext: Load GLX on the mi path 2018-02-14 17:04:48 -05:00
glxvndabi.h Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
hotplug.h config: unexport config_pre_init() 2025-02-06 16:24:01 +01:00
input.h include: move private definitions out of input.h 2024-09-01 17:59:23 +00:00
inputstr.h dix: unexport defines for device grab states 2025-02-26 13:24:41 +00:00
inpututils.h Implement gesture processing logic 2021-05-30 13:26:42 +03:00
list.h include: drop obsolete check for typeof operator 2024-04-22 22:15:45 +00:00
meson.build dix-config.h: define HAVE_STRUCT_SOCKADDR_STORAGE for xtrans 1.6 2025-03-14 22:38:36 +00:00
misc.h misc.h: move out MAXEXTENSIONS to geext.c 2025-02-24 20:19:55 +00:00
miscstruct.h
nonsdk_extinit.h include: move private definitions out of extinit.h 2024-04-30 00:47:38 +00:00
opaque.h os: unexport fields from opaque.h not used by modules / drivers 2024-06-23 21:19:27 +00:00
optionstr.h
os.h os: drop unused TimerCheck() 2025-02-23 17:46:13 +00:00
pixmap.h dix: Remove pScratchPixmap and other associated ABI changes 2022-12-30 01:32:25 +00:00
pixmapstr.h rootless: Use screen_x and screen_y instead of pixmap pointer hacks 2023-01-20 17:10:54 +00:00
privates.h Fix compilation with windows.h from latest w32api 2021-08-31 16:56:28 +00:00
probes.h Remove "All rights reserved" from Oracle copyright notices 2023-02-25 09:40:41 -08:00
property.h dix: unexport DeleteAllWindowProperties() 2024-09-02 17:50:47 +00:00
propertyst.h
protocol-versions.h xvmc: move over protocol version defines into xvmc.c 2025-02-06 23:29:10 +00:00
ptrveloc.h dix: unexport SetAccelerationProfile() 2024-03-09 18:01:52 +00:00
region.h
regionstr.h
resource.h rename remaining RT_* defines to X11_RESTYPE_* 2024-04-15 19:00:47 -07:00
rgb.h
screenint.h Revert "dix: unexport AttachOutputGPU() and DetachOutputGPU()" 2024-09-01 20:38:01 +00:00
scrnintstr.h dix: add CreateScreenResources callback mechanism 2025-05-02 19:43:54 +02:00
selection.h
servermd.h
swaprep.h
swapreq.h dix: drop swapping request length fields 2025-02-06 22:28:51 +00:00
systemd-logind.h xf86/logind: Fix compilation error when built without logind/platform bus 2021-12-20 16:56:14 +01:00
validate.h
vidmodestr.h
window.h
windowstr.h dix: Remove WindowRec::backStorage 2019-04-12 21:53:03 +00:00
xkb-config.h.in
xkbrules.h xkb: unexport XkbRF_RuleRec struct 2025-02-26 13:43:52 +00:00
xkbsrv.h include: drop now empty xkbfile.h 2025-02-06 22:45:25 +00:00
xkbstr.h include: xkbstr.h: fix missing include of Xdefs.h 2024-04-09 06:50:20 +00:00
xorg-config.h.meson.in xf86AutoConfig: try modesetting on all platforms we build it on 2022-09-20 18:26:03 +00:00
xorg-server.h.meson.in dix: add per-screen pixmap destructor mechanism 2025-05-02 19:43:54 +02:00
xserver-properties.h
xwayland-config.h.meson.in xwayland/glamor: Drop the EGLStream backend 2024-03-18 15:41:17 +00:00
xwin-config.h.meson.in xwin: consolidate debugging symbols 2024-03-19 02:05:35 +00:00