Multi Monitor - Multi Window - Papercuts

I use two monitors and therefore drag an outliner, a properties window and a shader conmpositor window onto my second one, to have a fullscreen viewport on the left monitor.

This has two major problems though:
1.) I can not click on every item in the drop down list when changing the window´s type
2.) Every window behaves on its own. Recently with the new file browser, there has been introduced another behaviour, where the file browser minimizes with the main window, doesnt have it`s own taskbar icon and stays on the same z index as the parent. This would be great to have on these other types of floating windows, too, as it is really complicated to work with more than one Blender instance running at a time!

Is there anything I could do about this in Python? I do not know C, so else I’d be at the mercy of you devs…

3 Likes

The devs are working on it:
https://developer.blender.org/T69819
It’s marked as high priority so we might see it implemented soon.

That task is generally about secondary windows, so separate windows that might be above or below the main blender window. So how you might want a popup to be always on top of others, or how they should behave when you minimize the main window. And great to have improvements there.

This topic though, is more about using the extra space that you get when you have more than one monitor. For that I am curious about what things you need. So would love more details about the frustrations felt by @morph3us

From the description it sounds like you want one monitor that is just a 3D Editor while the rest is on another monitor. Yet the capture looks like you are “tearing off” some editors and dragging them over individually, resulting in that tall and narrow Properties window shown and the multiple icons on the taskbar.

Instead, I would expect that you would start by launching default blender, then select “Window / New Window” and drag the result to the other monitor. Then change the one so it shows only 3DView and alter the other so it does not. That way you would only have two icons on the taskbar (joined together) and would not have any windows that are so small.

Blender on three monitors (5760 pixels wide)

Dear Harleya,

thank you for taking interest in my post! Let me try to specify things a bit more clearly.

Yes, I tear off my windows. I really do not like having all the different editor types as areas in one big window. Instead I prefer to have one window per editor type.
For me, it is a lot more flexible that way and I still have space for other applications in between those windows.

As you can see on the screenshot, I currently have two Blender sessions open, while only actually using one at the moment. This adds a total of 7 icons to the taskbar, while I believe only two would be neccessary.
I really do not want to start a “which software is better” discussion, just show how the only other 3D program I know handles it: 3ds Max does not show icons for such “sub-windows”, but if you minimize them, shows a little square at the bottom of the program, so you can maximize it again when needed:


I believe this is a really convenient solution, because it ties the torn off windows into the programs interface more, making it appear more like a coherent application, rather than individual windows working with each other.

Also, if I would make my browser full screen in the first screenshot and then would like to return to Blender, I have to click all icons of the torn off windows individually to get Blender to be fully in the foreground again. (Or minimize the browser, but sometimes one has more than one browser open and then I would have to minimize all of those, too.)

I hope this clears up my things a bit more? If not, please tell me and I will try to reformulate my thoughts…

I am not too sure about the linked task, as I really dont know what “secondary windows” are. I presume those are things like the “file open” window, so shouldnt apply to what I was referring to. Still, nice find, thanks for letting me know!

1 Like

Awesome. Thanks!

On my Windows 10 when tearing off windows like that, I see them grouped on the taskbar, like the following:

With above I have torn three windows away from the main onto another monitor, and then hovering over the icons in the taskbar. I thought that Windows has been grouping icons that are using the same process ID since Vista? Can’t remember now. What version are you running? Not it matters though as the behavior is the same in the end.

I would like to know more about “I would make my browser full screen in the first screenshot and then would like to return to Blender, I have to click all icons of the torn off windows individually to get Blender to be fully in the foreground again.” I’m not able to see how maximizing one window affects any others in this situation. The torn-off ones don’t auto-minimize so unsure of your procedure there.

The reason I am curious is because you mention the changed behavior of the File Browser. But that new window behavior comes with the price of it not having a “minimize” option at all - you will see that it is grayed-out.

But if all these tear-off windows were like the File Browser window would that help or cause more trouble? True that you could minimize, and restore, every blender window with one button. But you also could not minimize any of those individual windows.

And what if you want a outliner/properties pillar next to a web browser? On a 16:10 or even a 4:3 aspect monitor.

edit: ah, this was already covered by another post. Well, consider this one a +1 then.

I have heard many people wanting torn-off windows to behave exactly as File Browser, as a child window always on top and without minimize.

And that makes perfect sense to me for the simple case where you have limited space and don’t want your new window diving under the main one. But I always worried that change would adversely affect your usage, where you have lots of space and might want to have more control over each one. If you could work as you are with non-minimizable child windows that would be nice.

Doesn’t address the issue visible in the image found in OP, though.

You mean his “#1”, that his window is too narrow to display the list of Editors? No, they are two separate issues and must be dealt with… separately. And that can (for now) be easily dealt with by just dragging that window wider, making the change, and dragging the width again. For almost any change of editor while floating you’d have to adjust the width anyway.

That issue could probably be helped by just not allowing categorized enum lists like that to not break into columns if the outer window width is too narrow. In that case it would turn into a single column but would at least have little scroll arrows.

1 Like

Yep, thats what I’m thinking, too.

As I thought, after @julianeisel did all the real work (634-line patch that allows windows to have different behaviors and behave similarly on all supported platforms), it is trivial to now have tear-off windows be always on top.

Following shows a torn-off window overlapping the main one, even though it has focus. The secondary one does not have “minimize” option. And the tasktray shows only one icon that you can use to minimize them both at once.

But still the question is whether this is the behavior we want.

1 Like

Well, as @morph3us said:

Would be good to have when you need to minimize just momentarily.

I added a patch for the easy change of just making tear-off widows “on top”. So it can at least be tested and commented on.

https://developer.blender.org/D6338

2 Likes

As for those categorized enum lists, there is probably some improvements that could be done.

But would take some work to get it right. Will give it a think.

In a first test it appear to work, but two things.

  • Maybe it coudl be optional?
  • It is necesary that blender react to the hotkey of where you have the mouse without click in the windows. Without that will be a lot of complaints.

I had always assumed that we would need to have the “always on top but no minimize” optional, just because of the two very different ways of using child windows. But hoped it wouldn’t be necessary. It could be a choice if we could think of a nice way of differentiating the two behaviors well on the menu. Otherwise I hating adding more confusing options. Any ideas?

That is a central behavior of Windows that I’m not certain I can get around. Window areas without focus just don’t get any messages from the operating system.

There is an optional feature in Windows that can help a bit, although I don’t personally like it. If you go to the “Ease of Access Center” you can select “Make the mouse easier to use”. An option there is “Activate a window by hovering over it with the mouse”. Once turned on it behaves as many Linux systems do, activating windows as your mouse travels over them.

Actually, I take some of that back.

Having these windows be always-on-top is a new feature that missing but sorely needed for some uses.

But it doesn’t really remove the old behavior. You can still select “New Window” and put a single editor in there, and you’d have the current “not on top but can minimize” behavior.

So with this patch you would suddenly have a choice of two different behaviors while working with multiple monitors.

1 Like

Here is an example from Maya.

window_example_maya

  • You can minimize the windows (they stay inside the main window).
  • They are always on top.
  • You can work directly in any window without first activating it with a click. (I drag a material from the window that is not active with just one click).

For me this is the perfect behavior, but I guess it won’t be very easy to implement.

Maybe I’m missing something, but I don’t see how that helps for multi-monitor support. If have torn off an editor and moved it to a second monitor I don’t want it to minimize to a non-standard place on the first monitor. They may as well just minimize to taskbar. Those look like windows that are clipped inside their parent and can’t leave. But, again, I’m probably just missing something.

Harleya! Thank you very much for working on this issue!
I never would have thought that someone would actually be willing to help…
Or even just do everything on his own… I am very grateful!

1.) Taskbar Grouping
I had totally forgotten about it in this context, because I generally dislike it. As it automatically groups all file explorer and internet browsers, too, I generally disable it after a fresh installation of Windows. However, even if it gets grouped visually, I would need to click every window individually to make them all appear on top of all other windows. (And then twice, once to open the group, once to activate the window)

2.) Browser - Fullscreen - Issue
The browser was just an example. You could have the same issue with every other application, too.
Its basically what I described in the last sentence of point 1.
Imagine you work in Blender and open a new window on your secoind monitor.
It will open on top of all torn off Blender windows.
If I`d want to fully open Blender again, I would have to click on each icon on its own.

3.) Minimizing
The example of Oskar is the exact same behaviour as in 3ds Max. Those Windows are not clipped inside the main window and yes they do minimize to a rather unorthodox place. However I feel it fits perfectly and was exactly what I was suggesting, too.

4.) List
I love what you did there and would be happy if this could be implemented as is into the main Blender branch!