Hello community,

here is the log from the commit of package fcitx-configtool for 
openSUSE:Factory checked in at 2013-01-29 12:08:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fcitx-configtool (Old)
 and      /work/SRC/openSUSE:Factory/.fcitx-configtool.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "fcitx-configtool", Maintainer is ""

Changes:
--------
--- /work/SRC/openSUSE:Factory/fcitx-configtool/fcitx-configtool.changes        
2013-01-14 09:38:19.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.fcitx-configtool.new/fcitx-configtool.changes   
2013-01-29 12:08:12.000000000 +0100
@@ -1,0 +2,6 @@
+Sat Jan 26 18:57:54 UTC 2013 - [email protected]
+
+- update version 0.4.6
+  * Add support for new custom configuration ui.
+
+-------------------------------------------------------------------

Old:
----
  fcitx-configtool-0.4.5.2.tar.bz2

New:
----
  fcitx-configtool-0.4.6.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ fcitx-configtool.spec ++++++
--- /var/tmp/diff_new_pack.BUhA7M/_old  2013-01-29 12:08:13.000000000 +0100
+++ /var/tmp/diff_new_pack.BUhA7M/_new  2013-01-29 12:08:13.000000000 +0100
@@ -23,7 +23,7 @@
 %endif
 
 Name:           fcitx-configtool
-Version:        0.4.5.2
+Version:        0.4.6
 Release:        0
 Summary:        GTK GUI config tool for FCITX
 License:        GPL-2.0+

++++++ fcitx-configtool-0.4.5.2.tar.bz2 -> fcitx-configtool-0.4.6.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/.gitignore 
new/fcitx-configtool-0.4.6/.gitignore
--- old/fcitx-configtool-0.4.5.2/.gitignore     2013-01-12 17:16:06.000000000 
+0100
+++ new/fcitx-configtool-0.4.6/.gitignore       2013-01-18 21:09:35.000000000 
+0100
@@ -1,20 +1,13 @@
 *~
-/build*/
+build*/
 .*
 !.git*
 .git/
-data/pinyin.tar.gz
-data/pinyin.tar.gz.md5
-data/table/table.tar.gz
-data/table/table.tar.gz.md5
+*.tar.*
 *.kdev4
-tools/pybase.mb
-tools/pyphrase.mb
-data/desc.po
-.kdev_include_paths
-.directory
 *.kate-swp
 *.orig
 tags
 astyle.sh
 cscope.*
+*.part
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/CMakeLists.txt 
new/fcitx-configtool-0.4.6/CMakeLists.txt
--- old/fcitx-configtool-0.4.5.2/CMakeLists.txt 2013-01-12 17:16:06.000000000 
+0100
+++ new/fcitx-configtool-0.4.6/CMakeLists.txt   2013-01-18 21:09:35.000000000 
+0100
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.6)
+cmake_minimum_required(VERSION 2.6)
 
 project(fcitx-configtool)
 
@@ -8,32 +8,19 @@
 find_package(PkgConfig REQUIRED)
 
 if(ENABLE_GTK3)
-  PKG_CHECK_MODULES(FCITX_GCLIENT "fcitx-gclient>=4.2.6" REQUIRED)
-  PKG_CHECK_MODULES(GTK3 "gtk+-3.0" REQUIRED)
-endif(ENABLE_GTK3)
-
-if (ENABLE_GTK2)
-PKG_CHECK_MODULES (GTK2 "gtk+-2.0>=2.22" REQUIRED)
-endif (ENABLE_GTK2)
+  pkg_check_modules(FCITX_GCLIENT "fcitx-gclient>=4.2.6" REQUIRED)
+  pkg_check_modules(GTK3 "gtk+-3.0" REQUIRED)
+endif()
+
+if(ENABLE_GTK2)
+  pkg_check_modules(GTK2 "gtk+-2.0>=2.22" REQUIRED)
+endif()
 
-PKG_CHECK_MODULES(ISO_CODES "iso-codes" REQUIRED)
+pkg_check_modules(ISO_CODES "iso-codes" REQUIRED)
 _pkgconfig_invoke("iso-codes" ISO_CODES PREFIX "" "--variable=prefix")
 
