[packages/ibus] - updated to stable 1.4.2 + ibus-gjs 3.4.1.20120815 - updated xx-bridge-hotkey,xkb patches - removed

qboosh qboosh at pld-linux.org
Wed Sep 5 18:38:43 CEST 2012


commit 36809d14cec32af4409348bafd02b19b453147cf
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Wed Sep 5 18:38:54 2012 +0200

    - updated to stable 1.4.2 + ibus-gjs 3.4.1.20120815
    - updated xx-bridge-hotkey,xkb patches
    - removed obsolete HEAD,711632-fedora-fallback-icon patches
    - separated python-,vala-,-static,-apidocs packages

 ibus-541492-xkb.patch                  |   2 +-
 ibus-711632-fedora-fallback-icon.patch |  23 --
 ibus-HEAD.patch                        | 696 ---------------------------------
 ibus-xx-bridge-hotkey.patch            |   8 +-
 ibus.spec                              | 240 ++++++++----
 5 files changed, 169 insertions(+), 800 deletions(-)
---
diff --git a/ibus.spec b/ibus.spec
index 1851f9f..ae782e3 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -1,63 +1,62 @@
 # TODO
-# - clean .py
+# - clean .py in %{_datadir}/{setup,ui/gtk} if possible
 #
 # Conditional build:
 %bcond_without	gjsfile		# https://bugzilla.redhat.com/show_bug.cgi?id=657165
-
-%define		ibus_gjs_version	3.1.4.20110823
+%bcond_without	static_libs	# don't build static library
+#
+%define		ibus_gjs_version	3.4.1.20120815
 Summary:	Intelligent Input Bus for Linux OS
+Summary(pl.UTF-8):	IBus - inteligentna szyna wejściowa dla Linuksa
 Name:		ibus
-Version:	1.3.99.20110817
+Version:	1.4.2
 Release:	1
 License:	LGPL v2+
 Group:		Libraries
-URL:		http://code.google.com/p/ibus/
+#Source0Download: http://code.google.com/p/ibus/downloads/list
 Source0:	http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
-# Source0-md5:	52614e55e966b7c7101a19b276c51f10
+# Source0-md5:	4cc29edea599d465e1ee53c39da27a57
 Source1:	%{name}.xinputd
 Source100:	http://fujiwara.fedorapeople.org/ibus/gnome-shell/%{name}-gjs-%{ibus_gjs_version}.tar.gz
-# Source100-md5:	e97be8e1d0b22531b5000d4a6349dbbe
-Patch0:		%{name}-HEAD.patch
-Patch1:		%{name}-530711-preload-sys.patch
-Patch2:		%{name}-541492-xkb.patch
-Patch3:		%{name}-xx-bridge-hotkey.patch
-Patch4:		%{name}-xx-setup-frequent-lang.patch
-# Workaround for oxygen-gtk icon theme until bug 699103 is fixed.
-Patch91:	%{name}-711632-fedora-fallback-icon.patch
-BuildRequires:	GConf2-devel
-BuildRequires:	autoconf
-BuildRequires:	automake
-BuildRequires:	dbus-glib-devel
+# Source100-md5:	8acf4ac4d1a7dfb9a0af9e755a8e7dba
+Patch0:		%{name}-530711-preload-sys.patch
+Patch1:		%{name}-541492-xkb.patch
+Patch2:		%{name}-xx-bridge-hotkey.patch
+Patch3:		%{name}-xx-setup-frequent-lang.patch
+URL:		http://code.google.com/p/ibus/
+BuildRequires:	GConf2-devel >= 2.12
+BuildRequires:	autoconf >= 2.62
+BuildRequires:	automake >= 1:1.10
 BuildRequires:	desktop-file-utils
 BuildRequires:	gettext-devel
-BuildRequires:	gtk+2-devel
-BuildRequires:	gtk+3-devel
-BuildRequires:	gtk-doc
-BuildRequires:	intltool
+BuildRequires:	glib2-devel >= 1:2.26.0
+BuildRequires:	gobject-introspection-devel >= 0.6.8
+BuildRequires:	gtk+2-devel >= 2.0
+BuildRequires:	gtk+3-devel >= 3.0
+BuildRequires:	gtk-doc >= 1.9
+BuildRequires:	intltool >= 0.35.0
 BuildRequires:	iso-codes
 BuildRequires:	libtool
-BuildRequires:	python
+BuildRequires:	python >= 1:2.5
 BuildRequires:	python-dbus-devel >= 0.83.0
 BuildRequires:	python-pygobject-devel
 BuildRequires:	rpm-pythonprov
 BuildRequires:	rpmbuild(macros) >= 1.596
+BuildRequires:	xorg-lib-libX11-devel
 BuildRequires:	xorg-lib-libxkbfile-devel
-Requires:	%{name}-gtk2 = %{version}-%{release}
-Requires:	%{name}-gtk3 = %{version}-%{release}
 Requires:	%{name}-libs = %{version}-%{release}
-Requires:	GConf2
+Requires:	GConf2 >= 2.12
+Requires:	dbus >= 1.2.4
 Requires:	gtk-update-icon-cache
 Requires:	hicolor-icon-theme
 Requires:	im-chooser
 Requires:	iso-codes
-Requires:	python-dbus >= 0.83.0
+Requires:	python-ibus = %{version}-%{release}
 Requires:	python-pygtk-gtk
 Requires:	python-pynotify
-Requires:	python-pyxdg
 # input-keyboard-symbolic icon
 Suggests:	gnome-icon-theme-symbolic
-Requires(post):	GConf2
-Requires(preun):	GConf2
+Requires(post,preun):	GConf2
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		_libexecdir	%{_libdir}/ibus
@@ -66,42 +65,55 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 IBus means Intelligent Input Bus. It is an input framework for Linux
 OS.
 
+%description -l pl.UTF-8
+IBus (Intelligent Input Bus) to inteligentna szyna wejściowa. Jest to
+szkielet wprowadzania tekstu dla Linuksa.
+
 %package libs
-Summary:	IBus libraries
+Summary:	IBus library
+Summary(pl.UTF-8):	Biblioteka IBus
 Group:		Libraries
-Requires:	dbus >= 1.2.4
 Requires:	glib2 >= 1:2.26.0
 
 %description libs
