1452262e1Smrg                        The XWAYLAND Extension
2452262e1Smrg			    Version 1.0
3452262e1Smrg			     2022-07-29
4452262e1Smrg
5452262e1Smrg1. Introduction
6452262e1Smrg
7452262e1SmrgThe XWAYLAND extension allows clients to reliably identify whether an X server
8452262e1Smrgis Xwayland. It does not provide any functionality beyond the absolute minimum
9452262e1Smrgto identify as extension.
10452262e1Smrg
11452262e1SmrgOnly Xwayland initializes this extension. Thus, if the extension is present,
12452262e1Smrgthe X server is Xwayland. Clients should not need the protocol detailed in this
13452262e1Smrgdocument, a QueryExtension or ListExtensions request is sufficient to check
14452262e1Smrgwhether the extension is present.
15452262e1Smrg
16452262e1SmrgThe protocol detailed in this document is merely to future-proof this extension
17452262e1Smrgin case actual functionality is added in the future.
18452262e1Smrg
19452262e1Smrg			     ❄ ❄ ❄  ❄  ❄ ❄ ❄
20452262e1Smrg2. Version History
21452262e1Smrg
22452262e1Smrg- 1.0, July 2022: QueryVersion request only
23452262e1Smrg
24452262e1Smrg			     ❄ ❄ ❄  ❄  ❄ ❄ ❄
25452262e1Smrg
26452262e1Smrg3. Events and Errors
27452262e1Smrg
28452262e1SmrgXWAYLAND defines no events or errrors
29452262e1Smrg
30452262e1Smrg			     ❄ ❄ ❄  ❄  ❄ ❄ ❄
31452262e1Smrg
32452262e1Smrg4. Extension initialization
33452262e1Smrg
34452262e1SmrgThe name of this extension is "XWAYLAND"
35452262e1Smrg
36452262e1Smrg┌───
37452262e1Smrg   XwlQueryVersion
38452262e1Smrg	client-major-version:	CARD16
39452262e1Smrg	client-minor-version:	CARD16
40452262e1Smrg41452262e1Smrg	major-version:		CARD16
42452262e1Smrg	minor-version:		CARD16
43452262e1Smrg└───
44452262e1Smrg
45452262e1Smrg	The client sends the highest supported version to the server
46452262e1Smrg	and the server replies with the highest version it supports,
47452262e1Smrg	but no higher than the requested version. Major versions changes
48452262e1Smrg	can introduce incompatibilities in existing functionality, minor
49452262e1Smrg	version changes introduce only backward compatible changes.
50452262e1Smrg	It is the clients responsibility to ensure that the server
51452262e1Smrg	supports a version which is compatible with its expectations.
52452262e1Smrg
53452262e1Smrg	Backwards compatible changes include addition of new
54452262e1Smrg	requests.
55452262e1Smrg
56452262e1Smrg			     ❄ ❄ ❄  ❄  ❄ ❄ ❄
57452262e1Smrg
58452262e1SmrgAppendix A. Protocol Encoding
59452262e1Smrg
60452262e1SmrgSyntactic Conventions
61452262e1Smrg
62452262e1SmrgThis document uses the same syntactic conventions as the core X
63452262e1Smrgprotocol encoding document.
64452262e1Smrg
65452262e1SmrgA.1 Common Types
66452262e1Smrg
67452262e1SmrgNone.
68452262e1Smrg
69452262e1SmrgA.2 Protocol Requests
70452262e1Smrg
71452262e1Smrg┌───
72452262e1Smrg    XwlQueryVersion
73452262e1Smrg	1	CARD8			major opcode
74452262e1Smrg	1	0			XWAYLAND opcode
75452262e1Smrg	2	2			length
76452262e1Smrg	2	CARD16			major version
77452262e1Smrg	2	CARD16			minor version
78452262e1Smrg79452262e1Smrg	1	1			Reply
80452262e1Smrg	1				unused
81452262e1Smrg	2	CARD16			sequence number
82452262e1Smrg	4	0			reply length
83452262e1Smrg	2	CARD16			major version
84452262e1Smrg	2	CARD16			minor version
85452262e1Smrg	20				unused
86452262e1Smrg└───
87452262e1Smrg
88452262e1SmrgA.3 Protocol Events
89452262e1Smrg
90452262e1SmrgThe XWAYLAND extension defines no events.
91452262e1Smrg
92452262e1SmrgA.4 Protocol Errors
93452262e1Smrg
94452262e1SmrgThe XWAYLAND extension defines no errors.
95452262e1Smrg
96452262e1Smrg			     ❄ ❄ ❄  ❄  ❄ ❄ ❄
97