This is needed for Ctrl + Alt + F* vt switching
and Ctrl + Alt + Backspace server terminate.
We could implement other special keys too, it we want to.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
Instead of directly accessing the global screenInfo.screens[] array,
let everybody go through a little inline helper. This one also checks
for array bounds - if the screen doesn't exist, return NULL.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
iterating over screen list via lambda-esque macros calls like this
DIX_FOR_EACH_SCREEN({
do_something
});
withing the body, the iterator variables `walkScreenIdx` and `walkScreen`
are defined and can be directly used (read-only). the code inside the body
is running in a separate scope.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Don't rely on this file just being included indirectly by somebody else
just by accident.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
We only have one global screenInfo struct ever, and many other parts of the
Xserver can only operate on global screenInfo, so it's time to phase out
this extra pointer. Once the same has done on the other DDXes, it will
be dropped from InitOutput()'s parameter list.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
in preparation of upcoming generic screen iterator macros, already
rename the index variable to what the macro will be using.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
These are just used locally and always assigned at loop body start,
so it's cleaner to declare them locally inside the loop body.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Bug slipped through: we have to substract the coordinates from the walked
screen to the current one, instead of the walked one from itself :o
Fixes: 97d72431cf
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
They are all disabled for now, build options for enabling them
will be added when Xfbdev is added.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
The keyboard input driver that will be added to kdrive
only works with old SIGIO code, and doesn't work with
the new threaded input that kdrive uses.
All the code is behind #if's that are never satisfied,
so this commit has no functional changes.
In preparation for adding the Xfbdev X11 kdrive server.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
The keyboard input driver that will be added to kdrive
only works with old SIGIO code, and doesn't work with
the new threaded input that kdrive uses.
All the code is behind #if's that are never satisfied,
so this commit has no functional changes.
In preparation for adding the Xfbdev X11 kdrive server.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
All the code if behind #if's that are never satisfied,
so this commit has no functional changes.
In preparation for adding the Xfbdev X11 kdrive server.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
Add definitions for the forward declarations from the previous commit
In preparation for adding the Xfbdev X11 kdrive server
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
There are some forward declarations with no definitions in kdrive.h
This doesn't cause a problem right now and makes it easier
to break up the large Xfbdev pr.
In preparation for adding the Xfbdev X11 kdrive server
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
In preparation for adding the Xfbdev X11 kdrive server
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
When iterating screen lists, consistently use the same variable name
`walkScreen` for holding current screen pointer everywhere.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
The global (exported) serverGeneration field is `unsigned long`, while
many other places copy it and compare it two other integer types, eg.
plain `int` (which is signed). Even if it's unlikely ever reaching such
high number of generations that it will ever make trouble, it's still
a good idea to clean this up and use the same type everywhere.
For clearity, introducing a typedef `x_server_generation_t` which is
used everywhere, instead of raw `unsigned long`.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This will be needed by Xfbdev's keyboard driver, which cannot work
with input threads yet.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>