Allow device routing without pinning
This commit is contained in:
@@ -26,6 +26,7 @@ Preserve the repo's focused one-screen VPN client language: a centered primary a
|
||||
- Never let labels, timers, feedback, icons, progress, or server rows shift neighboring content.
|
||||
- Animate state, opacity, blur, glow, color, filter, and transform. Do not animate layout properties.
|
||||
- Make live behavior visibly alive: running processes, changing values, mode changes, and interactive affordances should communicate through restrained motion instead of abrupt static replacement.
|
||||
- Give every actionable icon a semantic hover/focus response; rotate cyclic actions, move the physical part of object-like controls, and keep their hit targets fixed.
|
||||
- Let every visible cycle finish and return to its resting coordinates before stopping. Never cancel a hover animation, spinner, or list exit at an arbitrary frame.
|
||||
- Animate dynamic rows through complete enter and exit phases; keep a departing row mounted until its exit finishes, with immediate removal under reduced motion.
|
||||
- Animate only what changed. Keep unchanged digits, labels, icons, and surrounding geometry stable.
|
||||
@@ -51,5 +52,6 @@ Before handing off, verify:
|
||||
- Server separators are compact and only slightly wider than their content.
|
||||
- Repeated polling does not replay decorative list animations.
|
||||
- Manual refresh has an obvious but non-jarring response.
|
||||
- Icon-only controls respond on hover and focus, active cyclic work spins, and durable states such as pinned remain legible at rest.
|
||||
- Keyboard focus remains visible even when the text caret is intentionally hidden.
|
||||
- Narrow screens return to a simple single-column layout.
|
||||
|
||||
Reference in New Issue
Block a user