4 ms·
I work with desktop software and have to work with multiple display scenarios. It's on Windows, but I guess the problems are similar. Fundamentally, one issue i
by alkonaut 3y ago
I work with desktop software and have to work with multiple display scenarios. It's on Windows, but I guess the problems are similar. Fundamentally, one issue is that the concepts of multiple screens, multiple desktops, multiple DPI's are usually quite young.
Also, there is (at least in Windows) no well defined concept of "desktop configurations". There is no built in support for remembering which screen a particular window was last started on, or last shut down on etc. You have to write all this from scratch. Log a screen index/name/size/whatever, per window, on shutdown. If your app is one that typically spreads out over multiple screens, it's even worse.
For a user that some times works on a laptop, and some times plugs in a second display as their primary screen, then the odds of that being recognized as "Oh now they're using that config where they are more likely to want to use the large screen for our program rather than launching on the screen the last ran on" is basically nil. Does that happen in any software? Is it even a remote expectation of any user? It would be a pleasant surprise for sure, but I'm also sure half the time the guess would be wrong, leading to even more frustration than a simpler system with fewer guesses like "launch on the screen last used regardless of the current configuration".
- wisenull 3y agoIf you minimize and then restore a window, it saves that position on the screen. There are some programs that will misbehave no matter what but after that, you can close and reopen the program and it should open in the same screen, with the same size and position.
- alkonaut 3y ago> If you minimize and then restore a window, it saves that position on the screen. There are some programs that will misbehave no matter what but after that, you can close and reopen the program and it should open in the same screen, with the same size and position. Is this a mac-ism? A standard behavior? An expectation? Something a program would do automatically? As for the behavior I agree - so long as the screen index exists and so on. But should a program remember more than that. Like "Last time there were two screens, we were moved to screen B and exited there, so we should now start there" even though it has been run on a single screenA since. That's the typical office user with laptop + external screen.
- wisenull 3y agoIt is standard behavior on Windows. The issues you run into come with plugging and unplugging screens. If you leave them plugged in they work like that. I know it's not helpful for laptops that get moved around.
- sixothree 3y agoI wrote an quick little app some 12 years ago. It remembers screen location for various windows. I added a sanity check for windows appearing completely off-screen. Apparently Windows uses negative coordinates for screens to the left of the main screen. So one limitation of the app is that it won't remember window positions when they are on the screen to the left. I should get around to fixing that eventually.