Read-only mirror of https://gitlab.gnome.org/GNOME/gnome-shell
7703bee284
Rather than having the mapping from window into "slots" (or possible positions in the workspaces) be dependent on stacking order, compute the minimum-motion which is a vector from one top left corner to another. This order won't change as long as the window set and their positions stay fixed. There are two minimum motion algorithims; one simply computes all possible placements by permuting the window list, up to a current maximum of 5 windows. Past that (which also happens to be the number where we switch to a grid), we use a "greedy" algorithm which for each slot, finds the window with least motion for that slot. To break any ties, we use an internal integer in MetaWindow which enumerates the order in which windows were created. https://bugzilla.gnome.org/show_bug.cgi?id=582654 |
||
---|---|---|
.settings | ||
data | ||
js | ||
po | ||
src | ||
tools/build | ||
.gitignore | ||
.project | ||
AUTHORS | ||
autogen.sh | ||
configure.ac | ||
COPYING | ||
gnome-shell.doap | ||
MAINTAINERS | ||
Makefile.am | ||
README |
GNOME Shell provides core user interface functions for the GNOME 3 desktop, like switching to windows and launching applications. GNOME Shell takes advantage of the capabilities of modern graphics hardware and introduces innovative user interface concepts to provide a visually attractive and easy to use experience. For more information about GNOME Shell, including instructions on how to build GNOME Shell from source and how to get involved with the project, see: http://live.gnome.org/GnomeShell Bugs should be reported at http://bugzilla.gnome.org against the 'gnome-shell' product. License ======= GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.