summaryrefslogtreecommitdiff
path: root/guide.mdwn
blob: bb8e8011f1011839e028e8b3187bed65467467e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[[!meta title="The X New Developer’s Guide"]]
# The X New Developer’s Guide

*Also available in [epub format](guide.epub "The X New Developer’s Guide [epub]")*

* [Cover](cover)
* [Preface](preface)
* [X Window System Concepts](concepts)
   * [X Is Client / Server](concepts/#xisclientserver)
   * [X In Practice](concepts/#xinpractice)
      * [Input](concepts/#input)
      * [GetImage: Reading From the Display](concepts/#getimage:readingfromthedisplay)
      * [Output](concepts/#output)
      * [Displays and Screens](concepts/#displaysandscreens)
      * [Graphics contexts](concepts/#graphicscontexts)
      * [Colors (really?) and Visuals](concepts/#colorsreallyandvisuals)
      * [Syncing and Flushing connections](concepts/#syncingandflushingconnections)
      * [Window System Objects](concepts/#windowsystemobjects)
      * [Grabs](concepts/#grabs)
      * [Selections, Cut-Copy-Paste](concepts/#selectionscutcopypaste)
* [Communication Between Client and Server](communication)
   * [X Protocol Security model](communication/#xprotocolsecuritymodel)
   * [Authentication methods](communication/#authenticationmethods)
   * [Access control within the X server](communication/#accesscontrolwithinthexserver)
* [Modern Extensions To X](extensions)
   * [XKB](extensions/#xkb)
   * [Xinput 2](extensions/#xinput2)
   * [Composite](extensions/#composite)
   * [RandR and Xinerama](extensions/#randrandxinerama)
   * [SYNC](extensions/#sync)
* [The X Client Ecosystem](client-ecosystem)
   * [The Structure of an X Client Application](client-ecosystem/#thestructureofanxclientapplication)
   * [Building X client code](client-ecosystem/#buildingxclientcode)
   * [X libraries](client-ecosystem/#xlibraries)
      * [XCB family of protocol and utility libraries](client-ecosystem/#xcbfamilyofprotocolandutilitylibraries)
      * [Xlib family of protocol and utility libraries](client-ecosystem/#xlibfamilyofprotocolandutilitylibraries)
      * [X Toolkit Intrinsics and legacy toolkits](client-ecosystem/#xtoolkitintrinsicsandlegacytoolkits)
      * [Libraries for related protocols](client-ecosystem/#librariesforrelatedprotocols)
      * [Utility libraries](client-ecosystem/#utilitylibraries)
* [Xlib and XCB](xlib-and-xcb)
   * [Example: Converting xwininfo from Xlib to XCB](xlib-and-xcb/#example:convertingxwininfofromxlibtoxcb)
   * [Mixing Xlib & XCB calls](xlib-and-xcb/#mixingxlibxcbcalls)
   * [Example: Converting xdpyinfo extension queries to XCB](xlib-and-xcb/#example:convertingxdpyinfoextensionqueriestoxcb)
   * [Extension libraries](xlib-and-xcb/#extensionlibraries)
   * [API documentation](xlib-and-xcb/#apidocumentation)
* [Using Extensions](using-extensions)
   * [Example:  Using an extension from an xcb-based client](using-extensions/#example:usinganextensionfromanxcbbasedclient)
   * [Example:  Using an extension from an Xlib-based client](using-extensions/#example:usinganextensionfromanxlibbasedclient)
* [The X Keyboard Extension](hutterer-kbd)
   * [RMLVO and Kccgst](hutterer-kbd/#rmlvoandkccgst)
      * [RMLVO](hutterer-kbd/#rmlvo)
      * [Kccgst](hutterer-kbd/#kccgst)
   * [Converting from RMLVO to Kccgst](hutterer-kbd/#convertingfromrmlvotokccgst)
   * [Key processing](hutterer-kbd/#keyprocessing)
* [Fonts](fonts)
   * [Core Font subsystem](fonts/#corefontsubsystem)
   * [Client-side fonts](fonts/#clientsidefonts)
* [Debugging Client-Server Interactions](debugging)
   * [Event reporting](debugging/#eventreporting)
   * [The X-Resource extension](debugging/#thexresourceextension)
   * [Protocol monitors](debugging/#protocolmonitors)
   * [System level tracing](debugging/#systemleveltracing)
* [Contributing To X](contributing)
* [Developer Documentation](documentation)
    * [Doxygen](documentation/#doxygen)
    * [Docbook/XML](documentation/#docbookxml)
    * [Manual Pages](documentation/#manualpages)
    * [Wiki](documentation/#wiki)
    * [Conclusions](documentation/#conclusions)
* [Appendix: Other Sources of Information](other-info)