Satty icon indicating copy to clipboard operation
Satty copied to clipboard

feat: initial-size config and command line

Open RobertMueller2 opened this issue 3 months ago • 1 comments

Closes: #71

Changes fullscreen (command line and config) to use a parameter:

  • all (to cover all screens, probably not working in most compositors, but sets according property on toplevel. This is not the same thing as e.g. sway global fullscreen, btw)
  • current-screen

Old fullscreen (--fullscreen and fullscreen = true) still working, this does the same as using "current-screen".

Adds option for initial resize

  • smart (existing behaviour) (e.g. --resize smart or resize = { mode = "smart" })
  • actual size (e.g. --resize 2000x800 or resize = { mode = "size", width=2000, height= 800 })

Adds option for the existing floating hack (--floating-hack or floating-hack=true), default is off.

  • [x] WindowSizing in both command_line and configuration needs deduplicating
  • [x] behaviour with different compositor settings for the window needs testing
  • [x] reconsider default
  • [x] consider all-screens
  • [x] use options instead of None directly

Requires #322 to be included before next release.

RobertMueller2 avatar Oct 10 '25 21:10 RobertMueller2

I think I'll change this to --fullscreen=all|current|none (with --fullscreen and fullscreen=true in config still working) --resize-window=w,h|smart --floating-hack

because these might be used in any combination. You could place Satty in Fullscreen and still want to have a floating, sized window if you exit fullscreen. I think this should work better for the control flow in main.rs.

EDIT: included above

RobertMueller2 avatar Oct 11 '25 10:10 RobertMueller2

Changing back to draft so we can include #335 here.

RobertMueller2 avatar Nov 30 '25 08:11 RobertMueller2