-
Rui Matos authored
We connect to IBus and tell it to switch engine when the current input source setting is changed and an IBus engine is specified there. If an IBus engine is specified, we flip the setting that backs the Gtk/IMModule XSETTING so that GTK+ applications get notified to load the IBus input method when needed and go back to the simple input method when IBus isn't required. The ibus-daemon claims a well known name in the session bus but doesn't ship a .service file to make it activatable so we ship one ourselves which will spawn it in a convenient way for us. In particular, we disable its 'panel' component since that functionality is provided by gnome-shell and would conflict at run time. We also tell it to replace an existing ibus-daemon since traditionally it would be spawned at session init time before even DBus was up and out of control of gnome-session so, in case that happens, our own spawned version will take place which is what we intend since the traditionally launched ibus-daemon is highly likely to be running with its 'panel' component enabled. https://bugzilla.gnome.org/show_bug.cgi?id=676102
557bfce8