nikitabobko / AeroSpace

AeroSpace is an i3-like tiling window manager for macOS
https://nikitabobko.github.io/AeroSpace/guide
MIT License
5.78k stars 91 forks source link

Disable outer gap for space with just a single window #54

Open fmasa opened 9 months ago

fmasa commented 9 months ago

There exists a feature called smart gaps in i3/sway that does just that.

# Enabling “Smart Gaps” means no gaps will be shown when there is
# precisely one window or split container on the workspace.
#
# inverse_outer only enables outer gaps when there is exactly one
# window or split container on the workspace.
smart_gaps on|off|inverse_outer

I prefer having gaps when I have multiple tiled windows visible as it allows me to better distinguish between them (especially for windows of the same type such as multiple terminals next to each other).

But when I only have one window open, I would like it to use all screen estate available.

nikitabobko commented 9 months ago

I didn't implement this feature because I couldn't wrap my head around it

If users use gaps for practical purposes to distinguish between windows then they can only use the inner gaps and set outer gaps to zero

If users use gaps for esthetic purposes then users will use both outer and inner gaps

fmasa commented 9 months ago

That's actually a good point, I never thought about using just inner gaps. So this is probably just aesthetic thing and I would understand if you don't want to implement this. 😄

rraafays commented 4 months ago

id also love this functionality'

nadavspi commented 3 months ago

inverse_outer does have a practical use for adding a large horizontal gap when there's only one window to "center" it. Really useful on large or ultrawide monitors.

E.g.,

gaps inner 10px
gaps horizontal 500px
smart_gaps inverse_outer

When you only have one window on a workspace, this will put 500px on both sides of it. Opening a second window will remove the horizontal gaps.

What do you think?

nikitabobko commented 3 months ago

smart_gaps inverse_outer makes more sense to me

Please see https://github.com/nikitabobko/AeroSpace/issues/60#issuecomment-1933133848

nadavspi commented 3 months ago

smart_gaps inverse_outer makes more sense to me

Please see #60 (comment)

Ah, cool. I like window-count-range (TOML awkwardness aside). I'll keep an eye on that issue.