TimUntersberger / nog

A tiling window manager for Windows
MIT License
697 stars 20 forks source link

Option to launch everything floating by default #290

Open fredizzimo opened 3 years ago

fredizzimo commented 3 years ago

I think that launching everything as floating by default, unless set otherwise in the configuration would provide a much smoother experience for me.

Many applications don't work very well in tiled mode, and sometimes even if the main application works, any additonal windows spawned may not work.

I also prefer to work in a more hybrid model, where I don't really want to tile everything, if I open some small utility application for example for temporary use, it's probably easier to just leave it floating, use it and then close. This is also not really application dependent, for some tasks the same application might useful tiled next to the main application. I prefer to just setup the workspaces, for the stuff that I really need, either to be able to see something side by side, or a dedicated workspace for some application that I quickly need to switch to all the time.

I certainly almost never wants those apps to be launched in an existing workspace, since there's probably not enough room for that. And even if you have a dedicated misc workspace, it quickly gets too cramped to be usable.

For these applications the Windows taskbar or alt-tab is efficient enough, the application itself probably has to be driven by mouse anyway, so reaching for the mouse to swich is not really a drawback.

This option would also include not trying to restore everyhting after a reboot, or when nog is started again after an exit. But perhaps that could also be a separate option.

ramirezmike commented 3 years ago

There's a lot here to comment on but to start I'll point out that you can currently get the effect you want (I think) by using min_height and min_width. When a window is created, nog checks its size and ignores anything smaller than those values. If you'd like nog to ignore everything you can just set those values in your config to something large.

nog.config.min_height = 5000
nog.config.min_width = 5000

I think an idea we've talked about in the past was to have a callback that runs on every new window with properties passed in of the window so that you can configure behavior that way, but I don't think we've created an issue specifically for it.

The min_height/min_width might make nog behave like you want now but it might be nice to have something like what I mentioned above too (or instead of)

TimUntersberger commented 3 years ago

I think an idea we've talked about in the past was to have a callback that runs on every new window with properties passed in of the window so that you can configure behavior that way, but I don't think we've created an issue specifically for it.

I think you are talking about the event system

fredizzimo commented 3 years ago

Thanks,

I have been running with this workaround for a while now, and it seems to work fine. I'm not fully sure that it's the behaviour I really want though, since many times I would like the window to open directly in tiling mode. But the good thing is that it does not randomly tile popup windows, or even things like Windows store, which I saw getting tiled, even if it was't even open. I also no longer get ghost tiles, due to some window showing quickly and then getting hidden.

So I think a whitelist instead of blacklist would be the ideal, but the event system would of course be event better to fully allow me to customize what I want.