rpms/scim/FC-6 scim-1.4.4-gtkimm-key-snooper-off-213796.patch, NONE, 1.1 scim-fix-unload-segfault.patch, NONE, 1.1 scim_panel-observe-workarea-xprop-204442.patch, NONE, 1.1 scim_x11_frontend-ic-focus-LTC27940-215953.patch, NONE, 1.1 scim-add-restart.patch, 1.4, 1.5 scim-system-default-config.patch, 1.8, 1.9 scim.spec, 1.65, 1.66

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Dec 11 03:58:52 UTC 2006


Author: petersen

Update of /cvs/dist/rpms/scim/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv17210

Modified Files:
	scim-add-restart.patch scim-system-default-config.patch 
	scim.spec 
Added Files:
	scim-1.4.4-gtkimm-key-snooper-off-213796.patch 
	scim-fix-unload-segfault.patch 
	scim_panel-observe-workarea-xprop-204442.patch 
	scim_x11_frontend-ic-focus-LTC27940-215953.patch 
Log Message:
- move dl modules used by im-scim.so back to scim-libs for multilib (#215583)
- improve scim-restart to also restart xim socket and only kill user's own
  processes (#205547)
- add scim-1.4.4-gtkimm-key-snooper-off-213796.patch to turn off key snooper in
  im-scim to avoid crashes when clicking during scim gtkimm preedit
  (Shawn Huang, #213796)
- add Hangul keysym to Korean hotkeys (#212115)
- add scim_panel-observe-workarea-xprop.patch to make toolbar respect desktop
  work area (Takuro Ashie, #210448)
- add scim_x11_frontend-ic-focus-LTC27940-215953.patch to fix XIM focus
  preedit commit issue (Shoji Sugiyama, #215953)
- add scim-fix-unload-segfault.patch to fix xim process segfaulting
  when already running (Shawn Huang, #210449)
- obsolete iiimf-csconv, iiimf-emacs, and iiimf-le-sun-thai (#211875)
- replace gtk2 prereq by requires(post) and requires(postun) to workaround
  upgrading errors due to scim-libs being installed before gtk2 gets upgraded
  (#202543)
- improve scim-restart script to also handle scim-bridge (#210450)
Resolves: #215583, #205547, #212115


scim-1.4.4-gtkimm-key-snooper-off-213796.patch:
 gtkimcontextscim.cpp |   78 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 60 insertions(+), 18 deletions(-)

--- NEW FILE scim-1.4.4-gtkimm-key-snooper-off-213796.patch ---
Index: /extras/gtk2_immodule/gtkimcontextscim.cpp
===================================================================
RCS file: /cvsroot/scim/scim/extras/gtk2_immodule/gtkimcontextscim.cpp,v
retrieving revision 1.170.2.1
retrieving revision 1.170.2.6
diff -u -r1.170.2.1 -r1.170.2.6
--- /extras/gtk2_immodule/gtkimcontextscim.cpp	30 Dec 2005 08:50:09 -0000	1.170.2.1
+++ /extras/gtk2_immodule/gtkimcontextscim.cpp	10 Aug 2006 13:59:50 -0000	1.170.2.6
@@ -23,7 +23,7 @@
  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
  * Boston, MA  02111-1307  USA
  *
- * $Id: gtkimcontextscim.cpp,v 1.170.2.1 2005/12/30 08:50:09 suzhe Exp $
+ * $Id: gtkimcontextscim.cpp,v 1.170.2.6 2006/08/10 13:59:50 suzhe Exp $
  */
 
 #define Uses_SCIM_DEBUG
@@ -77,6 +77,8 @@
   #define SCIM_KEYBOARD_ICON_FILE            (SCIM_ICONDIR "/keyboard.png")
 #endif
 
+#define SCIM_CONFIG_FRONTEND_GTK_IMMODULE_USE_KEY_SNOOPER  "/FrontEnd/GtkIMModule/UseKeySnooper"
+
 /* Typedef */
 struct _GtkIMContextSCIMImpl
 {
@@ -91,6 +93,7 @@
     gboolean                 use_preedit;
     bool                     is_on;
     bool                     shared_si;
+    bool                     preedit_started;
 
     GtkIMContextSCIMImpl    *next;
 };
@@ -303,6 +306,7 @@
 
 static bool                                             _on_the_spot                = true;
 static bool                                             _shared_input_method        = false;
+static bool                                             _use_key_snooper            = false;
 
 // A hack to shutdown the immodule cleanly even if im_module_exit () is not called when exiting.
 class FinalizeHandler
@@ -536,6 +540,8 @@
     context_scim->impl->is_on = FALSE;
     context_scim->impl->shared_si = _shared_input_method;
     context_scim->impl->use_preedit = _on_the_spot;
+    context_scim->impl->preedit_started = false;
+
     context_scim->id = _context_count++;
 
     if (_shared_input_method)
@@ -634,10 +640,17 @@
 
     GtkIMContextSCIM *context_scim = GTK_IM_CONTEXT_SCIM (context);
 
-    if (context_scim && context_scim->slave)
-        return gtk_im_context_filter_keypress (context_scim->slave, event);
+    gboolean ret = FALSE;
+
+    if (context_scim) {
+        if (!_snooper_installed)
+            ret = gtk_scim_key_snooper (0, event, 0);
+
+        if (!ret && context_scim->slave)
+            ret = gtk_im_context_filter_keypress (context_scim->slave, event);
+    }
 
-    return FALSE;
+    return ret;
 }
 
 static void
@@ -664,7 +677,8 @@
     if (_focused_ic)
         gtk_im_context_scim_focus_out (GTK_IM_CONTEXT (_focused_ic));
 
-    if (!_snooper_installed) {
+    // Only use key snooper when use_key_snooper option is enabled and a gtk main loop is running.
+    if (_use_key_snooper && !_snooper_installed && gtk_main_level () > 0) {
         _snooper_id = gtk_key_snooper_install ((GtkKeySnoopFunc)gtk_scim_key_snooper, NULL);
         _snooper_installed = true;
     }
@@ -695,6 +709,7 @@
                 context_scim->impl->preedit_string.clear ();
                 context_scim->impl->preedit_attrlist.clear ();
                 context_scim->impl->preedit_caret = 0;
+                context_scim->impl->preedit_started = false;
                 need_cap = true;
                 need_reset = true;
                 need_reg = true;
@@ -707,6 +722,7 @@
                 context_scim->impl->preedit_string.clear ();
                 context_scim->impl->preedit_attrlist.clear ();
                 context_scim->impl->preedit_caret = 0;
+                context_scim->impl->preedit_started = false;
                 attach_instance (context_scim->impl->si);
                 need_cap = true;
                 need_reg = true;
@@ -1371,8 +1387,11 @@
         if (_shared_input_method)
             _config->write (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), true);
 
-        if (ic->impl->use_preedit && ic->impl->preedit_string.length ())
-            g_signal_emit_by_name(ic, "preedit_changed");
+        if (ic->impl->use_preedit && ic->impl->preedit_string.length ()) {
+            g_signal_emit_by_name(ic, "preedit-start");
+            g_signal_emit_by_name(ic, "preedit-changed");
+            ic->impl->preedit_started = true;
+        }
     }
 }
 
@@ -1393,8 +1412,11 @@
         if (_shared_input_method)
             _config->write (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), false);
 
-        if (ic->impl->use_preedit && ic->impl->preedit_string.length ())
-            g_signal_emit_by_name(ic, "preedit_changed");
+        if (ic->impl->use_preedit && ic->impl->preedit_string.length ()) {
+            g_signal_emit_by_name(ic, "preedit-changed");
+            g_signal_emit_by_name(ic, "preedit-end");
+            ic->impl->preedit_started = false;
+        }
     }
 }
 
@@ -1926,10 +1948,16 @@
     GtkIMContextSCIM *ic = static_cast<GtkIMContextSCIM *> (si->get_frontend_data ());
 
     if (ic && ic->impl && _focused_ic == ic) {
-        if (ic->impl->use_preedit)
-            g_signal_emit_by_name(_focused_ic, "preedit_changed");
-        else
+        if (ic->impl->use_preedit) {
+            if (!ic->impl->preedit_started) {
+                g_signal_emit_by_name(_focused_ic, "preedit-start");
+                ic->impl->preedit_started = true;
+            }
+            if (ic->impl->preedit_string.length ())
+                g_signal_emit_by_name(_focused_ic, "preedit-changed");
+        } else {
             _panel_client.show_preedit_string (ic->id);
+        }
     }
 }
 
@@ -1971,7 +1999,11 @@
             emit = true;
         }
         if (ic->impl->use_preedit) {
-            if (emit) g_signal_emit_by_name(ic, "preedit_changed");
+            if (emit) g_signal_emit_by_name(ic, "preedit-changed");
+            if (ic->impl->preedit_started) {
+                g_signal_emit_by_name(ic, "preedit-end");
+                ic->impl->preedit_started = false;
+            }
         } else {
             _panel_client.hide_preedit_string (ic->id);
         }
@@ -2009,10 +2041,15 @@
 
     if (ic && ic->impl && _focused_ic == ic && ic->impl->preedit_caret != caret) {
         ic->impl->preedit_caret = caret;
-        if (ic->impl->use_preedit)
-            g_signal_emit_by_name(ic, "preedit_changed");
-        else
+        if (ic->impl->use_preedit) {
+            if (!ic->impl->preedit_started) {
+                g_signal_emit_by_name(_focused_ic, "preedit-start");
+                ic->impl->preedit_started = true;
+            }
+            g_signal_emit_by_name(ic, "preedit-changed");
+        } else {
             _panel_client.update_preedit_caret (ic->id, caret);
+        }
     }
 }
 
@@ -2029,8 +2066,12 @@
         ic->impl->preedit_string   = str;
         ic->impl->preedit_attrlist = attrs;
         if (ic->impl->use_preedit) {
+            if (!ic->impl->preedit_started) {
+                g_signal_emit_by_name(_focused_ic, "preedit-start");
+                ic->impl->preedit_started = true;
+            }
             ic->impl->preedit_caret    = str.length ();
-            g_signal_emit_by_name(ic, "preedit_changed");
+            g_signal_emit_by_name(ic, "preedit-changed");
         } else {
             _panel_client.update_preedit_string (ic->id, str, attrs);
         }
@@ -2073,7 +2114,7 @@
     if (ic && _focused_ic == ic) {
         GdkEventKey gdkevent = keyevent_scim_to_gdk (ic, key);
         if (!_fallback_instance->process_key_event (key) &&
-            !gtk_im_context_filter_keypress (GTK_IM_CONTEXT (ic), &gdkevent)) {
+            !gtk_im_context_filter_keypress (GTK_IM_CONTEXT (ic->slave), &gdkevent)) {
 
             // To avoid timing issue, we need emit the signal directly, rather than put the event into the queue.
             if (_focused_widget) {
@@ -2240,6 +2281,7 @@
 
     _on_the_spot = config->read (String (SCIM_CONFIG_FRONTEND_ON_THE_SPOT), _on_the_spot);
     _shared_input_method = config->read (String (SCIM_CONFIG_FRONTEND_SHARED_INPUT_METHOD), _shared_input_method);
+    _use_key_snooper = config->read (String (SCIM_CONFIG_FRONTEND_GTK_IMMODULE_USE_KEY_SNOOPER), _use_key_snooper);
 
     // Get keyboard layout setting
     // Flush the global config first, in order to load the new configs from disk.

scim-fix-unload-segfault.patch:
 scim_frontend_module.cpp |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)

--- NEW FILE scim-fix-unload-segfault.patch ---
diff -Nur scim-1.4.5/src/scim_frontend_module.cpp scim-1.4.5-fix/src/scim_frontend_module.cpp
--- scim-1.4.5/src/scim_frontend_module.cpp	2005-01-10 16:30:54.000000000 +0800
+++ scim-1.4.5-fix/src/scim_frontend_module.cpp	2006-11-17 14:30:56.000000000 +0800
@@ -69,7 +69,9 @@
 
         m_frontend_init (backend, config, argc, argv);
     } catch (...) {
-        m_module.unload ();
+    /* FIXME: scim does not unload cleanly, so just skip unloading for now.
+        m_module.unload (); 
+     */
         m_frontend_init = 0;
         m_frontend_run = 0;
         return false;

scim_panel-observe-workarea-xprop-204442.patch:
 scim_panel_gtk.cpp |   86 +++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 61 insertions(+), 25 deletions(-)

--- NEW FILE scim_panel-observe-workarea-xprop-204442.patch ---
--- scim-1.4.5/extras/panel/scim_panel_gtk.cpp.12-workarea-xprop	2006-11-15 10:02:59.000000000 +1000
+++ scim-1.4.5/extras/panel/scim_panel_gtk.cpp	2006-11-17 14:20:56.000000000 +1000
@@ -33,6 +33,9 @@
 #include <errno.h>
 #include <glib.h>
 #include <gdk/gdk.h>
+#ifdef GDK_WINDOWING_X11
+#include <gdk/gdkx.h>
+#endif
 #include <gtk/gtk.h>
 #include <stdlib.h>
 #include <list>
@@ -608,6 +611,25 @@
     }
 }
 
+#ifdef GDK_WINDOWING_X11
+static GdkFilterReturn
+ui_event_filter (GdkXEvent *gdk_xevent, GdkEvent *event, gpointer data)
+{
+    g_return_val_if_fail (gdk_xevent, GDK_FILTER_CONTINUE);
+
+    XEvent *xev = (XEvent*)gdk_xevent;
+
+    if (xev->type == PropertyNotify) {
+        if (xev->xproperty.atom == gdk_x11_get_xatom_by_name ("_NET_WORKAREA") ||
+            xev->xproperty.atom == gdk_x11_get_xatom_by_name ("_NET_CURRENT_DESKTOP")) {
+            ui_settle_toolbar_window ();
+        }
+    }
+
+    return GDK_FILTER_CONTINUE;
+}
+#endif
+
 static void
 ui_initialize (void)
 {
@@ -948,18 +970,7 @@
         gtk_widget_show_all (_toolbar_window);
         gtk_widget_hide (_toolbar_window);
 
-        GtkRequisition ws;
-        gtk_widget_size_request (_toolbar_window, &ws);
-
-        int workarea_x, workarea_y, workarea_width, workarea_height;
-        ui_get_workarea (workarea_x, workarea_y, workarea_width, workarea_height);
-
-        if (_toolbar_window_x < 0)
-            _toolbar_window_x = workarea_x + workarea_width - ws.width;
-        if (_toolbar_window_y < 0)
-            _toolbar_window_y = workarea_y + workarea_height - ws.height;
-
-        gtk_window_move (GTK_WINDOW (_toolbar_window), _toolbar_window_x, _toolbar_window_y);
+	ui_settle_toolbar_window ();
     }
 
     // Create help window
@@ -1057,6 +1068,17 @@
                                   NULL);
     }
 
