[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

rpms/im-sdk/FC-3 iiimgcf-deadkey.patch, NONE, 1.1 im-sdk.spec, 1.101, 1.102 xiiimp-fix-gcc-warnings.patch, 1.2, 1.3 xiiimp.so-gcc-warnings.patch, 1.2, 1.3



Author: tagoh

Update of /cvs/dist/rpms/im-sdk/FC-3
In directory cvs.devel.redhat.com:/tmp/cvs-serv31686

Modified Files:
	im-sdk.spec xiiimp-fix-gcc-warnings.patch 
	xiiimp.so-gcc-warnings.patch 
Added Files:
	iiimgcf-deadkey.patch 
Log Message:
reverted xft and some changes on the warning fix patches.
drop pango patch ATM.
added a patch for the deadkey.

iiimgcf-deadkey.patch:
 gtkimcontextiiim.c |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 gtkimcontextiiim.h |    1 
 2 files changed, 56 insertions(+), 1 deletion(-)

--- NEW FILE iiimgcf-deadkey.patch ---
diff -ruN -x .libs -x .deps -x '*~' -x '*o' -x '*a' -x Makefile iiimf-12.2.orig/iiimgcf/gtkimcontextiiim.c iiimf-12.2/iiimgcf/gtkimcontextiiim.c
--- iiimf-12.2.orig/iiimgcf/gtkimcontextiiim.c	2005-07-21 12:12:31.000000000 +0900
+++ iiimf-12.2/iiimgcf/gtkimcontextiiim.c	2005-07-22 17:05:03.000000000 +0900
@@ -29,6 +29,7 @@
 #include <gtk/gtk.h>
 #include <gtk/gtkimmodule.h>
 #include <gtk/gtkinvisible.h>
+#include <gtk/gtkimcontextsimple.h>
 #include <gdk/gdkproperty.h>
 #include <gdk/gdkselection.h>
 #include <stdlib.h>
@@ -46,6 +47,28 @@
 #define DEBUG_DO(x)
 #endif
 
+#define _IS_DEAD_KEY(keyval,sym)	((keyval) == GDK_dead_ ## sym)
+#define IS_DEAD_KEY(keyval)			\
+  (_IS_DEAD_KEY(keyval, grave) ||		\
+   _IS_DEAD_KEY(keyval, acute) ||		\
+   _IS_DEAD_KEY(keyval, circumflex) ||		\
+   _IS_DEAD_KEY(keyval, tilde) ||		\
+   _IS_DEAD_KEY(keyval, macron) ||		\
+   _IS_DEAD_KEY(keyval, breve) ||		\
+   _IS_DEAD_KEY(keyval, abovedot) ||		\
+   _IS_DEAD_KEY(keyval, diaeresis) ||		\
+   _IS_DEAD_KEY(keyval, abovering) ||		\
+   _IS_DEAD_KEY(keyval, doubleacute) ||		\
+   _IS_DEAD_KEY(keyval, caron) ||		\
+   _IS_DEAD_KEY(keyval, cedilla) ||		\
+   _IS_DEAD_KEY(keyval, ogonek) ||		\
+   _IS_DEAD_KEY(keyval, iota) ||		\
+   _IS_DEAD_KEY(keyval, voiced_sound) ||	\
+   _IS_DEAD_KEY(keyval, semivoiced_sound) ||	\
+   _IS_DEAD_KEY(keyval, belowdot) ||		\
+   _IS_DEAD_KEY(keyval, hook) ||		\
+   _IS_DEAD_KEY(keyval, horn))
+
 typedef struct _CandidateWindow CandidateWindow;
 
 /* Style for gtk input method preedit/status */
@@ -1530,6 +1553,16 @@
 }
 
 static void
