diff --git a/doc/book/src/images/content-updates/content-update-legend.png b/doc/book/src/images/content-updates/content-update-legend.png new file mode 100644 index 0000000..84f12e7 Binary files /dev/null and b/doc/book/src/images/content-updates/content-update-legend.png differ diff --git a/doc/book/src/images/content-updates/content-updates.drawio b/doc/book/src/images/content-updates/content-updates.drawio new file mode 100644 index 0000000..5d78021 --- /dev/null +++ b/doc/book/src/images/content-updates/content-updates.drawio @@ -0,0 +1,1528 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-1.png b/doc/book/src/images/content-updates/simple-desynchronized-state-1.png new file mode 100644 index 0000000..d319ac2 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-1.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-2.png b/doc/book/src/images/content-updates/simple-desynchronized-state-2.png new file mode 100644 index 0000000..ecd284c Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-2.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-3.png b/doc/book/src/images/content-updates/simple-desynchronized-state-3.png new file mode 100644 index 0000000..73da57f Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-3.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-4.png b/doc/book/src/images/content-updates/simple-desynchronized-state-4.png new file mode 100644 index 0000000..83dcc06 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-4.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-5.png b/doc/book/src/images/content-updates/simple-desynchronized-state-5.png new file mode 100644 index 0000000..d4e42d8 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-5.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized-state-6.png b/doc/book/src/images/content-updates/simple-desynchronized-state-6.png new file mode 100644 index 0000000..ebb88d8 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-desynchronized-state-6.png differ diff --git a/doc/book/src/images/content-updates/simple-desynchronized.drawio b/doc/book/src/images/content-updates/simple-desynchronized.drawio new file mode 100644 index 0000000..c1adfd6 --- /dev/null +++ b/doc/book/src/images/content-updates/simple-desynchronized.drawio @@ -0,0 +1,198 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/simple-synchronized-state-1.png b/doc/book/src/images/content-updates/simple-synchronized-state-1.png new file mode 100644 index 0000000..be10144 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-synchronized-state-1.png differ diff --git a/doc/book/src/images/content-updates/simple-synchronized-state-2.png b/doc/book/src/images/content-updates/simple-synchronized-state-2.png new file mode 100644 index 0000000..af6c64f Binary files /dev/null and b/doc/book/src/images/content-updates/simple-synchronized-state-2.png differ diff --git a/doc/book/src/images/content-updates/simple-synchronized-state-3.png b/doc/book/src/images/content-updates/simple-synchronized-state-3.png new file mode 100644 index 0000000..7ca9ae6 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-synchronized-state-3.png differ diff --git a/doc/book/src/images/content-updates/simple-synchronized-state-4.png b/doc/book/src/images/content-updates/simple-synchronized-state-4.png new file mode 100644 index 0000000..e8b9b3d Binary files /dev/null and b/doc/book/src/images/content-updates/simple-synchronized-state-4.png differ diff --git a/doc/book/src/images/content-updates/simple-synchronized-state-5.png b/doc/book/src/images/content-updates/simple-synchronized-state-5.png new file mode 100644 index 0000000..21c3414 Binary files /dev/null and b/doc/book/src/images/content-updates/simple-synchronized-state-5.png differ diff --git a/doc/book/src/images/content-updates/simple-synchronized.drawio b/doc/book/src/images/content-updates/simple-synchronized.drawio new file mode 100644 index 0000000..a478ae0 --- /dev/null +++ b/doc/book/src/images/content-updates/simple-synchronized.drawio @@ -0,0 +1,207 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1-1.png b/doc/book/src/images/content-updates/sync-subsurf-case1-1.png new file mode 100644 index 0000000..1f7ff8e Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case1-1.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1-2.png b/doc/book/src/images/content-updates/sync-subsurf-case1-2.png new file mode 100644 index 0000000..6839b67 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case1-2.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1-3.png b/doc/book/src/images/content-updates/sync-subsurf-case1-3.png new file mode 100644 index 0000000..9810a02 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case1-3.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1-4.png b/doc/book/src/images/content-updates/sync-subsurf-case1-4.png new file mode 100644 index 0000000..bf3c04b Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case1-4.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1-5.png b/doc/book/src/images/content-updates/sync-subsurf-case1-5.png new file mode 100644 index 0000000..1b2ebc3 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case1-5.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case1.drawio b/doc/book/src/images/content-updates/sync-subsurf-case1.drawio new file mode 100644 index 0000000..385c6fd --- /dev/null +++ b/doc/book/src/images/content-updates/sync-subsurf-case1.drawio @@ -0,0 +1,500 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/sync-subsurf-case2-1.png b/doc/book/src/images/content-updates/sync-subsurf-case2-1.png new file mode 100644 index 0000000..25408cf Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case2-1.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case2-2.png b/doc/book/src/images/content-updates/sync-subsurf-case2-2.png new file mode 100644 index 0000000..63ea066 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case2-2.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case2-3.png b/doc/book/src/images/content-updates/sync-subsurf-case2-3.png new file mode 100644 index 0000000..3948988 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-subsurf-case2-3.png differ diff --git a/doc/book/src/images/content-updates/sync-subsurf-case2.drawio b/doc/book/src/images/content-updates/sync-subsurf-case2.drawio new file mode 100644 index 0000000..c1eaff6 --- /dev/null +++ b/doc/book/src/images/content-updates/sync-subsurf-case2.drawio @@ -0,0 +1,287 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/sync-to-desync-subsurf-1.png b/doc/book/src/images/content-updates/sync-to-desync-subsurf-1.png new file mode 100644 index 0000000..3a56f26 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-subsurf-1.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-subsurf-2.png b/doc/book/src/images/content-updates/sync-to-desync-subsurf-2.png new file mode 100644 index 0000000..9cb6210 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-subsurf-2.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-subsurf-3.png b/doc/book/src/images/content-updates/sync-to-desync-subsurf-3.png new file mode 100644 index 0000000..34bf747 Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-subsurf-3.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-subsurf.drawio b/doc/book/src/images/content-updates/sync-to-desync-subsurf.drawio new file mode 100644 index 0000000..7a72e0f --- /dev/null +++ b/doc/book/src/images/content-updates/sync-to-desync-subsurf.drawio @@ -0,0 +1,223 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/content-updates/sync-to-desync-transition-1.png b/doc/book/src/images/content-updates/sync-to-desync-transition-1.png new file mode 100644 index 0000000..cd69f3c Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-transition-1.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-transition-2.png b/doc/book/src/images/content-updates/sync-to-desync-transition-2.png new file mode 100644 index 0000000..677a0cd Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-transition-2.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-transition-3.png b/doc/book/src/images/content-updates/sync-to-desync-transition-3.png new file mode 100644 index 0000000..bdfdb8e Binary files /dev/null and b/doc/book/src/images/content-updates/sync-to-desync-transition-3.png differ diff --git a/doc/book/src/images/content-updates/sync-to-desync-transition.drawio b/doc/book/src/images/content-updates/sync-to-desync-transition.drawio new file mode 100644 index 0000000..9843acb --- /dev/null +++ b/doc/book/src/images/content-updates/sync-to-desync-transition.drawio @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/icon.svg b/doc/book/src/images/icon.svg new file mode 100644 index 0000000..b2f16d0 --- /dev/null +++ b/doc/book/src/images/icon.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/doc/book/src/images/wayland-architecture.gv b/doc/book/src/images/wayland-architecture.gv new file mode 100644 index 0000000..f2c3507 --- /dev/null +++ b/doc/book/src/images/wayland-architecture.gv @@ -0,0 +1,36 @@ +digraph arch_wayland { + edge[ + fontname="DejaVu Sans", + dir="both", + arrowtail="dot", + arrowsize=.5, + fontname="DejaVu Sans", + fontsize="18", + ] + + node[ + color=none, + margin=0, + fontname="DejaVu Sans", + fontsize="18", + ] + + c1 [label=<
Wayland Client
>, URL="#c1"] + c2 [label=<
Wayland Client
>, URL="#c2"] + + comp [tooltip="Wayland Compositor", label=<

Wayland
Compositor

>, URL="#comp"] + + impl [tooltip="KMS evdev Kernel", label=<
KMSevdev
Kernel
>, URL="#impl"] + + c1 -> comp [taillabel="③", labeldistance=2.5, URL="#step_3"]; + c2 -> comp; + + comp -> c1 [label="②", URL="#step_2"]; + comp -> c2; + + comp -> impl [xlabel = "④", URL="#step_4"]; + comp -> impl [style = invis, label=" "]; + impl -> comp [xlabel = "①", URL="#step_1"]; + + c1 -> c2 [style=invis]; +} diff --git a/doc/book/src/images/wayland-architecture.png b/doc/book/src/images/wayland-architecture.png new file mode 100644 index 0000000..2be7da0 Binary files /dev/null and b/doc/book/src/images/wayland-architecture.png differ diff --git a/doc/book/src/images/wayland.png b/doc/book/src/images/wayland.png new file mode 100644 index 0000000..c993792 Binary files /dev/null and b/doc/book/src/images/wayland.png differ diff --git a/doc/book/src/images/x-architecture.gv b/doc/book/src/images/x-architecture.gv new file mode 100644 index 0000000..b223d1d --- /dev/null +++ b/doc/book/src/images/x-architecture.gv @@ -0,0 +1,53 @@ +digraph arch_x { + edge[ + fontname="DejaVu Sans", + dir="both", + arrowtail="dot", + arrowsize=.5, + fontname="DejaVu Sans", + fontsize="18", + ] + + node[ + shape="none", + color=none, + margin=0, + fontname="DejaVu Sans", + fontsize="18", + ] + + { + rank=same; + c1 [label=<
X Client
>, URL="#c1"] + c3 [label=<
X Client
>, URL="#c3"] + } + c2 [label=<
X Client
>, URL="#c2"] + + { + rank=same; + xserver [tooltip="X Server", label=<

X Server

>, URL="#xserver"] + comp [tooltip="Compositor", label=<

Compositor

>, URL="#comp"] + } + + impl [tooltip="KMS evdev Kernel", label=<
KMSevdev
Kernel
>, URL="#impl"] + + c1 -> xserver [taillabel="③", labeldistance=2, URL="#step_3"]; + c2 -> xserver; + c3 -> xserver; + + xserver -> c1 [taillabel="②", labeldistance=2, URL="#step_2"]; + xserver -> c2; + xserver -> c3; + + xserver -> impl [taillabel="⑥", labeldistance=1.75, URL="#step_6"]; + xserver -> impl [style=invis, label=" "]; + impl -> xserver [taillabel="①", labeldistance=1.75, URL="#step_1"]; + + xserver -> comp [style=invis]; + xserver -> comp [taillabel="④", labeldistance=1.75, labelangle=-45, URL="#step_4"]; + comp -> xserver [taillabel="⑤", URL="#step_5"]; + comp -> xserver [style=invis] + + c1 -> c2 [style=invis]; + c3 -> c2 [style=invis]; + } diff --git a/doc/book/src/images/x-architecture.png b/doc/book/src/images/x-architecture.png new file mode 100644 index 0000000..549e262 Binary files /dev/null and b/doc/book/src/images/x-architecture.png differ diff --git a/doc/book/src/images/xwayland-architecture.png b/doc/book/src/images/xwayland-architecture.png new file mode 100644 index 0000000..f24dc18 Binary files /dev/null and b/doc/book/src/images/xwayland-architecture.png differ