[gnome-flashback/wip/segeiger/inputmethods] Some fixes



commit 7573fcdd8d652b04f71cda5ad10c8f5d0e3ba6b2
Author: Sebastian Geiger <sbastig gmx net>
Date:   Mon Sep 14 16:25:43 2015 +0200

    Some fixes

 gnome-flashback/libinput-sources/gf-ibus-manager.c |   21 ++++++++++---------
 gnome-flashback/libinput-sources/gf-ibus-manager.h |    2 +-
 .../libinput-sources/gf-input-sources.c            |    8 +++---
 3 files changed, 16 insertions(+), 15 deletions(-)
---
diff --git a/gnome-flashback/libinput-sources/gf-ibus-manager.c 
b/gnome-flashback/libinput-sources/gf-ibus-manager.c
index 3328441..c5d98b1 100644
--- a/gnome-flashback/libinput-sources/gf-ibus-manager.c
+++ b/gnome-flashback/libinput-sources/gf-ibus-manager.c
@@ -22,7 +22,6 @@
 #include "config.h"
 
 #include "gf-ibus-manager.h"
-#include "gf-input-sources.h"
 
 #include <glib/gi18n-lib.h>
 
@@ -67,8 +66,10 @@ static guint gf_ibus_manager_signals[LAST_SIGNAL] = { 0 };
 #define GF_IBUS_MANAGER_PRELOAD_ENGINES_DELAY_TIME 30
 
 static void
-onConnected (GfIBusManager *manager)
+onConnected (IBusBus *ibus, GfIBusManager *manager)
 {
+    g_return_if_fail (manager->ibus);
+
     ibus_bus_list_engines_async (manager->ibus, -1, NULL, (GAsyncReadyCallback) initEngines, manager);
 
     ibus_bus_request_name_async (manager->ibus,
@@ -81,7 +82,7 @@ onConnected (GfIBusManager *manager)
 }
 
 static void
-onDisconnected (GfIBusManager *manager)
+onDisconnected (IBusBus *ibus, GfIBusManager *manager)
 {
     if (manager->panelService) {
         g_object_unref (manager->panelService);
@@ -96,7 +97,7 @@ onDisconnected (GfIBusManager *manager)
     manager->registerPropertiesSignalId = 0;
     manager->currentEngineName = NULL;
 
-    g_signal_emit (manager, gf_ibus_manager_signals[GF_IBUS_MANAGER_READY], 0);
+    g_signal_emit (manager, gf_ibus_manager_signals[GF_IBUS_MANAGER_READY], 0, FALSE);
 
     spawn ();
 }
@@ -134,7 +135,7 @@ static void
 updateReadiness (GfIBusManager *manager)
 {
     manager->ready = g_hash_table_size (manager->engines) > 0 && manager->panelService != NULL;
-    g_signal_emit (manager, gf_ibus_manager_signals[GF_IBUS_MANAGER_READY], 0);
+    g_signal_emit (manager, gf_ibus_manager_signals[GF_IBUS_MANAGER_READY], 0, manager->ready);
 }
 
 static void
@@ -153,7 +154,7 @@ initEngines (IBusBus *ibus, GAsyncResult *result, GfIBusManager *manager)
         g_list_foreach (engineList, (GFunc) add_to_engines, manager);
         updateReadiness (manager);
     } else {
-        onDisconnected (manager);
+        onDisconnected (manager->ibus, manager);
     }
 }
 
@@ -172,7 +173,7 @@ get_global_engine_callback (IBusBus *ibus, guint i, GAsyncResult *result, GfIBus
         g_log ("gnome-flashback", G_LOG_LEVEL_ERROR,
                _("Could not get result for 'ibus_bus_get_global_async': %s"),
                error->message);
-        onDisconnected (manager);
+        onDisconnected (manager->ibus, manager);
         g_free (error);
     }
 
@@ -204,7 +205,7 @@ initPanelService (IBusBus *ibus, GAsyncResult *result, GfIBusManager *manager)
     if (error) {
         g_log ("gnome-flashback", G_LOG_LEVEL_ERROR,
                _("Could not get result for 'ibus_bus_request_name_async': %s"), error->message);
-        onDisconnected (manager);
+        onDisconnected (manager->ibus, manager);
         g_free (error);
     }
 
@@ -221,7 +222,7 @@ initPanelService (IBusBus *ibus, GAsyncResult *result, GfIBusManager *manager)
         ibus_bus_get_global_engine_async (manager->ibus, -1, NULL, (GAsyncReadyCallback) 
get_global_engine_callback, manager);
         updateReadiness (manager);
     } else {
-        onDisconnected (manager);
+        onDisconnected (manager->ibus, manager);
     }
 }
 
@@ -235,7 +236,7 @@ static void
 spawn (void)
 {
     // start a new subprocess for ibus-daemon
-    const char const *argv[] = {"ibus-daemon", "--xim", "--panel", "disabled"};
+    const char const *argv[] = {"ibus-daemon", "--xim", "--replace", "--panel", "disabled"};
     GError *error = NULL;
     g_subprocess_newv (argv, G_SUBPROCESS_FLAGS_NONE, &error);
     if (error) {
diff --git a/gnome-flashback/libinput-sources/gf-ibus-manager.h 
b/gnome-flashback/libinput-sources/gf-ibus-manager.h
index 5edcea4..e79bf24 100644
--- a/gnome-flashback/libinput-sources/gf-ibus-manager.h
+++ b/gnome-flashback/libinput-sources/gf-ibus-manager.h
@@ -22,7 +22,7 @@
 #include <glib-object.h>
 #include <ibus-1.0/ibus.h>
 
-#define GF_TYPE_IBUS_MANAGER gf_input_sources_get_type ()
+#define GF_TYPE_IBUS_MANAGER gf_ibus_manager_get_type ()
 G_DECLARE_FINAL_TYPE (GfIBusManager, gf_ibus_manager, GF, IBUS_MANAGER, GObject)
 
 GfIBusManager *gf_ibus_manager_new (void);
diff --git a/gnome-flashback/libinput-sources/gf-input-sources.c 
b/gnome-flashback/libinput-sources/gf-input-sources.c
index a0ecfd4..6926ffe 100644
--- a/gnome-flashback/libinput-sources/gf-input-sources.c
+++ b/gnome-flashback/libinput-sources/gf-input-sources.c
@@ -34,7 +34,7 @@ ready_callback (GfIBusManager *manager,
                 gboolean ready,
                 gpointer user_data)
 {
-
+    g_warning ("ready_callback: %s", ready ? "true" : "false");
 }
 
 static void
@@ -43,7 +43,7 @@ properties_registered (GfIBusManager *manager,
                        IBusPropList *propertyList,
                        gpointer user_data)
 {
-
+    g_warning ("properties_registered");
 }
 
 static void
@@ -52,7 +52,7 @@ property_updated (GfIBusManager *manager,
                   IBusProperty *property,
                   gpointer user_data)
 {
-
+    g_warning ("property_updated");
 }
 
 static void
@@ -61,7 +61,7 @@ set_content_type (GfIBusManager *manager,
                   guint hint,
                   gpointer user_data)
 {
-
+    g_warning ("set_content_type");
 }
 
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]