Author: yamakenz
Date: Sun Sep 16 01:36:12 2007
New Revision: 4967
Modified:
trunk/NEWS
trunk/fep/callbacks.c
Log:
* fep/callbacks.c
- (update_current_im_name): New static function copied from
configuration_changed_cb()
- (configuration_changed_cb): Replace with update_current_im_name()
invocation
- (prop_list_update_cb): Add update_current_im_name() invocation to
fix the unupdated IM-name of the status line on receiving
prop_list_update message. Thanks No.827,834 of [uim thread 7] for
the bug report
* NEWS
- Update
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Sun Sep 16 01:36:12 2007
@@ -13,6 +13,10 @@
- Fix fullwidth middle dot in halfwidth katakana table for
Japanese kana-keyboard
+ - uim-fep
+ - Fix the unupdated IM-name of the status line on IM-switching by
+ an external IM switcher
+
- uim-sh
- Fix infinite loop on a non-recoverable read error such as
non-ASCII char in token on a non-Unicode port
Modified: trunk/fep/callbacks.c
==============================================================================
--- trunk/fep/callbacks.c (original)
+++ trunk/fep/callbacks.c Sun Sep 16 01:36:12 2007
@@ -71,6 +71,7 @@
static char *s_nokori_str;
static int s_start_callbacks = FALSE;
+static void update_current_im_name(void);
static void configuration_changed_cb(void *ptr);
static void switch_app_global_im_cb(void *ptr, const char *name);
static void switch_system_global_im_cb(void *ptr, const char *name);
@@ -341,12 +342,17 @@
return str;
}
-static void configuration_changed_cb(void *ptr)
+static void update_current_im_name(void)
{
s_im_str = uim_get_current_im_name(g_context);
s_im_str = s_im_str != NULL ? s_im_str : "";
}
+static void configuration_changed_cb(void *ptr)
+{
+ update_current_im_name();
+}
+
static void switch_app_global_im_cb(void *ptr, const char *name)
{
}
@@ -651,6 +657,8 @@
} else {
free(labels);
}
+ /* To make IM-name part of the status line updated. */
+ update_current_im_name();
}
if (!g_focus_in) {