What decides if a window will float by default?

When there are no window rules defined for a window, some windows will still spawn as floating by default. What properties are used to decide if a window should be tiled or floating? It generally works the way I would expect, but sometimes it doesn’t. Does the developer of the app have any control over this? I’m not seeing anything special in hyprctl clients other than the current floating state.

1 Like

This: Hyprland/src/managers/XWaylandManager.cpp at b5433bb75324a95dd27eb5492141565466c2cdd6 · hyprwm/Hyprland · GitHub

Outside of this, if a window sets its max_size as something that’s less than a tile, it will be popped off the layout to a floating one.