+im_context_iiim_commit_cb(GtkIMContext *context,
+			  const gchar  *string,
+			  GtkIMContextIIIM *context_iiim)
+{
+  g_return_if_fail(string != NULL);
+
+  g_signal_emit_by_name(context_iiim, "commit", string);
+}
+
+static void
 im_context_iiim_init (GtkIMContextIIIM * im_context_iiim)
 {
   im_context_iiim->context = NULL;
@@ -1541,6 +1574,11 @@
   im_context_iiim->has_focus = FALSE;
   im_context_iiim->in_toplevel = FALSE;
 
+  /* for the dead key */
+  im_context_iiim->slave = g_object_new(GTK_TYPE_IM_CONTEXT_SIMPLE, NULL);
+  g_signal_connect(G_OBJECT(im_context_iiim->slave), "commit",
+		   G_CALLBACK(im_context_iiim_commit_cb), im_context_iiim);
+
   memset(&im_context_iiim->saved_key, 0, sizeof(im_context_iiim->saved_key));
 
   bindtextdomain (GETTEXT_PACKAGE, IIIMGCFLOCALEDIR);
@@ -1690,10 +1728,11 @@
   IIIMCF_keyevent kev;
   IIIMCF_event ev;
   gint store_key = 0;
+  static gboolean was_dead_key = FALSE;
 
   /* IIIMF doesn't recognize */
   if (event->type == GDK_KEY_RELEASE)
-    return FALSE;
+    return gtk_im_context_filter_keypress(context_iiim->slave, event);
 
   if (current_setting_enabled &&
       current_setting.im_enabled == IM_OFF)
@@ -1745,6 +1784,15 @@
     return FALSE;
 
  commit_this_event:
+  if (IS_DEAD_KEY(event->keyval)) {
+    /* don't send the dead key with the commit event! */
+    was_dead_key = TRUE;
+    return gtk_im_context_filter_keypress(context_iiim->slave, event);
+  } else if (was_dead_key == TRUE) {
+    was_dead_key = FALSE;
+    return gtk_im_context_filter_keypress(context_iiim->slave, event);
+  }
+  was_dead_key = FALSE;
   if (event->state &
       (gtk_accelerator_get_default_mod_mask () & ~GDK_SHIFT_MASK))
     return FALSE;
@@ -1828,8 +1876,14 @@
   g_free (context_iiim->current_language);
 
   iiim_keylist_free (context_iiim);
+
+  g_signal_handlers_disconnect_by_func(context_iiim->slave,
+				       (gpointer)im_context_iiim_commit_cb,
+				       context_iiim);
+
   DEBUG_DO (g_message ("im_context_iiim_finalize"));
 
+  G_OBJECT_CLASS(parent_class)->finalize(obj);
 }
 
 static void
