On Linux / native Wayland GTK negotiates decorations with the compositor
only when the window is created, so `set_decorations(false)` at runtime
left KDE's frame in place and the Lotus titlebar was drawn inside it
(two sets of close/min/max buttons). Turning it off would have left a
window with no titlebar at all until restart.
- The choice is saved natively (app config dir `custom-chrome`, like
`start-minimized`). On Linux the main window is built with or without
the frame from it.
- `set_custom_chrome` still toggles at runtime where that works
(Windows, macOS, Linux on X11 / XWayland); on native Wayland it only
saves the choice, which applies next launch.
- It now returns whether the frame is stripped right now, so the web
client can show its titlebar only then.
- The native-Wayland check moved out of gpu_workarounds into a shared
`gtk_native_wayland` helper (behaviour unchanged).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PPmy3tPq869XDW4njjVaKA