GNOME Bugzilla – Bug 654046
Create new workspace per app when running on smaller screens
Last modified: 2021-07-05 14:10:43 UTC
MeeGo for Netbooks had an interesting feature where on smaller screens -- i.e. netbooks on internal display (< 280mm wide) -- would change the window management behaviour so that applications were started on a new workspace and "too small" windows were resized to be larger. This behaviour was well-received in user-testing because it simplified window management on devices where window management is mainly a chore. When you've got a small screen and a bad trackpad, the last thing you want to do is deal with window stacking and sizing. I'm proposing a few related additions: 1) a "small screen mode" boolean. This will be calculated from the screen size, with a GSettings to override it. 2) based on that mode, optional behaviour to create a new workspace (or re-use an empty one) when new application windows are created 3) based on that mode, optional behaviour to force windows to be a reasonable size. The logic in MeeGo is if the window is smaller than 60% of the screen, resize it to fill respecting any aspect ratio, with a border. All of this code already exists in the mutter-meego Mutter plugin, so it should be fairly simple to port it to gnome-shell.
1) The physical screen size does not really mean anything what matters is the resolution. 2) Having a completely different user experience based on screen size is just wrong. What we should do though is to maximize windows by default for lower res screens.
1) The physical screen size really does matter. For example, imagine a 'retina display' type screen at a resolution of 1280x800 at 5" and the same 1280x800 resolution also used at 21". These are two very different contexts. We tried looking at resolution alone for this and it really didn't work in some quite obvious cases. 2) This isn't about having a completely different user experience. It's about giving the system and applications hints on the user's context, especially as that changes through mobile sessions. (i.e. by plugging your laptop into a TV or remote display). What the system and applications do with those hints is entirely up to them, it could well be used to create an entirely new user experience, but just as much it could be used to make some simple tweaks that 'just work'.
(In reply to comment #1) ... > 2) Having a completely different user experience based on screen size is just > wrong. Well, the user _experience_ will change because of the type of device. This proposal is suggesting that the _UI_ adjusts to compensate. ;)
(In reply to comment #2) > 1) The physical screen size really does matter. For example, imagine a 'retina > display' type screen at a resolution of 1280x800 at 5" and the same 1280x800 > resolution also used at 21". These are two very different contexts. We tried > looking at resolution alone for this and it really didn't work in some quite > obvious cases. OK, that is the extreme case. But I don't consider a 12" high res screen "small" though. And it will fall into your heuristic. > 2) This isn't about having a completely different user experience. It's about > giving the system and applications hints on the user's context, especially as > that changes through mobile sessions. (i.e. by plugging your laptop into a TV > or remote display). What the system and applications do with those hints is > entirely up to them, it could well be used to create an entirely new user > experience, but just as much it could be used to make some simple tweaks that > 'just work'. Having one app per workspace is different compared to what you get on other screens. As for the window size part I agree (see above). (In reply to comment #3) > (In reply to comment #1) > ... > > 2) Having a completely different user experience based on screen size is just > > wrong. > > Well, the user _experience_ will change because of the type of device. This > proposal is suggesting that the _UI_ adjusts to compensate. ;) The third word in my statement was supposed to mean something ;)
280mm isn't a holy constant, we can easily tune it if required.
Why does it matter when we don't really stack applications anymore? Is this only for applications that cannot run maximised? Or when they create loads of small windows?
See also bug 651075
Yeah, 651075 is a variant of (3).
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/ Thank you for your understanding and your help.