-This package contains the libraries for IBus
+This package contains the IBus shared library.
+
+%description libs -l pl.UTF-8
+Ten pakiet zawiera bibliotekę współdzieloną IBus.
 
 %package gtk2
-Summary:	IBus im module for gtk2
+Summary:	IBus im module for GTK+ 2.x
+Summary(pl.UTF-8):	Moduł im IBus dla GTK+ 2.x
 Group:		Libraries
 Requires:	%{name} = %{version}-%{release}
-Requires:	%{name}-libs = %{version}-%{release}
 Requires:	imsettings-gnome2
 Requires(post):	glib2 >= 1:2.26.0
 
 %description gtk2
-This package contains ibus im module for gtk2
+This package contains IBus im module for GTK+ 2.x.
+
+%description gtk2 -l pl.UTF-8
+Ten pakiet zawiera moduł im IBus dla GTK+ 2.x.
 
 %package gtk3
-Summary:	IBus im module for gtk3
+Summary:	IBus im module for GTK+ 3.x
+Summary(pl.UTF-8):	Moduł im IBus dla GTK+ 3.x
 Group:		Libraries
 Requires:	%{name} = %{version}-%{release}
-Requires:	%{name}-libs = %{version}-%{release}
 Requires:	imsettings-gnome3
 Requires(post):	glib2 >= 1:2.26.0
 
 %description gtk3
-This package contains ibus im module for gtk3
+This package contains IBus im module for GTK+ 3.x.
+
+%description gtk3 -l pl.UTF-8
+Ten pakiet zawiera moduł im IBus dla GTK+ 3.x.
 
 %package gnome3
 Summary:	IBus gnome-shell-extension for GNOME3
+Summary(pl.UTF-8):	Rozszerzenie gnome-shell IBus dla GNOME3
 Group:		Libraries
 Requires:	%{name} = %{version}-%{release}
-Requires:	%{name}-libs = %{version}-%{release}
 Requires:	gnome-shell
 
 %description gnome3
@@ -109,31 +121,89 @@ This is a transitional package which allows users to try out new IBus
 GUI for GNOME3 in development. Note that this package will be marked
 as obsolete once the integration has completed in the GNOME3 upstream.
 
+%description gnome3 -l pl.UTF-8
+Pakiet przejściowy pozwalający użytkownikom wypróbować nowe GUI IBus
+dla GNOME3 w trakcie tworzenia. Uwaga: ten pakiet zostanie oznaczony
+jako przestarzały po zakończeniu integracji w GNOME3.
+
 %package devel
-Summary:	Development tools for ibus
+Summary:	Development files for IBus
+Summary(pl.UTF-8):	Pliki programistyczne IBus
 Group:		Development/Libraries
 Requires:	%{name}-libs = %{version}-%{release}
-Requires:	dbus-devel
 Requires:	glib2-devel
 
 %description devel
-The ibus-devel package contains the header files and developer docs
-for ibus.
+The ibus-devel package contains the header files for IBus.
+
+%description devel -l pl.UTF-8
+Ten pakiet zawiera pliki nagłówkowe dla szkieletu IBus.
+
+%package static
+Summary:	Static ibus library
+Summary(pl.UTF-8):	Biblioteka statyczna ibus
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+
+%description static
+Static ibus library.
+
+%description static -l pl.UTF-8
+Biblioteka statyczna ibus.
+
+%package apidocs
+Summary:	Development documentation for IBus
+Summary(pl.UTF-8):	Dokumentacja programisty dla szkieletu IBus
+Group:		Development/Libraries
+Requires:	gtk-doc-common
+Conflicts:	ibus-devel < 1.4.2
+
+%description apidocs
+Development documentation for IBus.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja programisty dla szkieletu IBus.
+
+%package -n python-ibus
+Summary:	Python interface to IBus framework
+Summary(pl.UTF-8):	Pythonowy interfejs do szkieletu IBus
+Group:		Development/Languages/Python
+Requires:	python-dbus >= 0.83.0
+Requires:	python-pygobject
+Requires:	python-pygtk-pango
+Requires:	python-pyxdg
+Conflicts:	ibus < 1.4.2
+
+%description -n python-ibus
+Python interface to IBus framework.
+
+%description -n python-ibus -l pl.UTF-8
+Pythonowy interfejs do szkieletu IBus.
+
+%package -n vala-ibus
+Summary:	Vala API for ibus library
+Summary(pl.UTF-8):	API języka Vala do biblioteki ibus
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+Requires:	vala
+
+%description -n vala-ibus
+Vala API for ibus library.
+
+%description -n vala-ibus -l pl.UTF-8
+API języka Vala do biblioteki ibus.
 
 %prep
 %setup -q
 %if %{with gjsfile}
 zcat %{SOURCE100} | tar xf -
 %endif
-%patch0 -p1
 cp -p client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c
+%patch0 -p1
 %patch1 -p1
-%patch2 -p1
 mv data/ibus.schemas.in data/ibus.schemas.in.in
+%patch2 -p1
 %patch3 -p1
-%patch4 -p1
-
-%patch91 -p1
 
 %build
 %if %{with gjsfile}
@@ -143,25 +213,27 @@ cd $d
 %{__make}
 cd ..
 %endif
-
+%{__libtoolize}
 %{__aclocal} -I m4
-%{__autoheader}
 %{__autoconf}
+%{__autoheader}
 %{__automake}
 %configure \
+	--disable-gtk-doc \
+	--disable-silent-rules \
+	--enable-bridge-hotkey \
+	--enable-gconf \
 	--enable-gtk2 \
 	--enable-gtk3 \
-	--enable-xim \
+	--enable-introspection \
+	--enable-python \
+	%{?with_static_libs:--enable-static} \
+	--enable-surrounding-text \
 	--enable-vala \
+	--enable-xim \
 	--enable-xkb \
-	--disable-gtk-doc \
-	--enable-gconf \
-	--enable-python \
 	--with-html-dir=%{_gtkdocdir} \
-	--with-no-snooper-apps='gnome-do,Do.*,firefox.*,.*chrome.*,.*chromium.*' \
-	--enable-surrounding-text \
-	--enable-bridge-hotkey \
-	--enable-introspection
+	--with-no-snooper-apps='gnome-do,Do.*,firefox.*,.*chrome.*,.*chromium.*'
 
 %{__make}
 
