summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2021-02-08XF86keysyms.h: add new keycodes from kernel v3.18Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v4.1Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v4.7Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v4.12Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v4.13Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add comment for new keycodes from kernel v4.16Peter Hutterer
This keysym is already available under a different name, see https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/commit/000ebed576aafb44caeea8b6a5de90fba2bdc389 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v5.1Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v5.2Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v5.5Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v5.6Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysyms.h: add new keycodes from kernel v5.10Peter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-02-08XF86keysym.h: reserve a range for Linux kernel keysymsPeter Hutterer
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-01-18Remove misleading comment about not adding syms to XF86keysym.hPeter Hutterer
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>
2020-10-10XKB: Mark key name arrays as not NUL-terminated stringsAlan Coopersmith
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-10Xfuncproto: define _X_NONSTRING for __attribute__((nonstring))Alan Coopersmith
Bumps xproto version to 7.0.33 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2020-08-08Fix spelling/wording issuesAlan Coopersmith
Found by using: codespell --builtin clear,rare,usage,informal,code,names Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2020-07-07keysymdef: Fix left/rightanglebracket Unicode equivalentSamuel Thibault
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-07keysymdef.h: Fix the documented perl regexpSamuel Thibault
+ is interpreted when not escaped. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07keysymdef: Add Hangul unicode equivalentsSamuel Thibault
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-07-07keysymdef: Add vietnamese dead accentsSamuel Thibault
These are used in the vn layout. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2020-03-09XF86keysym: Add XF86XK_FullScreenSebastian Wick
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-02-26Add DPMSInfoNotify eventAlexander Volkov
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-25meson: mark more extensions as legacyRoss Burton
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>
2019-10-08Move remaining xlib-entwined headers to LEGACYAdam Jackson
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-07-22Move windowswmproto to legacyJon Turney
2019-05-08Update Xalloca.h to reduce compiler warnings:Thomas E. Dickey
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-02-17keysymdef.h: Update repo info in commentsAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-01-30Remove RCS IdsMatthieu Herrb
Signed-off-by: Matthieu Herrb <matthieu@herrb.eu> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-01-25Fix comment for XK_OcaronPeter Hutterer
Reported by: Keve Müller Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2019-01-22XF86keysym: Add XF86XK_RotationLockToggleHans de Goede
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-21XF86keysym: Add XF86XK_MonBrightnessCycleJian-Hong Pan
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>
2018-11-10Assorted typo fixes in headersAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-11-10Remove the use of no-op B16 & B32 bitfield macros in headersAlan Coopersmith
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-06-27Improve the ButtonInfo description.Roman Kapl
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-16Remove trailing whitespace from header filesAlan Coopersmith
Performed with: find include -name '*.h' | xargs perl -i -p -e 's{[ \t]+$}{}' "git diff -w" shows no changes from this changeset. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2018-03-19randrproto: Fix missing #undef RRLeaseAdam Jackson
clang did not like this, and it's hard to blame it: ../randr/randrstr.h:66:13: warning: redefinition of typedef 'CARD32' is a C11 feature [-Wtypedef-redefinition] typedef XID RRLease; ^ /opt/X11/include/X11/extensions/randrproto.h:53:17: note: expanded from macro 'RRLease' ^ /opt/X11/include/X11/Xmd.h:111:23: note: previous definition is here typedef unsigned long CARD32; Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-03-14screensaver: Fix encoding of ScreenSaverSuspend 'suspend' elementKeith Packard
Was using Bool, which is not a defined X protocol encoding type and has presumably been a 32-bit type. Switch to a CARD32 to be compatible while at least being well defined. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Mihai Moldovan <ionic@ionic.de>
2018-02-28presentproto: PresentCompleteModeSuboptimalCopy flagLouis-Francis Ratté-Boulianne
If the Complete event has this mode, the client is not using the more optimal format/modifier for the buffer allocation. The client must explicitely inform the server that it understands this mode by adding the PresentOptionSuboptimal flag when calling PresentPixmap. Its main usage as of now is to allow clients to re-fetch DRI3 format modifiers as some modifiers might allow direct scanout. Bump presentproto version to 1.2. Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2018-02-28dri3: Add modifier/multi-plane requests, bump to v1.2Louis-Francis Ratté-Boulianne
DRI3 version 1.2 adds support for explicit format modifiers, including multi-planar buffers. Signed-off-by: Daniel Stone <daniels@collabora.com> Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
2018-02-14glproto: Add compatibility #defines for the typos we correctedAdam Jackson
Apparently there does exist code that uses the typoed names. Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-02-12randr: Add non-desktop output property and behaviors [v3]Keith Packard
non-desktop devices are those to which the normal desktop environment should not be extended. Examples are Head-mounted displays and the Apple Touch Bar. How an output device is set to non-desktop is not part of this proposal; it is expected that the underlying operating system will provide this information and have it reflected to X applications through this extension. v2: fix puncutation and duplicated 'the'. v3: switch to 32-bit property named non-desktop to match Linux Signed-off-by: Keith Packard <keithp@keithp.com>
2018-02-12randr: Add Leases. [v4]Keith Packard
A "lease" is a set of crtc and output resources granted to another application for use outside of X. These will not be usable through the X protocol until the lease terminates. Leased outputs will be seen as disconnected, leased CRTCs will be seen as not usable with any output. v2: Delete output grabs Add LeaseNotify events Add FreeLease with option to terminate v3: Clarify a couple of lease behaviors: * You can lease an in-use object, it makes the X server stop using it, you don't get an error back. * There's no explicit 'Disabled' state for a crtc, when a crtc is disabled, it just has a set of reported values for GetCrtcInfo. v4: Integrate into merged xorgproto repo Signed-off-by: Keith Packard <keithp@keithp.com>
2018-02-01meson: Spread the install rules into their subdirsAdam Jackson
Mostly this is is so the generated Xpoll.h can be emitted into a usable directory when we build as a subproject. Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-02-01xproto: Stop generating Xfuncproto.hAdam Jackson
This no longer varies at compile time, yay. Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-02-01xproto: Stop "computing" a value for FUNCPROTOAdam Jackson
This macro is apparently an imake-ism for how much C89 you support. Seeing as it's 2018 the answer is "all of it", and if that's not actually true for your platform you need a better compiler. Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-02-01xproto: Move NARROWPROTO logic out of configure timeAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-01-30Move the headers under include/X11/...Adam Jackson
I kinda hate to do this, it was nice to have everything in one place. However, the meson build wants to be able to wrap this module as a dependency, and code that depends on these headers includes them in the form: #include <X11/Xfuncproto.h> As a result, any include path meson can construct needs to point to the root of a hierarchy that has the same path layout as an installed copy, hence this change. Signed-off-by: Adam Jackson <ajax@redhat.com>
2017-11-06Move headers into structured include directoryDylan Baker
So that meson can use that as an include path for dependencies. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>