Skip to main content

Roadmap and limitations

This page records the distinction between UI or type-level intent and behavior currently implemented in the platform path.

Current limitations

  • X11 is the intended and only adapter path for movement, but actual move/resize behavior is unverified and may not work.
  • X11Adapter::move_resize_window uses _NET_WM_STATE at src-tauri/src/x11_adapter.rs:376-381 rather than a valid _NET_MOVERESIZE_WINDOW geometry message. It can return success after send/flush without evidence that a window manager applied geometry.
  • Wayland window data is read-only and arrangement is disabled.
  • X11 uses one root-screen representation. Multi-monitor XRandR output discovery and selection are not implemented.
  • The UI's ratio, gap, and margin sliders remain session overrides and are not sent in the arrange request.
  • Modifier snap settings persist, but there is no native drag/modifier transport or snap implementation.
  • Autostart settings persist, but no autostart integration is implemented.
  • Closing can hide the window when minimize_to_tray is enabled, but a complete tray lifecycle is not implemented or documented.
  • Existing application checks have the baseline failures listed in development setup.

Contributions

Useful follow-on work includes making the IPC contract generated and checked, completing the X11 move protocol and monitor model, and designing native Wayland arrangement only where compositor protocols permit it. Any capability claim should be verified through the corresponding adapter and end-to-end command path.