diff --git a/.gitignore b/.gitignore index 4ccc028..2cc6c43 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ ibus-m17n-1.3.0.tar.gz /ibus-m17n-1.3.2.tar.gz /ibus-m17n-1.3.3.tar.gz /ibus-m17n-1.3.4.tar.gz +/ibus-m17n-1.4.0.tar.gz diff --git a/ibus-m17n-HEAD.patch b/ibus-m17n-HEAD.patch deleted file mode 100644 index cbfb685..0000000 --- a/ibus-m17n-HEAD.patch +++ /dev/null @@ -1,1928 +0,0 @@ -diff --git a/autogen.sh b/autogen.sh -index 99be006..f8bf2b0 100755 ---- a/autogen.sh -+++ b/autogen.sh -@@ -18,10 +18,10 @@ which gnome-autogen.sh || { - exit 1 - } - --export CFLAGS="-g -O0" --export CXXFLAGS="$CFLAGS" -+export CFLAGS=${CFLAGS-"-Wall"} -+export CXXFLAGS=${CXXFLAGS-"$CFLAGS"} - - ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I m4" - REQUIRED_AUTOMAKE_VERSION=1.10 - --. gnome-autogen.sh -+. gnome-autogen.sh "$@" -diff --git a/configure.ac b/configure.ac -index 0548537..30d44ff 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -48,6 +48,7 @@ AM_PROG_CC_C_O - AC_PROG_CXX - AC_ISC_POSIX - AC_HEADER_STDC -+IT_PROG_INTLTOOL([0.35.0]) - AM_PROG_LIBTOOL - - # check ibus -@@ -111,8 +112,6 @@ AC_CONFIG_FILES([ po/Makefile.in - Makefile - ibus-m17n.spec - src/Makefile --src/m17n.xml.in --src/default.xml.in - icons/Makefile - m4/Makefile - ]) -diff --git a/po/POTFILES.in b/po/POTFILES.in -index a426e33..bb3bd6e 100644 ---- a/po/POTFILES.in -+++ b/po/POTFILES.in -@@ -1,3 +1,5 @@ - src/engine.c - src/m17nutil.c - src/main.c -+[type: gettext/glade]src/ibus-m17n-preferences.ui -+src/ibus-setup-m17n.desktop.in.in -diff --git a/po/POTFILES.skip b/po/POTFILES.skip -new file mode 100644 -index 0000000..3667f37 ---- /dev/null -+++ b/po/POTFILES.skip -@@ -0,0 +1 @@ -+src/ibus-setup-m17n.desktop.in -diff --git a/src/Makefile.am b/src/Makefile.am -index 39d6523..68ec953 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -19,15 +19,14 @@ - # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - AM_CFLAGS = \ -- @IBUS_CFLAGS@ \ -- @M17N_CFLAGS@ \ -+ $(IBUS_CFLAGS) \ -+ $(M17N_CFLAGS) \ - -DPKGDATADIR=\"$(pkgdatadir)\" \ - -DLIBEXECDIR=\"$(libexecdir)\" \ -- -DSETUPDIR=\"$(setupdir)\" \ - $(NULL) - AM_LDADD = \ -- @IBUS_LIBS@ \ -- @M17N_LIBS@ \ -+ $(IBUS_LIBS) \ -+ $(M17N_LIBS) \ - $(NULL) - - check_PROGRAMS = \ -@@ -38,6 +37,7 @@ TESTS = \ - $(check_PROGRAMS) \ - $(NULL) - -+TESTS_ENVIRONMENT = IBUS_M17N_PKGDATADIR=$(builddir) - - test_m17n_SOURCES = \ - test.c \ -@@ -46,10 +46,13 @@ test_m17n_CFLAGS = \ - $(AM_CFLAGS) \ - $(NULL) - test_m17n_LDADD = \ -- libm17ncommon.a \ -+ libm17ncommon.la \ - $(AM_LDADD) \ - $(NULL) - -+test: ibus-engine-m17n -+ $(builddir)/ibus-engine-m17n -+ - libexec_PROGRAMS = ibus-engine-m17n - - noinst_LTLIBRARIES = libm17ncommon.la -@@ -67,8 +70,8 @@ ibus_engine_m17n_SOURCES = \ - $(NULL) - ibus_engine_m17n_LDADD = \ - libm17ncommon.la \ -- @IBUS_LIBS@ \ -- @M17N_LIBS@ \ -+ $(IBUS_LIBS) \ -+ $(M17N_LIBS) \ - $(NULL) - - if HAVE_GTK -@@ -78,58 +81,61 @@ ibus_setup_m17n_SOURCES = \ - setup.c \ - $(NULL) - ibus_setup_m17n_CFLAGS = \ -- @GTK_CFLAGS@ \ -+ $(GTK_CFLAGS) \ - $(AM_CFLAGS) \ - $(NULL) - ibus_setup_m17n_LDADD = \ - libm17ncommon.la \ -- @IBUS_LIBS@ \ -- @M17N_LIBS@ \ -- @GTK_LIBS@ \ -+ $(IBUS_LIBS) \ -+ $(M17N_LIBS) \ -+ $(GTK_LIBS) \ - $(NULL) -+ -+setupdir = $(pkgdatadir)/setup - dist_setup_DATA = \ - ibus-m17n-preferences.ui \ - $(NULL) - endif - --setup_DATA = \ -+pkgdata_DATA = \ - default.xml \ - $(NULL) --setupdir = $(pkgdatadir)/setup - - component_DATA = \ - m17n.xml \ - $(NULL) --componentdir = @datadir@/ibus/component -+componentdir = $(datadir)/ibus/component - - EXTRA_DIST = \ -- m17n.xml.in.in \ -- default.xml.in \ -+ m17n.xml.in \ -+ $(desktop_in_in_files) \ - $(NULL) - - DISTCLEANFILES = \ - m17n.xml.in \ -- default.xml.in \ - $(NULL) - - CLEANFILES = \ - m17n.xml \ -- default.xml \ -+ $(desktop_DATA) \ -+ $(desktop_in_files) \ - $(NULL) - -+edit = sed \ -+ -e 's|@VERSION[@]|$(VERSION)|g' \ -+ -e 's|@libexecdir[@]|$(libexecdir)|g' \ -+ -e 's|@pkgdatadir[@]|$(pkgdatadir)|g' -+ - m17n.xml: m17n.xml.in --default.xml: default.xml.in -- --SUFFIXES = .xml.in .xml --.xml.in.xml: -- $(AM_V_GEN) \ -- ( \ -- libexecdir=${libexecdir}; \ -- pkgdatadir=${pkgdatadir}; \ -- setupdir=${setupdir}; \ -- s=`cat $<`; \ -- eval "echo \"$${s}\""; \ -- ) > $@ -+ $(AM_V_GEN) $(edit) $< > $@.tmp && mv $@.tmp $@ - --test: ibus-engine-m17n -- $(builddir)/ibus-engine-m17n -+desktop_in_in_files = ibus-setup-m17n.desktop.in.in -+desktop_in_files = $(desktop_in_in_files:.in.in=.in) -+ -+$(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile -+ $(AM_V_GEN) $(edit) $< > $@.tmp && mv $@.tmp $@ -+ -+desktopdir=$(datadir)/applications -+desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) -+ -+@INTLTOOL_DESKTOP_RULE@ -diff --git a/src/default.xml b/src/default.xml -new file mode 100644 -index 0000000..ffd733a ---- /dev/null -+++ b/src/default.xml -@@ -0,0 +1,434 @@ -+ -+ -+ -+ -+ -+ m17n:* -+ 0 -+ FALSE -+ -+ -+ -+ -+ -+ m17n:*:kbd -+ -1 -+ -+ -+ -+ m17n:zh:py -+ -1 -+ -+ -+ -+ m17n:ja:anthy -+ -1 -+ -+ -+ -+ m17n:ko:han2 -+ -1 -+ -+ -+ -+ m17n:ko:romaja -+ -1 -+ -+ -+ -+ m17n:as:* -+ 1 -+ -+ -+ m17n:bn:* -+ 1 -+ -+ -+ m17n:gu:* -+ 1 -+ -+ -+ m17n:hi:* -+ 1 -+ -+ -+ m17n:kn:* -+ 1 -+ -+ -+ m17n:ks:* -+ 1 -+ -+ -+ m17n:mai:* -+ 1 -+ -+ -+ m17n:ml:* -+ 1 -+ -+ -+ m17n:mr:* -+ 1 -+ -+ -+ m17n:ne:* -+ 1 -+ -+ -+ m17n:or:* -+ 1 -+ -+ -+ m17n:pa:* -+ 1 -+ -+ -+ m17n:sa:* -+ 1 -+ -+ -+ m17n:sd:* -+ 1 -+ -+ -+ m17n:si:* -+ 1 -+ -+ -+ m17n:ta:* -+ 1 -+ -+ -+ m17n:te:* -+ 1 -+ -+ -+ -+ m17n:as:phonetic -+ 2 -+ -+ -+ m17n:bn:inscript -+ 2 -+ -+ -+ m17n:gu:inscript -+ 2 -+ -+ -+ m17n:hi:inscript -+ 2 -+ -+ -+ m17n:kn:kgp -+ 2 -+ -+ -+ m17n:ks:kbd -+ 2 -+ -+ -+ m17n:mai:inscript -+ 2 -+ -+ -+ m17n:ml:inscript -+ 2 -+ -+ -+ m17n:mr:inscript -+ 2 -+ -+ -+ m17n:ne:rom -+ 2 -+ -+ -+ m17n:or:inscript -+ 2 -+ -+ -+ m17n:pa:inscript -+ 2 -+ -+ -+ m17n:sa:harvard-kyoto -+ 2 -+ -+ -+ m17n:sd:inscript -+ 2 -+ -+ -+ m17n:si:wijesekera -+ 2 -+ -+ -+ m17n:ta:tamil99 -+ 2 -+ -+ -+ m17n:te:inscript -+ 2 -+ -+ -+ -+ m17n:si:samanala -+ 0 -+ -+ -+ -+ m17n:zh:cangjie -+ TRUE -+ -+ -+ m17n:zh:py-b5 -+ TRUE -+ -+ -+ m17n:zh:py-gb -+ TRUE -+ -+ -+ m17n:zh:py -+ TRUE -+ -+ -+ m17n:zh:quick -+ TRUE -+ -+ -+ m17n:zh:tonepy-b5 -+ TRUE -+ -+ -+ m17n:zh:tonepy-gb -+ TRUE -+ -+ -+ m17n:zh:tonepy -+ TRUE -+ -+ -+ m17n:ja:anthy -+ TRUE -+ -+ -+ -+ m17n:as:* -+ -+ -+ -+ m17n:bn:* -+ বা -+ -+ -+ m17n:gu:* -+ ગુ -+ -+ -+ m17n:hi:* -+ हिं -+ -+ -+ m17n:kn:* -+ -+ -+ -+ m17n:ks:* -+ -+ -+ -+ m17n:mai:* -+ मै -+ -+ -+ m17n:ml:* -+ -+ -+ -+ m17n:mr:* -+ -+ -+ -+ m17n:ne:* -+ ने -+ -+ -+ m17n:or:* -+ -+ -+ -+ m17n:pa:* -+ ਪੰ -+ -+ -+ m17n:sa:* -+ सं -+ -+ -+ m17n:sd:* -+ सिं -+ -+ -+ m17n:si:* -+ සි -+ -+ -+ m17n:ta:* -+ -+ -+ -+ m17n:te:* -+ తె -+ -+ -+ m17n:*:kbd -+ -+ -+ -+ m17n:*:pre -+ -+ -+ -+ m17n:*:post -+ -+ -+ -+ m17n:am:sera -+ -+ -+ -+ m17n:bo:* -+ -+ -+ -+ m17n:cr:* -+ -+ -+ -+ m17n:dv:* -+ -+ -+ -+ m17n:eo:* -+ -+ -+ -+ m17n:fa:* -+ ف -+ -+ -+ m17n:fr:* -+ -+ -+ -+ m17n:ii:* -+ -+ -+ -+ m17n:iu:* -+ -+ -+ -+ m17n:ja:anthy -+ -+ -+ -+ m17n:kk:* -+ قا -+ -+ -+ m17n:km:* -+ -+ -+ -+ m17n:lo:* -+ -+ -+ -+ m17n:nsk:* -+ -+ -+ -+ m17n:oj:* -+ -+ -+ -+ m17n:ps:* -+ -+ -+ -+ m17n:ru:* -+ Я -+ -+ -+ m17n:sv:* -+ -+ -+ -+ m17n:syrc:* -+ -+ -+ -+ m17n:tai:* -+ -+ -+ -+ m17n:th:* -+ -+ -+ -+ m17n:ur:* -+ خ -+ -+ -+ m17n:vi:han -+ -+ -+ -+ m17n:vi:nom* -+ -+ -+ -+ m17n:vi:* -+ -+ -+ -+ m17n:yi:* -+ -+ -+ -+ m17n:zh:bopomofo -+ -+ -+ -+ m17n:zh:cangjie -+ -+ -+ -+ m17n:zh:pinyin -+ PY -+ hanyu pinyin (m17n) -+ -+ -+ m17n:zh:py* -+ -+ -+ -+ m17n:zh:quick -+ -+ -+ -+ m17n:zh:tonepy* -+ -+ -+ -diff --git a/src/default.xml.in.in b/src/default.xml.in.in -deleted file mode 100644 -index 9f5a01e..0000000 ---- a/src/default.xml.in.in -+++ /dev/null -@@ -1,408 +0,0 @@ -- -- -- -- -- -- m17n:* -- 0 -- FALSE -- -- -- -- -- m17n:as:* -- 1 -- -- -- m17n:bn:* -- 1 -- -- -- m17n:gu:* -- 1 -- -- -- m17n:hi:* -- 1 -- -- -- m17n:kn:* -- 1 -- -- -- m17n:ks:* -- 1 -- -- -- m17n:mai:* -- 1 -- -- -- m17n:ml:* -- 1 -- -- -- m17n:mr:* -- 1 -- -- -- m17n:ne:* -- 1 -- -- -- m17n:or:* -- 1 -- -- -- m17n:pa:* -- 1 -- -- -- m17n:sa:* -- 1 -- -- -- m17n:sd:* -- 1 -- -- -- m17n:si:* -- 1 -- -- -- m17n:ta:* -- 1 -- -- -- m17n:te:* -- 1 -- -- -- -- m17n:as:phonetic -- 2 -- -- -- m17n:bn:inscript -- 2 -- -- -- m17n:gu:inscript -- 2 -- -- -- m17n:hi:inscript -- 2 -- -- -- m17n:kn:kgp -- 2 -- -- -- m17n:ks:kbd -- 2 -- -- -- m17n:mai:inscript -- 2 -- -- -- m17n:ml:inscript -- 2 -- -- -- m17n:mr:inscript -- 2 -- -- -- m17n:ne:rom -- 2 -- -- -- m17n:or:inscript -- 2 -- -- -- m17n:pa:inscript -- 2 -- -- -- m17n:sa:harvard-kyoto -- 2 -- -- -- m17n:sd:inscript -- 2 -- -- -- m17n:si:wijesekera -- 2 -- -- -- m17n:ta:tamil99 -- 2 -- -- -- m17n:te:inscript -- 2 -- -- -- -- m17n:si:samanala -- 0 -- -- -- -- m17n:zh:cangjie -- TRUE -- -- -- m17n:zh:py-b5 -- TRUE -- -- -- m17n:zh:py-gb -- TRUE -- -- -- m17n:zh:py -- TRUE -- -- -- m17n:zh:quick -- TRUE -- -- -- m17n:zh:tonepy-b5 -- TRUE -- -- -- m17n:zh:tonepy-gb -- TRUE -- -- -- m17n:zh:tonepy -- TRUE -- -- -- m17n:ja:anthy -- TRUE -- -- -- -- m17n:as:* -- -- -- -- m17n:bn:* -- বা -- -- -- m17n:gu:* -- ગુ -- -- -- m17n:hi:* -- हिं -- -- -- m17n:kn:* -- -- -- -- m17n:ks:* -- -- -- -- m17n:mai:* -- मै -- -- -- m17n:ml:* -- -- -- -- m17n:mr:* -- -- -- -- m17n:ne:* -- ने -- -- -- m17n:or:* -- -- -- -- m17n:pa:* -- ਪੰ -- -- -- m17n:sa:* -- सं -- -- -- m17n:sd:* -- सिं -- -- -- m17n:si:* -- සි -- -- -- m17n:ta:* -- -- -- -- m17n:te:* -- తె -- -- -- m17n:*:kbd -- -- -- -- m17n:*:pre -- -- -- -- m17n:*:post -- -- -- -- m17n:am:sera -- -- -- -- m17n:bo:* -- -- -- -- m17n:cr:* -- -- -- -- m17n:dv:* -- -- -- -- m17n:eo:* -- -- -- -- m17n:fa:* -- ف -- -- -- m17n:fr:* -- -- -- -- m17n:ii:* -- -- -- -- m17n:iu:* -- -- -- -- m17n:ja:anthy -- -- -- -- m17n:kk:* -- قا -- -- -- m17n:km:* -- -- -- -- m17n:lo:* -- -- -- -- m17n:nsk:* -- -- -- -- m17n:oj:* -- -- -- -- m17n:ps:* -- -- -- -- m17n:ru:* -- Я -- -- -- m17n:sv:* -- -- -- -- m17n:syrc:* -- -- -- -- m17n:tai:* -- -- -- -- m17n:th:* -- -- -- -- m17n:ur:* -- خ -- -- -- m17n:vi:han -- -- -- -- m17n:vi:nom* -- -- -- -- m17n:vi:* -- -- -- -- m17n:yi:* -- -- -- -- m17n:zh:bopomofo -- -- -- -- m17n:zh:cangjie -- -- -- -- m17n:zh:pinyin -- PY -- hanyu pinyin (m17n) -- -- -- m17n:zh:py* -- -- -- -- m17n:zh:quick -- -- -- -- m17n:zh:tonepy* -- -- -- -diff --git a/src/engine.c b/src/engine.c -index bd7ea0f..bcc1a71 100644 ---- a/src/engine.c -+++ b/src/engine.c -@@ -23,6 +23,7 @@ struct _IBusM17NEngine { - IBusProperty *setup_prop; - #endif /* HAVE_SETUP */ - IBusPropList *prop_list; -+ IBusKeymap *us_keymap; - }; - - struct _IBusM17NEngineClass { -@@ -35,6 +36,7 @@ struct _IBusM17NEngineClass { - gint preedit_underline; - IBusPreeditFocusMode preedit_focus_mode; - gint lookup_table_orientation; -+ gboolean use_us_layout; - - MInputMethod *im; - }; -@@ -64,14 +66,6 @@ static void ibus_m17n_engine_focus_out (IBusEngine *engine); - static void ibus_m17n_engine_reset (IBusEngine *engine); - static void ibus_m17n_engine_enable (IBusEngine *engine); - static void ibus_m17n_engine_disable (IBusEngine *engine); --static void ibus_engine_set_cursor_location (IBusEngine *engine, -- gint x, -- gint y, -- gint w, -- gint h); --static void ibus_m17n_engine_set_capabilities -- (IBusEngine *engine, -- guint caps); - static void ibus_m17n_engine_page_up (IBusEngine *engine); - static void ibus_m17n_engine_page_down (IBusEngine *engine); - static void ibus_m17n_engine_cursor_up (IBusEngine *engine); -@@ -80,12 +74,6 @@ static void ibus_m17n_engine_property_activate - (IBusEngine *engine, - const gchar *prop_name, - guint prop_state); --static void ibus_m17n_engine_property_show -- (IBusEngine *engine, -- const gchar *prop_name); --static void ibus_m17n_engine_property_hide -- (IBusEngine *engine, -- const gchar *prop_name); - - static void ibus_m17n_engine_commit_string - (IBusM17NEngine *m17n, -@@ -263,6 +251,7 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass) - IBUS_ENGINE_PREEDIT_COMMIT : - IBUS_ENGINE_PREEDIT_CLEAR; - klass->lookup_table_orientation = IBUS_ORIENTATION_SYSTEM; -+ klass->use_us_layout = FALSE; - - ibus_m17n_engine_config_free (engine_config); - -@@ -304,6 +293,14 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass) - klass->lookup_table_orientation = g_variant_get_int32 (value); - g_variant_unref (value); - } -+ -+ value = g_variant_lookup_value (values, -+ "use_us_layout", -+ G_VARIANT_TYPE_BOOLEAN); -+ if (value != NULL) { -+ klass->use_us_layout = g_variant_get_boolean (value); -+ g_variant_unref (value); -+ } - g_variant_unref (values); - } - -@@ -340,6 +337,8 @@ ibus_m17n_config_value_changed (IBusConfig *config, - klass->preedit_underline = g_variant_get_int32 (value); - } else if (g_strcmp0 (name, "lookup_table_orientation") == 0) { - klass->lookup_table_orientation = g_variant_get_int32 (value); -+ } else if (g_strcmp0 (name, "use_us_layout") == 0) { -+ klass->use_us_layout = g_variant_get_boolean (value); - } - } - } -@@ -384,6 +383,7 @@ ibus_m17n_engine_init (IBusM17NEngine *m17n) - m17n->table = ibus_lookup_table_new (9, 0, TRUE, TRUE); - g_object_ref_sink (m17n->table); - m17n->context = NULL; -+ m17n->us_keymap = ibus_keymap_get ("us"); - } - - static GObject* -@@ -476,6 +476,11 @@ ibus_m17n_engine_destroy (IBusM17NEngine *m17n) - m17n->context = NULL; - } - -+ if (m17n->us_keymap) { -+ g_object_unref (m17n->us_keymap); -+ m17n->us_keymap = NULL; -+ } -+ - IBUS_OBJECT_CLASS (parent_class)->destroy ((IBusObject *)m17n); - } - -@@ -531,28 +536,25 @@ ibus_m17n_engine_commit_string (IBusM17NEngine *m17n, - Since IBus engines are supposed to be cross-platform, the code - should go into IBus core, instead of ibus-m17n. */ - static MSymbol --ibus_m17n_key_event_to_symbol (guint keycode, -- guint keyval, -- guint modifiers) -+ibus_m17n_key_event_to_symbol (IBusM17NEngine *m17n, -+ guint keycode, -+ guint keyval, -+ guint modifiers) - { - GString *keysym; - MSymbol mkeysym = Mnil; - guint mask = 0; -- IBusKeymap *keymap; - - if (keyval >= IBUS_Shift_L && keyval <= IBUS_Hyper_R) { - return Mnil; - } - -- /* Here, keyval is already translated by IBUS_MOD5_MASK. Obtain -- the untranslated keyval from the underlying keymap and -- represent the translated keyval as the form "G-", which m17n-lib accepts. */ -+ /* If keyval is already translated by IBUS_MOD5_MASK. Try to -+ obtain the untranslated keyval from the US keymap. */ - if (modifiers & IBUS_MOD5_MASK) { -- keymap = ibus_keymap_get ("us"); -- keyval = ibus_keymap_lookup_keysym (keymap, keycode, -+ keyval = ibus_keymap_lookup_keysym (m17n->us_keymap, -+ keycode, - modifiers & ~IBUS_MOD5_MASK); -- g_object_unref (keymap); - } - - keysym = g_string_new (""); -@@ -656,15 +658,38 @@ ibus_m17n_engine_process_key_event (IBusEngine *engine, - guint modifiers) - { - IBusM17NEngine *m17n = (IBusM17NEngine *) engine; -+ IBusM17NEngineClass *klass = -+ (IBusM17NEngineClass *) G_OBJECT_GET_CLASS (m17n); -+ guint original_keyval = keyval; - - if (modifiers & IBUS_RELEASE_MASK) - return FALSE; -- MSymbol m17n_key = ibus_m17n_key_event_to_symbol (keycode, keyval, modifiers); - -- if (m17n_key == Mnil) -- return FALSE; -+ if (klass->use_us_layout) { -+ keyval = ibus_keymap_lookup_keysym (m17n->us_keymap, -+ keycode, -+ modifiers); -+ } - -- return ibus_m17n_engine_process_key (m17n, m17n_key); -+ MSymbol m17n_key = ibus_m17n_key_event_to_symbol (m17n, -+ keycode, -+ keyval, -+ modifiers); -+ if (m17n_key != Mnil && ibus_m17n_engine_process_key (m17n, m17n_key)) { -+ return TRUE; -+ } -+ -+ /* If keyval is translated in US layout, send the new keyval and -+ notify that the event is handled. */ -+ if (keyval != original_keyval && 0x20 <= keyval && keyval < 0x7F) { -+ gchar buf[2]; -+ buf[0] = keyval; -+ buf[1] = '\0'; -+ ibus_m17n_engine_commit_string (m17n, buf); -+ return TRUE; -+ } -+ -+ return FALSE; - } - - static void -@@ -704,8 +729,6 @@ ibus_m17n_engine_reset (IBusEngine *engine) - static void - ibus_m17n_engine_enable (IBusEngine *engine) - { -- IBusM17NEngine *m17n = (IBusM17NEngine *) engine; -- - parent_class->enable (engine); - - /* Issue a dummy ibus_engine_get_surrounding_text() call to tell -@@ -716,8 +739,6 @@ ibus_m17n_engine_enable (IBusEngine *engine) - static void - ibus_m17n_engine_disable (IBusEngine *engine) - { -- IBusM17NEngine *m17n = (IBusM17NEngine *) engine; -- - ibus_m17n_engine_focus_out (engine); - parent_class->disable (engine); - } -@@ -951,7 +972,9 @@ ibus_m17n_engine_callback (MInputContext *context, - &anchor_pos); - nchars = ibus_text_get_length (text); - nbytes = g_utf8_offset_to_pointer (text->text, nchars) - text->text; -- mt = mconv_decode_buffer (Mcoding_utf_8, text->text, nbytes); -+ mt = mconv_decode_buffer (Mcoding_utf_8, -+ (const unsigned char *) text->text, -+ nbytes); - g_object_unref (text); - - len = (long) mplist_value (m17n->context->plist); -diff --git a/src/ibus-m17n-preferences.ui b/src/ibus-m17n-preferences.ui -index a46ab49..e85fb15 100644 ---- a/src/ibus-m17n-preferences.ui -+++ b/src/ibus-m17n-preferences.ui -@@ -1,8 +1,8 @@ -- -+ - - - -- -+ - - - -@@ -11,24 +11,20 @@ - - - -- Single -- 1 -- -- -- Double -+ System - 2 - - -- Low -- 3 -+ Vertical -+ 1 - - -- None -+ Horizontal - 0 - - - -- -+ - - - -@@ -37,32 +33,67 @@ - - - -- System -+ Single -+ 1 -+ -+ -+ Double - 2 - - -- Vertical -- 1 -+ Low -+ 3 - - -- Horizontal -+ None - 0 - - - - - 400 -+ False - 5 - Preferences - center-always - gtk-preferences - normal -- False - - - True -- vertical -+ False - 2 -+ -+ -+ True -+ False -+ end -+ -+ -+ gtk-close -+ True -+ True -+ True -+ True -+ True -+ True -+ True -+ True -+ -+ -+ False -+ False -+ 0 -+ -+ -+ -+ -+ False -+ True -+ end -+ 0 -+ -+ - - - True -@@ -71,6 +102,7 @@ - - - True -+ False - 12 - 12 - 12 -@@ -78,20 +110,23 @@ - - - True -- vertical -+ False - - - True -+ False - 0 - none - - - True -+ False - 6 - 12 - - - True -+ False - 3 - 2 - -@@ -123,6 +158,7 @@ - - - True -+ False - liststore_underline - - -@@ -157,6 +193,7 @@ - - - True -+ False - Underline: - - -@@ -171,31 +208,39 @@ - - - True -+ False - <b>Pre-edit Appearance</b> - True - - - - -+ True -+ True - 0 - - - - - True -+ False - 0 - none - - - True -+ False - 12 - - - True -+ False -+ 2 - 2 - - - True -+ False - 0.46000000834465027 - Lookup Table Orientation: - -@@ -203,6 +248,7 @@ - - - True -+ False - liststore_orientation - - -@@ -210,6 +256,20 @@ - 2 - - -+ -+ -+ Use US keyboard layout -+ True -+ True -+ False -+ True -+ -+ -+ 2 -+ 1 -+ 2 -+ -+ - - - -@@ -217,12 +277,15 @@ - - - True -+ False - <b>Other</b> - True - - - - -+ True -+ True - 1 - - -@@ -233,6 +296,7 @@ - - - True -+ False - General - - -@@ -242,6 +306,7 @@ - - - True -+ False - 12 - 12 - 12 -@@ -249,11 +314,13 @@ - - - True -+ False - 0 - none - - - True -+ False - 6 - 12 - -@@ -277,6 +344,7 @@ - - - True -+ False - <b>m17n-lib Configuration</b> - True - -@@ -291,6 +359,7 @@ - - - True -+ False - Advanced - - -@@ -300,38 +369,11 @@ - - - -+ True -+ True - 1 - - -- -- -- True -- end -- -- -- gtk-close -- True -- True -- True -- True -- True -- True -- True -- True -- -- -- False -- False -- 0 -- -- -- -- -- False -- end -- 0 -- -- - - - -diff --git a/src/ibus-setup-m17n.desktop.in.in b/src/ibus-setup-m17n.desktop.in.in -new file mode 100644 -index 0000000..a380cb3 ---- /dev/null -+++ b/src/ibus-setup-m17n.desktop.in.in -@@ -0,0 +1,7 @@ -+[Desktop Entry] -+_Name=IBus M17N Setup -+_Comment=Set up IBus M17N engine -+Exec=@libexecdir@/ibus-setup-m17n -+NoDisplay=true -+Type=Application -+StartupNotify=true -diff --git a/src/m17n.xml.in b/src/m17n.xml.in -new file mode 100644 -index 0000000..fc215ab ---- /dev/null -+++ b/src/m17n.xml.in -@@ -0,0 +1,18 @@ -+ -+ -+ -+ org.freedesktop.IBus.M17N -+ M17N Component -+ @libexecdir@/ibus-engine-m17n --ibus -+ @VERSION@ -+ Peng Huang <shawn.p.huang@gmail.com> -+ GPL -+ http://code.google.com/p/ibus -+ ibus-m17n -+ -+ /usr/share/m17n/ -+ @pkgdatadir@/default.xml -+ ~/.m17n.d/ -+ -+ -+ -diff --git a/src/m17n.xml.in.in b/src/m17n.xml.in.in -deleted file mode 100644 -index 2f18ad5..0000000 ---- a/src/m17n.xml.in.in -+++ /dev/null -@@ -1,18 +0,0 @@ -- -- -- -- org.freedesktop.IBus.M17N -- M17N Component -- ${libexecdir}/ibus-engine-m17n --ibus -- @VERSION@ -- Peng Huang <shawn.p.huang@gmail.com> -- GPL -- http://code.google.com/p/ibus -- ibus-m17n -- -- /usr/share/m17n/ -- ${setupdir}/default.xml -- ~/.m17n.d/ -- -- -- -diff --git a/src/m17nutil.c b/src/m17nutil.c -index 51026b2..d82b855 100644 ---- a/src/m17nutil.c -+++ b/src/m17nutil.c -@@ -11,7 +11,7 @@ - - static MConverter *utf8_converter = NULL; - --#define DEFAULT_XML (SETUPDIR "/default.xml") -+#define DEFAULT_XML (PKGDATADIR "/default.xml") - - typedef enum { - ENGINE_CONFIG_RANK_MASK = 1 << 0, -@@ -53,7 +53,9 @@ ibus_m17n_mtext_to_utf8 (MText *text) - bufsize = (mtext_len (text) + 1) * 6; - buf = (gchar *) g_malloc (bufsize); - -- mconv_rebind_buffer (utf8_converter, buf, bufsize); -+ mconv_rebind_buffer (utf8_converter, -+ (const unsigned char *) buf, -+ bufsize); - mconv_encode (utf8_converter, text); - - buf [utf8_converter->nbytes] = 0; -@@ -76,7 +78,9 @@ ibus_m17n_mtext_to_ucs4 (MText *text, glong *nchars) - bufsize = (mtext_len (text) + 1) * 6; - buf = (gchar *) g_malloc (bufsize); - -- mconv_rebind_buffer (utf8_converter, buf, bufsize); -+ mconv_rebind_buffer (utf8_converter, -+ (const unsigned char *) buf, -+ bufsize); - if (mconv_encode (utf8_converter, text) < 0) { - g_free (buf); - return NULL; -@@ -133,7 +137,7 @@ ibus_m17n_engine_new (MSymbol lang, - "language", msymbol_name (lang), - "license", "GPL", - "icon", engine_icon ? engine_icon : "", -- "layout", "us", -+ "layout", "default", - "rank", config->rank, - "symbol", config->symbol ? config->symbol : "", - "setup", engine_setup, -@@ -202,17 +206,12 @@ ibus_m17n_list_engines (void) - if (l) { - /* check candidates encoding */ - MPlist *sl; -- MSymbol varname; -- MText *vardesc; -- MSymbol varunknown; - MSymbol varcharset; - - sl = mplist_value (l); -- varname = mplist_value (sl); -+ /* L = (VAR-NAME DESCRIPTION 'nil' VALUE) */ - sl = mplist_next (sl); -- vardesc = mplist_value (sl); - sl = mplist_next (sl); -- varunknown = mplist_value (sl); - sl = mplist_next (sl); - varcharset = mplist_value (sl); - -@@ -336,17 +335,24 @@ ibus_m17n_get_component (void) - GList *engines, *p; - IBusComponent *component; - XMLNode *node; -+ const gchar *pkgdatadir; -+ gchar *default_xml; - - component = ibus_component_new ("org.freedesktop.IBus.M17n", - N_("M17N"), -- "0.1.0", -+ PACKAGE_VERSION, - "GPL", - "Peng Huang ", - "http://code.google.com/p/ibus/", - "", -- "ibus-m17n"); -+ PACKAGE_NAME); - -- node = ibus_xml_parse_file (DEFAULT_XML); -+ pkgdatadir = g_getenv ("IBUS_M17N_PKGDATADIR"); -+ if (pkgdatadir == NULL) -+ pkgdatadir = PKGDATADIR; -+ default_xml = g_build_filename (pkgdatadir, "default.xml", NULL); -+ -+ node = ibus_xml_parse_file (default_xml); - if (node && g_strcmp0 (node->name, "engines") == 0) { - for (p = node->sub_nodes; p != NULL; p = p->next) { - XMLNode *sub_node = p->data; -@@ -367,10 +373,12 @@ ibus_m17n_get_component (void) - } - config_list = g_slist_reverse (config_list); - } else -- g_warning ("failed to parse %s", DEFAULT_XML); -+ g_warning ("failed to parse %s", default_xml); - if (node) - ibus_xml_free (node); - -+ g_free (default_xml); -+ - engines = ibus_m17n_list_engines (); - - for (p = engines; p != NULL; p = p->next) -diff --git a/src/setup.c b/src/setup.c -index cc5cb09..513fabf 100644 ---- a/src/setup.c -+++ b/src/setup.c -@@ -25,6 +25,7 @@ struct _SetupDialog { - GtkWidget *colorbutton_foreground; - GtkWidget *checkbutton_background; - GtkWidget *colorbutton_background; -+ GtkWidget *checkbutton_use_us_layout; - GtkWidget *treeview; - GtkListStore *store; - -@@ -73,7 +74,9 @@ parse_m17n_value (MPlist *plist, gchar *text) - if (mplist_key (plist) == Mtext) { - MText *mtext; - -- mtext = mtext_from_data (text, strlen (text), MTEXT_FORMAT_UTF_8); -+ mtext = mconv_decode_buffer (Mcoding_utf_8, -+ (const unsigned char *) text, -+ strlen (text)); - value = mplist (); - mplist_add (value, Mtext, mtext); - return value; -@@ -288,6 +291,25 @@ load_choice (GVariant *values, - } - - static void -+load_toggle (GVariant *values, -+ GtkToggleButton *togglebutton, -+ const gchar *name, -+ gboolean defval) -+{ -+ GVariant *value; -+ gboolean bvalue; -+ -+ bvalue = defval; -+ value = g_variant_lookup_value (values, name, G_VARIANT_TYPE_BOOLEAN); -+ if (value != NULL) { -+ bvalue = g_variant_get_boolean (value); -+ g_variant_unref (value); -+ } -+ -+ gtk_toggle_button_set_active (togglebutton, bvalue); -+} -+ -+static void - setup_dialog_load_config (SetupDialog *dialog) - { - GVariant *values; -@@ -336,6 +358,12 @@ setup_dialog_load_config (SetupDialog *dialog) - "lookup_table_orientation", - IBUS_ORIENTATION_SYSTEM); - -+ /* Use US keyboard layout */ -+ load_toggle (values, -+ GTK_TOGGLE_BUTTON (dialog->checkbutton_use_us_layout), -+ "use_us_layout", -+ FALSE); -+ - /* Advanced -> m17n-lib configuration */ - dialog->store = gtk_list_store_new (NUM_COLS, - G_TYPE_STRING, -@@ -372,10 +400,10 @@ setup_dialog_load_config (SetupDialog *dialog) - static gchar * - _gdk_color_to_string (GdkColor *color) - { -- g_strdup_printf ("#%02X%02X%02X", -- (color->red & 0xFF00) >> 8, -- (color->green & 0xFF00) >> 8, -- (color->blue & 0xFF00) >> 8); -+ return g_strdup_printf ("#%02X%02X%02X", -+ (color->red & 0xFF00) >> 8, -+ (color->green & 0xFF00) >> 8, -+ (color->blue & 0xFF00) >> 8); - } - - static void -@@ -418,6 +446,20 @@ save_choice (SetupDialog *dialog, - ibus_config_set_value (dialog->config, dialog->section, name, value); - } - -+static void -+save_toggle (SetupDialog *dialog, -+ GtkToggleButton *togglebutton, -+ const gchar *name) -+{ -+ GVariant *value; -+ -+ value = g_variant_new_boolean (gtk_toggle_button_get_active (togglebutton)); -+ ibus_config_set_value (dialog->config, -+ dialog->section, -+ name, -+ value); -+} -+ - static gboolean - save_m17n_options (SetupDialog *dialog) - { -@@ -428,7 +470,7 @@ save_m17n_options (SetupDialog *dialog) - gboolean retval = TRUE; - - if (!gtk_tree_model_get_iter_first (model, &iter)) -- return; -+ return FALSE; - - do { - gtk_tree_model_get (model, &iter, -@@ -499,6 +541,9 @@ setup_dialog_save_config (SetupDialog *dialog) - save_choice (dialog, - GTK_COMBO_BOX (dialog->combobox_orientation), - "lookup_table_orientation"); -+ save_toggle (dialog, -+ GTK_TOGGLE_BUTTON (dialog->checkbutton_use_us_layout), -+ "use_us_layout"); - save_m17n_options (dialog); - } - -@@ -525,7 +570,7 @@ setup_dialog_new (IBusConfig *config, - - error = NULL; - if (gtk_builder_add_from_file (builder, -- SETUPDIR "/ibus-m17n-preferences.ui", -+ PKGDATADIR "setup/ibus-m17n-preferences.ui", - &error) == 0) { - g_warning ("can't read ibus-m17n-preferences.ui: %s", - error->message); -@@ -547,6 +592,8 @@ setup_dialog_new (IBusConfig *config, - dialog->combobox_underline = GTK_WIDGET (object); - object = gtk_builder_get_object (builder, "combobox_orientation"); - dialog->combobox_orientation = GTK_WIDGET (object); -+ object = gtk_builder_get_object (builder, "checkbutton_use_us_layout"); -+ dialog->checkbutton_use_us_layout = GTK_WIDGET (object); - object = gtk_builder_get_object (builder, "treeview_mim_config"); - dialog->treeview = GTK_WIDGET (object); - -@@ -567,9 +614,8 @@ start (const gchar *engine_name) - { - IBusBus *bus; - IBusConfig *config; -- gchar **strv, *section; -+ gchar **strv; - SetupDialog *dialog; -- GObject *object; - - ibus_init (); - ibus_m17n_init_common (); -@@ -610,6 +656,11 @@ main (gint argc, gchar **argv) - g_option_context_free (context); - - gtk_init (&argc, &argv); -+ -+ if (!opt_name) { -+ opt_name = (gchar *) g_getenv ("IBUS_ENGINE_NAME"); -+ } -+ - if (!opt_name) { - fprintf (stderr, "can't determine IBus engine name; use --name\n"); - exit (1); diff --git a/ibus-m17n-content-type.patch b/ibus-m17n-content-type.patch deleted file mode 100644 index 90396ac..0000000 --- a/ibus-m17n-content-type.patch +++ /dev/null @@ -1,97 +0,0 @@ -From e995acb046c9e6bd3ee48cb0cf1ccf9d754546e7 Mon Sep 17 00:00:00 2001 -From: Daiki Ueno -Date: Thu, 6 Nov 2014 16:05:52 +0900 -Subject: [PATCH] engine: Disable key processing on password input - ---- - src/engine.c | 35 +++++++++++++++++++++++++++++++++++ - 1 file changed, 35 insertions(+) - -Index: ibus-m17n-1.3.4/src/engine.c -=================================================================== ---- ibus-m17n-1.3.4.orig/src/engine.c -+++ ibus-m17n-1.3.4/src/engine.c -@@ -24,6 +24,7 @@ struct _IBusM17NEngine { - #endif /* HAVE_SETUP */ - IBusPropList *prop_list; - IBusKeymap *us_keymap; -+ gboolean has_focus; - }; - - struct _IBusM17NEngineClass { -@@ -75,6 +76,10 @@ static void ibus_m17n_engine_property_ac - (IBusEngine *engine, - const gchar *prop_name, - guint prop_state); -+static void ibus_m17n_engine_set_content_type -+ (IBusEngine *engine, -+ IBusInputPurpose purpose, -+ IBusInputHints hints); - - static void ibus_m17n_engine_commit_string - (IBusM17NEngine *m17n, -@@ -226,6 +231,8 @@ ibus_m17n_engine_class_init (IBusM17NEng - - engine_class->property_activate = ibus_m17n_engine_property_activate; - -+ engine_class->set_content_type = ibus_m17n_engine_set_content_type; -+ - if (!ibus_m17n_scan_class_name (G_OBJECT_CLASS_NAME (klass), - &lang, &name)) { - g_free (lang); -@@ -667,6 +674,9 @@ ibus_m17n_engine_process_key_event (IBus - (IBusM17NEngineClass *) G_OBJECT_GET_CLASS (m17n); - guint original_keyval = keyval; - -+ if (!m17n->has_focus) -+ return FALSE; -+ - if (modifiers & IBUS_RELEASE_MASK) - return FALSE; - -@@ -704,6 +714,7 @@ ibus_m17n_engine_focus_in (IBusEngine *e - - ibus_engine_register_properties (engine, m17n->prop_list); - ibus_m17n_engine_process_key (m17n, Minput_focus_in); -+ m17n->has_focus = TRUE; - - parent_class->focus_in (engine); - } -@@ -717,6 +728,7 @@ ibus_m17n_engine_focus_out (IBusEngine * - properly, we just reset the IC instead of passing Mfocus_out to - m17n-lib. */ - minput_reset_ic (m17n->context); -+ m17n->has_focus = FALSE; - - parent_class->focus_out (engine); - } -@@ -812,6 +824,29 @@ ibus_m17n_engine_property_activate (IBus - } - - static void -+ibus_m17n_engine_set_content_type (IBusEngine *engine, -+ IBusInputPurpose purpose, -+ IBusInputHints hints) -+{ -+ IBusM17NEngine *m17n = (IBusM17NEngine *) engine; -+ -+ /* For password and PIN input, disable key processing by emulating -+ 'focus-out'. */ -+ switch (purpose) { -+ case IBUS_INPUT_PURPOSE_PASSWORD: -+ case IBUS_INPUT_PURPOSE_PIN: -+ ibus_m17n_engine_process_key (m17n, Minput_focus_out); -+ m17n->has_focus = FALSE; -+ break; -+ -+ default: -+ ibus_m17n_engine_process_key (m17n, Minput_focus_in); -+ m17n->has_focus = TRUE; -+ break; -+ } -+} -+ -+static void - ibus_m17n_engine_update_lookup_table (IBusM17NEngine *m17n) - { - ibus_lookup_table_clear (m17n->table); diff --git a/ibus-m17n-fix-data-location.patch b/ibus-m17n-fix-data-location.patch deleted file mode 100644 index b99bfaf..0000000 --- a/ibus-m17n-fix-data-location.patch +++ /dev/null @@ -1,25 +0,0 @@ -From b0e03bac1f3b420ac1b7ac76d6008dd4ed942cbf Mon Sep 17 00:00:00 2001 -From: Daiki Ueno -Date: Mon, 13 May 2013 15:45:33 +0900 -Subject: [PATCH] Fix ibus-m17n-preferences.ui location - ---- - src/setup.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/setup.c b/src/setup.c -index 513fabf..4de8fb1 100644 ---- a/src/setup.c -+++ b/src/setup.c -@@ -570,7 +570,7 @@ setup_dialog_new (IBusConfig *config, - - error = NULL; - if (gtk_builder_add_from_file (builder, -- PKGDATADIR "setup/ibus-m17n-preferences.ui", -+ PKGDATADIR "/setup/ibus-m17n-preferences.ui", - &error) == 0) { - g_warning ("can't read ibus-m17n-preferences.ui: %s", - error->message); --- -1.8.1.4 - diff --git a/ibus-m17n-fix-preedit-color.patch b/ibus-m17n-fix-preedit-color.patch deleted file mode 100644 index 28dace9..0000000 --- a/ibus-m17n-fix-preedit-color.patch +++ /dev/null @@ -1,29 +0,0 @@ -From e5c742c56abaadaa5d5a018c0d9004bf2d0a100c Mon Sep 17 00:00:00 2001 -From: Mike FABIAN -Date: Mon, 12 Aug 2013 18:51:59 +0200 -Subject: [PATCH] engine: fix preedit background colour and underlining - -BUG=rhbz#995842 - -Review URL: https://codereview.appspot.com/12688049 -Patch from Mike FABIAN . ---- - src/engine.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/engine.c b/src/engine.c -index bcc1a71..ca70464 100644 ---- a/src/engine.c -+++ b/src/engine.c -@@ -282,7 +282,7 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass) - "preedit_underline", - G_VARIANT_TYPE_INT32); - if (value != NULL) { -- klass->preedit_background = g_variant_get_int32 (value); -+ klass->preedit_underline = g_variant_get_int32 (value); - g_variant_unref (value); - } - --- -1.8.3.1 - diff --git a/ibus-m17n-fix-preferences-ui.patch b/ibus-m17n-fix-preferences-ui.patch deleted file mode 100644 index c883aee..0000000 --- a/ibus-m17n-fix-preferences-ui.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 1a497768dfb15c18865154183296087ec07d6a95 Mon Sep 17 00:00:00 2001 -From: Daiki Ueno -Date: Tue, 16 Sep 2014 11:28:04 +0900 -Subject: [PATCH] setup: Don't use removed "tab_vborder" property - ---- - src/ibus-m17n-preferences.ui | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/ibus-m17n-preferences.ui b/src/ibus-m17n-preferences.ui -index e85fb15..19d3b47 100644 ---- a/src/ibus-m17n-preferences.ui -+++ b/src/ibus-m17n-preferences.ui -@@ -98,7 +98,6 @@ - - True - True -- 3 - - - True --- -1.9.3 - diff --git a/ibus-m17n-gettext-0.19.patch b/ibus-m17n-gettext-0.19.patch deleted file mode 100644 index 365f440..0000000 --- a/ibus-m17n-gettext-0.19.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 109acb63611f5fbd994aa56cd0b4a9b1b2eb178e Mon Sep 17 00:00:00 2001 -From: Daiki Ueno -Date: Thu, 5 Jun 2014 12:17:36 +0900 -Subject: [PATCH] build: Switch from intltool to gettext-0.19 - ---- - configure.ac | 3 +-- - po/POTFILES.in | 2 +- - src/Makefile.am | 19 ++++++++++++++----- - src/ibus-setup-m17n.desktop.in.in | 4 ++-- - 4 files changed, 18 insertions(+), 10 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 30d44ff..dab9354 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -48,7 +48,6 @@ AM_PROG_CC_C_O - AC_PROG_CXX - AC_ISC_POSIX - AC_HEADER_STDC --IT_PROG_INTLTOOL([0.35.0]) - AM_PROG_LIBTOOL - - # check ibus -@@ -104,7 +103,7 @@ AC_SUBST(GETTEXT_PACKAGE) - AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define to the read-only architecture-independent data directory.]) - - AM_GNU_GETTEXT([external]) --AM_GNU_GETTEXT_VERSION(0.16.1) -+AM_GNU_GETTEXT_VERSION([0.19]) - - - # OUTPUT files -diff --git a/po/POTFILES.in b/po/POTFILES.in -index bb3bd6e..4f81b75 100644 ---- a/po/POTFILES.in -+++ b/po/POTFILES.in -@@ -1,5 +1,5 @@ - src/engine.c - src/m17nutil.c - src/main.c --[type: gettext/glade]src/ibus-m17n-preferences.ui -+src/ibus-m17n-preferences.ui - src/ibus-setup-m17n.desktop.in.in -diff --git a/src/Makefile.am b/src/Makefile.am -index 68ec953..c23e680 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -131,11 +131,20 @@ m17n.xml: m17n.xml.in - - desktop_in_in_files = ibus-setup-m17n.desktop.in.in - desktop_in_files = $(desktop_in_in_files:.in.in=.in) -+desktop_files = $(desktop_in_files:.desktop.in=.desktop) - --$(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile -- $(AM_V_GEN) $(edit) $< > $@.tmp && mv $@.tmp $@ -+$(desktop_in_files): -+ $(AM_V_GEN) $(MSGFMT) --desktop --template $@.in -o $@-t \ -+ -d $(top_srcdir)/po && mv $@-t $@ - --desktopdir=$(datadir)/applications --desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) -+$(desktop_files): -+ @rm -f $@ -+ $(AM_V_GEN) srcdir=''; \ -+ test -f ./$@.in || srcdir=$(srcdir)/; \ -+ $(edit) $${srcdir}$@.in >$@-t && mv $@-t $@ - --@INTLTOOL_DESKTOP_RULE@ -+ibus-setup-m17n.desktop.in: ibus-setup-m17n.desktop.in.in -+ibus-setup-m17n.desktop: ibus-setup-m17n.desktop.in -+ -+desktopdir=$(datadir)/applications -+desktop_DATA = $(desktop_files) -diff --git a/src/ibus-setup-m17n.desktop.in.in b/src/ibus-setup-m17n.desktop.in.in -index a380cb3..110fcfb 100644 ---- a/src/ibus-setup-m17n.desktop.in.in -+++ b/src/ibus-setup-m17n.desktop.in.in -@@ -1,6 +1,6 @@ - [Desktop Entry] --_Name=IBus M17N Setup --_Comment=Set up IBus M17N engine -+Name=IBus M17N Setup -+Comment=Set up IBus M17N engine - Exec=@libexecdir@/ibus-setup-m17n - NoDisplay=true - Type=Application --- -1.9.0 - diff --git a/ibus-m17n-hide-title-status.patch b/ibus-m17n-hide-title-status.patch index b373882..f1d9a7c 100644 --- a/ibus-m17n-hide-title-status.patch +++ b/ibus-m17n-hide-title-status.patch @@ -9,9 +9,9 @@ Subject: [PATCH 2/4] Hide status from the panel if status == title. Index: ibus-m17n-1.3.4/src/engine.c =================================================================== ---- ibus-m17n-1.3.4.orig/src/engine.c -+++ ibus-m17n-1.3.4/src/engine.c -@@ -38,6 +38,7 @@ struct _IBusM17NEngineClass { +--- ibus-m17n-1.4.0.orig/src/engine.c 2018-10-23 15:32:43.000000000 +0200 ++++ ibus-m17n-1.4.0/src/engine.c 2018-10-24 08:35:49.463479480 +0200 +@@ -41,6 +41,7 @@ gint lookup_table_orientation; gboolean use_us_layout; @@ -19,10 +19,10 @@ Index: ibus-m17n-1.3.4/src/engine.c MInputMethod *im; }; -@@ -233,6 +234,10 @@ ibus_m17n_engine_class_init (IBusM17NEng - } - engine_name = g_strdup_printf ("m17n:%s:%s", lang, name); - klass->config_section = g_strdup_printf ("engine/M17N/%s/%s", lang, name); +@@ -236,6 +237,10 @@ + "org.freedesktop.ibus.engine.m17n", + g_strdup_printf ("/org/freedesktop/ibus/engine/m17n/%s/%s/", + lang, name)); + MPlist *l = minput_get_title_icon (msymbol (lang), msymbol (name)); + if (l && mplist_key (l) == Mtext) { + klass->title = ibus_m17n_mtext_to_utf8 (mplist_value (l)); @@ -30,7 +30,7 @@ Index: ibus-m17n-1.3.4/src/engine.c g_free (lang); g_free (name); -@@ -924,8 +929,9 @@ ibus_m17n_engine_callback (MInputContext +@@ -961,8 +966,9 @@ else if (command == Minput_status_draw) { gchar *status; status = ibus_m17n_mtext_to_utf8 (m17n->context->status); diff --git a/ibus-m17n.spec b/ibus-m17n.spec index 19a1825..8f2aede 100644 --- a/ibus-m17n.spec +++ b/ibus-m17n.spec @@ -1,28 +1,20 @@ %global require_ibus_version 1.4.0 Name: ibus-m17n -Version: 1.3.4 -Release: 27%{?dist} +Version: 1.4.0 +Release: 1%{?dist} Summary: The M17N engine for IBus platform License: GPLv2+ URL: https://github.com/ibus/ibus-m17n Source0: https://github.com/ibus/%{name}/archive/%{version}/%{name}-%{version}.tar.gz # Upstreamed patches: -Patch0: ibus-m17n-HEAD.patch -Patch1: ibus-m17n-fix-data-location.patch -Patch2: ibus-m17n-fix-preedit-color.patch -Patch3: ibus-m17n-fix-preferences-ui.patch -Patch4: ibus-m17n-content-type.patch - # Fedora specific patches: # Enable lv3:ralt_switch option for some Indic engines in default.xml. Patch100: ibus-m17n-xkb-options.patch # Don't make the status button clickable (maybe obsolete). Patch101: ibus-m17n-hide-title-status.patch -# Use gettext-0.19 instead of intltool -Patch102: ibus-m17n-gettext-0.19.patch # Use ar-kbd as default keymap for Arabic # https://bugzilla.redhat.com/show_bug.cgi?id=1076945 Patch103: ibus-m17n-enable-ar-kbd.patch @@ -48,14 +40,8 @@ the input table maps from m17n-db. %prep %setup -q -%patch0 -p1 -b .HEAD -%patch1 -p1 -b .fix-data-location -%patch2 -p1 -b .fix-preedit-color -%patch3 -p1 -b .fix-preferences-ui -%patch4 -p1 -b .content-type %patch100 -p1 -b .xkb-options %patch101 -p1 -b .hide-title-status -%patch102 -p1 -b .gettext-0.19 %patch103 -p1 -b .enable-ar-kbd NOCONFIGURE=1 ./autogen.sh @@ -118,8 +104,14 @@ desktop-file-validate ${RPM_BUILD_ROOT}%{_datadir}/applications/ibus-setup-m17n. %{_libexecdir}/ibus-setup-m17n %{_datadir}/ibus/component/* %{_datadir}/applications/ibus-setup-m17n.desktop +%{_datadir}/glib-2.0/schemas/org.freedesktop.ibus.engine.m17n.gschema.xml %changelog +* Tue Oct 23 2018 Mike FABIAN - 1.4.0-1 +- Update to 1.4.0 +- Migration from IBusConfig to GSettings +- Remove patches which are included upstream now + * Fri Jul 13 2018 Fedora Release Engineering - 1.3.4-27 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild diff --git a/sources b/sources index 1e36770..75390f9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ibus-m17n-1.3.4.tar.gz) = 9e9bc290b0f0d68558d408f6e69aa3bd9bb767db827a95839b576b58c7a5056dedcbd9b0bf1aab5e26ab21e601acd67a53404a5fd54b436efaf2a706489f25c4 +SHA512 (ibus-m17n-1.4.0.tar.gz) = edfd411fe2b5c584bf1ca5b68e5cdc635757e6dd03182202d20b5f112bc272b3f57a94bd087c7b1bd43e124c524af6a8bdb96bd54331e7f8b57c21e10ededc66