Michel Dänzer
59a0259152
xwayland: Use xwl_window for tracking focus/touch
...
Slightly simpler, and might work better in some cases when X windows
get reparented.
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1300 >
2024-04-10 08:55:08 +00:00
Enrico Weigelt, metux IT consult
0db309467d
xfree86: os-support: bsd: fix warning on old-style function definition
...
Fix compiler warnings:
../hw/xfree86/os-support/bsd/bsd_VTsw.c: In function ‘xf86VTSwitchPending’:
../hw/xfree86/os-support/bsd/bsd_VTsw.c:56:1: warning: old-style function definition [-Wold-style-definition]
56 | xf86VTSwitchPending()
| ^~~~~~~~~~~~~~~~~~~
./hw/xfree86/os-support/bsd/bsd_VTsw.c: In function ‘xf86VTSwitchAway’:
./hw/xfree86/os-support/bsd/bsd_VTsw.c:67:1: warning: old-style function definition [-Wold-style-definition]
67 | xf86VTSwitchAway()
| ^~~~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_VTsw.c: In function ‘xf86VTSwitchTo’:
../hw/xfree86/os-support/bsd/bsd_VTsw.c:82:1: warning: old-style function definition [-Wold-style-definition]
82 | xf86VTSwitchTo()
| ^~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86OpenConsole’:
../hw/xfree86/os-support/bsd/bsd_init.c:153:1: warning: old-style function definition [-Wold-style-definition]
153 | xf86OpenConsole()
| ^~~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86OpenPccons’:
../hw/xfree86/os-support/bsd/bsd_init.c:320:1: warning: old-style function definition [-Wold-style-definition]
320 | xf86OpenPccons()
| ^~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86OpenPcvt’:
../hw/xfree86/os-support/bsd/bsd_init.c:451:1: warning: old-style function definition [-Wold-style-definition]
451 | xf86OpenPcvt()
| ^~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86OpenWScons’:
../hw/xfree86/os-support/bsd/bsd_init.c:563:1: warning: old-style function definition [-Wold-style-definition]
563 | xf86OpenWScons()
| ^~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86CloseConsole’:
../hw/xfree86/os-support/bsd/bsd_init.c:594:1: warning: old-style function definition [-Wold-style-definition]
594 | xf86CloseConsole()
| ^~~~~~~~~~~~~~~~
../hw/xfree86/os-support/bsd/bsd_init.c: In function ‘xf86UseMsg’:
../hw/xfree86/os-support/bsd/bsd_init.c:671:1: warning: old-style function definition [-Wold-style-definition]
671 | xf86UseMsg()
| ^~~~~~~~~~
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1445 >
2024-04-10 03:24:08 +00:00
Erik Kurzinger
e1f16fb1ac
xwayland: don't scrap pending present requests
...
When a present request is received, Xwayland will check if there is an
existing request targeting the same window and msc and scrap the older
request if so. Alas, this does not interact well the older fence-based
or newer syncobj-based synchronization features of the Present
extension.
Since execution of a request may be delayed for an unknown length of
time while waiting for a fence to be signaled, the target msc computed
upon receiving a request may not match the actual msc at which the
request is executed. Therefore, we cannot determine in advance whether a
more recently received request will make an older request redundant.
This change removes the code to scrap pending present requests.
We must also ensure requests are executed in the correct order even if
their fences are signaled out of order. To achieve this, whenever
execution of a request needs to wait for a fence, execution of any
later-received requests will be blocked until the earlier request is
ready. The blocked requests will be added to a list tracked in the
xwl_present_window struct. Once the earlier request's fence is signaled,
any blocked requests will be re-executed.
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
87bf2cafcc
xwayland: add support for wp_linux_drm_syncobj_v1
...
This protocol allows for explicit synchronization of GPU operations by
Wayland clients and the compositor. Xwayland can make use of this to
ensure any rendering it initiates has completed before the target image
is accessed by the compositor, without having to rely on kernel-level
implicit synchronization.
Furthermore, for X11 clients that also support explicit synchronization
using the mechanisms exposed in the DRI3 and Present extensions, this
Wayland protocol allows us to simply forward the timeline, acquire, and
release points directly to the compositor, ideally avoiding any
premature stalls in the presentation pipeline.
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
6f85ce4d4e
xwayland: support DRI3 1.4 and Present 1.4
...
Together, DRI3 1.4 and Present 1.4 allow clients to explicitly
synchronize GPU rendering with presentation using DRM syncobjs. Here we
add the necessary support to Xwayland's glamor and Present
infrastructure to enable this functionality.
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
ac0bc0b3b6
Present: add PresentCapabilitySyncobj and PresentPixmapSynced
...
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
0a7b09a041
xwayland: re-compute target msc during xwl_present_re_execute
...
If a presentation request is delayed while waiting for a fence, the
original target msc may no longer be correct. Instead, we should compute
a new target msc in xwl_present_re_execute.
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
3df236a3d5
xwayland: add functions to import and export dma-buf implicit fences
...
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Xaver Hugl
d411a8b611
xwayland: add workaround for drivers that don't support impicit sync
...
Without either implicit or explicit synchronization, the result of rendering is
pretty much undefined, and many glitches can appear. This still doesn't synchronize
buffer release, but it works around most glitches until explicit sync is supported.
Signed-off-by: Xaver Hugl <xaver.hugl@kde.org >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Erik Kurzinger
89c327f263
xwayland: add detection for drivers that don't support implicit sync
...
Signed-off-by: Erik Kurzinger <ekurzinger@nvidia.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/967 >
2024-04-09 06:11:03 +00:00
Alan Coopersmith
6c684d035c
Xquartz: ProcAppleDRICreatePixmap needs to use unswapped length to send reply
...
CVE-2024-31082
Fixes: 14205ade0 ("XQuartz: appledri: Fix byte swapping in replies")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1463 >
2024-04-02 19:19:40 -07:00
Enrico Weigelt, metux IT consult
0663bb119a
xfree86: modesetting: fix warning on unused variable
...
Fix warning:
../hw/xfree86/drivers/modesetting/driver.c:1612:19: warning: unused variable ‘pEnt’ [-Wunused-variable]
1612 | EntityInfoPtr pEnt = ms->pEnt;
| ^~~~
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1443 >
2024-04-01 23:36:14 +00:00
Alan Coopersmith
bb2e2eba42
xorg.conf.man: Add missing new paragraph mark before AllowByteSwappedClients
...
Was previously being shown as part of previous entry.
Fixes: 412777664 ("Disallow byte-swapped clients by default")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1439 >
2024-03-23 14:30:43 -07:00
Enrico Weigelt, metux IT consult
f361931035
xfree86: int10: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Enrico Weigelt, metux IT consult
cd84b3eaf3
xfree86: modesettig: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Enrico Weigelt, metux IT consult
9fc6e0d304
xfree86: os-support: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Enrico Weigelt, metux IT consult
d91098ef48
xfree86: common: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Enrico Weigelt, metux IT consult
b2fd743288
xwayland: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Enrico Weigelt, metux IT consult
94e5252365
xquartz: fix missing include of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1435 >
2024-03-21 17:32:30 +01:00
Olivier Fourdan
821d3d5789
xwayland: Use fractional scale with rootful
...
Implement fractional scale with Xwayland rootful by scaling the content
to the desired fractional scale using a viewport.
For now this applies to Xwayland rootful only.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
3e77c1699a
xwayland: Add helper function for fractional scaling
...
Fractional scaling may not be available, or not suitable for the current
configuration (e.g. if running rootless).
Add a helper function to tell whether fractional scaling should be used.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
7a78756d0a
xwayland: Add support for fractional scale protocol
...
Add support for wp_fractional_scale_v1 protocol.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
da84b470cb
xwayland: Rename xwl_window_enable_viewport()
...
To support the fractional scale protocol, we need a viewport.
Rename the existing function xwl_window_enable_viewport() to avoid
confusion with the viewport we use for fullscreen XRandR emulation in
rootless mode.
No functional change.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
4003b1f9a2
xwayland: Update the global screen scale
...
Recompute and update the global screen scale based on the different
outputs the root window is placed on.
For backward compatibility, this functionality is however disabled by
default and can be enabled using a new command line option "-hidpi".
That option has no effect if Xwayland is running rootless.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
290ae87c02
xwayland: Update the scale based on enter/leave events
...
Recompute the window scale each time the window enters or leaves an
output.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
4248bfb0da
xwayland: Keep track of outputs per window
...
Add a list of outputs a window is placed on, adding an output whenever
the surface enters the output and removing it once it leaves the output.
Note that not all Wayland compositors actually send a leave surface
event on output removal, so we need to make sure to remove the output
from the list for each window, otherwise we might end up pointing to
freed memory.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
cd0c43df13
xwayland: Make has_viewport_enabled private
...
By using a sensible scale factor for input even when there is no
viewport enabled, no need to have xwl_window_has_viewport_enabled()
public anymore.
Small cleanup, no functional change.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
d7f31fe887
xwayland: Apply the viewport's scale_x/y to all input
...
The viewport's scale_x/y is currently applied to the motion event only.
Apply the same viewport_scale_x/y to all relevant input coordinates.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
3ea36e5214
xwayland: Always set the viewport scale factor
...
When the viewport is disabled, set the scale x/y back to 1.0 so that we
can apply the scale factor regardless of the viewport being enabled.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
96fd7cc8c9
xwayland: Rename scale_x/y to viewport_scale_x/y
...
The scale_x/y factor applies when a viewport is in use, rename the
fields to reflect that and distinguish these from the other scale
factors such as the core protocol surface scale and the fractional
scaling.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
54f8fc4090
xwayland: Account for the scale factor
...
Apply the scale factor to the root window and adjust the coordinates and
hotspot location for cursors.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
b678297c53
xwayland: Add scale factor to the Xwayland screen
...
For now, the global surface scale is always 1, no functional change.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
2bdf594cea
xwayland: Track output scales
...
Keep track of the output scales as advertised by the wl_output protocol.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
5b05a29912
xwayland: Use CRTC transforms
...
Advertise the scaling factor applied to the Xwayland output using the
mechanism of CRTC transforms.
That allows for X11 clients to query the scale factor using XRandR.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
6a09cd2d20
xwayland: Introduce output scale
...
Add a scale factor to the Xwayland output and take the scale into
account when computing the screen size.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
8c54f90673
xwayland: Store the mode width/height
...
The mode size can be different from the actual output size when a
transformation is at play.
Store the actual mode width/height as well in preparation for adding
support for transforms.
No functional change.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Olivier Fourdan
32dad24083
xwayland: Use double for screen size
...
Use double precision floating point for the screen size to reduce the
rounding issues when using fractional scaling.
Introduce a couple of simple convenient functions that round the
floating point value into an integer and use it in place of directly
accessing the xwl_screen width/height for integer computation.
This is preparation work for the introduction of fractional scaling,
there should be no functional change at this point.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Reviewed-By: Kenny Levinsen <kl@kl.wtf >
Acked-by: Peter Hutterer <peter.hutterer@who-t.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1197 >
2024-03-20 09:05:36 +01:00
Alan Coopersmith
e1c5be126b
bsd_init.c: fix build on FreeBSD
...
Commit 0d4a7ed6 put the definition of pcvt_version inside #ifdef __NetBSD__
but left one use of it outside of the ifdefs, resulting in a build failure
on FreeBSD 14.0 in the gitlab CI for xf86-input-keyboard.
../hw/xfree86/os-support/bsd/bsd_init.c:540:21:
error: use of undeclared identifier 'pcvt_version'
pcvt_version.rmajor, pcvt_version.rminor);
^
../hw/xfree86/os-support/bsd/bsd_init.c:540:42:
error: use of undeclared identifier 'pcvt_version'
pcvt_version.rmajor, pcvt_version.rminor);
^
Fixes: 0d4a7ed68 ("bsd_init.c: fix build on OpenBSD")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1424 >
2024-03-20 03:32:23 +00:00
Enrico Weigelt, metux IT consult
2003adfd33
xwin: consolidate debugging symbols
...
We've got three #define's that are all set at once, on enable_debugging.
A comment in meson.build already asks for consolidating them into one,
so just do it now.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1409 >
2024-03-19 02:05:35 +00:00
Enrico Weigelt, metux IT consult
d8758cdd20
xfree86: os-support: ppc_video: drop unused DEV_MEM define
...
This #define is local within a .c file, but became unused about a
decade ago (commit 8686463de7 ).
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1410 >
2024-03-19 01:59:38 +00:00
Enrico Weigelt, metux IT consult
0cb8a76a9f
xfree86: os-support: drop obsolete Solaris specific LED defines
...
Historical legacy: the LED ID defines have/had different naming across various
platforms - for better portability of the keyboard driver, those have been
aliased to BSD's naming scheme. Meanwhile, lots of ancient platforms have
been died or moved to other drivers (eg. Linux went to either evdev or libinput
and not supported by the xf86-input-keyboard driver anymore).
The only remaining possible consumer is Solaris. But it has it's own dedicated
code (sun_kbd.c in xf86-input-keyboard), which already using the Solaris' naming.
Therefore, there's no actual consumer of them left, so we can drop them.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1418 >
2024-03-19 00:54:38 +00:00
Peter Hutterer
924939c886
Revert "Fix missing includes of <errno.h>"
...
Removing errno from xf86_OSlib.h breaks the xf86-input-mouse driver
build. And xf86_OSlib.h itself relies on errno anyway in the SYSCALL
macro provided by this header.
This reverts commit f6a367102c .
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1423 >
2024-03-19 00:33:26 +00:00
Olivier Fourdan
792758faa5
xwayland: Update lost focus on deactivation
...
Use the "activated" state from xdg-shell to call the pointer and
keyboard leave events when running rootful.
The regular pointer and keyboard leave notifications are now ignored
when running rootful.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1604
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1213 >
2024-03-18 23:34:29 +00:00
Olivier Fourdan
122ad8a0de
xwayland: Introduce xwl_screen_lost_focus()
...
xwl_screen_lost_focus() calls the keyboard and pointer leave functions
for each seat.
No functional change.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1213 >
2024-03-18 23:34:29 +00:00
Olivier Fourdan
654c354da9
xwayland: Move the leave kbd/ptr code
...
Move part of the code that deals with pointer or keyboard leave
notifications to their own function.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1213 >
2024-03-18 23:34:29 +00:00
Olivier Fourdan
9a7fb3a153
xwayland: Use "-decorate" if available
...
That allows to open new Xwayland decorated windows as needed (e.g. using
the "New window" entry from the launcher)
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1421 >
2024-03-18 23:19:59 +00:00
Olivier Fourdan
fbf5e26b5c
xwayland: Use full path for Xwayland exec
...
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1421 >
2024-03-18 23:19:59 +00:00
Olivier Fourdan
66b371f306
xwayland: Add the Exec key to the desktop file
...
This was intentionally left out, but it's against the spec.
Add an Exec key to be conformant.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com >
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1654
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1421 >
2024-03-18 23:19:59 +00:00
Enrico Weigelt, metux IT consult
ccfa7e9f2e
Fix missing include of <sys/wait.h>
...
Instead of relying on indirect includes, it's much cleaner if everybody
includes directly what he needs.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1419 >
2024-03-18 23:02:45 +00:00
Enrico Weigelt, metux IT consult
f6a367102c
Fix missing includes of <errno.h>
...
It's much cleaner to always include directly what one needs,
instead of relying on very indirect including.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1416 >
2024-03-18 22:58:32 +00:00