![]() Absolute screen coordinates are impossible for Wayland clients to provide, because the clients don't know where the window is positioned. Some clients, such as the ones using GTK 3 were providing window relative coordinates even when screen coordinates were requested, while others, such as GTK 4 clients, were just returning an error for caret events or also window-relative coordinates for focus events. So for this to work on Wayland we have to request window-relative coordinates and translate them to the current focus window. To ensure the correct coordinates, we have to only consider events coming from the current focus window. All other events are filtered out now. As a side effect this also fixes the magnifier always jumping to a terminal cursor whenever there was some output, even if the window was not focused. This also needs some special handling for events coming from the shell itself, which should not be translated to the focus window either. As another side effect this fixes another bug that was caused by these events already including scaling and getting scaled again. Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5509 Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2301> |
||
---|---|---|
.gitlab/issue_templates | ||
.gitlab-ci | ||
.settings | ||
data | ||
docs/reference | ||
js | ||
lint | ||
man | ||
meson | ||
po | ||
src | ||
subprojects | ||
tests | ||
tools | ||
.eslintrc.yml | ||
.gitignore | ||
.gitlab-ci.yml | ||
.gitmodules | ||
.jscheckignore | ||
config.h.meson | ||
COPYING | ||
gnome-shell.doap | ||
HACKING.md | ||
meson_options.txt | ||
meson.build | ||
NEWS | ||
README.md |
GNOME Shell
GNOME Shell provides core user interface functions for the GNOME 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 the project wiki.
Bugs should be reported to the GNOME bug tracking system. Please refer to the Schedule wiki page to see the supported versions.
Contributing
To contribute, open merge requests at https://gitlab.gnome.org/GNOME/gnome-shell.
Commit messages should follow the GNOME commit message guidelines. We require an URL to either an issue or a merge request in each commit.
Default branch
The default development branch is main
. If you still have a local
checkout under the old name, use:
git checkout master
git branch -m master main
git fetch
git branch --unset-upstream
git branch -u origin/main
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
License
GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.