Commit graph

2658 commits

Author SHA1 Message Date
Peter Hutterer
5dbb5b7659 XF86keysym.h: reserve a range for Linux kernel keysyms
The Linux kernel adds a few evdev keycodes roughly every other release. These
aren't available as keysyms through XKB until they have been added as keycode
in xkeyboard-config and mapped there to a newly defined keysym in the X11
proto headers.

In the past, this was done manually,  a suitable keysym was picked at
random and the mapping updated accordingly. This doesn't scale very well and,
given we have a large reserved range for XF86 keysyms anyway, can be done
easier.

Let's reserve the range 0x10081XXX range for a 1:1 mapping of Linux kernel
codes. That's 4095 values, the kernel currently uses only 767 anyway. The
lower 3 bytes of keysyms within that range have to match the kernel value to
make them easy to add and search for. Nothing in X must care about the actual
keysym value anyway.

Since we expect this to be parsed by other scripts for automatic updating, the
format of those #defines is quite strict. Add a script to generate keycodes as
well as verify that the existing ones match the current expected format.

The script is integrated into the CI and meson test, so we will fail if an
update breaks the expectations.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08 14:52:02 +10:00
Peter Hutterer
70e990f09c gitlab CI: add a basic build test
Build an Arch image that tests a meson build with all build options we support
(well, the single one so far).

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-01-21 08:55:35 +10:00
Peter Hutterer
32ada053a3 Remove misleading comment about not adding syms to XF86keysym.h
We've been adding to those over the last few years. Not a huge amount but
enough that we should stop pretending we don't touch that header.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-01-18 11:48:23 +10:00
Alan Coopersmith
21e05da99c XKB: Mark key name arrays as not NUL-terminated strings
They are fixed length (4 characters), and don't need NUL-terminators.
This makes gcc stop warning when they're not NUL-terminated, and instead
warn if they are passed to functions expecting NUL-terminated strings.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2020-10-10 14:22:35 -07:00
Alan Coopersmith
50671520ef Xfuncproto: define _X_NONSTRING for __attribute__((nonstring))
Bumps xproto version to 7.0.33

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2020-10-10 14:22:24 -07:00
orbea
e4d9ffdd51 meson: Use configure_file for pc files.
Meson's pkg.generate() is not suitable for header only libraries
and using configure_file() allows for more fine tuned control.
This also makes the meson and autotools builds more in sync where
they both use the same .pc.in files.