-# uninstall target
-configure_file(
-    "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
-    "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
-    IMMEDIATE @ONLY)
-
-add_custom_target(uninstall
-    COMMAND ${CMAKE_COMMAND} -P 
${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
-
-include(FindPkgConfig)
-FIND_PACKAGE(Gettext REQUIRED)
-find_package(Fcitx 4.2.6 REQUIRED)
-FIND_PROGRAM(INTLTOOL_EXTRACT intltool-extract)
-FIND_PROGRAM(INTLTOOL_UPDATE intltool-update)
-FIND_PROGRAM(INTLTOOL_MERGE intltool-merge)
+find_package(Fcitx 4.2.7 REQUIRED)
+_fcitx_add_uninstall_target()
 add_definitions("-D_GNU_SOURCE")
 set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter 
-fvisibility=hidden ${CMAKE_C_FLAGS}")
 set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter 
-fvisibility=hidden ${CMAKE_CXX_FLAGS}")
@@ -52,11 +39,6 @@
 configure_file(config.h.in config.h)
 include_directories(${CMAKE_CURRENT_BINARY_DIR})
 
-if(ENABLE_GTK3)
-  add_subdirectory(gtk3)
-endif(ENABLE_GTK3)
-
-if (ENABLE_GTK2)
-    add_subdirectory(gtk)
-endif (ENABLE_GTK2)
 add_subdirectory(po)
+add_subdirectory(gtk3)
+add_subdirectory(gtk)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/fcitx-configtool-0.4.5.2/cmake/cmake_uninstall.cmake.in 
new/fcitx-configtool-0.4.6/cmake/cmake_uninstall.cmake.in
--- old/fcitx-configtool-0.4.5.2/cmake/cmake_uninstall.cmake.in 2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/cmake/cmake_uninstall.cmake.in   1970-01-01 
01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-if (NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-    message(FATAL_ERROR "Cannot find install manifest: 
\"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
-endif(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-
-file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
-string(REGEX REPLACE "\n" ";" files "${files}")
-foreach (file ${files})
-    message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
-    if (EXISTS "$ENV{DESTDIR}${file}" OR IS_SYMLINK "$ENV{DESTDIR}${file}")
-        execute_process(
-            COMMAND @CMAKE_COMMAND@ -E remove "$ENV{DESTDIR}${file}"
-            OUTPUT_VARIABLE rm_out
-            RESULT_VARIABLE rm_retval
-        )
-        if(NOT ${rm_retval} EQUAL 0)
-            message(FATAL_ERROR "Problem when removing 
\"$ENV{DESTDIR}${file}\"")
-        endif (NOT ${rm_retval} EQUAL 0)
-    else (EXISTS "$ENV{DESTDIR}${file}" OR IS_SYMLINK "$ENV{DESTDIR}${file}")
-        message(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
-    endif (EXISTS "$ENV{DESTDIR}${file}" OR IS_SYMLINK "$ENV{DESTDIR}${file}")
-endforeach(file)
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk/CMakeLists.txt 
new/fcitx-configtool-0.4.6/gtk/CMakeLists.txt
--- old/fcitx-configtool-0.4.5.2/gtk/CMakeLists.txt     2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk/CMakeLists.txt       2013-01-18 
21:09:35.000000000 +0100
@@ -1,56 +1,76 @@
+set(fcitx_config_gtk_sources
+  sub_config_parser.c
+  sub_config_widget.c
+  config_widget.c
+  configdesc.c
+  keygrab.c
+  main.c
+  main_window.c
+  im_widget.c
+  im.c
+  gdm-languages.c
+  )
+set(fcitx_config_gtk_headers
+  common.h
+  configdesc.h
+  config_widget.h
+  gdm-languages.h
+  im.h
+  im_widget.h
+  keygrab.h
+  locarchive.h
+  main_window.h
+  sub_config_parser.h
+  sub_config_widget.h
+  )
+
+fcitx_translate_add_sources(${fcitx_config_gtk_sources}
+  ${fcitx_config_gtk_headers})
+
+if(NOT ENABLE_GTK2)
+  return()
+endif()
+
 PKG_CHECK_MODULES (DBUS_GLIB "dbus-glib-1" REQUIRED)
 PKG_CHECK_MODULES (UNIQUE "unique-1.0")
 
 include_directories (
-    ${GTK2_INCLUDE_DIRS}
-    ${GLIB2_INCLUDE_DIRS}
-    ${GIO2_INCLUDE_DIRS}
-    ${FCITX4_FCITX_INCLUDE_DIRS}
-    ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
-    ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
-    ${DBUS_GLIB_INCLUDE_DIRS}
-)
+  ${GTK2_INCLUDE_DIRS}
+  ${GLIB2_INCLUDE_DIRS}
+  ${GIO2_INCLUDE_DIRS}
+  ${FCITX4_FCITX_INCLUDE_DIRS}
+  ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
+  ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
+  ${DBUS_GLIB_INCLUDE_DIRS}
+  )
 
 link_directories (
-    ${GTK2_LIBRARY_DIRS}
-    ${GLIB2_LIBRARY_DIRS}
-    ${GIO2_LIBRARY_DIRS}
-    ${FCITX4_FCITX_LIBRARY_DIRS}
-    ${FCITX4_FCITX_UTILS_LIBRARY_DIRS}
-    ${FCITX4_FCITX_CONFIG_LIBRARY_DIRS}
-    ${DBUS_GLIB_LIBRARY_DIRS}
-)
-if (UNIQUE_FOUND)
-    include_directories (${UNIQUE_INCLUDE_DIRS})
-    link_directories (${UNIQUE_LIBRARY_DIRS})
-endif (UNIQUE_FOUND)
-
-set( fcitx_config_gtk_sources
-    sub_config_parser.c
-    sub_config_widget.c
-    config_widget.c
-    configdesc.c
-    keygrab.c
-    main.c
-    main_window.c
-    im_widget.c
-    im.c
-    gdm-languages.c
-)
+  ${GTK2_LIBRARY_DIRS}
+  ${GLIB2_LIBRARY_DIRS}
+  ${GIO2_LIBRARY_DIRS}
+  ${FCITX4_FCITX_LIBRARY_DIRS}
+  ${FCITX4_FCITX_UTILS_LIBRARY_DIRS}
+  ${FCITX4_FCITX_CONFIG_LIBRARY_DIRS}
+  ${DBUS_GLIB_LIBRARY_DIRS}
+  )
+if(UNIQUE_FOUND)
+  include_directories (${UNIQUE_INCLUDE_DIRS})
+  link_directories (${UNIQUE_LIBRARY_DIRS})
+endif()
 
-add_executable( fcitx-config-gtk ${fcitx_config_gtk_sources} )
+add_executable(fcitx-config-gtk ${fcitx_config_gtk_sources})
 
 install(TARGETS fcitx-config-gtk RUNTIME DESTINATION bin)
 
 target_link_libraries (fcitx-config-gtk
-                       ${GTK2_LIBRARIES}
-                       ${FCITX4_FCITX_UTILS_LIBRARIES}
-                       ${FCITX4_FCITX_CONFIG_LIBRARIES}
-                       ${FCITX4_FCITX_LIBRARIES}
-                       ${GLIB2_LIBRARIES}
-                       ${DBUS_GLIB_LIBRARIES}
-)
-
-if (UNIQUE_FOUND)
-    target_link_libraries (fcitx-config-gtk ${UNIQUE_LIBRARIES})
-endif (UNIQUE_FOUND)
+  ${GTK2_LIBRARIES}
+  ${FCITX4_FCITX_UTILS_LIBRARIES}
+  ${FCITX4_FCITX_CONFIG_LIBRARIES}
+  ${FCITX4_FCITX_LIBRARIES}
+  ${GLIB2_LIBRARIES}
+  ${DBUS_GLIB_LIBRARIES}
+  )
+
+if(UNIQUE_FOUND)
+  target_link_libraries (fcitx-config-gtk ${UNIQUE_LIBRARIES})
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk/main_window.c 
new/fcitx-configtool-0.4.6/gtk/main_window.c
--- old/fcitx-configtool-0.4.5.2/gtk/main_window.c      2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk/main_window.c        2013-01-18 
21:09:35.000000000 +0100
@@ -62,6 +62,11 @@
 
 static void _fcitx_main_window_addon_selection_changed(GtkTreeSelection 
*selection, gpointer data);
 
+static void _fcitx_main_window_addon_row_activated(GtkTreeView       
*tree_view,
+                                                   GtkTreePath       *path,
+                                                   GtkTreeViewColumn *column,
+                                                   gpointer           
user_data);
+
 static void _fcitx_main_window_configure_button_clicked(GtkButton *button, 
gpointer data);
 
 static void _fcitx_main_window_enabled_data_func(GtkCellLayout   *cell_layout,
@@ -243,6 +248,23 @@
     }
 }
 
+void _fcitx_main_window_addon_row_activated(GtkTreeView* tree_view, 
GtkTreePath* path, GtkTreeViewColumn* column, gpointer user_data)
+{
+    GtkTreeModel *model = gtk_tree_view_get_model(tree_view);
+    GtkTreeIter iter;
+    FcitxAddon *addon = NULL;
+    if (gtk_tree_model_get_iter(model, &iter, path)) {
+        gtk_tree_model_get(model, &iter,
+                           LIST_ADDON, &addon,
+                           -1);
+
+        GtkWidget* dialog = fcitx_config_dialog_new(addon, 
GTK_WINDOW(user_data));
+        if (dialog)
+            gtk_widget_show_all(GTK_WIDGET(dialog));
+    }
+}
+
+
 static GtkListStore *_fcitx_main_window_create_model()
 {
     GtkListStore* store = gtk_list_store_new(PAGE_N_COLUMNS, G_TYPE_STRING, 
G_TYPE_POINTER, GDK_TYPE_PIXBUF);
@@ -346,6 +368,10 @@
     g_signal_connect(G_OBJECT(selection), "changed",
                      G_CALLBACK(_fcitx_main_window_addon_selection_changed), 
self);
 
+    g_signal_connect(G_OBJECT(self->addonview),
+                     "row-activated",
+                     G_CALLBACK(_fcitx_main_window_addon_row_activated), self);
+
     self->addonpage = _fcitx_main_window_add_page(self, _("Addon"), vbox, 
GTK_STOCK_ADD);
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/CMakeLists.txt 
new/fcitx-configtool-0.4.6/gtk3/CMakeLists.txt
--- old/fcitx-configtool-0.4.5.2/gtk3/CMakeLists.txt    2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk3/CMakeLists.txt      2013-01-18 
21:09:35.000000000 +0100
@@ -1,52 +1,73 @@
+set(fcitx_config_gtk3_sources
+  sub_config_parser.c
+  sub_config_widget.c
+  config_widget.c
+  configdesc.c
+  keygrab.c
+  main.c
+  main_window.c
+  im_widget.c
+  ui_widget.c
+  gdm-languages.c
+  im_dialog.c
+  common.c
+  im_config_dialog.c
+  dummy_config.c
+  )
+set(fcitx_config_gtk3_headers
+  common.h
+  configdesc.h
+  config_widget.h
+  dummy_config.h
+  gdm-languages.h
+  im_config_dialog.h
+  im_dialog.h
+  ui_widget.h
+  im_widget.h
+  keygrab.h
+  locarchive.h
+  main_window.h
+  sub_config_parser.h
+  sub_config_widget.h
+  )
+
+fcitx_translate_add_sources(${fcitx_config_gtk3_sources}
+  ${fcitx_config_gtk3_headers})
+
+if(NOT ENABLE_GTK3)
+  return()
+endif()
 
 include_directories (
-    ${GTK3_INCLUDE_DIRS}
-    ${GLIB2_INCLUDE_DIRS}
-    ${GIO2_INCLUDE_DIRS}
-    ${FCITX4_FCITX_INCLUDE_DIRS}
-    ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
-    ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
-    ${FCITX_GCLIENT_INCLUDE_DIRS}
-)
+  ${GTK3_INCLUDE_DIRS}
+  ${GLIB2_INCLUDE_DIRS}
+  ${GIO2_INCLUDE_DIRS}
+  ${FCITX4_FCITX_INCLUDE_DIRS}
+  ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
+  ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
+  ${FCITX_GCLIENT_INCLUDE_DIRS}
+  )
 
 link_directories (
-    ${GTK3_LIBRARY_DIRS}
-    ${GLIB2_LIBRARY_DIRS}
-    ${GIO2_LIBRARY_DIRS}
-    ${FCITX4_FCITX_LIBRARY_DIRS}
-    ${FCITX4_FCITX_UTILS_LIBRARY_DIRS}
-    ${FCITX4_FCITX_CONFIG_LIBRARY_DIRS}
-    ${FCITX_GCLIENT_LIBRARY_DIRS}
-)
-
-set( fcitx_config_gtk3_sources
-    sub_config_parser.c
-    sub_config_widget.c
-    config_widget.c
-    configdesc.c
-    keygrab.c
-    main.c
-    main_window.c
-    im_widget.c
-    ui_widget.c
-    gdm-languages.c
-    im_dialog.c
-    common.c
-    im_config_dialog.c
-    dummy_config.c
-)
+  ${GTK3_LIBRARY_DIRS}
+  ${GLIB2_LIBRARY_DIRS}
+  ${GIO2_LIBRARY_DIRS}
+  ${FCITX4_FCITX_LIBRARY_DIRS}
+  ${FCITX4_FCITX_UTILS_LIBRARY_DIRS}
+  ${FCITX4_FCITX_CONFIG_LIBRARY_DIRS}
+  ${FCITX_GCLIENT_LIBRARY_DIRS}
+  )
 
-add_executable( fcitx-config-gtk3 ${fcitx_config_gtk3_sources} )
+add_executable(fcitx-config-gtk3 ${fcitx_config_gtk3_sources})
 
 install(TARGETS fcitx-config-gtk3 RUNTIME DESTINATION bin)
 
 target_link_libraries (fcitx-config-gtk3
-                       ${GTK3_LIBRARIES}
-                       ${FCITX4_FCITX_UTILS_LIBRARIES}
-                       ${FCITX4_FCITX_CONFIG_LIBRARIES}
-                       ${FCITX4_FCITX_LIBRARIES}
-                       ${GLIB2_LIBRARIES}
-                       ${GIO2_LIBRARIES}
-                       ${FCITX_GCLIENT_LIBRARIES}
-)
-
+  ${GTK3_LIBRARIES}
+  ${FCITX4_FCITX_UTILS_LIBRARIES}
+  ${FCITX4_FCITX_CONFIG_LIBRARIES}
+  ${FCITX4_FCITX_LIBRARIES}
+  ${GLIB2_LIBRARIES}
+  ${GIO2_LIBRARIES}
+  ${FCITX_GCLIENT_LIBRARIES}
+  )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/im_config_dialog.c 
new/fcitx-configtool-0.4.6/gtk3/im_config_dialog.c
--- old/fcitx-configtool-0.4.5.2/gtk3/im_config_dialog.c        2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk3/im_config_dialog.c  2013-01-18 
21:09:35.000000000 +0100
@@ -189,14 +189,13 @@
         else
             gtk_combo_box_set_active_iter(GTK_COMBO_BOX(combobox), &iter);
 
