Files
Elie Gambache b017ee65bd feat(tao): expose alwaysOnBottom for desktop-widget stacking
Only the always-on-top half of tao's stacking API was bridged, so a window
could never be pinned *below* the others — the wallpaper-level overlay a
desktop widget needs. Wire set_always_on_bottom (HWND_BOTTOM on Windows,
NSWindowLevel.BelowNormal on macOS, gtk_window_set_keep_below on X11) as
TaoWindow.setAlwaysOnBottom plus a reactive alwaysOnBottom parameter on both
DecoratedWindow composables, the window host and the Tao adapter.

tao makes the two stacking requests mutually exclusive only in its
WindowBuilder, not in its setters, so TaoWindow arbitrates the pair and the
last call wins. It also tracks the requested mode to skip a redundant clear:
on macOS both set_always_on_top(false) and set_always_on_bottom(false) reset
the level to NSNormalWindowLevel, which would silently undo the other mode.

Native Wayland reuses the existing per-feature warning — xdg-shell exposes no
client-side stacking, so keep_below is a no-op there.
2026-08-17 21:37:28 +03:00
..