aboutsummaryrefslogtreecommitdiffstats
path: root/doc/publican/sources/Protocol.xml
Commit message (Collapse)AuthorAgeFilesLines
* doc: Refactor the build system for complete build dir docsSebastian Wick2025-11-271-592/+0
| | | | | | | | By structuring things differently, it becomes possible to have a complete build of the docs in the build dir, without having to install anything. Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com>
* doc: Further explain typical display socket lookupManuel Stoeckl2025-06-081-1/+3
| | | | | | | | This change mentions the case where WAYLAND_SOCKET is used, which helps people avoid just testing 'getenv(WAYLAND_DISPLAY)' to see if a Wayland compositor is available; Signed-off-by: Manuel Stoeckl <code@mstoeckl.com>
* connection: Reject strings containing NUL bytesDemi Marie Obenour2024-08-181-1/+2
| | | | | | | | | | | | libwayland cannot construct these messages as it uses strlen() to determine string lengths. libwayland is also guaranteed to misinterpret these messages, since message handlers only get a pointer and no length. Therefore, reject strings containing NUL bytes. Also remove a redundant check from the unmarshalling code. The zero-length case has already been checked for. Signed-off-by: Demi Marie Obenour <demi@invisiblethingslab.com>
* doc: Require strings to be UTF-8Sebastian Wick2024-08-091-3/+3
| | | | | | | Nothing checks this yet but this gives us the opportunity to do so when we want. Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com>
* doc: Improve wording for packed IDsMikhail Gusarov2024-01-221-3/+4
| | | | | | | | | | | | "is incompatible with the implementation in libwayland" is a common source of confusion as evidenced by repeated discussions in IRC channel. Improve the wording by making clear that - packing IDs is a protocol requirement - there are implementations (including libwayland) that enforce it Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
* Document which type are nullable, and wire format for null valueIan Douglas Scott2022-07-141-2/+3
| | | | Signed-off-by: Ian Douglas Scott <idscott@system76.com>
* doc: Clarify that null terminator is included in string lengthMikhail Gusarov2021-12-181-3/+3
| | | | Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
* doc: Clarify position of file descriptors in the streamMikhail Gusarov2021-12-121-0/+15
| | | | | | | | | | The specification left the position and order of file descriptors unspecified. Specify that - order of file descriptors is maintained - position of file descriptors is bounded, but loose Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
* doc: fix typosMaxime Roussin-Bélanger2020-12-171-3/+3
|
* doc: fix and clarify pointer image behaviourYann Dirson2020-06-031-4/+8
| | | | Signed-off-by: Yann Dirson <ydirson@free.fr>
* Document unusual wl_registry.bind new_id behaviorDrew DeVault2019-07-301-4/+4
| | | | | | | | | | | | | | | | | When wayland-scanner encounters a new_id field with no corresponding interface name defined, instead of emitting a function whose signature lines up with the usual case (a uint32_t ID), it adds the interface name as a string and the version number so that the interface can be identified from the protcol message. Without docs, this was previously left for the interprid wire protocol implementor (e.g. me an hour ago) to discover when Wayland clients send them apparently bogus messages. I would have preferred if a different primitive type were used here (e.g. typed_new_id) to reflect the fact that the wire protocol is different, but I felt it unwise to add a new primitive to wayland.xml in $current_year.
* doc: update IANA MIME types registry URLSimon Ser2018-06-281-1/+1
| | | | | | | Use a more official one, served over HTTP rather than FTP. Reviewed-by: Matheus Santana <embs@cin.ufpe.br> Acked-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
* client: Allow absolute paths in WAYLAND_DISPLAYMatt Hoosier2017-12-111-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to support system compositor instances, it is necessary to allow clients' wl_display_connect() to find the compositor's listening socket somewhere outside of XDG_RUNTIME_DIR. For a full account, see the discussion beginning here: https://lists.freedesktop.org/archives/wayland-devel/2017-November/035664.html This change adjusts the client-side connection logic so that, if WAYLAND_DISPLAY is formatted as an absolute pathname, the socket connection attempt is made to just $WAYLAND_DISPLAY rather than usual user-private location $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY. This change is based on Davide Bettio's submission of the same concept at: https://lists.freedesktop.org/archives/wayland-devel/2015-August/023838.html. v4 changes: * Improved internal comments and some boundary-condition error checks in test case. * Refer to compositor as "Wayland server" rather than "Wayland display" in wl_display_connect() doxygen comments. * Remove redundant descriptions of parameter-interpretation mechanics from wl_display_connect() manpage. Reworked things to make it clear that 'name' and $WAYLAND_DISLAY are each capable of encoding absolute server socket paths. * Remove callout to reference implementation behavior in protocol documented. In its place there is now a simple statement that implementations can optionally support absolute socket paths. v3 changes: * Added test case. * Clarified documentation to note that 'name' parameter to wl_display_connect() can also be an absolute path. v2 changes: * Added backward incompatibility note to wl_display_connect() manpage. * Rephased wl_display_connect() manpage changes to precisely match actual changed behavior. * Added mention of new absolute path behavior in wl_display_connect() doxygen comments. * Mentioned new absolute path interpretation of WAYLAND_DISPLAY in protocol documentation. Signed-off-by: Matt Hoosier <matt.hoosier@gmail.com> Acked-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
* doc: fix typosEric Engestrom2016-05-021-1/+1
| | | | | | Signed-off-by: Eric Engestrom <eric@engestrom.ch> Reviewed-by: Armin Krezović <krezovic.armin@gmail.com> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
* doc: Hyphenate compound adjectives window-local, surface-localYong Bakos2016-04-291-1/+1
| | | | | | | See https://lists.freedesktop.org/archives/wayland-devel/2016-April/028249.html. Signed-off-by: Yong Bakos <ybakos@humanoriented.com> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
* doc: document the enum and bitfield attributesAuke Booij2015-11-041-6/+35
| | | | | | | | | | | | | Introduce the enum and bitfield attributes, which allow you to refer to the enum you are expecting in an argument, and specify which enums are to be thought of as bitfields. Changes since v3: - Fix typo ("description" -> "descriptive") Signed-off-by: Auke Booij <auke@tulcod.com> Reviewed-by: Nils Chr. Brause <nilschrbrause@googlemail.com> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
* Revert "client: require WAYLAND_DISPLAY to be set"Pekka Paalanen2015-08-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fb7e13021730d0a5516ecbd3712ea4235e05d24d. Developers have been trying to reduce the number of by default required environment variables, and the mentioned commit is a step backwards in that sense. The fundamental assumption is that a user has only one main (Wayland) display server where all programs should connect to by default, and do so with an a priori known socket name. The commit also broke various use cases in the wild, some accidentally due to other causes, some intentionally. This revert allows those use cases to continue. The original problem of running Weston in a window in an existing GNOME X11 session and getting applications unintentionally launched into Weston can be circumvented by letting Weston use a non-default socket name, leaving wayland-0 unused. Discussion: http://lists.freedesktop.org/archives/wayland-devel/2015-August/023927.html http://lists.freedesktop.org/archives/wayland-devel/2015-August/023937.html Cc: Dima Ryazanov <dima@gmail.com> Cc: Giulio Camuffo <giuliocamuffo@gmail.com> Cc: Daniel Stone <daniel@fooishbar.org> Cc: Jasper St. Pierre <jstpierre@mecheye.net> Cc: Ryo Munakata <ryomnktml@gmail.com> Cc: Ray Strode <halfline@gmail.com> Cc: Peter Hutterer <peter.hutterer@who-t.net> Cc: Matthias Clasen <mclasen@redhat.com> Cc: Sjoerd Simons <sjoerd.simons@collabora.co.uk> Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Acked-by: Ray Strode <rstrode@redhat.com> Acked-by: Dima Ryazanov <dima@gmail.com> Reviewed-by: Bryce Harrington <bryce@osg.samsung.com> Acked-By: Sjoerd Simons <sjoerd.simons@collabora.co.uk> Acked-By: Ryo Munakata <ryomnktml@gmail.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
* client: require WAYLAND_DISPLAY to be setDima Ryazanov2015-08-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although defaulting to wayland-0 seems convenient, it has an undesirable side effect: clients may unintentionally connect to the wrong compositor. Generally, it's safer to fail instead. Here's a real example: In Fedora 22, Gtk+ prefers Wayland over X11, though the default session is still a normal X11 Gnome session. When you launch a Gtk+ app, it will try Wayland, fail, then try X11, and succesfully start up. That works fine. Now suppose you launch Weston while running the Gnome session. Suddenly, all of the Gtk+ apps launched from Gnome will show up inside Weston instead. That's unexpected. There's also no good way to prevent that from happening (other than perhaps setting WAYLAND_DISPLAY to an invalid value when launching an app). Not using wayland-0 as the default will solve that problem: an app launched from the X11 Gnome session will use the X11 backend regardless of whether there's a wayland compositor running at the same time. Everything else should work as before. The compositor already sets the WAYLAND_DISPLAY when starting the session, so the lack of the default value should not make a difference to the user. Signed-off-by: Dima Ryazanov <dima@gmail.com> Acked-by: Pekka Paalanen <ppaalanen@gmail.com> Acked-by: Giulio Camuffo <giuliocamuffo@gmail.com> Acked-by: Daniel Stone <daniel@fooishbar.org> Acked-by: Jasper St. Pierre <jstpierre@mecheye.net> Reviewed-by: Ryo Munakata <ryomnktml@gmail.com> [Pekka: dropped the wayland-server.c hunk, adjusted summary] Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
* doc: Fill in high level description for SurfacesBryce Harrington2015-02-041-3/+10
| | | | | Signed-off-by: Bryce Harrington <bryce@osg.samsung.com> Reviewed-by: Jon A. Cruz <jonc@osg.samsung.com>
* doc: removed the word "interface" from the link namesBill Spitzak2014-12-191-8/+8
| | | | | | | | Just to make it slightly shorter. Also add a dash to the doxygen links to make them look a bit more alike. Tested-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
* doc: Add a section on interface and protocol object versioningJason Ekstrand2013-08-191-0/+61
| | | | | | | | There have been a lot of questions asked lately about versioning of interfaces and protocol objects. This addition to the documentation should clear up some of those questions. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
* doc: Update the ID alocation sectionJason Ekstrand2013-08-191-4/+10
| | | | | | | | The method described of alocation IDs has been wrong at least since version 1.0. This commit updates it to correspond to the way IDs are chosen in versions >= 1.0. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
* publican: Fix grammar several places in Protocol docsBryce W. Harrington2013-08-081-5/+5
| | | | Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
* protocol: Fix documentation typoPeng Wu2013-05-221-1/+1
|
* doc: Capitalize all Wayland occurrencesTiago Vignatti2013-04-041-4/+4
| | | | | | | | | Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> [re-run of search/replace after rebasing] Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* doc: rename "Wayland" to "publican"Peter Hutterer2013-04-031-0/+462
This directory was called Wayland during my early tries with publican where the source layout was different and it needed to be set to the same name as the publican output directory. This reason doesn't exist anymore, so re-name it to publican to make it more obvious what's hiding in here. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>