-        if (configurable || !addon) {
-            gchar* markup = g_strdup_printf("<b>%s</b>", addon ? _("Keyboard 
layout:") : _("Keyboard layout to use when no input method active:"));
-            GtkWidget* label = gtk_label_new(NULL);
-            gtk_label_set_markup(GTK_LABEL(label), markup);
-            g_free(markup);
-            g_object_set(label, "xalign", 0.0f, NULL);
-            gtk_box_pack_start(GTK_BOX(content_area), label, TRUE, TRUE, 5);
-        }
+        gchar* markup = g_strdup_printf("<b>%s</b>", addon ? _("Keyboard 
layout:") : _("Keyboard layout to use when no input window:"));
+        GtkWidget* label = gtk_label_new(NULL);
+        gtk_label_set_markup(GTK_LABEL(label), markup);
+        g_free(markup);
+        g_object_set(label, "xalign", 0.0f, NULL);
+        gtk_box_pack_start(GTK_BOX(content_area), label, TRUE, TRUE, 5);
+
         gtk_box_pack_start(GTK_BOX(content_area), combobox, FALSE, TRUE, 5);
         self->combobox = combobox;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/im_widget.c 
new/fcitx-configtool-0.4.6/gtk3/im_widget.c
--- old/fcitx-configtool-0.4.5.2/gtk3/im_widget.c       2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk3/im_widget.c 2013-01-18 21:09:35.000000000 
+0100
@@ -63,6 +63,11 @@
 static void _fcitx_im_widget_default_layout_button_clicked(GtkButton* button, 
gpointer user_data);
 static void _fcitx_im_widget_imlist_changed_cb(FcitxInputMethod* im, gpointer 
user_data);
 
+static void _fcitx_im_widget_row_activated(GtkTreeView       *tree_view,
+                                           GtkTreePath       *path,
+                                           GtkTreeViewColumn *column,
+                                           gpointer           user_data);
+
 static void
 fcitx_im_widget_class_init(FcitxImWidgetClass *klass)
 {
@@ -199,6 +204,7 @@
     g_signal_connect(G_OBJECT(self->movedownbutton), "clicked", 
G_CALLBACK(_fcitx_im_widget_movedown_button_clicked), self);
     g_signal_connect(G_OBJECT(self->configurebutton), "clicked", 
G_CALLBACK(_fcitx_im_widget_configure_button_clicked), self);
     g_signal_connect(G_OBJECT(self->default_layout_button), "clicked", 
G_CALLBACK(_fcitx_im_widget_default_layout_button_clicked), self);
+    g_signal_connect(G_OBJECT(self->imview), "row-activated", 
G_CALLBACK(_fcitx_im_widget_row_activated), self);
 
 
     _fcitx_im_widget_connect(self);
@@ -460,6 +466,25 @@
     } while(0);
 }
 
+static void _fcitx_im_widget_configure_im(FcitxImWidget* self, FcitxIMItem* 
item)
+{
+    gchar* addon_name = fcitx_input_method_get_im_addon(self->improxy, 
item->unique_name);
+    FcitxMainWindow* mainwindow = FCITX_MAIN_WINDOW (gtk_widget_get_toplevel 
(GTK_WIDGET(self)));
+    do {
+        if (!mainwindow)
+            break;
+
+        FcitxAddon* addon = find_addon_by_name(mainwindow->addons, addon_name);
+        if (!addon)
+            break;
+
+        GtkWidget* dialog = fcitx_im_config_dialog_new(GTK_WINDOW(mainwindow), 
addon, item->unique_name);
+        if (dialog)
+            gtk_widget_show_all(GTK_WIDGET(dialog));
+    } while(0);
+    g_free(addon_name);
+}
+
 void _fcitx_im_widget_configure_button_clicked(GtkButton* button, gpointer 
user_data)
 {
     FcitxImWidget* self = user_data;
@@ -475,20 +500,20 @@
                            IM_LIST_IM, &item,
                            -1);
 
-        gchar* addon_name = fcitx_input_method_get_im_addon(self->improxy, 
item->unique_name);
-        FcitxMainWindow* mainwindow = FCITX_MAIN_WINDOW 
(gtk_widget_get_toplevel (GTK_WIDGET(self)));
-        do {
-            if (!mainwindow)
-                break;
+        _fcitx_im_widget_configure_im((FcitxImWidget*)user_data, item);
+    }
+}
 
-            FcitxAddon* addon = find_addon_by_name(mainwindow->addons, 
addon_name);
-            if (!addon)
-                break;
+void _fcitx_im_widget_row_activated(GtkTreeView* tree_view, GtkTreePath* path, 
GtkTreeViewColumn* column, gpointer user_data)
+{
+    GtkTreeModel *model = gtk_tree_view_get_model(tree_view);
+    GtkTreeIter iter;
+    if (gtk_tree_model_get_iter(model, &iter, path)) {
+        FcitxIMItem* item = NULL;
+        gtk_tree_model_get(model, &iter,
+                           IM_LIST_IM, &item,
+                           -1);
 
-            GtkWidget* dialog = 
fcitx_im_config_dialog_new(GTK_WINDOW(mainwindow), addon, item->unique_name);
-            if (dialog)
-                gtk_widget_show_all(GTK_WIDGET(dialog));
-        } while(0);
-        g_free(addon_name);
+        _fcitx_im_widget_configure_im((FcitxImWidget*)user_data, item);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/main.c 
new/fcitx-configtool-0.4.6/gtk3/main.c
--- old/fcitx-configtool-0.4.5.2/gtk3/main.c    2013-01-12 17:16:06.000000000 
+0100
+++ new/fcitx-configtool-0.4.6/gtk3/main.c      2013-01-18 21:09:35.000000000 
+0100
@@ -94,7 +94,9 @@
 FcitxConfigApp *
 fcitx_config_app_new (void)
 {
-    g_type_init ();
+#if !GLIB_CHECK_VERSION(2, 35, 1)
+    g_type_init();
+#endif
 
     FcitxConfigApp* app = g_object_new (fcitx_config_app_get_type (),
                          "application-id", "org.fcitx.FcitxConfigGtk3",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/main_window.c 
new/fcitx-configtool-0.4.6/gtk3/main_window.c
--- old/fcitx-configtool-0.4.5.2/gtk3/main_window.c     2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk3/main_window.c       2013-01-18 
21:09:35.000000000 +0100
@@ -54,6 +54,11 @@
 
 static void _fcitx_main_window_addon_selection_changed(GtkTreeSelection 
*selection, gpointer data);
 
+static void _fcitx_main_window_addon_row_activated(GtkTreeView       
*tree_view,
+                                                   GtkTreePath       *path,
+                                                   GtkTreeViewColumn *column,
+                                                   gpointer           
user_data);
+
 static void _fcitx_main_window_configure_button_clicked(GtkButton *button, 
gpointer data);
 
 static void _fcitx_main_window_enabled_data_func(GtkCellLayout   *cell_layout,
@@ -157,6 +162,23 @@
     }
 }
 
+void _fcitx_main_window_addon_row_activated(GtkTreeView* tree_view, 
GtkTreePath* path, GtkTreeViewColumn* column, gpointer user_data)
+{
+    GtkTreeModel *model = gtk_tree_view_get_model(tree_view);
+    GtkTreeIter iter;
+    FcitxAddon *addon = NULL;
+    if (gtk_tree_model_get_iter(model, &iter, path)) {
+        gtk_tree_model_get(model, &iter,
+                           LIST_ADDON, &addon,
+                           -1);
+
+        GtkWidget* dialog = fcitx_config_dialog_new(addon, 
GTK_WINDOW(user_data));
+        if (dialog)
+            gtk_widget_show_all(GTK_WIDGET(dialog));
+    }
+}
+
+
 void _fcitx_main_window_add_config_file_page(FcitxMainWindow* self)
 {
     GtkWidget* vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
@@ -347,6 +369,10 @@
     g_signal_connect(G_OBJECT(self->filterentry), "changed", 
G_CALLBACK(_fcitx_main_window_filtertext_changed), self);
     gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(self->filtermodel));
 
+    g_signal_connect(G_OBJECT(self->addonview),
+                     "row-activated",
+                     G_CALLBACK(_fcitx_main_window_addon_row_activated), self);
+
     _fcitx_main_window_add_page(self, _("Addon"), vbox, GTK_STOCK_ADD);
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/gtk3/sub_config_widget.c 
new/fcitx-configtool-0.4.6/gtk3/sub_config_widget.c
--- old/fcitx-configtool-0.4.5.2/gtk3/sub_config_widget.c       2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/gtk3/sub_config_widget.c 2013-01-18 
21:09:35.000000000 +0100
@@ -182,6 +182,31 @@
 {
     FcitxSubConfigWidget* widget = (FcitxSubConfigWidget*) user_data;
     char *newpath = NULL;
+    char* qtguiwrapper = g_find_program_in_path ("fcitx-qt-gui-wrapper");
+    if (qtguiwrapper) {
+        gchar* argv[4];
+        argv[0] = qtguiwrapper;
+        argv[1] = "--test";
+        argv[2] = widget->subconfig->nativepath;
+        argv[3] = 0;
+        int exit_status = 1;
+        g_spawn_sync(NULL, argv, NULL, 0, NULL, NULL, NULL, NULL, 
&exit_status, NULL);
+
+        if (exit_status == 0) {
+            gchar* argv2[3];
+            argv2[0] = qtguiwrapper;
+            argv2[1] = widget->subconfig->nativepath;
+            argv2[2] = 0;
+            g_spawn_async(NULL, argv2, NULL, 0, NULL, NULL, NULL, NULL);
+            free(newpath);
+        }
+        g_free(qtguiwrapper);
+
+        if (exit_status == 0) {
+            return;
+        }
+    }
+
     if (g_hash_table_size(widget->subconfig->filelist) > 0) {
         GHashTableIter iter;
         g_hash_table_iter_init(&iter, widget->subconfig->filelist);
@@ -200,13 +225,12 @@
     }
 
     if (newpath) {
-        GError* error;
         gchar* filename = newpath;
         gchar* argv[3];
         argv[0] = "xdg-open";
         argv[1] = filename;
         argv[2] = 0;
-        g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, 
&error);
+        g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, 
NULL);
         free(newpath);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/po/CMakeLists.txt 
new/fcitx-configtool-0.4.6/po/CMakeLists.txt
--- old/fcitx-configtool-0.4.5.2/po/CMakeLists.txt      2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/po/CMakeLists.txt        2013-01-18 
21:09:35.000000000 +0100
@@ -1,19 +1,5 @@
-file(GLOB PO_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po)
-file(RELATIVE_PATH REL_SOURCE_ROOT ${PROJECT_BINARY_DIR} ${PROJECT_SOURCE_DIR})
-if ("${REL_SOURCE_ROOT}" STREQUAL "")
-    set(REL_SOURCE_ROOT ".")
-endif("${REL_SOURCE_ROOT}" STREQUAL "")
-
-set(POT_FILE fcitx-configtool.pot)
-
-configure_file(POTFILES.in.in ${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in)
-
-add_custom_target(
-    pot
-    COMMAND INTLTOOL_EXTRACT=${INTLTOOL_EXTRACT} 
srcdir=${CMAKE_CURRENT_BINARY_DIR} ${INTLTOOL_UPDATE} --gettext-package 
fcitx-configtool --pot
-    WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-    )
-
-# Update .po files and compile them to binary .gmo files
-gettext_create_translations(${POT_FILE} ALL ${PO_FILES})
-
+set(PO_LANGS zh_CN zh_TW)
+foreach(lang ${PO_LANGS})
+  fcitx_translate_add_po_file("${lang}" "${lang}.po")
+endforeach()
+fcitx_translate_set_pot_target(pot fcitx-configtool fcitx-configtool.pot)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/po/POTFILES.in.in 
new/fcitx-configtool-0.4.6/po/POTFILES.in.in
--- old/fcitx-configtool-0.4.5.2/po/POTFILES.in.in      2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/po/POTFILES.in.in        1970-01-01 
01:00:00.000000000 +0100
@@ -1,41 +0,0 @@
-${REL_SOURCE_ROOT}/gtk/common.h
-${REL_SOURCE_ROOT}/gtk/configdesc.c
-${REL_SOURCE_ROOT}/gtk/configdesc.h
-${REL_SOURCE_ROOT}/gtk/config_widget.c
-${REL_SOURCE_ROOT}/gtk/config_widget.h
-${REL_SOURCE_ROOT}/gtk/im.c
-${REL_SOURCE_ROOT}/gtk/im.h
-${REL_SOURCE_ROOT}/gtk/im_widget.c
-${REL_SOURCE_ROOT}/gtk/im_widget.h
-${REL_SOURCE_ROOT}/gtk/keygrab.c
-${REL_SOURCE_ROOT}/gtk/keygrab.h
-${REL_SOURCE_ROOT}/gtk/main.c
-${REL_SOURCE_ROOT}/gtk/main_window.c
-${REL_SOURCE_ROOT}/gtk/main_window.h
-${REL_SOURCE_ROOT}/gtk/sub_config_parser.c
-${REL_SOURCE_ROOT}/gtk/sub_config_parser.h
-${REL_SOURCE_ROOT}/gtk/sub_config_widget.c
-${REL_SOURCE_ROOT}/gtk/sub_config_widget.h
-${REL_SOURCE_ROOT}/gtk3/common.c
-${REL_SOURCE_ROOT}/gtk3/common.h
-${REL_SOURCE_ROOT}/gtk3/configdesc.c
-${REL_SOURCE_ROOT}/gtk3/configdesc.h
-${REL_SOURCE_ROOT}/gtk3/config_widget.c
-${REL_SOURCE_ROOT}/gtk3/config_widget.h
-${REL_SOURCE_ROOT}/gtk3/im_config_dialog.c
-${REL_SOURCE_ROOT}/gtk3/im_config_dialog.h
-${REL_SOURCE_ROOT}/gtk3/im_dialog.c
-${REL_SOURCE_ROOT}/gtk3/im_dialog.h
-${REL_SOURCE_ROOT}/gtk3/ui_widget.c
-${REL_SOURCE_ROOT}/gtk3/ui_widget.h
-${REL_SOURCE_ROOT}/gtk3/im_widget.c
-${REL_SOURCE_ROOT}/gtk3/im_widget.h
-${REL_SOURCE_ROOT}/gtk3/keygrab.c
-${REL_SOURCE_ROOT}/gtk3/keygrab.h
-${REL_SOURCE_ROOT}/gtk3/main.c
-${REL_SOURCE_ROOT}/gtk3/main_window.c
-${REL_SOURCE_ROOT}/gtk3/main_window.h
-${REL_SOURCE_ROOT}/gtk3/sub_config_parser.c
-${REL_SOURCE_ROOT}/gtk3/sub_config_parser.h
-${REL_SOURCE_ROOT}/gtk3/sub_config_widget.c
-${REL_SOURCE_ROOT}/gtk3/sub_config_widget.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/po/fcitx-configtool.pot 
new/fcitx-configtool-0.4.6/po/fcitx-configtool.pot
--- old/fcitx-configtool-0.4.5.2/po/fcitx-configtool.pot        2013-01-12 
17:16:06.000000000 +0100
+++ new/fcitx-configtool-0.4.6/po/fcitx-configtool.pot  2013-01-18 
21:09:35.000000000 +0100
@@ -7,145 +7,132 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-29 12:07-0400\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2013-01-18 15:09-0500\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <[email protected]>\n"
-"Language: \n"
+"Language: LANG\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:192
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:206
+#: gtk3/config_widget.c:206 gtk/config_widget.c:192
 msgid "Clear font setting"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:270
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:478
+#: gtk3/config_widget.c:479 gtk/config_widget.c:270
 msgid "Other"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:92
-msgid "Available Input Method"
+#: gtk3/config_widget.c:564
+msgid "Show Advance Option"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:102
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:153
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:278
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:98
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:86
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:188
-msgid "Input Method"
+#: gtk3/gdm-languages.c:697 gtk/gdm-languages.c:697
+msgid "Unspecified"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:115
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:115
-msgid "Only Show Current Language"
+#: gtk3/im_config_dialog.c:132
+msgid "Default keyboard layout"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:146
-msgid "Current Input Method"
+#: gtk3/im_config_dialog.c:164
+msgid "Input Method Default"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:192
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:182
-msgid ""
-"The first input method will be inactive state. Usually you need to put "
-"<b>Keyboard</b> or <b>Keyboard - <i>layout name</i></b> in the first place."
+#: gtk3/im_config_dialog.c:164
+msgid "Default"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:306
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:308
-msgid "Unknown"
+#: gtk3/im_config_dialog.c:192
+msgid "Keyboard layout:"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:74
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:78
-msgid "Please press the new key combination"
+#: gtk3/im_config_dialog.c:192
+msgid "Keyboard layout to use when no input window:"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:138
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:64
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:159
-msgid "Empty"
+#: gtk3/im_config_dialog.c:209
+msgid "Input method settings:"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:144
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:104
-msgid "Fcitx Config"
+#: gtk3/im_dialog.c:64
+msgid "Add input method"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:272
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:182
-msgid "Global Config"
+#: gtk3/im_dialog.c:101 gtk3/im_widget.c:92 gtk3/main_window.c:210
+#: gtk/im_widget.c:102 gtk/im_widget.c:153 gtk/main_window.c:300
+msgid "Input Method"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:338
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:337
-msgid "Configure"
+#: gtk3/im_dialog.c:118 gtk/im_widget.c:115
+msgid "Only Show Current Language"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:349
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:350
-msgid "Addon"
+#: gtk3/im_dialog.c:128
+msgid "Search Input Method"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:561
-msgid "Show Advance Option"
+#: gtk3/im_widget.c:188 gtk/im_widget.c:192
+msgid ""
+"The first input method will be inactive state. Usually you need to put "
+"<b>Keyboard</b> or <b>Keyboard - <i>layout name</i></b> in the first place."
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:126
-msgid "Default keyboard layout"
+#: gtk3/keygrab.c:64 gtk3/keygrab.c:159 gtk/keygrab.c:138
+msgid "Empty"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
-msgid "Input Method Default"
+#: gtk3/keygrab.c:78 gtk/keygrab.c:74
+msgid "Please press the new key combination"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
-msgid "Default"
+#: gtk3/main_window.c:109 gtk/main_window.c:149
+msgid "Fcitx Config"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
-msgid "Keyboard layout:"
+#: gtk3/main_window.c:204 gtk/main_window.c:294
+msgid "Global Config"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
-msgid "Keyboard layout to use when no input method active:"
+#: gtk3/main_window.c:222
+msgid "Appearance"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:204
-msgid "Input method settings:"
+#: gtk3/main_window.c:284
+msgid "Advance"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:61
-msgid "Add input method"
+#: gtk3/main_window.c:295
+msgid "Search Addon"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:125
-msgid "Search Input Method"
+#: gtk3/main_window.c:359 gtk/main_window.c:360
+msgid "Configure"
+msgstr ""
+
+#: gtk3/main_window.c:376 gtk/main_window.c:375
+msgid "Addon"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:48
+#: gtk3/ui_widget.c:48
 msgid "Cannot load currently used user interface info"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:104
+#: gtk3/ui_widget.c:106
 #, c-format
 msgid "No configuration option for %s."
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:200
-msgid "Appearance"
+#: gtk/im_widget.c:92
+msgid "Available Input Method"
 msgstr ""
 
-#. advance check box
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:262
-msgid "Advance"
+#: gtk/im_widget.c:146
+msgid "Current Input Method"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:273
-msgid "Search Addon"
+#: gtk/im_widget.c:314 gtk/im_widget.c:316
+msgid "Unknown"
 msgstr ""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/po/zh_CN.po 
new/fcitx-configtool-0.4.6/po/zh_CN.po
--- old/fcitx-configtool-0.4.5.2/po/zh_CN.po    2013-01-12 17:16:06.000000000 
+0100
+++ new/fcitx-configtool-0.4.6/po/zh_CN.po      2013-01-18 21:09:35.000000000 
+0100
@@ -1,173 +1,141 @@
+# SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Translators:
-# Weng Xuetian <[email protected]>, 2010, 2011, 2012.
+# Weng Xuetian <[email protected]>, 2010-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: fcitx\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-29 12:07-0400\n"
-"PO-Revision-Date: 2012-09-29 12:08-0400\n"
-"Last-Translator: Weng Xuetian <[email protected]>\n"
-"Language-Team: Chinese Simplified <[email protected]>\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2013-01-18 15:09-0500\n"
+"PO-Revision-Date: 2013-01-18 19:53+0000\n"
+"Last-Translator: Xuetian Weng <[email protected]>\n"
+"Language-Team: Chinese (China) <[email protected]>\n"
 "Language: zh_CN\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"X-Generator: Lokalize 1.5\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:61
+#: gtk3/im_dialog.c:64
 msgid "Add input method"
 msgstr "添加输入法"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:349
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:350
+#: gtk3/main_window.c:376 gtk/main_window.c:375
 msgid "Addon"
 msgstr "附加组件"
 
-#. advance check box
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:262
+#: gtk3/main_window.c:284
 msgid "Advance"
 msgstr "高级"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:200
+#: gtk3/main_window.c:222
 msgid "Appearance"
 msgstr "外观"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:92
+#: gtk/im_widget.c:92
 msgid "Available Input Method"
 msgstr "可用的输入法"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:48
+#: gtk3/ui_widget.c:48
 msgid "Cannot load currently used user interface info"
 msgstr "无法加载当前用户界面信息"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:192
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:206
+#: gtk3/config_widget.c:206 gtk/config_widget.c:192
 msgid "Clear font setting"
 msgstr "清除字体设置"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:338
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:337
+#: gtk3/main_window.c:359 gtk/main_window.c:360
 msgid "Configure"
 msgstr "配置 "
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:146
+#: gtk/im_widget.c:146
 msgid "Current Input Method"
 msgstr "当前的输入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
+#: gtk3/im_config_dialog.c:164
 msgid "Default"
 msgstr "默认"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:126
+#: gtk3/im_config_dialog.c:132
 msgid "Default keyboard layout"
 msgstr "默认键盘布局"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:138
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:64
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:159
+#: gtk3/keygrab.c:64 gtk3/keygrab.c:159 gtk/keygrab.c:138
 msgid "Empty"
 msgstr "空"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:144
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:104
+#: gtk3/main_window.c:109 gtk/main_window.c:149
 msgid "Fcitx Config"
 msgstr "Fcitx配置"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:272
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:182
+#: gtk3/main_window.c:204 gtk/main_window.c:294
 msgid "Global Config"
 msgstr "全局配置"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:102
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:153
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:278
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:98
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:86
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:188
+#: gtk3/im_dialog.c:101 gtk3/im_widget.c:92 gtk3/main_window.c:210
+#: gtk/im_widget.c:102 gtk/im_widget.c:153 gtk/main_window.c:300
 msgid "Input Method"
 msgstr "输入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
+#: gtk3/im_config_dialog.c:164
 msgid "Input Method Default"
 msgstr "输入法默认"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:204
+#: gtk3/im_config_dialog.c:209
 msgid "Input method settings:"
 msgstr "输入法设置:"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
-msgid "Keyboard layout to use when no input method active:"
-msgstr "无输入法时的使用的键盘布局:"
+#: gtk3/im_config_dialog.c:192
+msgid "Keyboard layout to use when no input window:"
+msgstr "无输入窗口时的使用的键盘布局:"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
+#: gtk3/im_config_dialog.c:192
 msgid "Keyboard layout:"
 msgstr "键盘布局:"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:104
+#: gtk3/ui_widget.c:106
 #, c-format
 msgid "No configuration option for %s."
 msgstr "%s 无配置选项。"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:115
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:115
+#: gtk3/im_dialog.c:118 gtk/im_widget.c:115
 msgid "Only Show Current Language"
 msgstr "仅显示当前语言"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:270
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:478
+#: gtk3/config_widget.c:479 gtk/config_widget.c:270
 msgid "Other"
 msgstr "其他"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:74
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:78
+#: gtk3/keygrab.c:78 gtk/keygrab.c:74
 msgid "Please press the new key combination"
 msgstr "请按下新按键组合"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:273
+#: gtk3/main_window.c:295
 msgid "Search Addon"
 msgstr "搜索附加组件"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:125
+#: gtk3/im_dialog.c:128
 msgid "Search Input Method"
 msgstr "搜索输入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:561
+#: gtk3/config_widget.c:564
 msgid "Show Advance Option"
 msgstr "显示高级选项"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:192
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:182
+#: gtk3/im_widget.c:188 gtk/im_widget.c:192
 msgid ""
 "The first input method will be inactive state. Usually you need to put "
 "<b>Keyboard</b> or <b>Keyboard - <i>layout name</i></b> in the first place."
-msgstr "第一个输入法将作为非激活状态。通常您需要将<b>键盘</b>或<b>键盘 - <i>布局名称</i></b>放在第一个。"
+msgstr ""
+"第一个输入法将作为非激活状态。通常您需要将<b>键盘</b>或<b>键盘 - <i>布局名称"
+"</i></b>放在第一个。"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:306
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:308
+#: gtk/im_widget.c:314 gtk/im_widget.c:316
 msgid "Unknown"
 msgstr "未知"
 
-#~ msgid "<b>%s</b>"
-#~ msgstr "<b>%s</b>"
-
-#~ msgid "<b>Other</b>"
-#~ msgstr "<b>其它</b>"
-
-#~ msgid "Addon Configuration"
-#~ msgstr "附加组件配置"
-
-#~ msgid "Config"
-#~ msgstr "配置"
-
-#~ msgid "Disabled"
-#~ msgstr "禁用"
-
-#~ msgid "Input Method Configuration"
-#~ msgstr "输入法配置"
-
-#~ msgid "Multilingual"
-#~ msgstr "多语言"
+#: gtk3/gdm-languages.c:697 gtk/gdm-languages.c:697
+msgid "Unspecified"
+msgstr "未指定"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-configtool-0.4.5.2/po/zh_TW.po 
new/fcitx-configtool-0.4.6/po/zh_TW.po
--- old/fcitx-configtool-0.4.5.2/po/zh_TW.po    2013-01-12 17:16:06.000000000 
+0100
+++ new/fcitx-configtool-0.4.6/po/zh_TW.po      2013-01-18 21:09:35.000000000 
+0100
@@ -1,159 +1,143 @@
+# SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Translators:
+#   <[email protected]>, 2012.
 # Weng Xuetian <[email protected]>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: fcitx\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-29 12:07-0400\n"
-"PO-Revision-Date: 2012-09-29 12:18-0400\n"
-"Last-Translator: Weng Xuetian <[email protected]>\n"
-"Language-Team: Chinese Simplified <[email protected]>\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2013-01-18 15:09-0500\n"
+"PO-Revision-Date: 2012-12-09 08:44+0000\n"
+"Last-Translator: Hiunn_Hue <[email protected]>\n"
+"Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/fcitx/";
+"language/zh_TW/)\n"
 "Language: zh_TW\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"team/zh_TW/)\n"
-"Plural-Forms: nplurals=1; plural=0\n"
-"X-Generator: Lokalize 1.5\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:61
+#: gtk3/im_dialog.c:64
 msgid "Add input method"
-msgstr "添加輸入法"
+msgstr "新增輸入法"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:349
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:350
+#: gtk3/main_window.c:376 gtk/main_window.c:375
 msgid "Addon"
 msgstr "附加元件"
 
-#. advance check box
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:262
+#: gtk3/main_window.c:284
 msgid "Advance"
-msgstr "高級"
+msgstr "進階"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:200
+#: gtk3/main_window.c:222
 msgid "Appearance"
-msgstr "外观"
+msgstr "外觀"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:92
+#: gtk/im_widget.c:92
 msgid "Available Input Method"
-msgstr "可用輸入法"
+msgstr "可用的輸入法"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:48
+#: gtk3/ui_widget.c:48
 msgid "Cannot load currently used user interface info"
-msgstr "無法加載當前用戶界面信息"
+msgstr "無法載入目前使用者界面訊息"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:192
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:206
+#: gtk3/config_widget.c:206 gtk/config_widget.c:192
 msgid "Clear font setting"
 msgstr "清除字體設定"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:338
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:337
+#: gtk3/main_window.c:359 gtk/main_window.c:360
 msgid "Configure"
 msgstr "設定"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:146
+#: gtk/im_widget.c:146
 msgid "Current Input Method"
-msgstr "目前輸入法"
+msgstr "目前的輸入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
+#: gtk3/im_config_dialog.c:164
 msgid "Default"
 msgstr "預設"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:126
+#: gtk3/im_config_dialog.c:132
 msgid "Default keyboard layout"
-msgstr "預設鍵盤佈局"
+msgstr "預設鍵盤配置"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:138
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:64
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:159
+#: gtk3/keygrab.c:64 gtk3/keygrab.c:159 gtk/keygrab.c:138
 msgid "Empty"
 msgstr "空"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:144
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:104
+#: gtk3/main_window.c:109 gtk/main_window.c:149
 msgid "Fcitx Config"
 msgstr "Fcitx 設定"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:272
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:182
+#: gtk3/main_window.c:204 gtk/main_window.c:294
 msgid "Global Config"
-msgstr "全局設定"
+msgstr "全域設定"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:102
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:153
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/main_window.c:278
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:98
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:86
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:188
+#: gtk3/im_dialog.c:101 gtk3/im_widget.c:92 gtk3/main_window.c:210
+#: gtk/im_widget.c:102 gtk/im_widget.c:153 gtk/main_window.c:300
 msgid "Input Method"
 msgstr "輸入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:158
+#: gtk3/im_config_dialog.c:164
 msgid "Input Method Default"
 msgstr "輸入法預設"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:204
+#: gtk3/im_config_dialog.c:209
 msgid "Input method settings:"
 msgstr "輸入法設定:"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
-msgid "Keyboard layout to use when no input method active:"
-msgstr "無活動輸入法時使用的鍵盤佈局:"
+#: gtk3/im_config_dialog.c:192
+msgid "Keyboard layout to use when no input window:"
+msgstr ""
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_config_dialog.c:187
+#: gtk3/im_config_dialog.c:192
 msgid "Keyboard layout:"
-msgstr "鍵盤佈局:"
+msgstr "鍵盤配置:"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/ui_widget.c:104
+#: gtk3/ui_widget.c:106
 #, c-format
 msgid "No configuration option for %s."
 msgstr "%s 無設定選項。"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:115
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:115
+#: gtk3/im_dialog.c:118 gtk/im_widget.c:115
 msgid "Only Show Current Language"
-msgstr "僅顯示当前語言"
+msgstr "僅顯示目前的語言"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/config_widget.c:270
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:478
+#: gtk3/config_widget.c:479 gtk/config_widget.c:270
 msgid "Other"
 msgstr "其他"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/keygrab.c:74
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/keygrab.c:78
+#: gtk3/keygrab.c:78 gtk/keygrab.c:74
 msgid "Please press the new key combination"
 msgstr "請按下新按鍵組合"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/main_window.c:273
+#: gtk3/main_window.c:295
 msgid "Search Addon"
 msgstr "搜索附加元件"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_dialog.c:125
+#: gtk3/im_dialog.c:128
 msgid "Search Input Method"
 msgstr "搜尋輸入法"
 
-#: 
/home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/config_widget.c:561
+#: gtk3/config_widget.c:564
 msgid "Show Advance Option"
-msgstr "顯示高級選項"
+msgstr "顯示進階選項"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:192
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk3/im_widget.c:182
+#: gtk3/im_widget.c:188 gtk/im_widget.c:192
 msgid ""
 "The first input method will be inactive state. Usually you need to put "
 "<b>Keyboard</b> or <b>Keyboard - <i>layout name</i></b> in the first place."
-msgstr "第一個輸入法將作爲非激活狀態。通常您需要將<b>鍵盤<b>或者<b>鍵盤 - <i>佈局名稱</i></b>放到第一個。"
+msgstr ""
+"第一個輸入法將作為非激活狀態。通常您需要將<b>鍵盤<b>或者<b>鍵盤 - <i>配置名稱"
+"</i></b>放到第一個。"
 
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:306
-#: /home/saber/Develop/fcitx-configtool/build/po/../..//gtk/im_widget.c:308
+#: gtk/im_widget.c:314 gtk/im_widget.c:316
 msgid "Unknown"
 msgstr "未知"
 
-#~ msgid "Disabled"
-#~ msgstr "禁用"
-
-#~ msgid "Multilingual"
-#~ msgstr "多語言"
+#: gtk3/gdm-languages.c:697 gtk/gdm-languages.c:697
+msgid "Unspecified"
+msgstr ""

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to