+#ifdef GDK_WINDOWING_X11
+    // Add an event filter function to observe X root window's properties.
+    GdkWindow *root_window = gdk_get_default_root_window ();
+#if GDK_MULTIHEAD_SAFE
+    if (_current_screen)
+        root_window = gdk_screen_get_root_window (_current_screen);
+#endif
+    gdk_window_set_events (root_window, (GdkEventMask)GDK_PROPERTY_NOTIFY);
+    gdk_window_add_filter (root_window, ui_event_filter, NULL);
+#endif
+
     _ui_initialized = true;
 }
 
@@ -1155,13 +1177,22 @@
         return;
     }
 
+    gint workarea_x, workarea_y, workarea_width, workarea_height;
+    ui_get_workarea (workarea_x, workarea_y, workarea_width, workarea_height);
+
     GtkRequisition ws;
     gint pos_x, pos_y;
 
     gtk_widget_size_request (_toolbar_window, &ws);
 
-    pos_x = _toolbar_window_x;
-    pos_y = _toolbar_window_y;
+    pos_x = _config->read (String (SCIM_CONFIG_PANEL_GTK_TOOLBAR_POS_X),
+                           workarea_x + workarea_width - ws.width);
+    pos_y = _config->read (String (SCIM_CONFIG_PANEL_GTK_TOOLBAR_POS_Y),
+                           workarea_y + workarea_height - ws.height);
+    if (pos_x == -1 && pos_y == -1) {
+        pos_x = workarea_x + workarea_width  - ws.width;
+        pos_y = workarea_y + workarea_height - ws.height;
+    }
 
     if (_toolbar_auto_snap) {
         if ((ui_screen_width () - (pos_x + ws.width)) < pos_x)
@@ -1266,18 +1297,8 @@
         }
 
         if (_toolbar_window) {
-            GtkRequisition ws;
-            gtk_widget_size_request (_toolbar_window, &ws);
-
             gtk_window_set_screen (GTK_WINDOW (_toolbar_window), screen);
-
-            int workarea_x, workarea_y, workarea_width, workarea_height;
-            ui_get_workarea (workarea_x, workarea_y, workarea_width, workarea_height);
-
-            _toolbar_window_x = workarea_x + workarea_width - ws.width;
-            _toolbar_window_y = workarea_y + workarea_height - ws.height;
-
-            gtk_window_move (GTK_WINDOW (_toolbar_window), _toolbar_window_x, _toolbar_window_y);
+	    ui_settle_toolbar_window ();
         }
 
         if (!_lookup_table_embedded && _lookup_table_window) {
@@ -1299,6 +1320,14 @@
             gtk_window_set_screen (GTK_WINDOW (_help_dialog), screen);
         }
 