@@ -179,15 +251,18 @@ mv $RPM_BUILD_ROOT{%{_desktopdir},%{_sysconfdir}/xdg/autostart}/ibus.desktop
 
 %if %{with gjsfile}
 d=$(basename %{SOURCE100} .tar.gz)
-cd $d
-%{__make} install \
+%{__make} -C $d install \
 	DESTDIR=$RPM_BUILD_ROOT
 %{__rm} $RPM_BUILD_ROOT%{_localedir}/*/LC_MESSAGES/ibus-gjs.mo
-cd ..
 %endif
 
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.la
+%if %{with static_libs}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/gtk*/*/immodules/*.a
+%endif
+
+%py_postclean
 
 %find_lang %{name}10
 
@@ -207,8 +282,8 @@ rm -rf $RPM_BUILD_ROOT
 %postun
 %update_icon_cache hicolor
 
-%post libs -p /sbin/ldconfig
-%postun libs -p /sbin/ldconfig
+%post	libs -p /sbin/ldconfig
+%postun	libs -p /sbin/ldconfig
 
 %post gtk2
 %if "%{_lib}" != "lib"
@@ -251,21 +326,15 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libexecdir}/ibus-x11
 %attr(755,root,root) %{_libexecdir}/ibus-engine-xkb
 %attr(755,root,root) %{_libexecdir}/ibus-xkb
-%dir %{py_sitescriptdir}/ibus
-%{py_sitescriptdir}/ibus/*.py
-%{py_sitescriptdir}/ibus/*.py[co]
-%dir %{py_sitescriptdir}/ibus/interface
-%{py_sitescriptdir}/ibus/interface/*.py
-%{py_sitescriptdir}/ibus/interface/*.py[co]
 %{_datadir}/ibus
-%{_desktopdir}/*.desktop
-%{_iconsdir}/hicolor/*/apps/*.png
-%{_iconsdir}/hicolor/*/apps/*.svg
+%{_desktopdir}/ibus-setup.desktop
+%{_iconsdir}/hicolor/*/apps/ibus-*.png
+%{_iconsdir}/hicolor/scalable/apps/ibus*.svg
 
 %files libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libibus-1.0.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libibus-1.0.so.[0-9]
+%attr(755,root,root) %ghost %{_libdir}/libibus-1.0.so.0
 %{_libdir}/girepository-1.0/IBus-1.0.typelib
 
 %files gtk2
@@ -283,10 +352,29 @@ rm -rf $RPM_BUILD_ROOT
 
 %files devel
 %defattr(644,root,root,755)
