Bug 947318
| Summary: | $ ibus restart -> cannot input in gnome-shell widget | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | sangu <sangu.fedora> |
| Component: | gnome-shell | Assignee: | Owen Taylor <otaylor> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 19 | CC: | admiller, fmuellner, i18n-bugs, mfabian, otaylor, samkraju, shawn.p.huang, tfujiwar, tiagomatos, walters |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2013-09-24 02:47:52 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
sangu
2013-04-02 06:50:59 UTC
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
ibus-1.5.2-2.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/FEDORA-2013-6200/ibus-1.5.2-2.fc19 ibus-1.5.2-2.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/FEDORA-2013-6209/ibus-1.5.2-2.fc18 ibus-1.5.2-2.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/FEDORA-2013-6220/ibus-1.5.2-2.fc17 I consider this a bug in gnome-shell. See https://bugzilla.gnome.org/show_bug.cgi?id=699189 . OK, I will remove the patch in ibus. ibus-1.5.2-3 removed the patch. Transferring to gnome-shell. |