v2: Drop exec_prefix.
2020-08-24 15:01:44 +00:00
orbea
daffc5b462 pkgconfig: Drop exec_prefix from the .pc.in files.
This is not used by xorg-devel which contains only headers.
2020-08-24 15:01:44 +00:00
Povilas Kanapickas
2e18c08aca specs: Make links between XI2 enum and event names explicit 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
49720c7548 specs: Improve description of detail field in XIPassiveGrabDevice 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
97b47b5065 specs: Improve description of detail field in DeviceEvent 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
5371f0d4f8 specs: Fix example of touch event processing 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
31aa0990d6 specs: Use non-hyphenated spelling of nonzero 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
8936fcea33 specs: Improve consistency of grammar in a list 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
b93a47beb5 specs: Only key code can be grabbed, not key symbol 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
0f72d2d0b9 specs: Fix incorrect wording for ignored parameter 2020-08-18 09:36:39 +00:00
Povilas Kanapickas
2e7276469c specs: Fix grammar (duplicate word) 2020-08-18 09:36:39 +00:00
Alan Coopersmith
09602b2130 Fix spelling/wording issues
Found by using:
  codespell --builtin clear,rare,usage,informal,code,names

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2020-08-08 10:33:56 -07:00
Samuel Thibault
a8ccf66bc9 keysymdef: Fix left/rightanglebracket Unicode equivalent
As of version 7.7, the X protocol does not define a Unicode equivalent for
them.  The U+27E8 and U+27E9 equivalents were introduced by 618956f1f ("The
big keysym cleanup, to bring implementation in line with the recent revision
of Appendix A of the protocol spec."), but as xterm Patch #226 explicitly
notes, U+2329 and U+232A should be used rather than U+27E8 and U+27E9.  Gtk
also inherited this.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07 14:42:40 +02:00
Samuel Thibault
39eb59740d keysymdef.h: Fix the documented perl regexp
+ is interpreted when not escaped.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07 13:31:37 +02:00
Samuel Thibault
959d4442e4 keysymdef: Add Hangul unicode equivalents
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07 11:24:04 +02:00
Samuel Thibault
84986de39b keysymdef: Add vietnamese dead accents
These are used in the vn layout.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07 09:46:40 +02:00
Adam Jackson
c62e820340 xorgproto 2020.1
Fixes: xorgproto#28
Signed-off-by: Adam Jackson <ajax@redhat.com>
2020-04-14 11:22:03 -04:00
Adam Jackson
4e2faa0093 automake: Fix install and dist for the new markdown docs 2020-04-14 11:20:29 -04:00
Adam Jackson
7c22419acc Revert "xorgproto 2020.1"
Fails distcheck.

This reverts commit 032a3a16cd.
2020-04-14 11:19:29 -04:00
Adam Jackson
032a3a16cd xorgproto 2020.1
Fixes: xorgproto#28
Signed-off-by: Adam Jackson <ajax@redhat.com>
2020-04-06 10:52:07 -04:00
Ashok Arora
da9d1cb7a5 Replaces text formatted protocol documentation with Markdown
Protocol documentation under /specs/SIAddresses has been formatted
with Markdown.
Signed-off-by: Ashok Arora <arora8715@gmail.com>
2020-03-26 23:36:51 +05:30
Sebastian Wick
15329c5a0d XF86keysym: Add XF86XK_FullScreen
Add XF86XK_FullScreen keysym, to be used as mapping for evdev's
KEY_FULL_SCREEN.

Chromebooks have a special media key for toggling full screen mode.

Signed-off-by: Sebastian Wick <sebastian@sebastianwick.net>
2020-03-09 16:44:31 +01:00
Alexander Volkov
564d18c8e5 Add DPMSInfoNotify event
This will allow applications to respond to changes of power level
of a monitor, e.g. an application may stop rendering and related
calculations when the monitor is off.

Bump DPMS version to 1.2, install dpmsproto.pc.

Signed-off-by: Alexander Volkov <a.volkov@rusbitech.ru>
2020-02-26 15:44:33 +03:00
Ross Burton
032909626b meson: mark more extensions as legacy
The Meson and Autotools builds disagree about what extensions are legacy.
This patch makes the Meson build identical to autotools.

Signed-off-by: Ross Burton <ross.burton@intel.com>
2020-02-25 16:28:10 +00:00
Adam Jackson
f61f9a3ee1 xorgproto 2019.2
Closes: https://gitlab.freedesktop.org/xorg/proto/xorgproto/issues/21
Signed-off-by: Adam Jackson <ajax@redhat.com>
2019-10-17 16:02:05 +00:00
Adam Jackson
1547c1cc3c Move remaining xlib-entwined headers to LEGACY
These headers refer to libX11 types and don't belong in this package.
libX11 and libXv have been updated to supply these headers themselves
now, so these are only useful for building older versions of those
libraries.

Fixes: xorg/proto/xorgproto#10
2019-10-08 14:58:32 -04:00
Jon Turney
e0d4e02710
Move windowswmproto to legacy 2019-07-22 11:05:32 +01:00
Peter Hutterer
e0bba743ae xorgproto 2019.1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2019-06-20 13:08:27 +10:00
Thomas E. Dickey
6bb0d500e5
Update Xalloca.h to reduce compiler warnings:
The parameter for alloca() was "int" for the (long-obsolete) SunOS 4.
In Solaris and anything newer than the early 1990s, it is "size_t".

Signed-off-by: Thomas E. Dickey <dickey@invisible-island.net>
2019-05-08 04:55:29 -04:00
Jon Turney
17feb82819
.gitignore more autotools artifacts
.gitignore autotools artifacts removed in 95570b06
2019-03-12 20:18:14 +00:00
Adam Jackson
50dc5f453a composite: Fix the documentation for the unredirection requests
We didn't document the 'update' parameter, which has to match what the
client previously requested. Also, the server, client library, and
protocol header call it UnredirectSubwindows, not UnredirectWindows.

Fixes: xorg/proto/xorgproto#15
2019-03-01 23:47:28 +00:00
Alan Coopersmith
4feff33159 Restore generation of specs from docbook in autotools builds
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-02-23 15:22:32 -08:00
Alan Coopersmith
eb2c0108e4 Update URLs for protocol specs to use xorgproto repo now
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-02-17 16:15:18 -08:00
Alan Coopersmith
aab29f80f4 keysymdef.h: Update repo info in comments
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-02-17 16:11:41 -08:00
Alan Coopersmith
c8eea2dcad Combine *_EXTRA_DIST into EXTRA_DIST in Makefile.am
automake only recognizes EXTRA_DIST - but it looked like it worked since
the *.pc.in were included since they're listed in configure.ac, unless
you tried building from the tarballs with --enable-legacy, and then it
broke.

Also adds --enable-legacy to the flags that "make distcheck" uses to
configure, to catch problems like this.

Fixes: https://gitlab.freedesktop.org/xorg/proto/xorgproto/issues/12

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-02-11 17:05:30 +00:00
Adam Jackson
2505b28a96 Remove COPYING-panoramixproto
panoramixproto never had any real content, that was all in xineramaproto
instead.
2019-02-06 09:39:47 -05:00
Matthieu Herrb
a06b0e2734 Remove RCS Ids
Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-01-30 22:45:26 +01:00
Peter Hutterer
a985f35f97 Fix comment for XK_Ocaron
Reported by: Keve Müller
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2019-01-25 10:41:34 +10:00
Hans de Goede
000ebed576 XF86keysym: Add XF86XK_RotationLockToggle
Add XF86XK_RotationLockToggle keysym, to be used as mapping for evdev's
KEY_ROTATE_LOCK_TOGGLE.

I've a Point of View P1006W-232 Windows tablet which actually has a
rotate-lock toggle-button. The latest kernel correctly generates
KEY_ROTATE_LOCK_TOGGLE events for this. So now I'm hooking up support for
it through all the higher layers.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Jian-Hong Pan <jian-hong@endlessm.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2019-01-22 08:13:52 +01:00
Jian-Hong Pan
4e9f4e6136 XF86keysym: Add XF86XK_MonBrightnessCycle
Add XF86XK_MonBrightnessCycle keysym, to be used as mapping for evdev's
KEY_BRIGHTNESS_CYCLE keycode which is generated from ACPI video module's
ACPI_VIDEO_NOTIFY_CYCLE_BRIGHTNESS on some Acer AIO desktop buttons.
The button changes the screen's brightness on Windows.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=108861
Signed-off-by: Jian-Hong Pan <jian-hong@endlessm.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2019-01-21 19:48:26 +01:00
Alan Coopersmith
5fce6c0dad Update configure.ac bug URL for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-12-07 20:01:04 -08:00
Alan Coopersmith
80c1e0d964 Update README for gitlab migration
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-19 23:23:27 -08:00
Alan Coopersmith
a9b3ddf3c9 Assorted typo fixes in headers
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-10 12:32:13 -08:00
Alan Coopersmith
641db34376 Remove the use of no-op B16 & B32 bitfield macros in headers
These have always done nothing on all platforms except CRAY.
As https://bugs.freedesktop.org/show_bug.cgi?id=45202 points out
we don't even detect when they've been wrong for decades.

Performed via:
find include -name '*.h' | grep -v md.h | xargs perl -i -p -e 's{\s+B\d+}{}g'
followed by manual whitespace fixups to preserve visual alignment.

The #defines for B16 & B32 are left in place to preserve compatibility
in any code that used them outside the xorgproto repo.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Acked-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2018-11-10 12:31:50 -08:00
Roman Kapl
af9b5f4343 Improve the ButtonInfo description.
It failed to mention it is followed by a bit-mask and then the atoms.

Signed-off-by: Roman Kapl <code@rkapl.cz>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-27 10:20:59 +10:00