+#ifdef GDK_WINDOWING_X11
+        GdkWindow *root_window = gdk_get_default_root_window ();
+        if (_current_screen)
+            root_window = gdk_screen_get_root_window (_current_screen);
+        gdk_window_set_events (root_window, (GdkEventMask)GDK_PROPERTY_NOTIFY);
+        gdk_window_add_filter (root_window, ui_event_filter, NULL);
+#endif
+
         ui_settle_input_window ();
         ui_settle_lookup_table_window ();
         ui_settle_toolbar_window ();
@@ -2571,6 +2600,13 @@
         GdkScreen *screen = gdk_display_get_screen (gdk_display_get_default (), num);
 
         if (screen) {
+#ifdef GDK_WINDOWING_X11
+            GdkWindow *root_window = gdk_get_default_root_window ();
+            if (_current_screen)
+                root_window = gdk_screen_get_root_window (_current_screen);
+            gdk_window_remove_filter (root_window, ui_event_filter, NULL);
+#endif
+
             _current_screen = screen;
             ui_switch_screen (screen);
         }

scim_x11_frontend-ic-focus-LTC27940-215953.patch:
 scim_x11_frontend.cpp |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

--- NEW FILE scim_x11_frontend-ic-focus-LTC27940-215953.patch ---
--- scim-1.4.4.orig/modules/FrontEnd/scim_x11_frontend.cpp	2006-10-06 01:05:49.000000000 +0900
+++ scim-1.4.4/modules/FrontEnd/scim_x11_frontend.cpp	2006-10-06 10:29:55.000000000 +0900
@@ -1094,7 +1094,8 @@
     // If the ic is not focused, then return.
     if (!is_focused_ic (ic)) {
         SCIM_DEBUG_FRONTEND(1) << "IC " << call_data->icid << " is not focused, focus it first.\n";
-        ims_set_ic_focus_handler (ims, (IMChangeFocusStruct *) call_data);
+//        ims_set_ic_focus_handler (ims, (IMChangeFocusStruct *) call_data);
+	return 1;
     }
 
     XKeyEvent *event = (XKeyEvent*) &(call_data->event);

