#include <vconf.h>
#include <Ecore.h>
#include <dlog.h>
+#include <locale.h>
#include "debug.h"
#include "util.h"
#include "notification_service.h"
#include "badge_service.h"
+static void lang_key_changed_cb(keynode_t *node EINA_UNUSED, void *first)
+{
+ char *lang;
+ char *r;
+
+ lang = vconf_get_str(VCONFKEY_LANGSET);
+ if (lang) {
+ setenv("LANG", lang, 1);
+ setenv("LC_MESSAGES", lang, 1);
+ r = setlocale(LC_ALL, "");
+ if (r == NULL) {
+ r = setlocale(LC_ALL, lang);
+ if (r != NULL)
+ DbgPrint("setlocale = %s", r);
+ }
+ DbgPrint("setlocale = %s", r);
+ free(lang);
+ }
+}
+
static inline int app_create(void)
{
int ret;
+ ret = vconf_notify_key_changed(VCONFKEY_LANGSET, lang_key_changed_cb, NULL);
+ if (ret < 0)
+ DbgPrint("VCONFKEY_LANGSET notify key chenaged: %d\n", ret);
+
+ lang_key_changed_cb(NULL, NULL);
+
ret = shortcut_service_init();
if (ret < 0)
DbgPrint("shortcut: %d\n", ret);
return ret;
}
- body = notification_ipc_make_gvariant_from_noti(noti);
+ body = notification_ipc_make_gvariant_from_noti(noti, true);
if (body == NULL) {
ErrPrint("cannot make gvariant to noti");
return NOTIFICATION_ERROR_OUT_OF_MEMORY;
if (ret != NOTIFICATION_ERROR_NONE)
return ret;
- body = notification_ipc_make_gvariant_from_noti(noti);
+ body = notification_ipc_make_gvariant_from_noti(noti, true);
if (body == NULL) {
ErrPrint("cannot make gvariant to noti");
return NOTIFICATION_ERROR_IO_ERROR;
DbgPrint("notification_noti_get_by_tag ret : %d", ret);
print_noti(noti);
- *reply_body = notification_ipc_make_gvariant_from_noti(noti);
+ *reply_body = notification_ipc_make_gvariant_from_noti(noti, true);
notification_free(noti);
if (*reply_body == NULL) {
DbgPrint("notification_noti_get_by_priv_id ret : %d", ret);
print_noti(noti);
- *reply_body = notification_ipc_make_gvariant_from_noti(noti);
+ *reply_body = notification_ipc_make_gvariant_from_noti(noti, true);
notification_free(noti);
if (*reply_body == NULL) {
list_iter = notification_list_get_head(get_list);
do {
noti = notification_list_get_data(list_iter);
- body = notification_ipc_make_gvariant_from_noti(noti);
+ body = notification_ipc_make_gvariant_from_noti(noti, true);
g_variant_builder_add(builder, "(v)", body);
list_iter = notification_list_get_next(list_iter);
list_iter = notification_list_get_head(get_list);
do {
noti = notification_list_get_data(list_iter);
- body = notification_ipc_make_gvariant_from_noti(noti);
+ body = notification_ipc_make_gvariant_from_noti(noti, true);
if (body) {
g_variant_builder_add(builder, "(v)", body);
list_iter = notification_list_get_next(list_iter);