Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=947318
fujiwara <tfujiwar(a)redhat.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
--- Comment #1 from fujiwara <tfujiwar(a)redhat.com> ---
Thanks for the report.
I thought if this problem can be handled in the client applications and checked
StIMText in gnome-shell and it seems StIMText does not touch the bus
connection.
Probably the following is the suggested fix.
--- ibus-1.5.1/client/gtk2/ibusimcontext.c.orig 2013-04-09
16:16:38.288866593 +0900
+++ ibus-1.5.1/client/gtk2/ibusimcontext.c 2013-04-09 17:17:34.137417132
+0900
@@ -1467,6 +1467,25 @@ _ibus_context_destroy_cb (IBusInputConte
g_signal_emit (ibusimcontext, _signal_preedit_changed_id, 0);
g_signal_emit (ibusimcontext, _signal_preedit_end_id, 0);
+
+ /* This destroy callback can be called when the client app connects to
+ * IBusBus and the app is disconnected. E.g. gnome-shell connects to
+ * IBusBus and it has StEntry input text and ibus can be restarted.
+ * And each ibusimcontext also needs to reconnect IBusBus here. */
+ if (!ibus_bus_is_connected (_bus)) {
+ g_signal_handlers_disconnect_by_func (_bus,
+ G_CALLBACK (_bus_connected_cb),
+ ibusimcontext);
+ g_object_unref (_bus);
+ _bus = ibus_bus_new_async ();
+
+ if (ibus_bus_is_connected (_bus)) {
+ _create_input_context (ibusimcontext);
+ }
+
+ g_signal_connect (_bus, "connected", G_CALLBACK (_bus_connected_cb),
+ ibusimcontext);
+ }
}
static void
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug
https://bugzilla.redhat.com/token.cgi?t=jFvlIFi2n6&a=cc_unsubscribe