[caribou/imcontext: 8/9] Added GTK2 IMContext



commit ed974f9515d3ab5e08f3af1c244e29be71fa351f
Author: Eitan Isaacson <eitan monotonous org>
Date:   Fri Jun 3 18:07:56 2011 -0700

    Added GTK2 IMContext

 configure.ac                   |    1 +
 im/Makefile.am                 |    2 +-
 im/gtk2/Makefile.am            |   30 ++++++++++++++++++++++++++++++
 im/gtk2/caribou-im.c           |    1 +
 im/gtk2/caribou-imcontext.vala |    1 +
 im/gtk3/Makefile.am            |    2 +-
 im/gtk3/caribou-imcontext.vala |   11 +++++++----
 7 files changed, 42 insertions(+), 6 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 8babf66..1b9ed9d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -115,4 +115,5 @@ data/layouts/scan/Makefile
 libcaribou/Makefile
 im/Makefile
 im/gtk3/Makefile
+im/gtk2/Makefile
 ])
diff --git a/im/Makefile.am b/im/Makefile.am
index 8c1607e..24e42e7 100644
--- a/im/Makefile.am
+++ b/im/Makefile.am
@@ -1 +1 @@
-SUBDIRS = gtk3
+SUBDIRS = gtk3 gtk2
diff --git a/im/gtk2/Makefile.am b/im/gtk2/Makefile.am
new file mode 100644
index 0000000..fe164fd
--- /dev/null
+++ b/im/gtk2/Makefile.am
@@ -0,0 +1,30 @@
+immoduledir = @GTK2_IM_MODULEDIR@
+immodule_LTLIBRARIES = im-caribou.la
+
+im_caribou_la_SOURCES = \
+	caribou-imcontext.vala \
+	caribou-im.c \
+	$(NULL)
+
+im_caribou_la_VALAFLAGS = \
+	-h caribou-imcontext.h \
+	--pkg gtk+-2.0 \
+	-D GTK2 \
+	$(VALAGLAFS)
+
+im_caribou_la_CFLAGS = \
+        @GTK2_CFLAGS@ \
+        -DG_LOG_DOMAIN=\"CARIBOU\" \
+        $(NULL)
+
+im_caribou_la_LIBADD = \
+        @GTK2_LIBS@ \
+        $(NULL)
+
+im_caribou_la_LDFLAGS = \
+        -avoid-version \
+        -module \
+        $(NULL)
+
+EXTRA_DIST = \
+        $(NULL)
diff --git a/im/gtk2/caribou-im.c b/im/gtk2/caribou-im.c
new file mode 120000
index 0000000..a34663a
--- /dev/null
+++ b/im/gtk2/caribou-im.c
@@ -0,0 +1 @@
+../gtk3/caribou-im.c
\ No newline at end of file
diff --git a/im/gtk2/caribou-imcontext.vala b/im/gtk2/caribou-imcontext.vala
new file mode 120000
index 0000000..210161a
--- /dev/null
+++ b/im/gtk2/caribou-imcontext.vala
@@ -0,0 +1 @@
+../gtk3/caribou-imcontext.vala
\ No newline at end of file
diff --git a/im/gtk3/Makefile.am b/im/gtk3/Makefile.am
index 5f2780f..9cd956c 100644
--- a/im/gtk3/Makefile.am
+++ b/im/gtk3/Makefile.am
@@ -2,8 +2,8 @@ immoduledir = @GTK3_IM_MODULEDIR@
 immodule_LTLIBRARIES = im-caribou.la
 
 im_caribou_la_SOURCES = \
-	caribou-im.c \
 	caribou-imcontext.vala \
+	caribou-im.c \
 	$(NULL)
 
 im_caribou_la_VALAFLAGS = \
diff --git a/im/gtk3/caribou-imcontext.vala b/im/gtk3/caribou-imcontext.vala
index 621ec19..e2a9ec0 100644
--- a/im/gtk3/caribou-imcontext.vala
+++ b/im/gtk3/caribou-imcontext.vala
@@ -15,14 +15,17 @@ namespace Caribou {
         }
 
         public override void focus_in () {
-            int x, y;
+            int x, y, w, h;
             window.get_origin (out x, out y);
+#if GTK2
+            window.get_geometry (null, null, out w, out h, null);
+#else
+            window.get_geometry (null, null, out w, out h);
+#endif
             stdout.printf ("focus_in %d %d\n", x, y);
             try {
                 keyboard.show ();
-                keyboard.set_entry_location (x, y,
-                                             window.get_width (),
-                                             window.get_height ());
+                keyboard.set_entry_location (x, y, w, h);
             } catch (IOError e) {
                 stderr.printf ("%s\n", e.message);
             }



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