Bspwm: Enforce a minimum window size

Created on 11 Aug 2016  Â·  8Comments  Â·  Source: baskerville/bspwm

When resizing windows with my mouse, I can make them disappear entirely by squeezing them out of existence. Once they disappear, I can't bring them back by resizing unless I remove the window that squeezed the now missing window(s) out of existence.

IMO, the fix is to just to avoid shrinking windows beyond a minimum size. This already appears to be the case for windows resized with bspc node commands.

Most helpful comment

Why not just have a minimum 5px (1px?) size? If you _want_ the node to disappear, mark it hidden.

All 8 comments

This already appears to be the case for windows resized with bspc node commands.

I have been able to squeeze windows out using keybinds w/ bspc node commands.

You're right, I just didn't test thoroughly (my resize command resizes in increments of 10).

I somewhat don't like idea of enforcing a minimum size, but losing windows by accidentall squeezing is not a good feel. Maybe this could be detected, and then set the node state to hidden or something? I guess then you could have to have a minimum size enforced for when you un-hide the node.

Why not just have a minimum 5px (1px?) size? If you _want_ the node to disappear, mark it hidden.

There's already a limit of 1×1. And I haven't been able to make a window _disappear_. So, I won't mind some reproduce steps…

Open two windows side-by-side and resize one to fill the whole screen (using the mouse works best). Technically, the squashed window doesn't actually disappear entirely, it appears to be covered by the resized window. However, the resized window can't be resized back to a sane size for some reason.

Limiting the size of a leaf isn't enough: its sibling might still cover it.

So the children must ask some space to their parent and if the parent can't provide enough space it would ask its own parent some space, etc.

Tried a little hack here:
https://github.com/baskerville/bspwm/blob/master/src/messages.c#L450
Setting bounds to 0.01 and 0.99 fixes the bspc/keyboard part of the issue for me. Not particularly elegant, but it's something.
Resizing with mouse does not use this ratio logic at all, maybe for tiling mode it should?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

fluffywaffles picture fluffywaffles  Â·  5Comments

sjtio picture sjtio  Â·  3Comments

lukasino1214 picture lukasino1214  Â·  4Comments

KGOH picture KGOH  Â·  5Comments

bcspragu picture bcspragu  Â·  7Comments