scim-add-restart.patch:
 configure.ac        |    1 +
 src/Makefile.am     |    1 +
 src/scim-restart.in |   10 ++++++++++
 3 files changed, 12 insertions(+)

Index: scim-add-restart.patch
===================================================================
RCS file: /cvs/dist/rpms/scim/FC-6/scim-add-restart.patch,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- scim-add-restart.patch	6 Oct 2005 08:52:08 -0000	1.4
+++ scim-add-restart.patch	11 Dec 2006 03:58:50 -0000	1.5
@@ -1,11 +1,16 @@
 --- scim-1.4.2/src/scim-restart.in.1-restart	2005-09-02 12:05:35.000000000 +0900
 +++ scim-1.4.2/src/scim-restart.in	2005-08-25 22:52:29.000000000 +0900
-@@ -0,0 +1,5 @@
+@@ -0,0 +1,10 @@
 +#!/bin/sh
 +
-+COMMAND="@SCIM_LIBEXECDIR@/scim-launcher -d -c `scim-config-agent -c global -g /DefaultConfigModule` -e all -f socket --no-stay"
++SOCKET_CMD="@SCIM_LIBEXECDIR@/scim-launcher -d -c `scim-config-agent -c global -g /DefaultConfigModule` -e all -f socket --no-stay"
++XIM_CMD="@SCIM_LIBEXECDIR@/scim-launcher -d -c socket -e socket -f x11"
 +
