nixos/settings/ui.nix
rope cca2d62763 quickshell: hold tray menu height so switching morphs instead of regrowing
Switching to a tray menu whose items were not currently loaded
collapsed fullHeight at the instant of the switch, so the chrome
morphed DOWN to a stub and replayed the vertical grow when the items
landed, rather than moving across from the previous panel.

An empty Card is not height 0 but 2*cardPad, so loaded-ness has to come
from the model: menuLoaded tracks menuOpener.children. While a newly
assigned menu is loading, fullHeight holds the last loaded height, so
the morph stays continuous and the correction on arrival is small —
nil when it is the same menu as last time.

ui.nix radius knob at 20.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-28 15:05:05 +01:00

16 lines
679 B
Nix

# settings/ui.nix — shared UI metrics.
#
# Single source of truth for corner rounding. Both the quickshell shell
# (settings/quickshell.nix -> Theme.qml) and hyprland's window decoration
# (settings/hyprland.nix) read `radius` from here, and every other rounding
# value is derived from it, so this one number rescales the roundness of the
# whole desktop — panels, cards, pills, hover rows and window corners.
#
# Derived values live next to their consumers:
# Theme.radiusCard = radius - panelGap (concentric nesting, see Theme.qml)
# Theme.radiusSmall = radius * 0.75
# Theme.radiusTiny = radius * 0.5
# hyprland decoration.rounding = radius
{
radius = 20;
}