f5996a9232
In the xwayland-on-demand scenario, it may happen that Xwayland is shutdown (causing a restart of ibus-daemon to drop ibus-x11) while we are typing. If we have a bit of bad luck, this will cause the IBusInputContext to be disposed (due to its bus "closing") at a time when we have an ibus_input_context_process_key_event_async() request on the fly. As the object is disposed in between this would tickle JS (rightfully complaining that it's been disposed under its feet) and make us pass an actually NULL IBusInputContext to the corresponding _finish() function (despite the IBusInputContext being still held alive by some other refs). This will assert and abort in ibus_input_context_process_key_event_async_finish() then. To handle this, listen for IBusInputContext::destroy, and reset our internal state, this way we can compare on the JS side that the IBusInputContext is indeed an up-to-date one. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/813 |
||
---|---|---|
.gitlab-ci | ||
.settings | ||
data | ||
docs/reference | ||
js | ||
lint | ||
man | ||
meson | ||
po | ||
src | ||
subprojects | ||
test | ||
tests | ||
tools | ||
.eslintrc.json | ||
.gitignore | ||
.gitlab-ci.yml | ||
.gitmodules | ||
cldr2json.py | ||
config.h.meson | ||
COPYING | ||
gnome-shell.doap | ||
HACKING.md | ||
meson_options.txt | ||
meson.build | ||
NEWS | ||
README.md | ||
README.mdwn |
GNOME Shell
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 the project wiki.
Bugs should be reported to the GNOME bug tracking system.
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.
License
GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.