-+pkill -f "${COMMAND}" && ${COMMAND}
++OPT="-u `id -u`"
++
++pkill ${OPT} -f "${SOCKET_CMD}" && ${SOCKET_CMD}
++pkill ${OPT} -f "${XIM_CMD}" && ${XIM_CMD}
++pkill ${OPT} scim-bridge
 --- scim-1.4.2/src/Makefile.am.1-restart	2005-07-10 22:32:23.000000000 +0900
 +++ scim-1.4.2/src/Makefile.am	2005-09-02 11:42:57.000000000 +0900
 @@ -141,6 +141,7 @@

scim-system-default-config.patch:
 config |   24 +++++++++++++++++++++---
 global |    2 ++
 2 files changed, 23 insertions(+), 3 deletions(-)

Index: scim-system-default-config.patch
===================================================================
RCS file: /cvs/dist/rpms/scim/FC-6/scim-system-default-config.patch,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- scim-system-default-config.patch	8 Aug 2006 11:25:58 -0000	1.8
+++ scim-system-default-config.patch	11 Dec 2006 03:58:50 -0000	1.9
@@ -1,8 +1,15 @@
---- scim-1.4.4-20060704/configs/config.6-config	2006-01-11 18:54:58.000000000 +0900
-+++ scim-1.4.4-20060704/configs/config	2006-07-17 20:38:58.000000000 +0900
-@@ -1,25 +1,43 @@
+--- scim-1.4.5/configs/global.6-config	2005-06-27 02:35:08.000000000 +1000
++++ scim-1.4.5/configs/global	2006-11-03 14:28:33.000000000 +1000
+@@ -7,3 +7,5 @@
+ /DefaultPanelSocketAddress = local:/tmp/scim-panel-socket
+ /DefaultHelperManagerSocketAddress = local:/tmp/scim-helper-manager-socket
+ /DefaultSocketTimeout = 5000
++# disable by default: rawcode, CNS11643, CangJie3, CangJie5, Cantonese, Dayi3, EZ-Big, Erbi-QS, Erbi, Jyutping, Simplex, Stroke5, Wu, ZhuYin-Big, Ziranma
++/DisabledIMEngineFactories = 6e029d75-ef65-42a8-848e-332e63d70f9c,468effb6-69fa-48b8-9207-dc4f722640a0,5da9d4ff-ccdd-45af-b1a5-7bd4ac0aeb5f,11cb2711-6225-49ca-bde4-472d2ca8aaef,33a8f7ff-b05a-4a54-b617-a73cd53583bd,a9eb5dd7-8e8a-4d1c-b486-2f59bbd12ef0,8bd47de6-4b38-49c0-864b-f6ea43bd2dff,17ebfb4f-2cc5-44da-a440-5c28c68997cf,107dcd74-b06a-4fcd-ac29-4b3136358eb7,a82d50ad-7995-4db7-9b34-3e9e4e31e4d7,2ffa6ab6-8ebc-4e8d-95a2-7ee6b7ffb9bd,bdf5fc1e-63a0-41bd-8e31-3239d67152c0,170d45fe-7fce-4e5b-bd86-f78d2aa8b29e,6137b317-cffc-4e39-80a1-eabb903ed855,8a6975df-6a78-4c7e-91d5-889da6c2fd80
+--- scim-1.4.5/configs/config.6-config	2006-09-24 19:52:07.000000000 +1000
++++ scim-1.4.5/configs/config	2006-11-03 15:04:47.000000000 +1000
+@@ -1,4 +1,12 @@
  # This file is encoded in UTF-8 encoding.
