From c6211b35ab1fa8054226c7eb45ec766cd14c206f Mon Sep 17 00:00:00 2001 From: dotCooCoo Date: Fri, 13 Nov 2026 16:17:34 -0800 Subject: [PATCH] Docs: the Linux title bar paragraphs describe the frame the desktop draws docs/control-protocol.md said the window has no OS decorations on Windows and Linux. On Linux and the BSDs the app bar is the title bar by default only on a Wayland session without server-side decorations, such as GNOME, in a window not opened through XWayland; elsewhere the desktop draws the frame unless VectorCraft Title Bar on Every Desktop or VECTORCRAFT_TITLEBAR=app turns the app frame on. The paragraph now says so. docs/development.md said the custom title bar is the Linux default. It now says where the app bar is the default title bar. The comment on CUSTOM_TITLEBAR in apps/vectorcraft/src/titlebar.rs made the same Windows and Linux claim and now names Windows only. --- apps/vectorcraft/src/titlebar.rs | 2 +- docs/control-protocol.md | 5 ++++- docs/development.md | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/apps/vectorcraft/src/titlebar.rs b/apps/vectorcraft/src/titlebar.rs index f8007d612e..88dce26897 100644 --- a/apps/vectorcraft/src/titlebar.rs +++ b/apps/vectorcraft/src/titlebar.rs @@ -31,7 +31,7 @@ pub(crate) fn adapter_summary(info: &eframe::wgpu::AdapterInfo) -> String { format!("{} ({:?}, {:?})", info.name.trim(), info.backend, info.device_type) } -/// Windows and Linux: no OS title bar; the app bar is the title bar (`vectorcraft_ui_egui::titlebar`). +/// Windows: no OS title bar; the app bar is the title bar (`vectorcraft_ui_egui::titlebar`). /// macOS keeps its traffic lights over the integrated title strip. /// /// Used on macOS and Windows (where VectorCraft keeps today's frame regardless of the diff --git a/docs/control-protocol.md b/docs/control-protocol.md index 5cbf67f58a..0463351826 100644 --- a/docs/control-protocol.md +++ b/docs/control-protocol.md @@ -345,7 +345,10 @@ Tile Edge Color: Object → Pattern → Tile Edge Color… (`ui.tileEdgeColor`) `patternTileEdgeColor` (`prefs.set`), the colour pattern editing mode draws the tile edge and the swatch bounds in. A `color` with an alpha part (`#rrggbbaa` or `#rgba`) is an error, and the preference does not change. -Window title bar: on Windows and Linux the window has no OS decorations and the app bar is the title bar. Its +Window title bar: on Windows the window has no OS decorations and the app bar is the title bar. On Linux and the BSDs +the app bar is the title bar by default only on a Wayland session without server-side decorations, such as GNOME, in a +window not opened through XWayland. Elsewhere the desktop draws the frame and the app bar has no caption buttons, +unless VectorCraft Title Bar on Every Desktop or `VECTORCRAFT_TITLEBAR=app` turns the app frame on (see below). The caption buttons (Minimize, Maximize/Restore, Close) are 46 pt each. By default all three sit at the bar's right end. On Linux and the BSDs, when the desktop leaves the window's frame to the app (a Wayland session without server-side decorations, such as GNOME), the window is not opened through XWayland and `VECTORCRAFT_TITLEBAR` is unset, they diff --git a/docs/development.md b/docs/development.md index 05062e18b8..d3f0c7fe92 100644 --- a/docs/development.md +++ b/docs/development.md @@ -121,7 +121,7 @@ A file opened from the file manager (double-click, Open With, a drop on the exec ## Linux: Wayland and X11 -On GNOME/Wayland, enable **Preferences › User Interface › System Title Bar** and restart to use winit's font-free Adwaita window controls (`wayland-csd-adwaita-notitle`); the existing custom title bar remains the Linux default. On X11, on a Wayland compositor that draws server-side decorations such as KDE Plasma, and in a window opened through XWayland, enable **Preferences › User Interface › VectorCraft Title Bar on Every Desktop** and restart to use the app bar as the title bar instead of the desktop's frame. `VECTORCRAFT_TITLEBAR=app`, `=system` or `=desktop` chooses the frame for one run and takes precedence over System Title Bar and VectorCraft Title Bar on Every Desktop. The variable is case-sensitive and surrounding spaces are ignored; any other value, such as `unknown`, is ignored and does not override System Title Bar. +On GNOME/Wayland, enable **Preferences › User Interface › System Title Bar** and restart to use winit's font-free Adwaita window controls (`wayland-csd-adwaita-notitle`); the app bar is the title bar by default only on a Wayland compositor that leaves the window's frame to the app, such as GNOME's, in a window not opened through XWayland (see the drop and pen items below). On X11, on a Wayland compositor that draws server-side decorations such as KDE Plasma, and in a window opened through XWayland, enable **Preferences › User Interface › VectorCraft Title Bar on Every Desktop** and restart to use the app bar as the title bar instead of the desktop's frame. `VECTORCRAFT_TITLEBAR=app`, `=system` or `=desktop` chooses the frame for one run and takes precedence over System Title Bar and VectorCraft Title Bar on Every Desktop. The variable is case-sensitive and surrounding spaces are ignored; any other value, such as `unknown`, is ignored and does not override System Title Bar. The window runs natively on Wayland (eframe's `wayland` feature) and on X11. On machines with two GPUs it renders on the one the desktop runs on unless Preferences say otherwise; see [Desktop graphics processor](#desktop-graphics-processor) (#502). The system clipboard (`apps/vectorcraft/src/clipboard.rs`) is arboard with its `wayland-data-control` feature: