File gnome-shell-disable-ibus-when-not-installed.patch of Package gnome-shell

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-45.0/js/misc/ibusManager.js
===================================================================
--- gnome-shell-45.0.orig/js/misc/ibusManager.js
+++ gnome-shell-45.0/js/misc/ibusManager.js
@@ -59,6 +59,10 @@ class IBusManager extends Signals.EventE
     constructor() {
         super();
 
+        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
@@ -114,6 +118,10 @@ class IBusManager extends Signals.EventE
     }
 
     _spawn(extraArgs = []) {
+        let daemon = Gio.File.new_for_path('/usr/bin/ibus-daemon');
+        if (!daemon.query_exists(null))
+            return;
+
         try {
             const cmdLine = ['ibus-daemon', '--panel', 'disable', ...extraArgs];
             const launchContext = global.create_app_launch_context(0, -1);
openSUSE Build Service is sponsored by