--/FrontEnd/OnTheSpot = true
 +/DefaultIMEngineFactory/ta_IN = IMEngine-M17N-ta-tamil99
 +# pinyin
 +/DefaultIMEngineFactory/zh_CN = 05235cfc-43ce-490c-b1b1-c5a2185276ae
@@ -11,13 +18,11 @@
 +/DefaultIMEngineFactory/zh_HK = e5e88504-6fae-4c34-8324-49508cfad72a
 +# chewing
 +/DefaultIMEngineFactory/zh_TW = fcff66b6-4d3e-4cf2-833c-01ef66ac6025
+ /FrontEnd/OnTheSpot = true
  /FrontEnd/ChangeFactoryGlobally = false
-+/FrontEnd/OnTheSpot = true
  /FrontEnd/Socket/ConfigReadOnly = false
- /FrontEnd/Socket/MaxClients = 512
- /FrontEnd/X11/BrokenWchar = true
--/FrontEnd/X11/Dynamic = true
-+/FrontEnd/X11/Dynamic = false
+@@ -7,10 +15,20 @@
+ /FrontEnd/X11/Dynamic = false
  /FrontEnd/X11/OnTheSpot = true
  /FrontEnd/X11/ServerName = SCIM
 -/Hotkeys/FrontEnd/NextFactory = Control+Alt+Down,Shift+Control+KeyRelease+Shift_L,Shift+Control+KeyRelease+Shift_R
@@ -35,35 +40,16 @@
  /Hotkeys/FrontEnd/ShowFactoryMenu = Control+Alt+Right
  /Hotkeys/FrontEnd/Trigger = Control+space
 +/Hotkeys/FrontEnd/Trigger/ja_JP = Zenkaku_Hankaku,Alt+grave,Control+space
-+/Hotkeys/FrontEnd/Trigger/ko_KR = Alt+Alt_L+KeyRelease,Shift+space,Control+space
++/Hotkeys/FrontEnd/Trigger/ko_KR = Alt+Alt_L+KeyRelease,Shift+space,Control+space,Hangul
  /Hotkeys/FrontEnd/ValidKeyMask = Shift+Control+Alt+CapsLock+Meta
  /Panel/Gtk/Color/ActiveBackground = light sky blue
  /Panel/Gtk/Color/ActiveText = black
- /Panel/Gtk/Color/NormalBackground = #F7F3F7
- /Panel/Gtk/Color/NormalText = black
--/Panel/Gtk/Font = default
+@@ -19,7 +37,7 @@
+ /Panel/Gtk/Font = default
  /Panel/Gtk/DefaultSticked = false
