diff --git a/ibus-m17n-fedora.patch b/ibus-m17n-HEAD.patch similarity index 61% rename from ibus-m17n-fedora.patch rename to ibus-m17n-HEAD.patch index 52db0d9..1a95eaa 100644 --- a/ibus-m17n-fedora.patch +++ b/ibus-m17n-HEAD.patch @@ -1,8 +1,46 @@ +diff --git a/codereview.settings b/codereview.settings +new file mode 100644 +index 0000000..71ecbee +--- /dev/null ++++ b/codereview.settings +@@ -0,0 +1,2 @@ ++# This file is used by "git cl" to get code review information. ++CODE_REVIEW_SERVER: codereview.appspot.com diff --git a/src/engine.c b/src/engine.c -index dbd00fc..1dbcf34 100644 +index 260a806..1dbcf34 100644 --- a/src/engine.c +++ b/src/engine.c -@@ -424,9 +424,9 @@ ibus_m17n_engine_commit_string (IBusM17NEngine *m17n, +@@ -149,6 +149,7 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass) + engine_class->cursor_down = ibus_m17n_engine_cursor_down; + + engine_class->property_activate = ibus_m17n_engine_property_activate; ++ + } + + static void +@@ -279,7 +280,10 @@ ibus_m17n_engine_constructor (GType type, + mplist_put (im->driver.callback_list, Minput_candidates_done, ibus_m17n_engine_callback); + mplist_put (im->driver.callback_list, Minput_set_spot, ibus_m17n_engine_callback); + mplist_put (im->driver.callback_list, Minput_toggle, ibus_m17n_engine_callback); +- mplist_put (im->driver.callback_list, Minput_reset, ibus_m17n_engine_callback); ++ /* ++ Does not set reset callback, uses the default callback in m17n. ++ mplist_put (im->driver.callback_list, Minput_reset, ibus_m17n_engine_callback); ++ */ + mplist_put (im->driver.callback_list, Minput_get_surrounding_text, ibus_m17n_engine_callback); + mplist_put (im->driver.callback_list, Minput_delete_surrounding_text, ibus_m17n_engine_callback); + +@@ -294,8 +298,7 @@ ibus_m17n_engine_constructor (GType type, + return NULL; + } + +- m17n->context = minput_create_ic (im, NULL); +- mplist_add (m17n->context->plist, msymbol ("IBusEngine"), m17n); ++ m17n->context = minput_create_ic (im, m17n); + + m17n->config_section = g_strdup_printf ("engine/M17N/%s/%s", + lang, name); +@@ -421,9 +424,9 @@ ibus_m17n_engine_commit_string (IBusM17NEngine *m17n, ibus_m17n_engine_update_preedit (m17n); } @@ -15,7 +53,7 @@ index dbd00fc..1dbcf34 100644 KeyCode altgr = XKeysymToKeycode (display, XK_ISO_Level3_Shift); XModifierKeymap *mods = XGetModifierMapping (display); -@@ -448,20 +448,26 @@ ibus_m17n_key_event_to_symbol (guint keycode, +@@ -445,20 +448,26 @@ ibus_m17n_key_event_to_symbol (guint keycode, MSymbol mkeysym = Mnil; guint mask = 0; IBusKeymap *keymap; @@ -48,6 +86,65 @@ index dbd00fc..1dbcf34 100644 if (keyval == IBUS_space && modifiers & IBUS_SHIFT_MASK) mask |= IBUS_SHIFT_MASK; +@@ -572,7 +581,7 @@ ibus_m17n_engine_focus_in (IBusEngine *engine) + IBusM17NEngine *m17n = (IBusM17NEngine *) engine; + + ibus_engine_register_properties (engine, m17n->prop_list); +- ibus_m17n_engine_process_key (m17n, msymbol ("input-focus-in")); ++ ibus_m17n_engine_process_key (m17n, Minput_focus_in); + + parent_class->focus_in (engine); + } +@@ -582,7 +591,7 @@ ibus_m17n_engine_focus_out (IBusEngine *engine) + { + IBusM17NEngine *m17n = (IBusM17NEngine *) engine; + +- ibus_m17n_engine_process_key (m17n, msymbol ("input-focus-out")); ++ ibus_m17n_engine_process_key (m17n, Minput_focus_out); + + parent_class->focus_out (engine); + } +@@ -593,7 +602,8 @@ ibus_m17n_engine_reset (IBusEngine *engine) + IBusM17NEngine *m17n = (IBusM17NEngine *) engine; + + parent_class->reset (engine); +- ibus_m17n_engine_focus_in (engine); ++ ++ minput_reset_ic (m17n->context); + } + + static void +@@ -676,7 +686,7 @@ ibus_m17n_engine_property_activate (IBusEngine *engine, + static void + ibus_m17n_engine_update_lookup_table (IBusM17NEngine *m17n) + { +- ibus_lookup_table_clear (m17n->table); ++ ibus_lookup_table_clear (m17n->table); + + if (m17n->context->candidate_list && m17n->context->candidate_show) { + IBusText *text; +@@ -752,15 +762,14 @@ ibus_m17n_engine_callback (MInputContext *context, + MSymbol command) + { + IBusM17NEngine *m17n = NULL; +- MPlist *p = NULL; + +- p = mplist_find_by_key (context->plist, msymbol ("IBusEngine")); +- if (p) { +- m17n = (IBusM17NEngine *) mplist_value (p); +- } ++ m17n = context->arg; ++ g_return_if_fail (m17n != NULL); + +- if (m17n == NULL) { +- return; ++ /* the callback may be called in minput_create_ic, in the time ++ * m17n->context has not be assigned, so need assign it. */ ++ if (m17n->context == NULL) { ++ m17n->context = context; + } + + if (command == Minput_preedit_start) { diff --git a/src/m17nutil.c b/src/m17nutil.c index ae0fe56..22b9fe1 100644 --- a/src/m17nutil.c @@ -193,6 +290,20 @@ index ae0fe56..22b9fe1 100644 } return FALSE; } +diff --git a/src/main.c b/src/main.c +index b8d7c72..514d971 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -74,8 +74,7 @@ print_engines_xml (void) + + ibus_init (); + +- bus = ibus_bus_new (); +- ibus_m17n_init (bus); ++ ibus_m17n_init_common (); + + component = ibus_m17n_get_component (); + output = g_string_new (""); diff --git a/src/setup.c b/src/setup.c index 7442159..0fe6e1b 100644 --- a/src/setup.c diff --git a/ibus-m17n.spec b/ibus-m17n.spec index bfa7e37..2c8378c 100644 --- a/ibus-m17n.spec +++ b/ibus-m17n.spec @@ -2,7 +2,7 @@ Name: ibus-m17n Version: 1.3.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: The M17N engine for IBus platform License: GPLv2+ Group: System Environment/Libraries @@ -11,7 +11,7 @@ Source0: http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz Patch0: ibus-m17n-iok.patch Patch1: ibus-m17n-surrounding-text.patch -Patch2: ibus-m17n-fedora.patch +Patch2: ibus-m17n-HEAD.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gettext-devel @@ -62,6 +62,13 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/ibus/component/* %changelog +* Fri Nov 5 2010 Daiki Ueno - 1.3.1-7 +- Rename ibus-m17n-fedora.patch to ibus-m17n-HEAD.patch since the + changes are merged into upstream. +- Update ibus-m17n-HEAD.patch with upstream fix 08e06310 +- Fix bug 649230 - [si] last input character is committed late in + wijesekara input method + * Fri Oct 22 2010 Daiki Ueno - 1.3.1-6 - Link ibus-setup-m17n with GTK+ 3.0.