aboutsummaryrefslogtreecommitdiff
path: root/Makefile.am
AgeCommit message (Collapse)Author
2021-08-06staging/drm-lease: DRM lease protocol supportXaver Hugl
DRM leasing is a feature which allows the DRM master to "lease" a subset of its DRM resources to another DRM master via drmModeCreateLease, which returns a file descriptor for the new DRM master. We use this protocol to negotiate the terms of the lease and transfer this file descriptor to clients. In less DRM-specific terms: this protocol allows Wayland compositors to give over their GPU resources (like displays) to a Wayland client to exclusively control. The primary use-case for this is Virtual Reality headsets, which via the non-desktop DRM property are generally not used as desktop displays by Wayland compositors, and for latency reasons (among others) are most useful to games et al if they have direct control over the DRM resources associated with it. Basically, these are peripherals which are of no use to the compositor and may be of use to a client, but since they are tied up in DRM we need to use DRM leasing to get them into client's hands. Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Signed-off-by: Drew DeVault <sir@cmpwn.com> Signed-off-by: Xaver Hugl <xaver.hugl@gmail.com> Reviewed-by: Simon Ser <contact@emersion.fr> Signed-off-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2021-04-30Makefile.am: Include meson-only filesJonas Ådahl
This makes it possible to use both autotools and meson to build and install the tarball. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2021-04-30staging/xdg-activation: Describe interoperation with X11Carlos Garnacho
X11 had its own startup notification protocol, describe how could Wayland compositors implement interoperation between Wayland and X11 clients, should this be desired. Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
2021-04-30Include a new xdg_activation protocolAleix Pol
Signed-off-by: Aleix Pol Gonzalez <aleixpol@kde.org> Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Simon Ser <contact@emersion.fr> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2020-02-29Makefile.am: Also distribute README.md, GOVERNANCE.md and MEMBERS.mdJonas Ådahl
README was distributed by default due to implicit autotools rules, so when we renamed to README.md, it stopped being included. While at it, also add the two other new files. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2018-11-12unstable: add primary-selection protocolemersion
This primary selection is similar in spirit to the eponimous in X11, allowing a quick "select text + middle click" shortcut to copying and pasting. It's otherwise very similar to its Wayland counterpart, and explicitly made consistent with it. Signed-off-by: Simon Ser <contact@emersion.fr> Reviewed-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Carlos Garnacho <carlosg@gnome.org>
2018-11-12Add zwp_linux_explicit_synchronization_v1Alexandros Frantzis
This protocol enables explicit synchronization of asynchronous graphics operations on buffers on a per-commit basis. Support is currently limited to dmabuf buffers and dma_fence fence FDs. Explicit synchronization provides a more versatile notification mechanism for buffer readiness and availability, and can be used to improve efficiency by integrating with related functionality in display and graphics APIs. This protocol is also useful in ChromeOS ARC++ (running Android apps inside ChromeOS, using Wayland as the communication protocol), where it can enable integration of the ChromeOS compositor with the explicit synchronization mechanisms of the Android display subsystem. Finally, the per-commit nature of the release events provided by this protocol potentially offers a solution to a deficiency of the wl_buffer.release event (see https://gitlab.freedesktop.org/wayland/wayland/issues/46). Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com> Reviewed-by: Simon Ser <contact@emersion.fr> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by: Daniel Stone <daniels@collabora.com> [Pekka: dropped Reveman from maintainers] Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
2018-07-30text-input: Add v3 of the text-input protocolCarlos Garnacho
This new protocol description is an evolution of v2. - All pre-edit text styling is gone. - Pre-edit cursor can span characters. - No events regarding input panel (OSK) state nor covered rectangle. Compositors are still free to handle situations where the keyboard focus rectangle is covered by the input panel. - No set_preferred_language request for clients. - There is no event to send keysyms. Compositors can use wl_keyboard interface instead. - All state is double-buffered, with specified defaults. - The compositor can be notified about external changes to the state. - The client can detect outdated requests. Signed-off-by: Dorota Czaplejewicz <dorota.czaplejewicz@puri.sm> Signed-off-by: Carlos Garnacho <carlosg@gnome.org> Reviewed-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Simon Ser <contact@emersion.fr>
2018-07-04unstable: add xdg-decoration protocolSimon Ser
This adds a new protocol to negotiate server-side rendering of window decorations for xdg-toplevels. This allows compositors that want to draw decorations themselves to send their preference to clients, and clients that prefer server-side decorations to request them. This is inspired by a protocol from KDE [1] which has been implemented in KDE and Sway and was submitted for consideration in 2017 [2]. This patch provides an updated protocol with those concerns taken into account. Signed-off-by: Simon Ser <contact@emersion.fr> Reviewed-by: Drew DeVault <sir@cmpwn.com> Reviewed-by: David Edmundson <davidedmundson@kde.org> Reviewed-by: Eike Hein <hein@kde.org> Reviewed-by: Alan Griffiths <alan.griffiths@canonical.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com> [1] https://github.com/KDE/kwayland/blob/master/src/client/protocols/server-decoration.xml [2] https://lists.freedesktop.org/archives/wayland-devel/2017-October/035564.html
2018-06-18Makefile.am: add include dir for AC_CONFIG_MACRO_DIR to workMaciej Wolny
da331647269ee9d73c4008ae901d107320bdc8d1 added a compatiblity macro for old versions of pkg-config. However, the file in which that macro resides was not included. From the autoconf docs: "Note that if you use aclocal from Automake to generate aclocal.m4, you must also set ACLOCAL_AMFLAGS = -I dir in your top-level Makefile.am.". Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
2018-01-19unstable: Add input-timestamps protocolAlexandros Frantzis
wl_pointer, wl_keyboard and wl_touch events currently use a 32-bit timestamp with millisecond resolution. In some cases, notably latency measurements, this resolution is too coarse to be useful. This protocol provides additional high-resolution timestamps events, which are emitted before the corresponding input event. Each timestamp event contains a high-resolution, and ideally higher-accuracy, version of the 'time' argument of the first subsequent supported input event. Clients that care about high-resolution timestamps just need to keep track of the last timestamp event they receive and associate it with the next supported input event that arrives. Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Acked-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-12-02Makefile.am: Install stable xdg-shellJonas Ådahl
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2017-09-26Add a new version of the xdg-foreign protocolMarco Martin
Some methods will be renamed, so we need a new, not retrocompatible protocol. Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2017-07-31Add xdg-output protocolOlivier Fourdan
This protocol aims at describing outputs in way which is more in line with the concept of an output on desktop oriented systems. Some information are more specific to the concept of an output for a desktop oriented system and may not make sense in other applications, such as IVI systems for example. The goal is to gradually move the desktop specific concepts out of the core wl_output protocol. For now it just features the position and logical size which describe the output position and size in the global compositor space. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
2017-07-11Add keyboard shortcuts inhibitorOlivier Fourdan
This adds a new protocol to let Wayland clients specify that they want all keyboard events to be sent to the client, regardless of the compositor own shortcuts. This protocol can be used for virtual machine and remote connection viewers which require to pass all keyboard shortcuts to the hosted or remote system instead of being caught up by the compositor locally. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2017-07-11Introduce keyboard grabbing protocol for XwaylandOlivier Fourdan
This patch introduces a new protocol for grabbing the keyboard from Xwayland. This is needed for X11 applications that map an override redirect window (thus not focused by the window manager) and issue an active grab on the keyboard to capture all keyboard events. Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-08-15xdg-shell: Bump unstable version to 6Jonas Ådahl
This copies the version 5 of the XML to a new version 6 version, while at the same time the interface names are changed to use the unstable naming convention. A whitespace cleanup was done as no git-blame:ability would be lost anyway. Signed-off-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Mike Blumenkrantz <zmike@osg.samsung.com> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
2016-08-12Add screensaver idle inhibitor protocolBryce Harrington
This interface allows disabling of screensaver/screenblanking on a per-surface basis. As long as the surface remains visible and non-occluded it blocks the screensaver, etc. from activating on the output(s) that the surface is visible on. To uninhibit, simply destroy the inhibitor object. Signed-off-by: Bryce Harrington <bryce@bryceharrington.org> Reviewed-by: Yong Bakos <ybakos@humanoriented.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-08-12Introduce xdg-foreign protocolJonas Ådahl
xdg-foreign is a protocol meant to enable setting up inter surface relationships across clients. Potential use cases are out-of-process dialogs, such as file dialogs, meant to be used by sandboxed processes that may not have the access it needs to implement such dialogs. It works by enabling a client to export a surface, creating a handle for the exported surface. The handle, in form of a unique string, may be shared in some way with other clients (for example the provider of the file dialog) which can then import the exported surface. Signed-off-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Mike Blumenkrantz <zmike@osg.samsung.com> Reviewed-by: Yong Bakos <ybakos@humanoriented.com> Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
2016-07-20tablet: add v2 of the tablet protocolPeter Hutterer
This is a straightforward copy/paste with a _v1 -> _v2 rename. No functional changes otherwise. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com> Reviewed-by: Carlos Garnacho <carlosg@gnome.org> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-05-06stable/viewporter: rename and buildPekka Paalanen
Rename interfaces and the protocol to follow the policy. Reset interface versions. Replace "surface coordinates" with "surface local coordinates". Hook up to build and install. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by: Yong Bakos <ybakos@humanoriented.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Derek Foreman <derekf@osg.samsung.com> Acked-by: Bryce Harrington <bryce@osg.samsung.com>
2016-03-08Add the tablet protocolPeter Hutterer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-03-01Makefile: install and dist stable protocolsPekka Paalanen
Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-03-01Makefile: add presentation-time to stable protocolsPekka Paalanen
Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com> Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-02-16Introduce pointer locking and confinement protocolJonas Ådahl
This patch introduces a new protocol for locking and confining a pointer. It consists of a new global object with two requests; one for locking the surface to a position, one for confining the pointer to a given region. Signed-off-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Derek Foreman <derekf@osg.samsung.com> Reviewed-by: Reviewed-by: Daniel Stone <daniels@collabora.com>
2016-02-16Introduce wp_relative_pointer interfaceJonas Ådahl
The wp_relative_pointer interface is an extension to the wl_pointer interface created from wl_seat. It has the same focus, but adds the functionality of sending relative pointer motions unhindered by constraints such as monitor edges or other barriers. It also contains unaccelerated pointer motion information. Signed-off-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Derek Foreman <derekf@osg.samsung.com> Reviewed-by: Reviewed-by: Daniel Stone <daniels@collabora.com>
2016-01-14test: add make checkDerek Foreman
We can now test all the protocol files by running make check (or distcheck) which will pass them through the scanner. Signed-off-by: Derek Foreman <derekf@osg.samsung.com> Reviewed-by: Quentin Glidic <sardemff7+git@sardemff7.net> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Jonas Ådahl <jadahl@gmail.com>
2015-11-23install pkg-config file to arch-independent locationIgor Gnatenko
It is arch-independent, so no need to install it to /usr/lib* Cc: Jonas Ådahl <jadahl@gmail.com> Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com> Reviewed-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2015-11-18Makefile.am: Include protocol README files in tarballJonas Ådahl
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-11-17Remove presentation timing protocolJonas Ådahl
The presentation timing protocol is already ready for being declared stable and given this we can skip having it going through the unstable naming procedures. Lets remove it for now, and re-introduce in stable/ when declaring it stable. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-30Migrate xdg_shell protocolJonas Ådahl
This migration did not involve any renaming, xdg_shell already has its own form of unstable protocol semantics. The next xdg_shell protocol change will change to the new naming semantics, and not earlier in order to minimize breakage. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-21Migrate the input method protocolJonas Ådahl
Applied the unstable naming convention. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-21Migrate the text input protocolJonas Ådahl
Renamed from "text" to "text-input" and applied the unstable naming convention. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-21Migrate presentation timing protocolJonas Ådahl
Applied unstable naming convention. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-21Migrate linux-dmabuf protocolJonas Ådahl
Version postfix added to interface names. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-09Add fullscreen shell protocolJonas Ådahl
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2015-10-09Add autotools installation filesJonas Ådahl
Currently installs unstable protocols under an unstable/ subdirectory in $prefix/share/wayland-protocols/. Signed-off-by: Jonas Ådahl <jadahl@gmail.com>