-+/Panel/Gtk/Font = default
  /Panel/Gtk/LookupTableEmbedded = true
 -/Panel/Gtk/LookupTableVertical = false
 +/Panel/Gtk/LookupTableVertical = true
  /Panel/Gtk/ShowStatusBox = false
  /Panel/Gtk/ShowTrayIcon = true
  /Panel/Gtk/ToolBar/AlwaysShow = false
-@@ -30,6 +48,7 @@
- /Panel/Gtk/ToolBar/ShowHelpIcon = true
- /Panel/Gtk/ToolBar/ShowFactoryIcon = true
- /Panel/Gtk/ToolBar/ShowFactoryName = true
-+/Panel/Gtk/ToolBar/ShowMenuIcon = true
- /Panel/Gtk/ToolBar/ShowSetupIcon = true
--/Panel/Gtk/ToolBar/ShowStickIcon = true
-+/Panel/Gtk/ToolBar/ShowStickIcon = false
- /IMEngine/RawCode/Locales = default
---- scim-1.4.4-20060704/configs/global.6-config	2005-06-27 01:35:08.000000000 +0900
-+++ scim-1.4.4-20060704/configs/global	2006-07-05 11:41:59.000000000 +0900
-@@ -7,3 +7,5 @@
- /DefaultPanelSocketAddress = local:/tmp/scim-panel-socket
- /DefaultHelperManagerSocketAddress = local:/tmp/scim-helper-manager-socket
- /DefaultSocketTimeout = 5000
-+# disable by default: rawcode, CNS11643, CangJie3, CangJie5, Cantonese, Dayi3, EZ-Big, Erbi-QS, Erbi, Jyutping, Simplex, Stroke5, Wu, ZhuYin-Big(?), Ziranma(?)
-+/DisabledIMEngineFactories = 6e029d75-ef65-42a8-848e-332e63d70f9c,468effb6-69fa-48b8-9207-dc4f722640a0,5da9d4ff-ccdd-45af-b1a5-7bd4ac0aeb5f,11cb2711-6225-49ca-bde4-472d2ca8aaef,33a8f7ff-b05a-4a54-b617-a73cd53583bd,a9eb5dd7-8e8a-4d1c-b486-2f59bbd12ef0,8bd47de6-4b38-49c0-864b-f6ea43bd2dff,17ebfb4f-2cc5-44da-a440-5c28c68997cf,107dcd74-b06a-4fcd-ac29-4b3136358eb7,a82d50ad-7995-4db7-9b34-3e9e4e31e4d7,2ffa6ab6-8ebc-4e8d-95a2-7ee6b7ffb9bd,bdf5fc1e-63a0-41bd-8e31-3239d67152c0,170d45fe-7fce-4e5b-bd86-f78d2aa8b29e,6137b317-cffc-4e39-80a1-eabb903ed855,8a6975df-6a78-4c7e-91d5-889da6c2fd80


Index: scim.spec
===================================================================
RCS file: /cvs/dist/rpms/scim/FC-6/scim.spec,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -r1.65 -r1.66
--- scim.spec	2 Oct 2006 15:55:14 -0000	1.65
+++ scim.spec	11 Dec 2006 03:58:50 -0000	1.66
@@ -3,7 +3,7 @@
 
 Name:      scim
 Version:   1.4.4
-Release:   35%{?dist}
+Release:   36%{?dist}
 Summary:   Smart Common Input Method platform
 
 License:   LGPL
@@ -30,7 +30,7 @@
 #Requires: %{_prefix}/lib/gtk-2.0/immodules/im-scim.so
 #%%endif
 PreReq:    %{_sbindir}/alternatives
-Obsoletes: iiimf-gtk <= 1:12.2, iiimf-gnome-im-switcher <= 1:12.2, iiimf-server <= 1:12.2, iiimf-x <= 1:12.2
+Obsoletes: iiimf-gtk <= 1:12.2, iiimf-gnome-im-switcher <= 1:12.2, iiimf-server <= 1:12.2, iiimf-x <= 1:12.2, iiimf-emacs <= 1:12.2, iiimf-le-sun-thai <= 1:12.2
 Patch1:    scim-add-restart.patch
 Patch2:    gtkimm-clear-preedit-on-reset-174143.patch
 Patch4:    scim.pc-versioned-moduledir-179706.patch
@@ -43,6 +43,10 @@
 Patch13:   scim_utility-Assamese-locale-fix.patch
 Patch14:   scim-gtkimm-underline-attrib-206397.patch
 Patch15:   scim_x11_frontend-underline-attrib-206397.patch
