gnome-shell/gnome-shell-disable-ibus-when-not-installed.patch

36 lines
1.2 KiB
Diff

From 29dfda2d2f77d14e27cc27cbba1e41ec0363cf83 Mon Sep 17 00:00:00 2001
From: Xiaoguang Wang <xwang@suse.com>
Date: Thu, 9 Apr 2020 11:16:56 +0800
Subject: [PATCH] Disable ibus when out of CJK
---
js/misc/ibusManager.js | 8 ++++++++
1 file changed, 8 insertions(+)
Index: gnome-shell-3.36.1/js/misc/ibusManager.js
===================================================================
--- gnome-shell-3.36.1.orig/js/misc/ibusManager.js
+++ gnome-shell-3.36.1/js/misc/ibusManager.js
@@ -31,6 +31,10 @@ function getIBusManager() {
var IBusManager = class {
constructor() {
+ let daemon = Gio.File.new_for_path('/usr/bin/ibus-daemon');
+ if (!daemon.query_exists(null))
+ return;
+
IBus.init();
// This is the longest we'll keep the keyboard frozen until an input
@@ -59,6 +63,10 @@ var IBusManager = class {
}
_spawn(extraArgs = []) {
+ let daemon = Gio.File.new_for_path('/usr/bin/ibus-daemon');
+ if (!daemon.query_exists(null))
+ return;
+
try {
let cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs];
let launcher = Gio.SubprocessLauncher.new(Gio.SubprocessFlags.NONE);