diff -ruN -x .libs -x .deps -x '*~' -x '*o' -x '*a' -x Makefile iiimf-12.2.orig/iiimgcf/gtkimcontextiiim.h iiimf-12.2/iiimgcf/gtkimcontextiiim.h
--- iiimf-12.2.orig/iiimgcf/gtkimcontextiiim.h	2005-07-21 12:12:31.000000000 +0900
+++ iiimf-12.2/iiimgcf/gtkimcontextiiim.h	2005-07-22 16:45:40.000000000 +0900
@@ -66,6 +66,7 @@
 struct _GtkIMContextIIIM
 {
   GtkIMContext object;
+  GtkIMContext *slave;
 
   GtkIIIMInfo *iiim_info;
   GdkWindow *client_window;


Index: im-sdk.spec
===================================================================
RCS file: /cvs/dist/rpms/im-sdk/FC-3/im-sdk.spec,v
retrieving revision 1.101
retrieving revision 1.102
diff -u -r1.101 -r1.102
--- im-sdk.spec	27 Jul 2005 14:10:24 -0000	1.101
+++ im-sdk.spec	28 Jul 2005 06:02:15 -0000	1.102
@@ -39,6 +39,8 @@
 %endif
 Patch0: im-sdk-20040203-build.patch
 Patch5: im-sdk-64bit.patch
+Patch12: im-sdk-xft-ac.patch
+Patch13: im-sdk-12.1-x-xft.patch
 Patch15: im-sdk-bin_dir.patch
 Patch24: im-sdk-11.4-iiimsf-daemon.patch
 # doesn't apply anymore
@@ -68,6 +70,7 @@
 Patch53: iiimgcf-dont-always-emit-commit-signal-r2231.patch
 Patch54: iiimgcf-commit-after-reset-ic-r2235.patch
 Patch55: iiimgcf-fix-crash-r2421-153020.patch
+Patch56: iiimgcf-deadkey.patch
 
 ## iiimxcf
 ## Patch700 has been committed in svn2037.
@@ -77,6 +80,7 @@
 Patch702: xiiimp.so-gcc-warnings.patch
 ## warning patches are in the way so cannot merge with xft patch
 ## TODO: merge it when tar ball is merging the trunk
+Patch703: im-sdk-12.1-x-xft-highlight.patch
 Patch704: im-sdk-htt_xbe-crash.patch
 Patch705: xiiimp-fix-double-encoded-utf8-r2272-138618.patch
 Patch706: httx-status-focus-svn2500-146406.patch
@@ -86,7 +90,8 @@
 Patch710: xiiimp-preedit-callback-svn2548-147459.patch
 Patch711: xiiimp-aux-segfault-svn2507-148765.patch
 Patch712: xiiimp-preedit-return-value-svn2549-149607.patch
-Patch713: xiiimp-pango.patch
+Patch713: xiiimp-xft-statusarea-141298.patch
+Patch714: xiiimp-pango.patch
 Patch750: xiiimp-fix-default-le-r2435-139811.patch
 
 ## iiimcf
@@ -384,6 +389,8 @@
 %setup -q -n %{name}-%{srclabel}
 %patch0 -p1
 %patch5 -p1 -b .64
+%patch12 -p1 -b .xft-ac
+%patch13 -p1 -b .x-xft
 %patch15 -p1 -b .bindir
 %patch24 -p1 -b .daemon
 #%%patch28 -p1 -b .disable-debug
@@ -412,6 +419,7 @@
 %patch700 -p1 -b .xiiimp-warnings
 %patch701 -p1 -b .htt_xbe-warnings
 %patch702 -p1 -b .xiiimp.so-warn
+%patch703 -p1 -b .xft-highlight
 %patch704 -p1 -b .x86_64-htt_xbe-crash
 %patch705 -p0 -b .double-encoded-utf8
 %patch706 -p1 -b .706-status-focus
@@ -421,7 +429,8 @@
 %patch710 -p1 -b .710-preedit-cb
 %patch711 -p1 -b .711-aux-segv
 %patch712 -p1 -b .712-preedit-return
-%patch713 -p1 -b .713-pango
+%patch713 -p1 -b .713-statusarea
+#%%patch714 -p1 -b .714-pango
 %patch750 -p1 -b .750-default-le
 
 ## iiimcf
@@ -1135,9 +1144,8 @@
     string (#149607)
 - add unitle-Punjabi-missing-keys-svn2604-151477.patch to fix missing keys
   (Amanpreet Singh Alam, #151477)
-- add xiiimp-pango.patch to see pango instead for xft for status and candidate
-  windows (#158727)
 - iiimgcf-fix-crash-r2421-153020.patch: applied to fix a crash issue. (#153020)
+- iiimgcf-deadkey.patch: applied to get the deadkey working. (#130851)
 - Use %%{_target_platform} instead of %%{_arch}-%%{host_vendor}-%%{_host_os}
   to run update-gtk-immodule properly.
 - define iiim_user macro and use them instead of hardcoded user name.

xiiimp-fix-gcc-warnings.patch:
 KeyMap.h        |    2 --
 XimpConv.c      |    4 ++--
 XimpParser.c    |    2 +-
 XimpRm.c        |    2 +-
 guiIM.h         |    2 --
 guiIMLookup.c   |    2 +-
 guiIMPre.c      |    2 +-
 guiIMSts.c      |    2 +-
 iiimpAuth.c     |    2 --
 iiimpAuth.h     |    2 --
 iiimpAux.c      |    2 --
 iiimpAux.h      |    2 --
 iiimpAuxP.h     |    2 --
 iiimpColor.h    |    2 --
 iiimpDL.c       |    2 +-
 iiimpIC.c       |    2 ++
 iiimpIC.h       |    2 --
 iiimpICG.h      |    2 --
 iiimpIM.c       |    2 +-
 iiimpReq.h      |    2 --
 iiimpTr.h       |    2 --
 iiimpUtil.h     |    2 --
 switchIM.c      |    1 +
 trace_message.c |    2 --
 trace_message.h |    2 --
 xfactory.h      |    2 --
 ximp40.h        |    2 --
 27 files changed, 12 insertions(+), 43 deletions(-)

Index: xiiimp-fix-gcc-warnings.patch
===================================================================
RCS file: /cvs/dist/rpms/im-sdk/FC-3/xiiimp-fix-gcc-warnings.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xiiimp-fix-gcc-warnings.patch	27 Jul 2005 14:10:24 -0000	1.2
+++ xiiimp-fix-gcc-warnings.patch	28 Jul 2005 06:02:16 -0000	1.3
@@ -67,6 +67,18 @@
  #include "commonIM.h"
  #include "xiiimp.h"
  #include <X11/X.h>
+diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c
+--- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c	2004-10-20 18:27:37.000000000 +0900
++++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c	2004-10-21 04:41:23.163949570 +0900
+@@ -1038,7 +1038,7 @@
+ 
+     wc_len = len;
+     if (!(wcstr = Xmalloc(sizeof(wchar_t) * (wc_len + 1))))
+-      return;
++      return False;
+ 
+     out_len = IIimpMbstoWcs(im, candidate, len, wcstr, wc_len, NULL); 
+     if (out_len == 0)
 diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMPre.c im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMPre.c
 --- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMPre.c	2004-10-15 16:43:06.000000000 +0900
 +++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMPre.c	2004-10-21 04:47:58.002873333 +0900
@@ -79,6 +91,18 @@
    int	j;
    int	m;
    int	text_length;
+diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMSts.c im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMSts.c
+--- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/guiIMSts.c	2004-10-20 18:27:37.000000000 +0900
++++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/guiIMSts.c	2004-10-21 04:54:04.671510646 +0900
+@@ -100,7 +100,7 @@
+ 		 GC gc, int x, int y, char *str, int str_len,
+ 		 IMFeedbackList *feedback_list, int feedback_length) {
+   if (fontset == NULL) return;
+-  wchar_t *wcstr = 0, *wcstrp;
++  wchar_t *wcstr = 0, *wcstrp = NULL;
+   size_t wc_len = 0;
+   int out_len = 0;
+   XimCommon im = (XimCommon)ic->core.im;
 diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/iiimpAuth.c im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/iiimpAuth.c
 --- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/iiimpAuth.c	2004-10-15 16:43:05.000000000 +0900
 +++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/iiimpAuth.c	2004-10-21 04:41:48.172652057 +0900
@@ -282,6 +306,18 @@
  #ifdef DEBUG
  #define ENABLE_TRACE
  #endif
+diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/xfactory.h im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/xfactory.h
+--- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/xfactory.h	2004-10-20 18:27:37.000000000 +0900
++++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/xfactory.h	2004-10-21 04:46:14.662503504 +0900
+@@ -47,8 +47,6 @@
+ #ifndef _XFACTORY_H
+ #define _XFACTORY_H
+ 
+-#pragma ident	"@(#)xfactory.h 1.1	99/11/04 SMI"
+-
+ #include <X11/Xft/Xft.h>
+ 
+ extern void	XFactoryRemoveDecoration(Display *display, Window window);
 diff -ruN -x '*.o' -x .deps -x .libs -x '*.a' im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/ximp40.h im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/ximp40.h
 --- im-sdk-src-r12_1.orig/iiimxcf/xiiimp.so/iiimp/ximp40.h	2004-10-15 16:43:05.000000000 +0900
 +++ im-sdk-src-r12_1/iiimxcf/xiiimp.so/iiimp/ximp40.h	2004-10-21 04:43:32.812850651 +0900

xiiimp.so-gcc-warnings.patch:
 iiimxcf/xiiimp.so/iiimp/KeyMap.c      |    4 ++--
 iiimxcf/xiiimp.so/iiimp/XimpConv.c    |   10 ++++++----
 iiimxcf/xiiimp.so/iiimp/guiIMLookup.c |   14 +++++++-------
 iiimxcf/xiiimp.so/iiimp/lookup.c      |    2 +-
 iiimxcf/xiiimp.so/iiimp/popupIM.c     |    2 +-
 include/iiimp/iiimp-opcode.h          |    3 ---
 6 files changed, 17 insertions(+), 18 deletions(-)

Index: xiiimp.so-gcc-warnings.patch
===================================================================
RCS file: /cvs/dist/rpms/im-sdk/FC-3/xiiimp.so-gcc-warnings.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xiiimp.so-gcc-warnings.patch	27 Jul 2005 14:10:24 -0000	1.2
+++ xiiimp.so-gcc-warnings.patch	28 Jul 2005 06:02:16 -0000	1.3
@@ -31,6 +31,56 @@
  	    *state = XLookupNone;
  	    return 0;
  	}
+--- im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c.xiiimp.so-warn	2004-11-05 23:28:36.386198159 +0900
++++ im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/guiIMLookup.c	2004-11-05 23:28:36.439191198 +0900
+@@ -86,12 +86,12 @@
+ 
+   if (feedback & XIMReverse) {
+     if ((xftdraw != NULL) && (xftfont != NULL))
+-      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, wcstrp, out_len); 
++      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, (FcChar32*) wcstrp, out_len); 
+     else 
+       XmbDrawImageString(display, win, fontset, rgc, x, y, str, len);
+   } else {
+     if ((xftdraw != NULL) && (xftfont != NULL))
+-      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, wcstrp, out_len);
++      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, (FcChar32*) wcstrp, out_len);
+     else 
+       XmbDrawImageString(display, win, fontset, gc, x, y, str, len);
+   }
+@@ -141,9 +141,9 @@
+       SetIMColors(ic, display, win, gc, (GC)0, pfeedback, (XIMFeedback)0);
+     }
+     if ((xftdraw != NULL) && (xftfont != NULL)) {
+-      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, wcstrp, 1);
++      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, (FcChar32*) wcstrp, 1);
+       XGlyphInfo extents;
+-      XftTextExtents32(display,xftfont, wcstrp, 1, &extents);
++      XftTextExtents32(display,xftfont, (FcChar32*) wcstrp, 1, &extents);
+       x += extents.xOff; 
+     }
+     else {
+@@ -185,9 +185,9 @@
+     }
+     SetIMColors(ic, display, win, gc, (GC)0, pfeedback, (XIMFeedback)0);
+     if ((xftdraw != NULL) && (xftfont != NULL)) {
+-      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, wcstrp, j);
++      XftDrawString32(xftdraw, &xftcolor, xftfont, x, y, (FcChar32*) wcstrp, j);
+       XGlyphInfo extents;
+-      XftTextExtents32(display,xftfont, wcstrp, j, &extents);
++      XftTextExtents32(display,xftfont, (FcChar32*) wcstrp, j, &extents);
+       x += extents.xOff; 
+     }
+     else {
+@@ -1048,7 +1048,7 @@
+ 
+     if ((lookup->xftdraw != NULL) && (lookup->xftfont != NULL)) {
+       XGlyphInfo extents;
+-      XftTextExtents32(display,lookup->xftfont, candidate, out_len, &extents);
++      XftTextExtents32(display,lookup->xftfont, (FcChar32*) candidate, out_len, &extents);
+       if (lookup->maxWidth < extents.xOff) {
+         lookup->maxWidth = extents.xOff;
+       }
 --- im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/KeyMap.c.xiiimp.so-warn	2004-05-05 03:55:05.000000000 +0900
 +++ im-sdk-r12_1-svn2002/iiimxcf/xiiimp.so/iiimp/KeyMap.c	2004-11-05 23:28:36.438191329 +0900
 @@ -862,12 +862,12 @@


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]