Problem
Pigs don't appear on secondary monitors by default. Default settings enable only the primary display, so the spanning overlay covers only one screen and pigs bounce at its edge.
Confirmed behavior
- Selecting a monitor in Tray → Displays moves pigs to that monitor ✓
- Mechanics work correctly — one spanning window covers all enabled monitors
- With only primary enabled, pigs reach the hard boundary and bounce instead of crossing
Root cause
DisplayConfig defaults to enabled_indices = {0} (primary only). Users must manually enable additional monitors in the tray submenu.
What to fix
Change the default to enable all connected monitors on first run. After first run, persist the user's selection to settings.yaml as today.
- Find where
DisplayConfig is initialized/defaulted in Rust
- If
enabled_indices is empty or not yet set in settings.yaml, populate it with all monitor indices from available_monitors()
- Existing toggle behavior in the tray stays unchanged
Acceptance criteria
Problem
Pigs don't appear on secondary monitors by default. Default settings enable only the primary display, so the spanning overlay covers only one screen and pigs bounce at its edge.
Confirmed behavior
Root cause
DisplayConfigdefaults toenabled_indices = {0}(primary only). Users must manually enable additional monitors in the tray submenu.What to fix
Change the default to enable all connected monitors on first run. After first run, persist the user's selection to
settings.yamlas today.DisplayConfigis initialized/defaulted in Rustenabled_indicesis empty or not yet set insettings.yaml, populate it with all monitor indices fromavailable_monitors()Acceptance criteria
task checkgreen