Updated to 1.3.8

This commit is contained in:
Takao Fujiwara 2010-10-23 00:39:25 +09:00
parent 8cbac9cf20
commit 793508187e
8 changed files with 53 additions and 539 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
ibus-1.3.6.tar.gz
/ibus-1.3.7.tar.gz
/ibus-1.3.8.tar.gz

View File

@ -1,6 +1,6 @@
From d4b10b2e9aec0e1fb0674bab70c439ccc91ea07b Mon Sep 17 00:00:00 2001
From de91361ea502c63e54ceb23389b3c88b234f40a0 Mon Sep 17 00:00:00 2001
From: Daiki Ueno <ueno@unixuser.org>
Date: Wed, 29 Sep 2010 13:40:58 +0900
Date: Thu, 21 Oct 2010 18:48:51 +0900
Subject: [PATCH] Support surrounding-text retrieval.
This change adds a new API function ibus_engine_get_surrounding_text().
@ -207,10 +207,10 @@ index b5ab201..1aa9f21 100644
ibus_message_set_sender (message, bus_connection_get_unique_name (connection));
diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
index c104f38..86350f5 100644
index 0bb71b5..eaa4a54 100644
--- a/client/gtk2/ibusimcontext.c
+++ b/client/gtk2/ibusimcontext.c
@@ -107,6 +107,12 @@ static void ibus_im_context_set_cursor_location
@@ -113,6 +113,12 @@ static void ibus_im_context_set_cursor_location
static void ibus_im_context_set_use_preedit
(GtkIMContext *context,
gboolean use_preedit);
@ -223,7 +223,7 @@ index c104f38..86350f5 100644
/* static methods*/
static void _create_input_context (IBusIMContext *context);
@@ -125,15 +131,16 @@ static void _slave_preedit_start_cb (GtkIMContext *slave,
@@ -131,15 +137,16 @@ static void _slave_preedit_start_cb (GtkIMContext *slave,
IBusIMContext *context);
static void _slave_preedit_end_cb (GtkIMContext *slave,
IBusIMContext *context);
@ -242,7 +242,7 @@ index c104f38..86350f5 100644
@@ -200,6 +207,16 @@ ibus_im_context_new (void)
@@ -206,6 +213,16 @@ ibus_im_context_new (void)
return IBUS_IM_CONTEXT (obj);
}
@ -259,7 +259,7 @@ index c104f38..86350f5 100644
static gint
_key_snooper_cb (GtkWidget *widget,
GdkEventKey *event,
@@ -239,6 +256,8 @@ _key_snooper_cb (GtkWidget *widget,
@@ -245,6 +262,8 @@ _key_snooper_cb (GtkWidget *widget,
_input_window = event->window;
}
@ -268,7 +268,7 @@ index c104f38..86350f5 100644
switch (event->type) {
case GDK_KEY_RELEASE:
retval = ibus_input_context_process_key_event (ibuscontext,
@@ -285,6 +304,7 @@ ibus_im_context_class_init (IBusIMContextClass *klass)
@@ -291,6 +310,7 @@ ibus_im_context_class_init (IBusIMContextClass *klass)
im_context_class->set_client_window = ibus_im_context_set_client_window;
im_context_class->set_cursor_location = ibus_im_context_set_cursor_location;
im_context_class->set_use_preedit = ibus_im_context_set_use_preedit;
@ -276,7 +276,7 @@ index c104f38..86350f5 100644
gobject_class->finalize = ibus_im_context_finalize;
_signal_commit_id =
@@ -477,6 +497,8 @@ ibus_im_context_filter_keypress (GtkIMContext *context,
@@ -488,6 +508,8 @@ ibus_im_context_filter_keypress (GtkIMContext *context,
if (ibusimcontext->client_window == NULL && event->window != NULL)
gtk_im_context_set_client_window ((GtkIMContext *)ibusimcontext, event->window);
@ -285,7 +285,7 @@ index c104f38..86350f5 100644
switch (event->type) {
case GDK_KEY_RELEASE:
retval = ibus_input_context_process_key_event (ibusimcontext->ibuscontext,
@@ -541,6 +563,8 @@ ibus_im_context_focus_in (GtkIMContext *context)
@@ -552,6 +574,8 @@ ibus_im_context_focus_in (GtkIMContext *context)
g_object_weak_ref ((GObject *) context, _weak_notify_cb, NULL);
_focus_im_context = context;
}
@ -294,7 +294,7 @@ index c104f38..86350f5 100644
}
static void
@@ -706,6 +730,39 @@ ibus_im_context_set_use_preedit (GtkIMContext *context, gboolean use_preedit)
@@ -723,6 +747,39 @@ ibus_im_context_set_use_preedit (GtkIMContext *context, gboolean use_preedit)
}
static void
@ -334,7 +334,7 @@ index c104f38..86350f5 100644
_bus_connected_cb (IBusBus *bus,
IBusIMContext *ibusimcontext)
{
@@ -724,6 +781,8 @@ _ibus_context_commit_text_cb (IBusInputContext *ibuscontext,
@@ -741,6 +798,8 @@ _ibus_context_commit_text_cb (IBusInputContext *ibuscontext,
IDEBUG ("%s", __FUNCTION__);
g_signal_emit (ibusimcontext, _signal_commit_id, 0, text->text);
@ -343,7 +343,7 @@ index c104f38..86350f5 100644
}
static gboolean
@@ -954,6 +1013,8 @@ _ibus_context_show_preedit_text_cb (IBusInputContext *ibuscontext,
@@ -1013,6 +1072,8 @@ _ibus_context_show_preedit_text_cb (IBusInputContext *ibuscontext,
ibusimcontext->preedit_visible = TRUE;
g_signal_emit (ibusimcontext, _signal_preedit_start_id, 0);
g_signal_emit (ibusimcontext, _signal_preedit_changed_id, 0);
@ -352,7 +352,7 @@ index c104f38..86350f5 100644
}
static void
@@ -1118,17 +1179,21 @@ _slave_preedit_end_cb (GtkIMContext *slave,
@@ -1177,17 +1238,21 @@ _slave_preedit_end_cb (GtkIMContext *slave,
g_signal_emit (ibusimcontext, _signal_preedit_end_id, 0);
}
@ -378,7 +378,7 @@ index c104f38..86350f5 100644
_slave_delete_surrounding_cb (GtkIMContext *slave,
gint offset_from_cursor,
guint nchars,
@@ -1137,9 +1202,10 @@ _slave_delete_surrounding_cb (GtkIMContext *slave,
@@ -1196,9 +1261,10 @@ _slave_delete_surrounding_cb (GtkIMContext *slave,
gboolean return_value;
if (ibusimcontext->enable && ibusimcontext->ibuscontext) {

View File

@ -1,6 +1,6 @@
From 27d62755adfa03c11380414b63d8daa239dda905 Mon Sep 17 00:00:00 2001
From d969e258fc925d16799e34f5b959a15c4c3cb7c3 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Tue, 5 Oct 2010 19:24:46 +0900
Date: Thu, 21 Oct 2010 18:48:45 +0900
Subject: [PATCH] Add XKB layouts
---
@ -16,11 +16,11 @@ Subject: [PATCH] Add XKB layouts
setup/Makefile.am | 1 +
setup/enginecombobox.py | 7 +-
setup/main.py | 3 +
setup/setup.ui | 611 ++++++++++++++++++++++++++++++++++++++-
setup/setup.ui | 609 ++++++++++++++++++++++++++++++++++++++-
setup/xkbsetup.py | 451 ++++++++++++++++++++++++++++
src/ibusfactory.c | 17 +-
src/ibusfactory.h | 5 +-
ui/gtk/panel.py | 38 +++
ui/gtk/panel.py | 39 +++
xkb/Makefile.am | 104 +++++++
xkb/ibus-engine-xkb-main.c | 397 +++++++++++++++++++++++++
xkb/ibus-engine-xkb-main.h | 46 +++
@ -31,7 +31,7 @@ Subject: [PATCH] Add XKB layouts
xkb/xkblib.h | 40 +++
xkb/xkbxml.c | 696 ++++++++++++++++++++++++++++++++++++++++++++
xkb/xkbxml.h | 189 ++++++++++++
27 files changed, 3746 insertions(+), 6 deletions(-)
27 files changed, 3745 insertions(+), 6 deletions(-)
create mode 100644 ibus/xkblayout.py.in
create mode 100644 ibus/xkbxml.py.in
create mode 100644 setup/xkbsetup.py
@ -72,7 +72,7 @@ index 7895940..9f534a4 100644
ACLOCAL_AMFLAGS = -I m4
diff --git a/configure.ac b/configure.ac
index 9cd60a3..b20c5ee 100644
index 03b7c03..94e6eab 100644
--- a/configure.ac
+++ b/configure.ac
@@ -168,6 +168,57 @@ else
@ -133,7 +133,7 @@ index 9cd60a3..b20c5ee 100644
# GObject introspection
GOBJECT_INTROSPECTION_CHECK([0.6.8])
@@ -387,6 +438,7 @@ gconf/Makefile
@@ -380,6 +431,7 @@ gconf/Makefile
gconf/gconf.xml.in
bindings/Makefile
bindings/vala/Makefile
@ -141,7 +141,7 @@ index 9cd60a3..b20c5ee 100644
])
AC_OUTPUT
@@ -401,6 +453,7 @@ Build options:
@@ -394,6 +446,7 @@ Build options:
Build gtk2 immodule $enable_gtk2
Build gtk3 immodule $enable_gtk3
Build XIM agent server $enable_xim
@ -150,7 +150,7 @@ index 9cd60a3..b20c5ee 100644
Build gconf modules $enable_gconf
Build memconf modules $enable_memconf
diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in
index fae710a..af0cfad 100644
index 9e92181..26ee970 100644
--- a/data/ibus.schemas.in
+++ b/data/ibus.schemas.in
@@ -194,6 +194,42 @@
@ -952,7 +952,7 @@ index c6612d2..228b030 100644
engine = self.__combobox.get_active_engine()
button = self.__builder.get_object("button_engine_add")
diff --git a/setup/setup.ui b/setup/setup.ui
index 703b4d8..b08a3e2 100644
index 703b4d8..a758bc7 100644
--- a/setup/setup.ui
+++ b/setup/setup.ui
@@ -129,7 +129,6 @@
@ -1045,7 +1045,7 @@ index 703b4d8..b08a3e2 100644
</object>
</child>
</object>
@@ -958,4 +1007,560 @@ Homepage: http://code.google.com/p/ibus
@@ -958,4 +1007,558 @@ Homepage: http://code.google.com/p/ibus
</object>
</child>
</object>
@ -1053,7 +1053,6 @@ index 703b4d8..b08a3e2 100644
+ <property name="title" translatable="yes">Add or Remove Layouts</property>
+ <property name="icon_name">ibus-setup</property>
+ <child internal-child="vbox">
+
+ <object class="GtkVBox" id="vbox101">
+ <property name="orientation">vertical</property>
+ <property name="visible">True</property>
@ -1221,7 +1220,6 @@ index 703b4d8..b08a3e2 100644
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
+ <child>
+
+ <object class="EngineTreeView" id="treeview_system_keyboard_layout_engines">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
@ -2132,10 +2130,10 @@ index 515083d..42c29b9 100644
/**
diff --git a/ui/gtk/panel.py b/ui/gtk/panel.py
index 0efc85b..3f1e814 100644
index e1efd54..159e8aa 100644
--- a/ui/gtk/panel.py
+++ b/ui/gtk/panel.py
@@ -121,6 +121,22 @@ class Panel(ibus.PanelBase):
@@ -120,6 +120,22 @@ class Panel(ibus.PanelBase):
self.__config_load_show_im_name()
# self.__bus.request_name(ibus.panel.IBUS_SERVICE_PANEL, 0)
@ -2156,9 +2154,9 @@ index 0efc85b..3f1e814 100644
+ self.__xkblayout.set_default_option(value)
+
def set_cursor_location(self, x, y, w, h):
self.__candidate_panel.set_cursor_location(x + w, y + h)
self.__candidate_panel.set_cursor_location(x, y, w, h)
@@ -205,14 +221,20 @@ class Panel(ibus.PanelBase):
@@ -204,14 +220,20 @@ class Panel(ibus.PanelBase):
if not enabled:
self.__set_im_icon(ICON_KEYBOARD)
self.__set_im_name(None)
@ -2179,7 +2177,7 @@ index 0efc85b..3f1e814 100644
self.__language_bar.focus_in()
def focus_out(self, ic):
@@ -222,6 +244,8 @@ class Panel(ibus.PanelBase):
@@ -221,6 +243,8 @@ class Panel(ibus.PanelBase):
self.__language_bar.focus_out()
self.__set_im_icon(ICON_KEYBOARD)
self.__set_im_name(None)
@ -2188,7 +2186,7 @@ index 0efc85b..3f1e814 100644
def state_changed(self):
if not self.__focus_ic:
@@ -234,14 +258,20 @@ class Panel(ibus.PanelBase):
@@ -233,14 +257,20 @@ class Panel(ibus.PanelBase):
self.reset()
self.__set_im_icon(ICON_KEYBOARD)
self.__set_im_name(None)
@ -2209,10 +2207,10 @@ index 0efc85b..3f1e814 100644
def reset(self):
@@ -517,4 +547,12 @@ class Panel(ibus.PanelBase):
return
self.__setup_pid = 0
self.__setup_pid = os.spawnl(os.P_NOWAIT, self.__setup_cmd, "ibus-setup")
@@ -516,2 +546,11 @@ class Panel(ibus.PanelBase):
self.__setup_pid = pid
glib.child_watch_add(self.__setup_pid, self.__child_watch_cb)
+
+ def __engine_get_layout_wrapper(self, engine):
+ # This code is for the back compatibility.
+ # Should we remove the codes after all IM engines are changed
@ -2221,7 +2219,6 @@ index 0efc85b..3f1e814 100644
+ return engine.layout
+ else:
+ return "default"
diff --git a/xkb/Makefile.am b/xkb/Makefile.am
new file mode 100644
index 0000000..49b82eb

View File

@ -1,27 +0,0 @@
From 85565b7a146e5ccbd484273b647b6195b6c08b03 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Thu, 2 Sep 2010 12:58:42 +0900
Subject: [PATCH] Fix segv in bus_engine_proxy_process_key_event_reply_cb
---
bus/engineproxy.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/bus/engineproxy.c b/bus/engineproxy.c
index adda91c..64dda4f 100644
--- a/bus/engineproxy.c
+++ b/bus/engineproxy.c
@@ -564,7 +564,9 @@ bus_engine_proxy_process_key_event_reply_cb (IBusPendingCall *pending,
/* reply timeout */
IBusObject *connection;
connection = (IBusObject *) ibus_proxy_get_connection ((IBusProxy *)call_data->engine);
- ibus_object_destroy (connection);
+ if (connection) {
+ ibus_object_destroy (connection);
+ }
}
g_warning ("%s: %s", error->name, error->message);
ibus_error_free (error);
--
1.7.2.1

View File

@ -1,27 +0,0 @@
From 888189eba783ac014e7c367004a70dad6f7b8ac0 Mon Sep 17 00:00:00 2001
From: Peng Huang <shawn.p.huang@gmail.com>
Date: Mon, 6 Sep 2010 17:17:24 +0800
Subject: [PATCH] Fix memory leak in ibus_input_context_process_key_event by Fujiwarat
---
src/ibusinputcontext.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/src/ibusinputcontext.c b/src/ibusinputcontext.c
index 6755727..7359de0 100644
--- a/src/ibusinputcontext.c
+++ b/src/ibusinputcontext.c
@@ -775,6 +775,10 @@ _process_key_event_reply_cb (IBusPendingCall *pending,
call_data->keycode,
call_data->state | IBUS_FORWARD_MASK);
}
+
+ if (reply_message != NULL) {
+ dbus_message_unref (reply_message);
+ }
}
static void
--
1.7.2.1

View File

@ -1,414 +0,0 @@
From 9a6f41415b774541c69cb45cec96839b7228fe70 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Wed, 13 Oct 2010 14:05:02 +0900
Subject: [PATCH] Fix a build error with GTK3 gdkkeysyms.h
Fix a build error of IBus-1.0.gir with gobject-introspection 0.9.6
---
bus/dbusimpl.h | 4 ++--
bus/main.c | 1 +
bus/matchrule.c | 6 +++---
bus/matchrule.h | 4 ++--
bus/server.c | 1 +
client/gtk2/ibusimcontext.c | 47 +++++++++++++++++++++++++++++++++++++++++++
configure.ac | 13 +++++++++++++
src/Makefile.am | 2 +-
src/ibusdbus.h | 39 +++++++++++++++++++++++++++++++++++----
src/ibusenumtypes.c.template | 1 +
src/ibuserror.c | 2 +-
src/ibuserror.h | 12 +-----------
src/ibusmessage.h | 14 --------------
src/ibuspendingcall.h | 7 -------
14 files changed, 108 insertions(+), 45 deletions(-)
diff --git a/bus/dbusimpl.h b/bus/dbusimpl.h
index d3409fa..da332d0 100644
--- a/bus/dbusimpl.h
+++ b/bus/dbusimpl.h
@@ -80,10 +80,10 @@ BusConnection *bus_dbus_impl_get_connection_by_name
(BusDBusImpl *dbus,
const gchar *name);
void bus_dbus_impl_dispatch_message (BusDBusImpl *dbus,
- DBusMessage *message);
+ IBusMessage *message);
void bus_dbus_impl_dispatch_message_by_rule
(BusDBusImpl *dbus,
- DBusMessage *message,
+ IBusMessage *message,
BusConnection *skip_connection);
gboolean bus_dbus_impl_register_object (BusDBusImpl *dbus,
IBusService *object);
diff --git a/bus/main.c b/bus/main.c
index 852f6aa..c9821b8 100644
--- a/bus/main.c
+++ b/bus/main.c
@@ -20,6 +20,7 @@
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
+#include <dbus/dbus.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
diff --git a/bus/matchrule.c b/bus/matchrule.c
index 1c0205d..eb51323 100644
--- a/bus/matchrule.c
+++ b/bus/matchrule.c
@@ -414,7 +414,7 @@ bus_match_rule_set_arg (BusMatchRule *rule,
gboolean
bus_match_rule_match (BusMatchRule *rule,
- DBusMessage *message)
+ IBusMessage *message)
{
g_assert (rule != NULL);
g_assert (message != NULL);
@@ -451,7 +451,7 @@ bus_match_rule_match (BusMatchRule *rule,
if (rule->flags & MATCH_ARGS) {
guint i;
- DBusMessageIter iter;
+ IBusMessageIter iter;
ibus_message_iter_init (message, &iter);
@@ -626,7 +626,7 @@ bus_match_rule_remove_recipient (BusMatchRule *rule,
GList *
bus_match_rule_get_recipients (BusMatchRule *rule,
- DBusMessage *message)
+ IBusMessage *message)
{
g_assert (BUS_IS_MATCH_RULE (rule));
g_assert (message != NULL);
diff --git a/bus/matchrule.h b/bus/matchrule.h
index ddaa7de..4743b81 100644
--- a/bus/matchrule.h
+++ b/bus/matchrule.h
@@ -107,7 +107,7 @@ gboolean bus_match_rule_set_arg (BusMatchRule *rule,
guint arg_i,
const gchar *arg);
gboolean bus_match_rule_match (BusMatchRule *rule,
- DBusMessage *message);
+ IBusMessage *message);
gboolean bus_match_rule_is_equal (BusMatchRule *a,
BusMatchRule *b);
void bus_match_rule_add_recipient
@@ -118,7 +118,7 @@ void bus_match_rule_remove_recipient
BusConnection *connection);
GList *bus_match_rule_get_recipients
(BusMatchRule *rule,
- DBusMessage *message);
+ IBusMessage *message);
G_END_DECLS
#endif
diff --git a/bus/server.c b/bus/server.c
index b611738..5af6dbf 100644
--- a/bus/server.c
+++ b/bus/server.c
@@ -19,6 +19,7 @@
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
+#include <dbus/dbus.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
diff --git a/client/gtk3/ibusimcontext.c b/client/gtk3/ibusimcontext.c
index c104f38..a7a2c59 100644
--- a/client/gtk3/ibusimcontext.c
+++ b/client/gtk3/ibusimcontext.c
@@ -24,6 +24,7 @@
# include <config.h>
#endif
+#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include <gdk/gdkx.h>
#include <sys/types.h>
@@ -34,6 +35,10 @@
#include <ibus.h>
#include "ibusimcontext.h"
+#if !GTK_CHECK_VERSION (2, 90, 7)
+# define DEPRECATED_GDK_KEYSYMS 1
+#endif
+
#ifdef DEBUG
# define IDEBUG g_debug
#else
@@ -733,6 +738,7 @@ _key_is_modifier (guint keyval)
* really should be implemented */
switch (keyval) {
+#ifdef DEPRECATED_GDK_KEYSYMS
case GDK_Shift_L:
case GDK_Shift_R:
case GDK_Control_L:
@@ -759,6 +765,34 @@ _key_is_modifier (guint keyval)
case GDK_ISO_Group_Latch:
case GDK_ISO_Group_Lock:
return TRUE;
+#else
+ case GDK_KEY_Shift_L:
+ case GDK_KEY_Shift_R:
+ case GDK_KEY_Control_L:
+ case GDK_KEY_Control_R:
+ case GDK_KEY_Caps_Lock:
+ case GDK_KEY_Shift_Lock:
+ case GDK_KEY_Meta_L:
+ case GDK_KEY_Meta_R:
+ case GDK_KEY_Alt_L:
+ case GDK_KEY_Alt_R:
+ case GDK_KEY_Super_L:
+ case GDK_KEY_Super_R:
+ case GDK_KEY_Hyper_L:
+ case GDK_KEY_Hyper_R:
+ case GDK_KEY_ISO_Lock:
+ case GDK_KEY_ISO_Level2_Latch:
+ case GDK_KEY_ISO_Level3_Shift:
+ case GDK_KEY_ISO_Level3_Latch:
+ case GDK_KEY_ISO_Level3_Lock:
+ case GDK_KEY_ISO_Level5_Shift:
+ case GDK_KEY_ISO_Level5_Latch:
+ case GDK_KEY_ISO_Level5_Lock:
+ case GDK_KEY_ISO_Group_Shift:
+ case GDK_KEY_ISO_Group_Latch:
+ case GDK_KEY_ISO_Group_Lock:
+ return TRUE;
+#endif
default:
return FALSE;
}
@@ -789,7 +823,11 @@ _create_gdk_event (IBusIMContext *ibusimcontext,
event->group = 0;
event->is_modifier = _key_is_modifier (keyval);
+#ifdef DEPRECATED_GDK_KEYSYMS
if (keyval != GDK_VoidSymbol)
+#else
+ if (keyval != GDK_KEY_VoidSymbol)
+#endif
c = gdk_keyval_to_unicode (keyval);
if (c) {
@@ -819,12 +857,21 @@ _create_gdk_event (IBusIMContext *ibusimcontext,
NULL);
if (event->string)
event->length = bytes_written;
+#ifdef DEPRECATED_GDK_KEYSYMS
} else if (keyval == GDK_Escape) {
+#else
+ } else if (keyval == GDK_KEY_Escape) {
+#endif
event->length = 1;
event->string = g_strdup ("\033");
}
+#ifdef DEPRECATED_GDK_KEYSYMS
else if (keyval == GDK_Return ||
keyval == GDK_KP_Enter) {
+#else
+ else if (keyval == GDK_KEY_Return ||
+ keyval == GDK_KEY_KP_Enter) {
+#endif
event->length = 1;
event->string = g_strdup ("\r");
}
diff --git a/configure.ac b/configure.ac
index 3346d0c..3d87484 100644
--- a/configure.ac
+++ b/configure.ac
@@ -171,6 +171,18 @@ fi
# GObject introspection
GOBJECT_INTROSPECTION_CHECK([0.6.8])
+IBUS_GIR_SCANNERFLAGS=
+if test x"$found_introspection" = x"yes" ; then
+ IBUS_GIR_SCANNERFLAGS="--identifier-prefix=IBus --symbol-prefix=ibus"
+ PKG_CHECK_EXISTS([gobject-introspection-1.0 >= 0.9.6],
+ [gir_symbol_prefix=yes],
+ [gir_symbol_prefix=no])
+ if test x"$gir_symbol_prefix" = x"no" ; then
+ IBUS_GIR_SCANNERFLAGS="--strip-prefix=IBus"
+ fi
+fi
+AC_SUBST(IBUS_GIR_SCANNERFLAGS)
+
# check for gtk-doc
GTK_DOC_CHECK(1.9)
if test x"$enable_gtk_doc" = x"no"; then
@@ -386,6 +398,7 @@ Build options:
Build gconf modules $enable_gconf
Build memconf modules $enable_memconf
Build introspection $found_introspection
+ IBus-1.0.gir scannerflags "$IBUS_GIR_SCANNERFLAGS"
Build vala binding $enable_vala
Build document $enable_gtk_doc
Enable key snooper $enable_key_snooper
diff --git a/src/Makefile.am b/src/Makefile.am
index 5fb24a4..c45a588 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -138,7 +138,7 @@ introspection_files = \
ibusenumtypes.h \
$(NULL)
IBus-1.0.gir: $(ibustargetlib) Makefile
-IBus_1_0_gir_SCANNERFLAGS = --strip-prefix=IBus --pkg=dbus-1,glib-2.0
+IBus_1_0_gir_SCANNERFLAGS = --pkg=glib-2.0 $(IBUS_GIR_SCANNERFLAGS)
IBus_1_0_gir_INCLUDES = GLib-2.0 GObject-2.0
IBus_1_0_gir_LIBS = $(ibustargetlib)
IBus_1_0_gir_FILES = $(addprefix $(srcdir)/,$(introspection_files))
diff --git a/src/ibusdbus.h b/src/ibusdbus.h
index 3cf99a2..88aa791 100644
--- a/src/ibusdbus.h
+++ b/src/ibusdbus.h
@@ -32,13 +32,44 @@
G_BEGIN_DECLS
#ifndef DBUS_H
-typedef struct DBusError DBusError;
-typedef struct DBusMessage DBusMessage;
-typedef struct DBusMessageIter DBusMessageIter;
-typedef struct DBusPendingCall DBusPendingCall;
+typedef struct IBusError IBusError;
+typedef struct IBusMessage IBusMessage;
+typedef struct IBusMessageIter IBusMessageIter;
+typedef struct IBusPendingCall IBusPendingCall;
typedef struct DBusServer DBusServer;
typedef struct DBusConnection DBusConnection;
#else
+/**
+ * IBusError:
+ *
+ * A data type representing an IBusError.
+ * An IBusError is actually a #DBusError.
+ *
+ * @see_also: #DBusError for detail structure definition.
+ */
+typedef DBusError IBusError;
+
+/**
+ * IBusMessage:
+ *
+ * An opaque data structure that represents IBusMessage.
+ */
+typedef DBusMessage IBusMessage;
+
+/**
+ * IBusMessageIter:
+ *
+ * An opaque data structure that represents IBusMessageIter.
+ */
+typedef DBusMessageIter IBusMessageIter;
+
+/**
+ * IBusPendingCall:
+ *
+ * An opaque data structure that represents IBusPendingCall.
+ */
+typedef DBusPendingCall IBusPendingCall;
+
#endif
G_END_DECLS
diff --git a/src/ibusenumtypes.c.template b/src/ibusenumtypes.c.template
index 9f607a0..a526bd1 100644
--- a/src/ibusenumtypes.c.template
+++ b/src/ibusenumtypes.c.template
@@ -1,4 +1,5 @@
/*** BEGIN file-header ***/
+#include <dbus/dbus.h>
#include "ibus.h"
/*** END file-header ***/
diff --git a/src/ibuserror.c b/src/ibuserror.c
index a721a47..e701a17 100644
--- a/src/ibuserror.c
+++ b/src/ibuserror.c
@@ -63,7 +63,7 @@ ibus_error_new_from_printf (const gchar *name,
}
IBusError *
-ibus_error_new_from_message (DBusMessage *message)
+ibus_error_new_from_message (IBusMessage *message)
{
g_assert (message != NULL);
diff --git a/src/ibuserror.h b/src/ibuserror.h
index a3f75f2..8de6ae0 100644
--- a/src/ibuserror.h
+++ b/src/ibuserror.h
@@ -36,16 +36,6 @@
G_BEGIN_DECLS
/**
- * IBusError:
- *
- * A data type representing an IBusError.
- * An IBusError is actually a #DBusError.
- *
- * @see_also: #DBusError for detail structure definition.
- */
-typedef DBusError IBusError;
-
-/**
* ibus_error_new:
* @returns: A newly allocated IBusError.
*
@@ -85,7 +75,7 @@ IBusError *ibus_error_new_from_printf (const gchar *name,
* New an IBusError from a #IBusMessage.
*/
IBusError *ibus_error_new_from_message
- (DBusMessage *message);
+ (IBusMessage *message);
/**
* ibus_error_free:
diff --git a/src/ibusmessage.h b/src/ibusmessage.h
index 584d497..f4bdb3a 100644
--- a/src/ibusmessage.h
+++ b/src/ibusmessage.h
@@ -77,20 +77,6 @@
G_BEGIN_DECLS
/**
- * IBusMessage:
- *
- * An opaque data structure that represents IBusMessage.
- */
-typedef DBusMessage IBusMessage;
-
-/**
- * IBusMessageIter:
- *
- * An opaque data structure that represents IBusMessageIter.
- */
-typedef DBusMessageIter IBusMessageIter;
-
-/**
* ibus_type_get_object_path:
* @returns: Type of object path.
*
diff --git a/src/ibuspendingcall.h b/src/ibuspendingcall.h
index d74c921..650ba4f 100644
--- a/src/ibuspendingcall.h
+++ b/src/ibuspendingcall.h
@@ -41,13 +41,6 @@
G_BEGIN_DECLS
/**
- * IBusPendingCall:
- *
- * An opaque data structure that represents IBusPendingCall.
- */
-typedef DBusPendingCall IBusPendingCall;
-
-/**
* IBusPendingCallNotifyFunction:
* @pending: An IBusPendingCall.
* @user_data: User data for the callback function.
--
1.7.2.1

View File

@ -10,8 +10,8 @@
%define im_chooser_version 1.2.5
Name: ibus
Version: 1.3.7
Release: 11%{?dist}
Version: 1.3.8
Release: 1%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPLv2+
Group: System Environment/Libraries
@ -19,13 +19,10 @@ URL: http://code.google.com/p/ibus/
Source0: http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
Source1: xinput-ibus
# Patch0: ibus-HEAD.patch
Patch1: ibus-621795-engineproxy-segv.patch
Patch2: ibus-626652-leak.patch
Patch3: ibus-xx-g-ir-compiler.patch
# Patch4: ibus-xx-va_list.patch
# Patch5: ibus-530711-preload-sys.patch
Patch6: ibus-541492-xkb.patch
Patch7: ibus-435880-surrounding-text.patch
# Patch1: ibus-xx-va_list.patch
# Patch2: ibus-530711-preload-sys.patch
Patch3: ibus-541492-xkb.patch
Patch4: ibus-435880-surrounding-text.patch
# WORKAROUND_GTK3_BUILD_FAILURE @ fedora14
Patch99: ibus-xx-workaround-gtk3.patch
@ -134,15 +131,12 @@ The ibus-devel-docs package contains developer documentation for ibus
%prep
%setup -q
# %patch0 -p1
%patch1 -p1 -b .segv
%patch2 -p1 -b .leak
%patch3 -p1 -b .gir
# %patch4 -p1 -b .valist
# %patch5 -p1 -b .preload-sys
# %patch1 -p1 -b .valist
# %patch2 -p1 -b .preload-sys
%if %have_libxkbfile
%patch6 -p1 -b .xkb
%patch3 -p1 -b .xkb
%endif
%patch7 -p1 -b .surrounding
%patch4 -p1 -b .surrounding
#### start WORKAROUND_GTK3_BUILD_FAILURE
WORKAROUND_GTK3_BUILD_FAILURE=0
@ -301,27 +295,17 @@ fi
%{_datadir}/gtk-doc/html/*
%changelog
* Thu Oct 07 2010 Takao Fujiwara <tfujiwar@redhat.com> - 1.3.7-11
- Added ibus-xx-g-ir-compiler.patch to fix g-ir-compiler error.
- Updated ibus-435880-surrounding-text.patch
Fixes Bug 634829 - ibus_im_context_set_surrounding() to get strings.
- Updated ibus-541492-xkb.patch
Fixed a bug when changed the system layout "jp(kana)" to "jp".
- Added ibus-xx-workaround-gtk3.patch
Workaround for f14 http://koji.fedoraproject.org/koji/taskinfo?taskID=2516604
* Tue Sep 14 2010 Takao Fujiwara <tfujiwar@redhat.com> - 1.3.7-5
- Added ibus-621795-engineproxy-segv.patch
Fixes crash in ibus_object_destroy
- Added ibus-626652-leak.patch
Fixes Bug 626652 - ibus memory leak with ibus_input_context_process_key_event
* Fri Oct 22 2010 Takao Fujiwara <tfujiwar@redhat.com> - 1.3.8-1
- Updated to 1.3.8
- Added ibus-541492-xkb.patch
Fixes Bug 541492 - ibus needs to support some xkb layout switching
- Added ibus-435880-surrounding-text.patch
Fixes Bug 435880 - ibus-gtk requires surrounding-text support
- Added ibus-xx-workaround-gtk3.patch
Workaround for f14 http://koji.fedoraproject.org/koji/taskinfo?taskID=2516604
* Mon Aug 23 2010 Takao Fujiwara <tfujiwar@redhat.com> - 1.3.7-1
- Update to 1.3.7
- Updated to 1.3.7
* Wed Jul 28 2010 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1.3.6-5
- Rebuild against python 2.7

View File

@ -1 +1 @@
5a2acbda6cad23f6403c88347ac60e2d ibus-1.3.7.tar.gz
6d345268e3496f2e6be3a6f3a3ba19ea ibus-1.3.8.tar.gz