-%doc %{_gtkdocdir}/ibus
-%attr(755,root,root) %{_libdir}/lib*.so
+%attr(755,root,root) %{_libdir}/libibus-1.0.so
 %{_pkgconfigdir}/ibus-1.0.pc
 %{_includedir}/ibus-1.0
 %{_datadir}/gir-1.0/IBus-1.0.gir
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libibus-1.0.a
+%endif
+
+%files apidocs
+%defattr(644,root,root,755)
+%{_gtkdocdir}/ibus
+
+%files -n python-ibus
+%defattr(644,root,root,755)
+%dir %{py_sitescriptdir}/ibus
+%{py_sitescriptdir}/ibus/*.py[co]
+%dir %{py_sitescriptdir}/ibus/interface
+%{py_sitescriptdir}/ibus/interface/*.py[co]
+
+%files -n vala-ibus
+%defattr(644,root,root,755)
 %{_datadir}/vala/vapi/ibus-1.0.vapi
 %{_datadir}/vala/vapi/ibus-1.0.deps
diff --git a/ibus-541492-xkb.patch b/ibus-541492-xkb.patch
index 9c381b5..0154c76 100644
--- a/ibus-541492-xkb.patch
+++ b/ibus-541492-xkb.patch
@@ -7689,7 +7689,7 @@ index 0000000..5866b40
 +
 +    object_path = g_strdup_printf ("/org/freedesktop/IBus/XKBEngine/%d",
 +                                   ++id);
-+    engine = ibus_engine_new_type (IBUS_TYPE_SIMPLE_ENGINE,
++    engine = ibus_engine_new_with_type (IBUS_TYPE_SIMPLE_ENGINE,
 +                                   engine_name,
 +                                   object_path,
 +                                   ibus_service_get_connection (IBUS_SERVICE (factory)));
diff --git a/ibus-711632-fedora-fallback-icon.patch b/ibus-711632-fedora-fallback-icon.patch
deleted file mode 100644
index 8ad9e9a..0000000
--- a/ibus-711632-fedora-fallback-icon.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- ibus/ui/gtk/main.py.orig	2011-04-25 12:33:39.296999692 +0900
-+++ ibus/ui/gtk/main.py	2011-06-08 11:53:44.027232075 +0900
-@@ -86,6 +86,9 @@ class UIApplication:
-             pass
- 
- def launch_panel(replace):
-+    settings = gtk.settings_get_default()
-+    if settings.get_property('gtk-fallback-icon-theme') == None:
-+        settings.set_property('gtk-fallback-icon-theme', 'gnome')
-     # gtk.settings_get_default().props.gtk_theme_name = "/home/phuang/.themes/aud-Default/gtk-2.0/gtkrc"
-     # gtk.rc_parse("./themes/default/gtkrc")
-     UIApplication(replace).run()
---- ibus/ui/gtk/panel.py.orig	2011-06-08 12:16:40.107577438 +0900
-+++ ibus/ui/gtk/panel.py	2011-06-08 12:17:00.440460268 +0900
-@@ -507,7 +507,7 @@ class Panel(ibus.PanelBase):
-             menu = gtk.Menu()
-             item = gtk.ImageMenuItem(_("No input window"))
-             size = gtk.icon_size_lookup(gtk.ICON_SIZE_MENU)
--            item.set_image(_icon.IconWidget("gtk-info", size[0]))
-+            item.set_image(_icon.IconWidget("gtk-dialog-info", size[0]))
-             menu.add(item)
-             menu.show_all()
-         else:
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
deleted file mode 100644
index d48afe8..0000000
--- a/ibus-HEAD.patch
+++ /dev/null
@@ -1,696 +0,0 @@
-From 9614076737ee88c092af209485d1d65d2269f4ad Mon Sep 17 00:00:00 2001
-From: Tsuyoshi Horo <horo at chromium.org>
-Date: Thu, 18 Aug 2011 11:48:30 -0400
-Subject: [PATCH] Fix for ibus_serializable_{get,set}_attachment.
-
-TEST=Linux desktop
-
-Review URL: http://codereview.appspot.com/4905054
-Patch from Tsuyoshi Horo <horo at chromium.org>.
----
- src/ibusserializable.c        |   18 +++++++++---------
- src/ibusserializable.h        |    3 +--
- src/tests/ibus-serializable.c |   34 ++++++++++++++++++++++++++++++++++
- 3 files changed, 44 insertions(+), 11 deletions(-)
-
-diff --git a/src/ibusserializable.c b/src/ibusserializable.c
-index 2e4b21f..ed89534 100644
---- a/src/ibusserializable.c
-+++ b/src/ibusserializable.c
-@@ -164,7 +164,7 @@ _g_value_serialize (GValue          *value)
-         {                                                               \
-             g##_type v;                                                 \
-             v = g_value_get_##_type (value);                            \
--            return g_variant_new ("v", g_variant_new (signature, v));   \
-+            return g_variant_new (signature, v);                        \
-         }
-     CASE_ENTRY(CHAR, char, "y");
-     CASE_ENTRY(BOOLEAN, boolean, "b");
-@@ -198,14 +198,14 @@ _g_value_deserialize (GVariant *variant)
-     }
- 
-     typedef gchar *gstring;
--#define IF_ENTRY(TYPE, _type, signature)                    \
--    if (type ==  G_VARIANT_TYPE_##TYPE) {                   \
--        g##_type v;                                         \
--        g_variant_get (variant, signature, &v);             \
--        value = g_slice_new0 (GValue);                      \
--        g_value_init (value, G_TYPE_##TYPE);                \
--        g_value_set_##_type (value, v);                     \
--        return value;                                       \
-+#define IF_ENTRY(TYPE, _type, signature)                      \
-+    if (g_variant_type_equal(type, G_VARIANT_TYPE_##TYPE)) {  \
-+        g##_type v;                                           \
-+        g_variant_get (variant, signature, &v);               \
-+        value = g_slice_new0 (GValue);                        \
-+        g_value_init (value, G_TYPE_##TYPE);                  \
-+        g_value_set_##_type (value, v);                       \
-+        return value;                                         \
-     }
- #define G_VARIANT_TYPE_CHAR G_VARIANT_TYPE_BYTE
-     IF_ENTRY(CHAR, char, "y");
-diff --git a/src/ibusserializable.h b/src/ibusserializable.h
-index 358af32..8fd9f8a 100644
---- a/src/ibusserializable.h
-+++ b/src/ibusserializable.h
-@@ -87,12 +87,11 @@
-  * ibus_serializable_get_attachment:
-  * @o: An IBusSerializable.
-  * @k: String formatted key for indexing value.
-- * @v: Value to be attached. Should be also serializable.
-  *
-  * Get a value from attachment of an IBusSerializable.
-  * This macro is an convenient wrapper of ibus_serializable_get_qattachment().
-  */
--#define ibus_serializable_get_attachment(o, k, v)  \
-+#define ibus_serializable_get_attachment(o, k)  \
-     ibus_serializable_get_qattachment (o, g_quark_from_string (k))
- 
- /**
-diff --git a/src/tests/ibus-serializable.c b/src/tests/ibus-serializable.c
-index c2a7529..e2541ec 100644
---- a/src/tests/ibus-serializable.c
-+++ b/src/tests/ibus-serializable.c
-@@ -128,6 +128,39 @@ test_property (void)
-     g_variant_type_info_assert_no_infos ();
- }
- 
-+static void
-+test_attachment (void)
-+{
-+    IBusText *text =  ibus_text_new_from_string ("main text");
-+
-+    GValue value1 = { 0 };
-+    g_value_init(&value1, G_TYPE_INT);
-+    g_value_set_int(&value1, 100);
-+    ibus_serializable_set_attachment ((IBusSerializable *)text, "key1", &value1);
-+
-+    GValue value2 = { 0 };
-+    g_value_init(&value2, G_TYPE_STRING);
-+    g_value_set_string(&value2, "value string");
-+    ibus_serializable_set_attachment ((IBusSerializable *)text, "key2", &value2);
-+
-+    GVariant *variant = ibus_serializable_serialize ((IBusSerializable *)text);
-+    g_object_unref ((IBusSerializable *)text);
-+
-+    IBusSerializable *object = (IBusSerializable *) ibus_serializable_deserialize (variant);
-+    g_variant_unref (variant);
-+
-+    g_assert_cmpstr (((IBusText *)object)->text, ==, "main text");
-+
-+    const GValue *newvalue1 = ibus_serializable_get_attachment (object, "key1");
-+    g_assert (newvalue1 != NULL);
-+    g_assert (g_value_get_int (newvalue1) == 100);
-+
-+    const GValue *newvalue2 = ibus_serializable_get_attachment (object, "key2");
-+    g_assert (newvalue2 != NULL);
-+    g_assert_cmpstr (g_value_get_string (newvalue2), ==, "value string");
-+
-+    g_variant_type_info_assert_no_infos ();
-+}
- 
- gint
- main (gint    argc,
-@@ -142,6 +175,7 @@ main (gint    argc,
-     g_test_add_func ("/ibus/enginedesc", test_engine_desc);
-     g_test_add_func ("/ibus/lookuptable", test_lookup_table);
-     g_test_add_func ("/ibus/property", test_property);
-+    g_test_add_func ("/ibus/attachment", test_attachment);
- 
-     return g_test_run ();
- }
--- 
-1.7.5.4
-
-From ac9dfac13cef34288440a2ecdf067cd827fb2f8f Mon Sep 17 00:00:00 2001
-From: Peng Huang <shawn.p.huang at gmail.com>
-Date: Fri, 19 Aug 2011 08:23:33 -0400
-Subject: [PATCH] Use GVariant as attachment for IBusSerializable.
-
-BUG=None
-TEST=Linux desktop
-
-Review URL: http://codereview.appspot.com/4902051
----
- src/ibusserializable.c        |  176 ++++++-----------------------------------
- src/ibusserializable.h        |   81 +++++++++----------
- src/tests/ibus-serializable.c |   47 ++++++++----
- 3 files changed, 98 insertions(+), 206 deletions(-)
-
-diff --git a/src/ibusserializable.c b/src/ibusserializable.c
-index ed89534..6251c89 100644
---- a/src/ibusserializable.c
-+++ b/src/ibusserializable.c
-@@ -124,114 +124,13 @@ ibus_serializable_destroy (IBusSerializable *serializable)
-     parent_class->destroy (IBUS_OBJECT (serializable));
- }
- 
--static GValue *
--ibus_g_value_dup (const GValue *value)
--{
--    GValue *new_value;
--
--    new_value = g_slice_new0 (GValue);
--    g_value_init (new_value, G_VALUE_TYPE (value));
--    g_value_copy (value, new_value);
--
--    return new_value;
--}
--
--static void
--ibus_g_value_free (GValue *value)
--{
--    g_value_unset (value);
--    g_slice_free (GValue, value);
--}
--
--static GVariant *
--_g_value_serialize (GValue          *value)
--{
--    GType type;
--
--    type = G_VALUE_TYPE (value);
--    g_return_val_if_fail (type != G_TYPE_INVALID, FALSE);
--
--    if (g_type_is_a (type, IBUS_TYPE_SERIALIZABLE)) {
--        IBusSerializable *object;
--        object = IBUS_SERIALIZABLE (g_value_get_object (value));
--        return ibus_serializable_serialize (object);
--    }
--
--    typedef const gchar *gstring;
--    switch (type) {
--#define CASE_ENTRY(TYPE, _type, signature)                              \
--    case G_TYPE_##TYPE:                                                 \
--        {                                                               \
--            g##_type v;                                                 \
--            v = g_value_get_##_type (value);                            \
--            return g_variant_new (signature, v);                        \
--        }
--    CASE_ENTRY(CHAR, char, "y");
--    CASE_ENTRY(BOOLEAN, boolean, "b");
--    CASE_ENTRY(INT, int, "i");
--    CASE_ENTRY(UINT, uint, "u");
--    CASE_ENTRY(INT64, int64,  "x");
--    CASE_ENTRY(UINT64, uint64, "t");
--    CASE_ENTRY(FLOAT, float,  "d");
--    CASE_ENTRY(DOUBLE, double, "d");
--    CASE_ENTRY(STRING, string, "s");
--#undef CASE_ENTRY
--    }
--
--    g_assert_not_reached ();
--}
--
--static GValue *
--_g_value_deserialize (GVariant *variant)
--{
--    GValue *value = NULL;
--    const GVariantType *type;
--
--    type = g_variant_get_type (variant);
--    if (type == G_VARIANT_TYPE_TUPLE) {
--        IBusSerializable *object;
--        object = ibus_serializable_deserialize (variant);
--        value = g_slice_new0 (GValue);
--        g_value_init (value, G_OBJECT_TYPE (object));
--        g_value_take_object (value, object);
--        return value;
--    }
--
--    typedef gchar *gstring;
--#define IF_ENTRY(TYPE, _type, signature)                      \
--    if (g_variant_type_equal(type, G_VARIANT_TYPE_##TYPE)) {  \
--        g##_type v;                                           \
--        g_variant_get (variant, signature, &v);               \
--        value = g_slice_new0 (GValue);                        \
--        g_value_init (value, G_TYPE_##TYPE);                  \
--        g_value_set_##_type (value, v);                       \
--        return value;                                         \
--    }
--#define G_VARIANT_TYPE_CHAR G_VARIANT_TYPE_BYTE
--    IF_ENTRY(CHAR, char, "y");
--#undef G_VARIANT_TYPE_CHAR
--    IF_ENTRY(BOOLEAN, boolean, "b");
--#define G_VARIANT_TYPE_INT G_VARIANT_TYPE_INT32
--#define G_VARIANT_TYPE_UINT G_VARIANT_TYPE_UINT32
--    IF_ENTRY(INT, int, "i");
--    IF_ENTRY(UINT, uint, "u");
--#undef G_VARIANT_TYPE_INT
--#undef G_VARIANT_TYPE_UINT
--    IF_ENTRY(INT64, int64, "x");
--    IF_ENTRY(UINT64, uint64, "t");
--    IF_ENTRY(DOUBLE, double, "d");
--    IF_ENTRY(STRING, string, "s");
--
--    g_return_val_if_reached (NULL);
--}
--
- static void
- _serialize_cb (GQuark           key,
--               GValue          *value,
-+               GVariant        *value,
-                GVariantBuilder *array)
- {
-     g_variant_builder_add (array, "{sv}",
--                g_quark_to_string (key), _g_value_serialize (value));
-+                g_quark_to_string (key), g_variant_new_variant (value));
- }
- 
- static gboolean
-@@ -257,21 +156,26 @@ ibus_serializable_real_deserialize (IBusSerializable *object,
-     GVariantIter *iter = NULL;
-     g_variant_get_child (variant, 1, "a{sv}", &iter);
-     while (g_variant_iter_loop (iter, "{&sv}", &key, &value)) {
--        ibus_serializable_set_attachment (object, key, _g_value_deserialize (value));
-+        GVariant *attachment = g_variant_get_variant (value);
-+        ibus_serializable_set_attachment (object,
-+                                          key,
-+                                          attachment);
-+        g_variant_unref (attachment);
-+        g_variant_unref (value);
-     }
-     g_variant_iter_free (iter);
-     return 2;
- }
- 
- static void
--_copy_cb (GQuark   key,
--          GValue  *value,
--          GData  **datalist)
-+_copy_cb (GQuark     key,
-+          GVariant  *value,
-+          GData    **datalist)
- {
-     g_datalist_id_set_data_full (datalist,
-                                  key,
--                                 ibus_g_value_dup (value),
--                                 (GDestroyNotify) ibus_g_value_free);
-+                                 g_variant_ref (value),
-+                                 (GDestroyNotify) g_variant_unref);
- }
- 
- static gboolean
-@@ -289,50 +193,21 @@ ibus_serializable_real_copy (IBusSerializable *dest,
-     return TRUE;
- }
- 
--gboolean
--ibus_serializable_set_qattachment (IBusSerializable *object,
-+void
-+ibus_serializable_set_qattachment (IBusSerializable *serializable,
-                                    GQuark            key,
--                                   const GValue     *value)
-+                                   GVariant         *value)
- {
--    g_return_val_if_fail (IBUS_IS_SERIALIZABLE (object), FALSE);
--    g_return_val_if_fail (key != 0, FALSE);
--    g_return_val_if_fail (G_IS_VALUE (value), FALSE);
--
--    IBusSerializablePrivate *priv;
--    priv = IBUS_SERIALIZABLE_GET_PRIVATE (object);
--
--    GType type = G_VALUE_TYPE (value);
--
--    switch (type) {
--    case G_TYPE_CHAR:
--    case G_TYPE_INT:
--    case G_TYPE_INT64:
--    case G_TYPE_UINT:
--    case G_TYPE_UINT64:
--    case G_TYPE_BOOLEAN:
--    case G_TYPE_DOUBLE:
--    case G_TYPE_FLOAT:
--    case G_TYPE_STRING:
--        g_datalist_id_set_data_full (&priv->attachments,
--                                      key,
--                                      ibus_g_value_dup (value),
--                                      (GDestroyNotify) ibus_g_value_free);
--        return TRUE;
--    }
--
--    if (g_type_is_a (type, IBUS_TYPE_SERIALIZABLE)) {
--        g_datalist_id_set_data_full (&priv->attachments,
--                                      key,
--                                      ibus_g_value_dup (value),
--                                      (GDestroyNotify) ibus_g_value_free);
--        return TRUE;
--    }
-+    g_return_if_fail (IBUS_IS_SERIALIZABLE (serializable));
-+    g_return_if_fail (key != 0);
- 
--    g_warning ("The value of %s is not support serializing", g_type_name (type));
--    return FALSE;
-+    g_datalist_id_set_data_full (&serializable->priv->attachments,
-+                                 key,
-+                                 value ? g_variant_ref_sink (value) : NULL,
-+                                 (GDestroyNotify) g_variant_unref);
- }
- 
--const GValue *
-+GVariant *
- ibus_serializable_get_qattachment (IBusSerializable *serializable,
-                                    GQuark            key)
- {
-@@ -340,7 +215,8 @@ ibus_serializable_get_qattachment (IBusSerializable *serializable,
-     g_return_val_if_fail (IBUS_IS_SERIALIZABLE (serializable), NULL);
-     g_return_val_if_fail (key != 0, NULL);
- 
--    return (const GValue *) g_datalist_id_get_data (&serializable->priv->attachments, key);
-+    return (GVariant *) g_datalist_id_get_data (
-+            &serializable->priv->attachments, key);
- }
- 
- void
-@@ -351,7 +227,7 @@ ibus_serializable_remove_qattachment (IBusSerializable *serializable,
-     g_return_if_fail (IBUS_IS_SERIALIZABLE (serializable));
-     g_return_if_fail (key != 0);
- 
--    g_datalist_id_remove_no_notify (&serializable->priv->attachments, key);
-+    g_datalist_id_set_data (&serializable->priv->attachments, key, NULL);
- }
- 
- IBusSerializable *
-diff --git a/src/ibusserializable.h b/src/ibusserializable.h
-index 8fd9f8a..7a100c2 100644
---- a/src/ibusserializable.h
-+++ b/src/ibusserializable.h
-@@ -126,39 +126,40 @@ struct _IBusSerializable {
- 
- /**
-  * IBusSerializableSerializeFunc:
-- * @object: An IBusSerializable.
-- * @iter: An IBusMessageIter.
-- * @returns: TRUE if succeed; FALSE otherwise.
-+ * @serializable: An #IBusSerializable.
-+ * @builder: A #GVariantBuilder.
-+ * @returns: %TRUE if succeed; %FALSE otherwise.
-  *
-  * Prototype of serialize function.
-  * Serialize function convert an IBusSerializable to IBusMessageIter.
-  * Returns a gboolean value which indicates whether the conversion is success.
-- * Return TRUE if succeed.
-+ * Return %TRUE if succeed.
-  */
--typedef gboolean    (* IBusSerializableSerializeFunc)   (IBusSerializable       *object,
-+typedef gboolean    (* IBusSerializableSerializeFunc)   (IBusSerializable       *serializable,
-                                                          GVariantBuilder        *builder);
- 
- /**
-  * IBusSerializableDeserializeFunc:
-- * @object: An IBusSerializable.
-- * @iter: An IBusMessageIter.
-- * @returns: TRUE if succeed; FALSE otherwise.
-+ * @serializable: An #IBusSerializable.
-+ * @variant: A #GVariant contains a tuple.
-+ * @returns: The number of values in the variant(tuple) are consumed.
-  *
-  * Prototype of deserialize function.
-  * Deserialize function convert an IBusMessageIter to IBusSerializable.
-- * Returns a gboolean value which indicates whether the conversion is success.
-+ * Returns an integer value which indicates how many values in
-+ * the variant(tuple) are consumed.
-  */
--typedef gint        (* IBusSerializableDeserializeFunc) (IBusSerializable       *object,
-+typedef gint        (* IBusSerializableDeserializeFunc) (IBusSerializable       *serializable,
-                                                          GVariant               *variant);
- 
- /**
-  * IBusSerializableCopyFunc:
-- * @dest: The destination IBusSerializable.
-- * @src: A source IBusMessageIter.
-- * @returns: TRUE if succeed; FALSE otherwise.
-+ * @dest: The destination #IBusSerializable.
-+ * @src: A source #IBusMessageIter.
-+ * @returns: %TRUE if succeed; %FALSE otherwise.
-  *
-  * Prototype of copy function.
-- * Copy function copy from source IBusSerializable to the destination one.
-+ * Copy function copy from source #IBusSerializable to the destination one.
-  * Returns a gboolean value which indicates whether the copying is success.
-  */
- typedef gboolean    (* IBusSerializableCopyFunc)        (IBusSerializable       *dest,
-@@ -188,79 +189,77 @@ GType                ibus_serializable_get_type         (void);
-  *
-  * Returns: a new instance of #IBusSerializable.
-  */
--IBusSerializable *   ibus_serializable_new              (void);
-+IBusSerializable    *ibus_serializable_new              (void);
- 
- /**
-  * ibus_serializable_set_qattachment:
-- * @object: An IBusSerializable.
-+ * @serializable: An #IBusSerializable.
-  * @key: String formatted key for indexing value.
-- * @value: Value to be attached. Should be also serializable.
-- * @returns: TRUE if succeed; FALSE otherwise.
-+ * @value: Value to be attached or %NULL to remove any prevoius value.
-  *
-- * Attach a value to an IBusSerializable. The value should be serializable as well.
-- * Basic type such as integer, string are deemed to be serializable.
-+ * Attach a value to an IBusSerializable. If the value is floating,
-+ * the serializable will take the ownership.
-  *
-  * @see_also: ibus_serializable_set_attachment().
-  */
--gboolean             ibus_serializable_set_qattachment  (IBusSerializable   *object,
-+void                 ibus_serializable_set_qattachment  (IBusSerializable   *serializable,
-                                                          GQuark              key,
--                                                         const GValue       *value);
-+                                                         GVariant           *value);
- 
- /**
-  * ibus_serializable_get_qattachment:
-- * @object: An IBusSerializable.
-+ * @serializable: An #IBusSerializable.
-  * @key: String formatted key for indexing value.
-- * @returns: The attached value; or NULL if fail to retrieve the value.
-+ * @returns: The attached value; or %NULL if fail to retrieve the value.
-  *
-- * Get a value from attachment of an IBusSerializable.
-+ * Get a value from attachment of an #IBusSerializable.
-  * @see_also: ibus_serializable_set_attachment().
-  */
--const GValue        *ibus_serializable_get_qattachment  (IBusSerializable   *object,
-+GVariant            *ibus_serializable_get_qattachment  (IBusSerializable   *serializable,
-                                                          GQuark              key);
- 
- /**
-  * ibus_serializable_remove_qattachment:
-- * @object: An IBusSerializable.
-+ * @serializable: An #IBusSerializable.
-  * @key: String formatted key for indexing value.
-  *
-- * Remove a value from attachment of an IBusSerializable.
-+ * Remove a value from attachment of an #IBusSerializable.
-  * @see_also: ibus_serializable_remove_attachment().
-  */
- void                 ibus_serializable_remove_qattachment
--                                                        (IBusSerializable   *object,
-+                                                        (IBusSerializable   *serializable,
-                                                          GQuark              key);
- 
- /**
-  * ibus_serializable_copy:
-- * @object: An IBusSerializable.
-- * @returns: A newly allocated clone object; or NULL if @object is not serializable.
-+ * @serializable: An #IBusSerializable.
-+ * @returns: A newly allocated clone object; or %NULL if @object is not serializable.
-  *
-- * Clone an IBusSerializable.
-+ * Clone an #IBusSerializable.
-  * The copy method should be implemented in extended class.
-  *
-  * @see_also: IBusSerializableCopyFunc().
-  */
--IBusSerializable    *ibus_serializable_copy             (IBusSerializable   *object);
-+IBusSerializable    *ibus_serializable_copy             (IBusSerializable   *serializable);
- 
- /**
-  * ibus_serializable_serialize:
-- * @object: An IBusSerializable.
-- * @iter: An IBusMessageIter.
-- * @returns: TRUE if succeed; FALSE otherwise.
-+ * @serializable: An #IBusSerializable.
-+ * @returns: A #GVariant.
-  *
-- * Serialize an IBusSerializable to an IBusMessageIter.
-+ * Serialize an #IBusSerializable to a #GVariant.
-  * The serialize method should be implemented in extended class.
-  *
-  * @see_also: IBusSerializableCopyFunc().
-  */
--GVariant            *ibus_serializable_serialize        (IBusSerializable   *object);
-+GVariant            *ibus_serializable_serialize        (IBusSerializable   *serializable);
- 
- /**
-  * ibus_serializable_deserialize:
-- * @iter: An IBusMessageIter.
-- * @returns: The deserialized IBusSerializable.
-+ * @variant: A #GVariant.
-+ * @returns: The deserialized #IBusSerializable.
-  *
-- * Deserialize an IBusMessageIter to an IBusSerializable/
-+ * Deserialize a #GVariant to an #IBusSerializable/
-  * The deserialize method should be implemented in extended class.
-  *
-  * @see_also: IBusSerializableCopyFunc().
-diff --git a/src/tests/ibus-serializable.c b/src/tests/ibus-serializable.c
-index e2541ec..d2bd61a 100644
---- a/src/tests/ibus-serializable.c
-+++ b/src/tests/ibus-serializable.c
-@@ -12,7 +12,7 @@ void test_serializable (IBusSerializable *object)
-     g_variant_get_data (variant);
-     s1 = g_variant_print (variant, TRUE);
- 
--    object = (IBusSerializable *) ibus_serializable_deserialize (variant);
-+    object = ibus_serializable_deserialize (variant);
-     g_variant_unref (variant);
- 
-     variant = ibus_serializable_serialize (object);
-@@ -131,34 +131,51 @@ test_property (void)
- static void
- test_attachment (void)
- {
--    IBusText *text =  ibus_text_new_from_string ("main text");
-+    IBusText *text =  ibus_text_new_from_static_string ("main text");
- 
--    GValue value1 = { 0 };
--    g_value_init(&value1, G_TYPE_INT);
--    g_value_set_int(&value1, 100);
--    ibus_serializable_set_attachment ((IBusSerializable *)text, "key1", &value1);
-+    ibus_serializable_set_attachment ((IBusSerializable *)text,
-+                                      "key1",
-+                                      g_variant_new_int32 (100));
- 
--    GValue value2 = { 0 };
--    g_value_init(&value2, G_TYPE_STRING);
--    g_value_set_string(&value2, "value string");
--    ibus_serializable_set_attachment ((IBusSerializable *)text, "key2", &value2);
-+    ibus_serializable_set_attachment ((IBusSerializable *)text,
-+                                      "key2",
-+                                      g_variant_new_string ("value string"));
-+
-+    ibus_serializable_set_attachment ((IBusSerializable *)text,
-+                                      "key3",
-+                                      g_variant_new ("(iuds)",1, 2, 3.333, "test value"));
- 
-     GVariant *variant = ibus_serializable_serialize ((IBusSerializable *)text);
-     g_object_unref ((IBusSerializable *)text);
- 
--    IBusSerializable *object = (IBusSerializable *) ibus_serializable_deserialize (variant);
-+    IBusSerializable *object = ibus_serializable_deserialize (variant);
-     g_variant_unref (variant);
- 
-     g_assert_cmpstr (((IBusText *)object)->text, ==, "main text");
- 
--    const GValue *newvalue1 = ibus_serializable_get_attachment (object, "key1");
-+    GVariant *newvalue1 = ibus_serializable_get_attachment (object, "key1");
-     g_assert (newvalue1 != NULL);
--    g_assert (g_value_get_int (newvalue1) == 100);
-+    g_assert_cmpint (g_variant_get_int32 (newvalue1), ==, 100);
- 
--    const GValue *newvalue2 = ibus_serializable_get_attachment (object, "key2");
-+    GVariant *newvalue2 = ibus_serializable_get_attachment (object, "key2");
-     g_assert (newvalue2 != NULL);
--    g_assert_cmpstr (g_value_get_string (newvalue2), ==, "value string");
-+    g_assert_cmpstr (g_variant_get_string (newvalue2, NULL), ==, "value string");
-+
-+    {
-+        GVariant *newvalue3 = ibus_serializable_get_attachment (object, "key3");
-+        g_assert (newvalue3 != NULL);
-+        gint32 i;
-+        guint32 u;
-+        gdouble d;
-+        const gchar *s;
-+        g_variant_get (newvalue3, "(iud&s)", &i, &u, &d, &s);
-+        g_assert_cmpint (i, ==, 1);
-+        g_assert_cmpuint (u, ==, 2);
-+        g_assert_cmpfloat (d, ==, 3.333);
-+        g_assert_cmpstr (s, ==, "test value");
-+    }
- 
-+    g_object_unref (object);
-     g_variant_type_info_assert_no_infos ();
- }
- 
--- 
-1.7.5.4
-
-From adcf71e6e5de45530a09e7b9f310f2e489cd9631 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1 at gmail.com>
-Date: Wed, 24 Aug 2011 11:44:21 +0900
-Subject: [PATCH] Check if BusInputContext has an enabled engine in global
- input method.
-
-BUG=RH#731610
-TEST=Linux desktop
-
-Review URL: http://codereview.appspot.com/4917041
----
- bus/ibusimpl.c |    6 +++++-
- 1 files changed, 5 insertions(+), 1 deletions(-)
-
-diff --git a/bus/ibusimpl.c b/bus/ibusimpl.c
-index 853465c..1942504 100644
---- a/bus/ibusimpl.c
-+++ b/bus/ibusimpl.c
-@@ -1176,12 +1176,14 @@ bus_ibus_impl_set_focused_context (BusIBusImpl     *ibus,
-     }
- 
-     BusEngineProxy *engine = NULL;
-+    gboolean is_enabled = FALSE;
- 
-     if (ibus->focused_context) {
-         if (ibus->use_global_engine) {
-             /* dettach engine from the focused context */
-             engine = bus_input_context_get_engine (ibus->focused_context);
-             if (engine) {
-+                is_enabled = bus_input_context_is_enabled (ibus->focused_context);
-                 g_object_ref (engine);
-                 bus_input_context_set_engine (ibus->focused_context, NULL);
-             }
-@@ -1203,7 +1205,9 @@ bus_ibus_impl_set_focused_context (BusIBusImpl     *ibus,
-         /* attach engine to the focused context */
-         if (engine != NULL) {
-             bus_input_context_set_engine (context, engine);
--            bus_input_context_enable (context);
-+            if (is_enabled) {
-+                bus_input_context_enable (context);
-+            }
-             g_object_unref (engine);
-         }
- 
--- 
-1.7.5.4
-
-From 894ecc8e16b01d5594ef9b8f9c5530bb2e9d0502 Mon Sep 17 00:00:00 2001
-From: fujiwarat <takao.fujiwara1 at gmail.com>
-Date: Thu, 25 Aug 2011 09:59:42 +0900
-Subject: [PATCH] Add Disable signal when
- bus_ibus_impl_set_context_engine_from_desc is called.
-
-BUG=#1261
-TEST=Linux desktop
-
-Review URL: http://codereview.appspot.com/4875049
----
- bus/inputcontext.c |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/bus/inputcontext.c b/bus/inputcontext.c
-index 723b5fd..3c81688 100644
---- a/bus/inputcontext.c
-+++ b/bus/inputcontext.c
-@@ -2292,6 +2292,8 @@ new_engine_cb (GObject             *obj,
-                                              "Opertation was cancelled");
-         }
-         else {
-+            /* Let BusEngineProxy call a Disable signal. */
-+            bus_input_context_disable (data->context);
-             bus_input_context_set_engine (data->context, engine);
-             g_object_unref (engine);
-             bus_input_context_enable (data->context);
--- 
-1.7.5.4
-
diff --git a/ibus-xx-bridge-hotkey.patch b/ibus-xx-bridge-hotkey.patch
index 39e6a7d..7a494f4 100644
--- a/ibus-xx-bridge-hotkey.patch
+++ b/ibus-xx-bridge-hotkey.patch
@@ -921,7 +921,7 @@ diff --git a/configure.ac b/configure.ac
 index 4c20ae7..21d35c3 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -462,6 +462,34 @@ else
+@@ -486,6 +486,34 @@
      enable_surrounding_text="no (disabled, use --enable-surrounding-text to enable)"
  fi
  
@@ -953,10 +953,10 @@ index 4c20ae7..21d35c3 100644
 +)
 +AC_SUBST(DEFAULT_BRIDGE_ENGINE_NAME)
 +
- # check iso-codes
+ # Check iso-codes.
  PKG_CHECK_MODULES(ISOCODES, [
      iso-codes
-@@ -488,6 +516,7 @@ bus/Makefile
+@@ -512,6 +540,7 @@
  util/Makefile
  util/IMdkit/Makefile
  data/Makefile
@@ -964,7 +964,7 @@ index 4c20ae7..21d35c3 100644
  data/icons/Makefile
  data/keymaps/Makefile
  data/dconf/Makefile
-@@ -540,5 +569,7 @@ Build options:
+@@ -564,5 +593,7 @@
    No snooper regexes        "$NO_SNOOPER_APPS"
    Panel icon                "$IBUS_ICON_KEYBOARD"
    Enable surrounding-text   $enable_surrounding_text
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ibus.git/commitdiff/36809d14cec32af4409348bafd02b19b453147cf




More information about the pld-cvs-commit mailing list