debian/0000755000000000000000000000000012212467201007163 5ustar debian/docs0000644000000000000000000000000712211120557010032 0ustar README debian/compat0000644000000000000000000000000212212404121010351 0ustar 9 debian/clean0000644000000000000000000000117212211120557010170 0ustar configure aclocal.m4 m4/codeset.m4 m4/glibc2.m4 m4/glibc21.m4 m4/intdiv0.m4 m4/intl.m4 m4/intldir.m4 m4/intmax.m4 m4/inttypes-pri.m4 m4/inttypes_h.m4 m4/lcmessage.m4 m4/lock.m4 m4/longdouble.m4 m4/longlong.m4 m4/printf-posix.m4 m4/size_max.m4 m4/stdint_h.m4 m4/uintmax_t.m4 m4/ulonglong.m4 m4/visibility.m4 m4/wchar_t.m4 m4/wint_t.m4 m4/xsize.m4 m4/ltversion.m4 m4/ltsugar.m4 m4/ltoptions.m4 m4/libtool.m4 m4/lt~obsolete.m4 po/Makevars.template py-compile ltmain.sh config.rpath config.guess config.sub compile depcomp missing install-sh data/Makefile.in icons/Makefile.in m4/Makefile.in setup/Makefile.in src/Makefile.in Makefile.in debian/changelog0000644000000000000000000000347612212467201011047 0ustar ibus-array (0.0.2-8) unstable; urgency=low * Package with policy=3.9.4, dh_python2 and compat=9. * Dependency to python-ibus added for ibus 1.5. -- Osamu Aoki Sat, 07 Sep 2013 02:24:45 +0900 ibus-array (0.0.2-7) unstable; urgency=low * Fix libexecdir. Closes: #715180 -- Osamu Aoki Sun, 07 Jul 2013 16:13:17 +0900 ibus-array (0.0.2-6) unstable; urgency=low [ Colin Watson ] * Build-depend on libibus-1.0-dev rather than libibus-dev. (Closes:bug#640709) * Follow ibus 1.4 config API change. [ Keng-Yu Lin ] * debian/patches/clear_error_type.patch - Fixes the issue of error code showing in some circumstances. * debian/patches/remove_embedded_sqlite.patch - removed the SQLite lib embedded in the package. -- Keng-Yu Lin Tue, 13 Sep 2011 12:41:16 +0800 ibus-array (0.0.2-5) unstable; urgency=low [ Bhavani Shankar ] * link against -ldl to fix FTBFS (Closes: bug#615732) -- Keng-Yu Lin Wed, 23 Mar 2011 21:08:01 +0800 ibus-array (0.0.2-4) unstable; urgency=low * removed build-depends on quilt and README.source -- Keng-Yu Lin Wed, 27 Oct 2010 00:14:41 +0800 ibus-array (0.0.2-3) unstable; urgency=critical * Switch to dpkg-source 3.0 (quilt) format * fixed crash of gobject_unref() assertion on libibus2 (Closes: bug#596975) -- Keng-Yu Lin Thu, 16 Sep 2010 13:37:29 +0800 ibus-array (0.0.2-2) unstable; urgency=low * Add autopoint, remove cvs from Build-depends (Closes: bug#572472) -- Keng-Yu Lin Mon, 08 Mar 2010 17:09:40 +0800 ibus-array (0.0.2-1) unstable; urgency=low * Initial release (Closes: bug#559421) * add DH7 support by Paul Liu -- Keng-Yu Lin Fri, 18 Dec 2009 17:53:30 +0800 debian/watch0000644000000000000000000000017312211120557010214 0ustar version=3 http://code.google.com/p/ibus-array/downloads/list //ibus-array.googlecode.com/files/ibus-array-(\d.*)\.tar\.gz debian/control0000644000000000000000000000231112212406424010563 0ustar Source: ibus-array Section: utils Priority: optional Maintainer: IME Packaging Team Uploaders: Keng-Yu Lin , Osamu Aoki Build-Depends: autoconf (>= 2.5), automake, autopoint, autotools-dev, debhelper (>= 9), libibus-1.0-dev, libsqlite3-dev, libtool (>= 2.2), pkg-config, python-all (>= 2.6.6-3~) Standards-Version: 3.9.4 Homepage: http://code.google.com/p/ibus-array/ Vcs-Git: git://anonscm.debian.org/pkg-ime/ibus-array.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ime/ibus-array.git Package: ibus-array Architecture: any Depends: ibus, libsqlite3-0 (>= 3.6), python-ibus, ${misc:Depends}, ${python:Depends}, ${shlibs:Depends} Description: Array 30 input engine for iBus IBus is an Intelligent Input Bus. It is a new input framework for Linux OS. It provides full featured and user friendly input method user interface. It also may help developers to develop input method easily. . ibus-array is a IM Engine for Traditional Chinese, based on IBus. debian/copyright0000644000000000000000000000431712212404672011126 0ustar Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=118 Name: ibus-array Maintainer: Yu-Chun Wang Source: http://code.google.com/p/ibus-array/ Files: * Copyright: 2009, Yu-Chun Wang License: GPL-2 Files: Makefile.am, configure.ac, data/Makefile.am, icons/Makefile.am, m4/Makefile.am Copyright: 2007-2008, Huang Peng License: GPL-2+ Files: setup/Makefile.am Copyright: 2009, Choe Hwanjin License: GPL-2+ Files: debian/* Copyright: 2010, Keng-Yu Lin License: GPL-2+ License: GPL-2 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 dated June, 1991. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. . On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL-2. License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. . On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL-2. debian/rules0000755000000000000000000000035412212404121010235 0ustar #!/usr/bin/make -f # -*- makefile -*- LDFLAGS+=-ldl # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 %: dh $@ --with python2 override_dh_auto_configure: ./autogen.sh dh_auto_configure -- --libexecdir=/usr/lib/ibus debian/source/0000755000000000000000000000000012211120557010462 5ustar debian/source/format0000644000000000000000000000001412211120557011670 0ustar 3.0 (quilt) debian/patches/0000755000000000000000000000000012211120557010611 5ustar debian/patches/clear_error_type.patch0000644000000000000000000000206412211120557015174 0ustar Index: ibus-array-0.0.2/src/engine.c =================================================================== --- ibus-array-0.0.2.orig/src/engine.c 2011-09-13 10:26:25.121645122 +0800 +++ ibus-array-0.0.2/src/engine.c 2011-09-13 10:41:02.325627279 +0800 @@ -558,10 +558,6 @@ return ibus_array_engine_process_candidate_key_event(arrayeng, keyval, modifiers); } - if (arrayeng->preedit->len >= 5) { - return TRUE; - } - if (is_alpha (keyval) || keyval == IBUS_period || keyval == IBUS_comma || keyval == IBUS_slash || keyval == IBUS_semicolon) { if (arrayeng->space_press_count == 1) { @@ -574,9 +570,15 @@ /*if (commit_rev) ibus_array_engine_reset((IBusEngine*)arrayeng);*/ + } else { + ibus_array_engine_reset((IBusEngine*)arrayeng); } } + if (arrayeng->preedit->len >= 5) { + return TRUE; + } + g_string_insert_c (arrayeng->preedit, arrayeng->cursor_pos, keyval); debian/patches/remove_gobject_unref.patch0000644000000000000000000000406612211120557016031 0ustar --- a/src/engine.c +++ b/src/engine.c @@ -151,7 +151,8 @@ { array_release_context(array_context); - g_object_unref(config); + if (g_object_is_floating (config)) + g_object_unref(config); config = NULL; } @@ -189,6 +190,7 @@ arrayeng->space_press_count = 0; arrayeng->table = ibus_lookup_table_new (10, 0, FALSE, TRUE); + g_object_ref_sink (arrayeng->table); setup_label = ibus_text_new_from_string("Setup"); setup_tooltip = ibus_text_new_from_string("Configure Array 30 engine"); setup_prop = ibus_property_new("setup", @@ -197,12 +199,12 @@ "gtk-preferences", setup_tooltip, TRUE, TRUE, 0, NULL); - g_object_unref(setup_label); - g_object_unref(setup_tooltip); + g_object_ref_sink (setup_prop); arrayeng->prop_list = ibus_prop_list_new(); + g_object_ref_sink (arrayeng->prop_list); + ibus_prop_list_append(arrayeng->prop_list, setup_prop); - g_object_unref(setup_prop); g_signal_connect (config, "value-changed", G_CALLBACK(ibus_config_value_changed), arrayeng); @@ -336,7 +338,8 @@ text, array_preedit->len, //arrayeng->cursor_pos, TRUE); - g_object_unref (text); + if (G_IS_OBJECT (text) && g_object_is_floating (text)) + g_object_unref (text); g_string_free(array_preedit, TRUE); } @@ -430,7 +433,8 @@ IBusText *text; text = ibus_text_new_from_static_string (string); ibus_engine_commit_text ((IBusEngine *)arrayeng, text); - g_object_unref (text); + if (g_object_is_floating (text)) + g_object_unref (text); } static void @@ -669,7 +673,9 @@ if (aux_string) { text = ibus_text_new_from_string(aux_string); ibus_engine_update_auxiliary_text((IBusEngine*)arrayeng, text, TRUE); - g_object_unref(text); + + if (g_object_is_floating (text)) + g_object_unref (text); } } debian/patches/series0000644000000000000000000000013612211120557012026 0ustar remove_gobject_unref.patch ibus-1.4.patch clear_error_type.patch remove_embedded_sqlite.patch debian/patches/ibus-1.4.patch0000644000000000000000000001075212211120557013101 0ustar Description: Follow ibus 1.4 config API change Largely based on Fedora patch for ibus-hangul: . http://pkgs.fedoraproject.org/gitweb/?p=ibus-hangul.git;a=blob;f=ibus-hangul-ibus-1.4.patch;h=30056725ae5ea29f29562c3eb746a19adf31098a;hb=HEAD Author: Colin Watson Forwarded: no Last-Update: 2011-08-23 Index: b/src/engine.c =================================================================== --- a/src/engine.c +++ b/src/engine.c @@ -79,9 +79,18 @@ static void ibus_config_value_changed (IBusConfig *config, const gchar *section, const gchar *name, +#if IBUS_CHECK_VERSION(1,3,99) + GVariant *value, +#else GValue *value, +#endif /* !IBUS_CHECK_VERSION(1,3,99) */ gpointer user_data); +static gboolean config_get_string (IBusConfig *config, + const gchar *section, + const gchar *name, + gchar **result); + static IBusEngineClass *parent_class = NULL; static IBusConfig *config = NULL; static gboolean is_special_notify; @@ -120,7 +129,7 @@ ibus_array_init (IBusBus *bus) { gboolean res; - GValue value = { 0, }; + gchar *str; array_context = array_create_context(); @@ -129,20 +138,19 @@ is_special_notify = FALSE; is_special_only = FALSE; - res = ibus_config_get_value (config, "engine/Array", - "SpecialNotify", &value); + str = NULL; + res = config_get_string (config, "engine/Array", "SpecialNotify", &str); if (res) { - const gchar* str = g_value_get_string(&value); if (g_strcmp0(str, "1") == 0) is_special_notify = TRUE; + g_free (str); } - res = ibus_config_get_value (config, "engine/Array", - "SpecialOnly", &value); + res = config_get_string (config, "engine/Array", "SpecialOnly", &str); if (res) { - const gchar* str = g_value_get_string(&value); if (g_strcmp0(str, "1") == 0) is_special_only = TRUE; + g_free (str); } } @@ -757,17 +765,59 @@ } } +static gboolean +config_get_string (IBusConfig *config, + const gchar *section, + const gchar *name, + gchar **result) +{ +#if IBUS_CHECK_VERSION(1,3,99) + GVariant *value = NULL; + + g_return_val_if_fail (result != NULL, FALSE); + + value = ibus_config_get_value (config, section, name); + if (value) { + *result = g_strdup (g_variant_get_string (value, NULL)); + g_variant_unref (value); + return TRUE; + } + return FALSE; +#else + GValue value = { 0 }; + + g_return_val_if_fail (result != NULL, FALSE); + + if (ibus_config_get_value (config, section, name, &value)) { + *result = g_strdup (g_value_get_string (&value)); + g_value_unset (&value); + return TRUE; + } + return FALSE; +#endif /* !IBUS_CHECK_VERSION(1,3,99) */ +} + +#if IBUS_CHECK_VERSION(1,3,99) +#define _g_variant_get_string g_variant_get_string +#else +#define _g_variant_get_string(value, length) g_value_get_string(value) +#endif /* !IBUS_CHECK_VERSION(1,3,99) */ + static void ibus_config_value_changed (IBusConfig *config, const gchar *section, const gchar *name, +#if IBUS_CHECK_VERSION(1,3,99) + GVariant *value, +#else GValue *value, +#endif /* !IBUS_CHECK_VERSION(1,3,99) */ gpointer user_data) { IBusArrayEngine *arrayeng = (IBusArrayEngine*)user_data; if (g_strcmp0(section, "engine/Array") == 0) { if (g_strcmp0(name, "SpecialNotify") == 0) { - const gchar* str = g_value_get_string(value); + const gchar* str = _g_variant_get_string(value, NULL); if (g_strcmp0(str, "1") == 0) { is_special_notify = TRUE; } @@ -776,7 +826,7 @@ } } else if (g_strcmp0(name, "SpecialOnly") == 0) { - const gchar* str = g_value_get_string(value); + const gchar* str = _g_variant_get_string(value, NULL); if (g_strcmp0(str, "1") == 0) { is_special_only = TRUE; } debian/patches/remove_embedded_sqlite.patch0000644000000000000000000000216312211120557016323 0ustar Index: ibus-array-0.0.2/configure.ac =================================================================== --- ibus-array-0.0.2.orig/configure.ac 2011-09-13 11:39:27.376782170 +0800 +++ ibus-array-0.0.2/configure.ac 2011-09-13 11:41:22.688784911 +0800 @@ -60,9 +60,11 @@ AM_PATH_PYTHON([2.5]) # check sqlite3 -#PKG_CHECK_MODULES(SQLITE3, [ -# sqlite3 -#]) +PKG_CHECK_MODULES(SQLITE3, [ + sqlite3 +]) +AC_SUBST(SQLITE3_CFLAGS) +AC_SUBST(SQLITE3_LIBS) # define GETTEXT_* variables GETTEXT_PACKAGE="$PACKAGE_NAME" Index: ibus-array-0.0.2/src/Makefile.am =================================================================== --- ibus-array-0.0.2.orig/src/Makefile.am 2011-09-13 11:41:55.492785691 +0800 +++ ibus-array-0.0.2/src/Makefile.am 2011-09-13 11:45:03.092790149 +0800 @@ -27,16 +27,16 @@ engine.h \ array.c \ array.h \ - sqlite3.c \ - sqlite3.h \ $(NULL) ibus_engine_array_CFLAGS = \ @IBUS_CFLAGS@ \ + @SQLITE3_CFLAGS@ \ -DPKGDATADIR=\"$(pkgdatadir)\" \ -DLIBEXECDIR=\"$(libexecdir)\" \ $(NULL) ibus_engine_array_LDFLAGS = \ @IBUS_LIBS@ \ + @SQLITE3_LIBS@ \ $(NULL) component_DATA = \