summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLI Daobing <lidaobing@gmail.com>2011-10-01 20:41:09 +0800
committerLI Daobing <lidaobing@gmail.com>2011-10-01 20:41:09 +0800
commit158f7b62afb1e7447225d0ce1e8d30dc2f6992b9 (patch)
tree9bcdc789927b1d5ab46fb2d064477bceeaa4578f /src
parent8eab1951dec1d03e7ef12690388359d1e3e5f445 (diff)
downloadibus-hangul-158f7b62afb1e7447225d0ce1e8d30dc2f6992b9.tar.gz
port to ibus 1.4
fix #1317: http://code.google.com/p/ibus/issues/detail?id=1317
Diffstat (limited to 'src')
-rw-r--r--src/engine.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/src/engine.c b/src/engine.c
index 84c55f4..9443b68 100644
--- a/src/engine.c
+++ b/src/engine.c
@@ -194,8 +194,7 @@ ibus_hangul_engine_get_type (void)
void
ibus_hangul_init (IBusBus *bus)
{
- gboolean res;
- GValue value = { 0, };
+ GVariant* value;
hanja_table = hanja_table_load (NULL);
@@ -206,22 +205,22 @@ ibus_hangul_init (IBusBus *bus)
g_object_ref_sink (config);
hangul_keyboard = g_string_new_len ("2", 8);
- res = ibus_config_get_value (config, "engine/Hangul",
- "HangulKeyboard", &value);
- if (res) {
- const gchar* str = g_value_get_string (&value);
+ value = ibus_config_get_value (config, "engine/Hangul",
+ "HangulKeyboard");
+ if (value != NULL) {
+ const gchar* str = g_variant_get_string (value, NULL);
g_string_assign (hangul_keyboard, str);
- g_value_unset(&value);
+ g_variant_unref(value);
}
hanja_key_list_init(&hanja_keys);
- res = ibus_config_get_value (config, "engine/Hangul",
- "HanjaKeys", &value);
- if (res) {
- const gchar* str = g_value_get_string (&value);
+ value = ibus_config_get_value (config, "engine/Hangul",
+ "HanjaKeys");
+ if (value != NULL) {
+ const gchar* str = g_variant_get_string (value, NULL);
hanja_key_list_set_from_string(&hanja_keys, str);
- g_value_unset(&value);
+ g_variant_unref(value);
} else {
hanja_key_list_append(&hanja_keys, IBUS_Hangul_Hanja, 0);
hanja_key_list_append(&hanja_keys, IBUS_F9, 0);