+Patch16:   scim-fix-unload-segfault.patch
+Patch17:   scim_panel-observe-workarea-xprop-204442.patch
+Patch18:   scim_x11_frontend-ic-focus-LTC27940-215953.patch
+Patch19:   scim-1.4.4-gtkimm-key-snooper-off-213796.patch
 
 %description
 SCIM is a user friendly and full featured input method user interface and
@@ -74,8 +78,9 @@
 Summary:    Smart Common Input Method libraries
 Group:      System Environment/Libraries
 # for update-gtk-immodules
-PreReq:     gtk2 >= 2.9.1-2
-Obsoletes:  iiimf-libs <= 1:12.2
+Requires(post): gtk2 >= 2.9.1-2
+Requires(postun): gtk2 >= 2.9.1-2
+Obsoletes:  iiimf-libs <= 1:12.2, iiimf-csconv <= 1:12.2
 
 %description libs
 This package provides the libraries and GTK input method module for SCIM.
@@ -101,6 +106,10 @@
 %patch13 -p1 -b .13-assamese
 %patch14 -p0 -b .14-underline
 %patch15 -p0 -b .15-underline
+%patch16 -p1 -b .16-unloadsegfault
+%patch17 -p1 -b .17-workarea-xprop
+%patch18 -p1 -b .18-xim-focus
+%patch19 -p1 -b .19-key-snooper
 
 %if %{snapshot}
 ./bootstrap
@@ -191,8 +200,18 @@
 %dir %{_sysconfdir}/scim
 %config(noreplace) %{_sysconfdir}/scim/*
 %{_bindir}/*
-%{_libdir}/scim-1.0
-%{_libdir}/scim-1.0/%{scim_api}
+%dir %{_libdir}/scim-1.0
+%{_libdir}/scim-1.0/scim-helper-launcher
+%{_libdir}/scim-1.0/scim-helper-manager
+%{_libdir}/scim-1.0/scim-launcher
+%{_libdir}/scim-1.0/scim-panel-gtk
+%dir %{_libdir}/scim-1.0/%{scim_api}
+%{_libdir}/scim-1.0/%{scim_api}/Filter
+%{_libdir}/scim-1.0/%{scim_api}/FrontEnd
+%{_libdir}/scim-1.0/%{scim_api}/Helper
+%dir %{_libdir}/scim-1.0/%{scim_api}/IMEngine
+%{_libdir}/scim-1.0/%{scim_api}/IMEngine/rawcode.so
+%{_libdir}/scim-1.0/%{scim_api}/SetupUI
 %{_datadir}/scim
 %{_datadir}/pixmaps/*
 %{_datadir}/applications/fedora-scim-setup.desktop
@@ -216,9 +235,33 @@
 %defattr(-,root,root,-)
 %{_libdir}/libscim-*.so.*
 %{_libdir}/gtk-2.0/immodules
+%dir %{_libdir}/scim-1.0/%{scim_api}
+%{_libdir}/scim-1.0/%{scim_api}/Config
+%dir %{_libdir}/scim-1.0/%{scim_api}/IMEngine
+%{_libdir}/scim-1.0/%{scim_api}/IMEngine/socket.so
 
 
 %changelog
+* Mon Dec 11 2006 Jens Petersen <petersen at redhat.com> - 1.4.4-36.fc6
+- move dl modules used by im-scim.so back to scim-libs for multilib (#215583)
+- improve scim-restart to also restart xim socket and only kill user's own
+  processes (#205547)
+- add scim-1.4.4-gtkimm-key-snooper-off-213796.patch to turn off key snooper in
+  im-scim to avoid crashes when clicking during scim gtkimm preedit
+  (Shawn Huang, #213796)
+- add Hangul keysym to Korean hotkeys (#212115)
+- add scim_panel-observe-workarea-xprop.patch to make toolbar respect desktop
+  work area (Takuro Ashie, #210448)
+- add scim_x11_frontend-ic-focus-LTC27940-215953.patch to fix XIM focus
+  preedit commit issue (Shoji Sugiyama, #215953)
+- add scim-fix-unload-segfault.patch to fix xim process segfaulting
+  when already running (Shawn Huang, #210449)
+- obsolete iiimf-csconv, iiimf-emacs, and iiimf-le-sun-thai (#211875)
+- replace gtk2 prereq by requires(post) and requires(postun) to workaround
+  upgrading errors due to scim-libs being installed before gtk2 gets upgraded
+  (#202543)
+- improve scim-restart script to also handle scim-bridge (#210450)
+
 * Tue Oct  3 2006 Jens Petersen <petersen at redhat.com> - 1.4.4-35
 - reduce tray icon size to 12 to fit button in
   scim_panel_gtk-icon-size-fixes.patch




More information about the fedora-cvs-commits mailing list