From 3c4a5a67e2952812d67473d640eff96600fbe93d Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Sat, 29 Feb 2020 18:43:28 +0100 Subject: [PATCH] ibusManager: Use setup X11 display for ibus-x11 (re)spawning ibus to get ibus-x11 will be part atm of Xwayland initialization process. For it to be set up before the client it needs using the GNOME_SETUP_DISPLAY. https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/836 --- js/misc/ibusManager.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/js/misc/ibusManager.js b/js/misc/ibusManager.js index cc699c33c..2049758ea 100644 --- a/js/misc/ibusManager.js +++ b/js/misc/ibusManager.js @@ -61,7 +61,12 @@ var IBusManager = class { _spawn(extraArgs = []) { try { let cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs]; - Gio.Subprocess.new(cmdLine, Gio.SubprocessFlags.NONE); + let launcher = Gio.SubprocessLauncher.new(Gio.SubprocessFlags.NONE); + // Forward the right X11 Display for ibus-x11 + let display = GLib.getenv('GNOME_SETUP_DISPLAY'); + if (display) + launcher.setenv('DISPLAY', display, true); + launcher.launch(cmdLine); } catch (e) { log(`Failed to launch ibus-daemon: ${e.message}`); }