[gnome-shell] ibusManager: Spawn ibus-daemon
- From: Rui Matos <rtcm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] ibusManager: Spawn ibus-daemon
- Date: Thu, 11 Sep 2014 17:36:19 +0000 (UTC)
commit 6a36a68f3289c3160c328382e1ae9af831a7b0bb
Author: Rui Matos <tiagomatos gmail com>
Date: Thu May 29 15:27:42 2014 +0200
ibusManager: Spawn ibus-daemon
gnome-settings-daemon doesn't this for us anymore. Note that
ibus-daemon isn't DBus activatable but just spawning it is fine
because it does its own single instance management. The library
notifies us when it shows up and goes away through the connected and
disconnected signals.
https://bugzilla.gnome.org/show_bug.cgi?id=736435
js/misc/ibusManager.js | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/js/misc/ibusManager.js b/js/misc/ibusManager.js
index c571fb7..40a33a6 100644
--- a/js/misc/ibusManager.js
+++ b/js/misc/ibusManager.js
@@ -1,5 +1,6 @@
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+const Gio = imports.gi.Gio;
const Lang = imports.lang;
const Signals = imports.signals;
@@ -44,6 +45,17 @@ const IBusManager = new Lang.Class({
// Need to set this to get 'global-engine-changed' emitions
this._ibus.set_watch_ibus_signal(true);
this._ibus.connect('global-engine-changed', Lang.bind(this, this._engineChanged));
+
+ this._spawn();
+ },
+
+ _spawn: function() {
+ try {
+ Gio.Subprocess.new(['ibus-daemon', '--xim', '--panel', 'disable'],
+ Gio.SubprocessFlags.NONE);
+ } catch(e) {
+ log('Failed to launch ibus-daemon: ' + e.message);
+ }
},
_clear: function() {
@@ -58,6 +70,8 @@ const IBusManager = new Lang.Class({
this._currentEngineName = null;
this.emit('ready', false);
+
+ this._spawn();
},
_onConnected: function() {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]