Skip to content

1.2.8-4

Choose a tag to compare

@C0sm0cats C0sm0cats released this 10 Feb 21:17
· 48 commits to main since this release

SmartGrid Release Notes — Stable Minimize/Restore UX

Summary

This patch stabilizes minimize/restore behavior to prevent slot drift, unintended swaps, and layout holes during layout transitions.

Fixed

  • Restored minimized windows now return to their original saved slot.
  • Removed restore regressions caused by re-deriving slots from workspace maps.
  • Added a safe restore fallback that repacks windows immediately to remove holes after layout transitions.

Behavior

Minimize

  • SmartGrid captures window state (monitor/workspace/layout snapshot).
  • The grid compacts based on the new visible window count.

Restore

  • If snapshot context matches, SmartGrid restores exact previous slots.
  • If snapshot context does not match, SmartGrid uses fallback restore + immediate repack to keep a dense layout.

Example

  • 12 -> minimize 3 -> 9 windows: layout may switch 4x3 -> 3x3.
  • restore 1 -> 10 windows: layout may switch back to 4x3.
  • Result: no holes; restored slot is preserved when context allows it.

Technical Scope

  • Updated _sync_window_state_changes()
  • Updated _restore_windows_to_slots()
  • Uses minimize_restore_snapshots for exact restore
  • Adds per-monitor fallback repack for hole-free restore