gnome-shell/js
Sebastian Keller c01973055f workspace: Ensure that _createBestLayout() always returns a layout
When opening a large number of windows, the computed space and scale for
a layout can become negative due to the per-row/per-column spacing. This
is smaller than the initial values of lastSpace and lastSpace, leading
to a null return which then causes all sorts of other issues resulting
in the workspace becoming invisible.

This change ensures that the function always returns a layout, even if
it may look a bit broken and does not conform to the scale/space
requirements which are impossible to fulfill for the given number of
windows. It's better than displaying nothing, since it allows users to
move/close windows and restore this to a more usable state.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3730

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1685>
2021-02-16 21:24:27 +00:00
..
dbusServices dbusServices/screencast: Use GTK4 2021-01-25 21:09:22 +01:00
gdm gdm: Override any other lower-priority service message on error 2021-02-16 18:00:10 +00:00
misc history: Trim input and ignore if empty 2021-02-13 08:58:20 +00:00
perf perf: Add basic run tests 2020-08-12 15:43:39 +00:00
portalHelper js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
ui workspace: Ensure that _createBestLayout() always returns a layout 2021-02-16 21:24:27 +00:00
js-resources.gresource.xml Rename ViewSelector to SearchController 2021-02-11 21:14:36 +00:00
meson.build extensions-app: Move Extensions app to new subproject 2020-03-27 23:33:30 +00:00
portal-resources.gresource.xml js: Remove unused files from resources 2020-03-09 13:18:48 +00:00