public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/ibus] autotool: - Recreate the ibus-HEAD.patch from upstream git source tree.
@ 2026-05-31  2:04 Peng Huang
  0 siblings, 0 replies; 3+ messages in thread
From: Peng Huang @ 2026-05-31  2:04 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/ibus
            Branch : autotool
            Commit : f899d7f0747818269e3bd7a142f51c8e241c2390
            Author : Peng Huang <phuang@fedoraproject.org>
            Date   : 2009-02-17T01:02:24+00:00
            Stats  : +263/-6 in 2 file(s)
            URL    : https://src.fedoraproject.org/rpms/ibus/c/f899d7f0747818269e3bd7a142f51c8e241c2390?branch=autotool

            Log:
            - Recreate the ibus-HEAD.patch from upstream git source tree.
- Try to fixe ibus-hangul segfault (#485438).

---
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index 9817f56..f539b80 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -161,7 +161,7 @@ index e92b373..7f51130 100644
  }
  
 diff --git a/bus/inputcontext.c b/bus/inputcontext.c
-index be45bbe..bdc7d75 100644
+index be45bbe..979c710 100644
 --- a/bus/inputcontext.c
 +++ b/bus/inputcontext.c
 @@ -100,6 +100,8 @@ static gboolean bus_input_context_send_signal   (BusInputContext        *context
@@ -251,16 +251,17 @@ index be45bbe..bdc7d75 100644
          bus_engine_proxy_focus_out (priv->engine);
      }
  
-@@ -1122,7 +1120,7 @@ _engine_destroy_cb (BusEngineProxy  *engine,
+@@ -1122,7 +1120,8 @@ _engine_destroy_cb (BusEngineProxy  *engine,
  
      g_assert (priv->engine == engine);
  
 -    bus_input_context_set_engine (context, NULL);
 +    bus_input_context_unset_engine (context);
++    bus_input_context_disable (context);
  }
  
  static void
-@@ -1391,7 +1389,6 @@ bus_input_context_disable (BusInputContext *context)
+@@ -1391,7 +1390,6 @@ bus_input_context_disable (BusInputContext *context)
      BusInputContextPrivate *priv;
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (context);
  
@@ -268,7 +269,7 @@ index be45bbe..bdc7d75 100644
  
      if (priv->engine) {
          if (priv->has_focus) {
-@@ -1406,8 +1403,52 @@ bus_input_context_disable (BusInputContext *context)
+@@ -1406,8 +1404,52 @@ bus_input_context_disable (BusInputContext *context)
      g_signal_emit (context,
                     context_signals[DISABLED],
                     0);
@@ -321,7 +322,7 @@ index be45bbe..bdc7d75 100644
  
  void
  bus_input_context_set_engine (BusInputContext *context,
-@@ -1420,56 +1461,25 @@ bus_input_context_set_engine (BusInputContext *context,
+@@ -1420,56 +1462,25 @@ bus_input_context_set_engine (BusInputContext *context,
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (context);
  
      if (priv->engine != NULL) {
@@ -842,6 +843,258 @@ index 9965761..52631e8 100644
                              G_TYPE_BOOLEAN, &restart,
                              G_TYPE_INVALID,
                              G_TYPE_INVALID);
+diff --git a/src/ibusengine.c b/src/ibusengine.c
+index 0c36dd4..27fc71e 100644
+--- a/src/ibusengine.c
++++ b/src/ibusengine.c
+@@ -101,7 +101,7 @@ static void     ibus_engine_cursor_down     (IBusEngine         *engine);
+ static void     ibus_engine_property_activate
+                                             (IBusEngine         *engine,
+                                              const gchar        *prop_name,
+-                                             gint                prop_state);
++                                             guint               prop_state);
+ static void     ibus_engine_property_show   (IBusEngine         *engine,
+                                              const gchar        *prop_name);
+ static void     ibus_engine_property_hide   (IBusEngine         *engine,
+@@ -227,7 +227,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, focus_in),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[FOCUS_OUT] =
+         g_signal_new (I_("focus-out"),
+@@ -236,7 +237,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, focus_out),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[RESET] =
+         g_signal_new (I_("reset"),
+@@ -245,7 +247,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, reset),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[ENABLE] =
+         g_signal_new (I_("enable"),
+@@ -254,7 +257,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, enable),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[DISABLE] =
+         g_signal_new (I_("disable"),
+@@ -263,7 +267,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, disable),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[SET_CURSOR_LOCATION] =
+         g_signal_new (I_("set-cursor-location"),
+@@ -272,8 +277,12 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, set_cursor_location),
+             NULL, NULL,
+             ibus_marshal_VOID__INT_INT_INT_INT,
+-            G_TYPE_NONE, 4,
+-            G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
++            G_TYPE_NONE,
++            4,
++            G_TYPE_INT,
++            G_TYPE_INT,
++            G_TYPE_INT,
++            G_TYPE_INT);
+ 
+     engine_signals[SET_CAPABILITIES] =
+         g_signal_new (I_("set-capabilities"),
+@@ -282,7 +291,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, set_capabilities),
+             NULL, NULL,
+             ibus_marshal_VOID__UINT,
+-            G_TYPE_NONE, 1,
++            G_TYPE_NONE,
++            1,
+             G_TYPE_UINT);
+ 
+     engine_signals[PAGE_UP] =
+@@ -292,7 +302,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, page_up),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[PAGE_DOWN] =
+         g_signal_new (I_("page-down"),
+@@ -301,7 +312,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, page_down),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[CURSOR_UP] =
+         g_signal_new (I_("cursor-up"),
+@@ -310,7 +322,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, cursor_up),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[CURSOR_DOWN] =
+         g_signal_new (I_("cursor-down"),
+@@ -319,7 +332,8 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, cursor_down),
+             NULL, NULL,
+             ibus_marshal_VOID__VOID,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            0);
+ 
+     engine_signals[PROPERTY_ACTIVATE] =
+         g_signal_new (I_("property-activate"),
+@@ -328,7 +342,10 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, property_activate),
+             NULL, NULL,
+             ibus_marshal_VOID__STRING_INT,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            2,
++            G_TYPE_STRING,
++            G_TYPE_INT);
+ 
+     engine_signals[PROPERTY_SHOW] =
+         g_signal_new (I_("property-show"),
+@@ -337,7 +354,9 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, property_show),
+             NULL, NULL,
+             ibus_marshal_VOID__STRING,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            1,
++            G_TYPE_STRING);
+ 
+     engine_signals[PROPERTY_HIDE] =
+         g_signal_new (I_("property-hide"),
+@@ -346,7 +365,9 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_STRUCT_OFFSET (IBusEngineClass, property_hide),
+             NULL, NULL,
+             ibus_marshal_VOID__STRING,
+-            G_TYPE_NONE, 0);
++            G_TYPE_NONE,
++            1,
++            G_TYPE_STRING);
+ 
+ }
+ 
+@@ -465,6 +486,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+         ibus_message_iter_init (message, &iter);
+         if (ibus_message_iter_has_next (&iter)) {
+             error_message = ibus_message_new_error_printf (message,
++                                DBUS_ERROR_INVALID_ARGS,
+                                 "%s.%s: Method does not have arguments",
+                                 IBUS_INTERFACE_ENGINE, no_arg_methods[i].member);
+             ibus_connection_send (connection, error_message);
+@@ -512,6 +534,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _keypress_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (ubu) of method",
+                         IBUS_INTERFACE_ENGINE, "ProcessKeyEvent");
+         ibus_connection_send (connection, error_message);
+@@ -527,7 +550,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+         retval = ibus_message_get_args (message,
+                                         &error,
+                                         G_TYPE_STRING, &name,
+-                                        G_TYPE_INT, &state,
++                                        G_TYPE_UINT, &state,
+                                         G_TYPE_INVALID);
+ 
+         if (!retval)
+@@ -546,6 +569,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _property_activate_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (si) of method",
+                         IBUS_INTERFACE_ENGINE,
+                         "PropertyActivate");
+@@ -579,6 +603,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _property_show_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (s) of method",
+                         IBUS_INTERFACE_ENGINE,
+                         "PropertyShow");
+@@ -607,6 +632,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _property_hide_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (s) of method",
+                         IBUS_INTERFACE_ENGINE, "PropertyHide");
+         ibus_connection_send (connection, error_message);
+@@ -645,6 +671,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _set_cursor_location_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (iiii) of method",
+                         IBUS_INTERFACE_ENGINE,
+                         "SetCursorLocation");
+@@ -676,6 +703,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+ 
+     _set_capabilities_fail:
+         error_message = ibus_message_new_error_printf (message,
++                        DBUS_ERROR_INVALID_ARGS,
+                         "%s.%s: Can not match signature (u) of method",
+                         IBUS_INTERFACE_ENGINE, "SetCapabilities");
+         ibus_connection_send (connection, error_message);
+@@ -775,8 +803,9 @@ ibus_engine_cursor_down (IBusEngine *engine)
+ }
+ 
+ static void
+-ibus_engine_property_activate (IBusEngine *engine,
+-    const gchar *prop_name, gint prop_state)
++ibus_engine_property_activate (IBusEngine  *engine,
++                               const gchar *prop_name,
++                               guint        prop_state)
+ {
+     // g_debug ("property-activate ('%s', %d)", prop_name, prop_state);
+ }
+diff --git a/src/ibusengine.h b/src/ibusengine.h
+index 0a827af..1a35c06 100644
+--- a/src/ibusengine.h
++++ b/src/ibusengine.h
+@@ -91,7 +91,7 @@ struct _IBusEngineClass {
+     void        (* property_activate)
+                                     (IBusEngine     *engine,
+                                      const gchar    *prop_name,
+-                                     gint            prop_state);
++                                     guint           prop_state);
+     void        (* property_show)   (IBusEngine     *engine,
+                                      const gchar    *prop_name);
+     void        (* property_hide)   (IBusEngine     *engine,
 diff --git a/src/ibuslookuptable.c b/src/ibuslookuptable.c
 index e2935b8..37342c5 100644
 --- a/src/ibuslookuptable.c

diff --git a/ibus.spec b/ibus.spec
index b1d50f7..2306ecd 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -3,7 +3,7 @@
 %define mod_path ibus-1.1
 Name:       ibus
 Version:    1.1.0.20090211
-Release:    6%{?dist}
+Release:    7%{?dist}
 Summary:    Intelligent Input Bus for Linux OS
 License:    LGPLv2+
 Group:      System Environment/Libraries
@@ -180,6 +180,10 @@ fi
 %{_libdir}/pkgconfig/*
 
 %changelog
+* Tue Feb 17 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-7
+- Recreate the ibus-HEAD.patch from upstream git source tree.
+- Try to fixe ibus-hangul segfault (#485438).
+
 * Mon Feb 16 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-6
 - Recreate the ibus-HEAD.patch from upstream git source tree.
 - The new patch fixes ibus-x11 segfault (#485661).

^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [rpms/ibus] autotool: - Recreate the ibus-HEAD.patch from upstream git source tree.
@ 2026-05-31  2:04 Peng Huang
  0 siblings, 0 replies; 3+ messages in thread
From: Peng Huang @ 2026-05-31  2:04 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/ibus
            Branch : autotool
            Commit : 7cae023bf08231015c4b3ec9ddf79f2654c9f714
            Author : Peng Huang <phuang@fedoraproject.org>
            Date   : 2009-02-16T02:50:43+00:00
            Stats  : +170/-9 in 2 file(s)
            URL    : https://src.fedoraproject.org/rpms/ibus/c/7cae023bf08231015c4b3ec9ddf79f2654c9f714?branch=autotool

            Log:
            - Recreate the ibus-HEAD.patch from upstream git source tree.
- The new patch fixes ibus-x11 segfault (#485661).

---
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index e4bebf6..9817f56 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -1,3 +1,16 @@
+diff --git a/autogen.sh b/autogen.sh
+index d9a7a56..c34acab 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -4,7 +4,7 @@ set -x
+ 
+ autopoint  --force
+ libtoolize --automake --copy --force
+-gtkdocize  #--flavour=no-tmpl
++gtkdocize  --copy #--flavour=no-tmpl
+ aclocal -I m4 --force
+ autoheader --force
+ automake --add-missing --copy --force
 diff --git a/bus/engineproxy.c b/bus/engineproxy.c
 index 6fc111f..647845b 100644
 --- a/bus/engineproxy.c
@@ -507,6 +520,127 @@ index 56f593a..75b02a5 100644
  {
      *contexts = info_list;
      *n_contexts = G_N_ELEMENTS (info_list);
+diff --git a/client/x11/main.c b/client/x11/main.c
+index 5ef9f30..6437d50 100644
+--- a/client/x11/main.c
++++ b/client/x11/main.c
+@@ -327,7 +327,7 @@ xim_create_ic (XIMS xims, IMChangeICStruct *call_data)
+     x11ic->icid = call_data->icid;
+     x11ic->connect_id = call_data->connect_id;
+     x11ic->conn = (X11ICONN *)g_hash_table_lookup (_connections,
+-                                                   GINT_TO_POINTER (call_data->connect_id));
++                                                   GINT_TO_POINTER ((gint) call_data->connect_id));
+     if (x11ic->conn == NULL) {
+         g_slice_free (X11IC, x11ic);
+         g_return_val_if_reached (0);
+@@ -383,7 +383,7 @@ xim_destroy_ic (XIMS xims, IMChangeICStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *)g_hash_table_lookup (_x11_ic_table,
+-                                          GINT_TO_POINTER (call_data->icid));
++                                          GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     if (x11ic->context) {
+@@ -393,7 +393,7 @@ xim_destroy_ic (XIMS xims, IMChangeICStruct *call_data)
+     }
+ 
+     g_hash_table_remove (_x11_ic_table,
+-                         GINT_TO_POINTER (call_data->icid));
++                         GINT_TO_POINTER ((gint) call_data->icid));
+     x11ic->conn->clients = g_list_remove (x11ic->conn->clients, (gconstpointer)x11ic);
+ 
+     g_free (x11ic->preedit_string);
+@@ -418,7 +418,7 @@ xim_set_ic_focus (XIMS xims, IMChangeFocusStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     ibus_input_context_focus_in (x11ic->context);
+@@ -436,7 +436,7 @@ xim_unset_ic_focus (XIMS xims, IMChangeFocusStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     ibus_input_context_focus_out (x11ic->context);
+@@ -456,7 +456,7 @@ xim_forward_event (XIMS xims, IMForwardEventStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     xevent = (XKeyEvent*) &(call_data->event);
+@@ -504,7 +504,7 @@ xim_open (XIMS xims, IMOpenStruct *call_data)
+                 call_data->connect_id);
+ 
+     conn = (X11ICONN *) g_hash_table_lookup (_connections,
+-                                             GINT_TO_POINTER (call_data->connect_id));
++                                             GINT_TO_POINTER ((gint) call_data->connect_id));
+     g_return_val_if_fail (conn == NULL, 0);
+ 
+     conn = g_slice_new0 (X11ICONN);
+@@ -552,7 +552,7 @@ xim_close (XIMS ims, IMCloseStruct *call_data)
+                 call_data->connect_id);
+ 
+     conn = (X11ICONN *) g_hash_table_lookup (_connections,
+-                                             GINT_TO_POINTER (call_data->connect_id));
++                                             GINT_TO_POINTER ((gint) call_data->connect_id));
+     g_return_val_if_fail (conn != NULL, 0);
+ 
+     g_list_foreach (conn->clients, _free_ic, NULL);
+@@ -560,7 +560,7 @@ xim_close (XIMS ims, IMCloseStruct *call_data)
+     g_list_free (conn->clients);
+ 
+     g_hash_table_remove (_connections,
+-                         GINT_TO_POINTER (call_data->connect_id));
++                         GINT_TO_POINTER ((gint) call_data->connect_id));
+ 
+     g_slice_free (X11ICONN, conn);
+ 
+@@ -621,7 +621,7 @@ xim_set_ic_values (XIMS xims, IMChangeICStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     i = _xim_store_ic_values (x11ic, call_data);
+@@ -643,7 +643,7 @@ xim_get_ic_values (XIMS xims, IMChangeICStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     XICAttribute *ic_attr = call_data->ic_attr;
+@@ -670,7 +670,7 @@ xim_reset_ic (XIMS xims, IMResetICStruct *call_data)
+                 call_data->icid, call_data->connect_id);
+ 
+     x11ic = (X11IC *) g_hash_table_lookup (_x11_ic_table,
+-                                           GINT_TO_POINTER (call_data->icid));
++                                           GINT_TO_POINTER ((gint) call_data->icid));
+     g_return_val_if_fail (x11ic != NULL, 0);
+ 
+     ibus_input_context_reset (x11ic->context);
+@@ -981,7 +981,7 @@ _xim_init_IMdkit ()
+ static void
+ _atexit_cb ()
+ {
+-    if (_bus) {
++    if (_bus && ibus_bus_is_connected (_bus)) {
+         ibus_bus_exit(_bus, False);
+     }
+ }
 diff --git a/configure.ac b/configure.ac
 index 7481739..4437fd2 100644
 --- a/configure.ac
@@ -521,7 +655,7 @@ index 7481739..4437fd2 100644
  
  PKG_CHECK_MODULES(GCONF,
 diff --git a/ibus.spec.in b/ibus.spec.in
-index 65dfced..d9d5dba 100644
+index 65dfced..908ddbd 100644
 --- a/ibus.spec.in
 +++ b/ibus.spec.in
 @@ -20,7 +20,7 @@ BuildRequires:  libtool
@@ -583,6 +717,24 @@ index 65dfced..d9d5dba 100644
  
  %package devel
  Summary:    Development tools for ibus
+@@ -100,7 +108,7 @@ desktop-file-install --delete-original          \
+ %clean
+ rm -rf $RPM_BUILD_ROOT
+ 
+-%post
++%post libs
+ /sbin/ldconfig
+ update-desktop-database -q
+ %{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc %{_xinputconf} 83 || :
+@@ -108,7 +116,7 @@ update-desktop-database -q
+ %post gtk
+ %{_bindir}/update-gtk-immodules %{_host} || :
+ 
+-%postun
++%postun libs
+ /sbin/ldconfig
+ update-desktop-database -q
+ if [ "$1" = "0" ]; then
 @@ -123,13 +131,10 @@ fi
  %files -f %{name}.lang
  %defattr(-,root,root,-)
@@ -660,10 +812,20 @@ index 32ba998..63d6c0e 100644
      def FocusIn(self): pass
  
 diff --git a/src/ibusbus.c b/src/ibusbus.c
-index 9965761..0ebdf66 100644
+index 9965761..52631e8 100644
 --- a/src/ibusbus.c
 +++ b/src/ibusbus.c
-@@ -639,15 +639,20 @@ ibus_bus_exit (IBusBus *bus,
+@@ -149,6 +149,9 @@ _connection_destroy_cb (IBusConnection  *connection,
+     priv = IBUS_BUS_GET_PRIVATE (bus);
+ 
+     g_assert (priv->connection == connection);
++    g_signal_handlers_disconnect_by_func (priv->connection,
++                                          G_CALLBACK (_connection_destroy_cb),
++                                          bus);
+     g_object_unref (priv->connection);
+     priv->connection = NULL;
+ 
+@@ -639,12 +642,15 @@ ibus_bus_exit (IBusBus *bus,
  {
      g_assert (IBUS_IS_BUS (bus));
  
@@ -680,11 +842,6 @@ index 9965761..0ebdf66 100644
                              G_TYPE_BOOLEAN, &restart,
                              G_TYPE_INVALID,
                              G_TYPE_INVALID);
-+    ibus_connection_flush (priv->connection);
-+
-     return result;
- }
- 
 diff --git a/src/ibuslookuptable.c b/src/ibuslookuptable.c
 index e2935b8..37342c5 100644
 --- a/src/ibuslookuptable.c

diff --git a/ibus.spec b/ibus.spec
index 078eb51..b1d50f7 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -3,7 +3,7 @@
 %define mod_path ibus-1.1
 Name:       ibus
 Version:    1.1.0.20090211
-Release:    5%{?dist}
+Release:    6%{?dist}
 Summary:    Intelligent Input Bus for Linux OS
 License:    LGPLv2+
 Group:      System Environment/Libraries
@@ -180,6 +180,10 @@ fi
 %{_libdir}/pkgconfig/*
 
 %changelog
+* Mon Feb 16 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-6
+- Recreate the ibus-HEAD.patch from upstream git source tree.
+- The new patch fixes ibus-x11 segfault (#485661).
+
 * Sun Feb 15 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-5
 - Recreate the ibus-HEAD.patch from upstream git source tree.
 

^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [rpms/ibus] autotool: - Recreate the ibus-HEAD.patch from upstream git source tree.
@ 2026-05-31  2:04 Peng Huang
  0 siblings, 0 replies; 3+ messages in thread
From: Peng Huang @ 2026-05-31  2:04 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/ibus
            Branch : autotool
            Commit : f1f13f7bdace34bec653cabd1fb8c86ec6a3ed19
            Author : Peng Huang <phuang@fedoraproject.org>
            Date   : 2009-02-17T08:15:06+00:00
            Stats  : +429/-18 in 2 file(s)
            URL    : https://src.fedoraproject.org/rpms/ibus/c/f1f13f7bdace34bec653cabd1fb8c86ec6a3ed19?branch=autotool

            Log:
            - Recreate the ibus-HEAD.patch from upstream git source tree.
- Put 'Select an input method' in engine select combobox (#485861).

---
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index 75db876..e54b44f 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -161,7 +161,7 @@ index e92b373..7f51130 100644
  }
  
 diff --git a/bus/inputcontext.c b/bus/inputcontext.c
-index be45bbe..979c710 100644
+index be45bbe..7f4de65 100644
 --- a/bus/inputcontext.c
 +++ b/bus/inputcontext.c
 @@ -100,6 +100,8 @@ static gboolean bus_input_context_send_signal   (BusInputContext        *context
@@ -186,7 +186,17 @@ index be45bbe..979c710 100644
      }
  
      if (priv->connection) {
-@@ -562,7 +560,7 @@ _ic_process_key_event_reply_cb (gpointer data,
+@@ -516,8 +514,7 @@ _ibus_introspect (BusInputContext   *context,
+                   BusConnection     *connection)
+ {
+     static const gchar *introspect =
+-        "<!DOCTYPE node PUBLIC \"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN\"\n"
+-        "\"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd\">\n"
++        DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE
+         "<node>\n"
+         "  <interface name=\"org.freedesktop.DBus.Introspectable\">\n"
+         "    <method name=\"Introspect\">\n"
+@@ -562,7 +559,7 @@ _ic_process_key_event_reply_cb (gpointer data,
  
      retval = (gboolean) GPOINTER_TO_INT (data);
      call_data = (CallData *) user_data;
@@ -195,7 +205,7 @@ index be45bbe..979c710 100644
      BusInputContextPrivate *priv;
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (call_data->context);
  
-@@ -596,8 +594,6 @@ _ic_process_key_event (BusInputContext *context,
+@@ -596,8 +593,6 @@ _ic_process_key_event (BusInputContext *context,
      BusInputContextPrivate *priv;
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (context);
  
@@ -204,7 +214,7 @@ index be45bbe..979c710 100644
      retval = ibus_message_get_args (message,
                  &error,
                  G_TYPE_UINT, &keyval,
-@@ -612,8 +608,6 @@ _ic_process_key_event (BusInputContext *context,
+@@ -612,8 +607,6 @@ _ic_process_key_event (BusInputContext *context,
          return reply;
      }
  
@@ -213,7 +223,7 @@ index be45bbe..979c710 100644
      retval = bus_input_context_filter_keyboard_shortcuts (context, keyval, modifiers);
  
      if (retval) {
-@@ -623,12 +617,16 @@ _ic_process_key_event (BusInputContext *context,
+@@ -623,12 +616,16 @@ _ic_process_key_event (BusInputContext *context,
                                    G_TYPE_INVALID);
      }
      else if (priv->enabled && priv->engine) {
@@ -233,7 +243,7 @@ index be45bbe..979c710 100644
          bus_engine_proxy_process_key_event (priv->engine,
                                              keyval,
                                              modifiers,
-@@ -1012,7 +1010,7 @@ bus_input_context_focus_in (BusInputContext *context)
+@@ -1012,7 +1009,7 @@ bus_input_context_focus_in (BusInputContext *context)
  
      priv->has_focus = TRUE;
  
@@ -242,7 +252,7 @@ index be45bbe..979c710 100644
          bus_engine_proxy_focus_in (priv->engine);
      }
  
-@@ -1034,7 +1032,7 @@ bus_input_context_focus_out (BusInputContext *context)
+@@ -1034,7 +1031,7 @@ bus_input_context_focus_out (BusInputContext *context)
  
      priv->has_focus = FALSE;
  
@@ -251,7 +261,7 @@ index be45bbe..979c710 100644
          bus_engine_proxy_focus_out (priv->engine);
      }
  
-@@ -1122,7 +1120,8 @@ _engine_destroy_cb (BusEngineProxy  *engine,
+@@ -1122,7 +1119,8 @@ _engine_destroy_cb (BusEngineProxy  *engine,
  
      g_assert (priv->engine == engine);
  
@@ -261,7 +271,7 @@ index be45bbe..979c710 100644
  }
  
  static void
-@@ -1391,7 +1390,6 @@ bus_input_context_disable (BusInputContext *context)
+@@ -1391,7 +1389,6 @@ bus_input_context_disable (BusInputContext *context)
      BusInputContextPrivate *priv;
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (context);
  
@@ -269,7 +279,7 @@ index be45bbe..979c710 100644
  
      if (priv->engine) {
          if (priv->has_focus) {
-@@ -1406,8 +1404,52 @@ bus_input_context_disable (BusInputContext *context)
+@@ -1406,8 +1403,52 @@ bus_input_context_disable (BusInputContext *context)
      g_signal_emit (context,
                     context_signals[DISABLED],
                     0);
@@ -322,7 +332,7 @@ index be45bbe..979c710 100644
  
  void
  bus_input_context_set_engine (BusInputContext *context,
-@@ -1420,56 +1462,25 @@ bus_input_context_set_engine (BusInputContext *context,
+@@ -1420,56 +1461,25 @@ bus_input_context_set_engine (BusInputContext *context,
      priv = BUS_INPUT_CONTEXT_GET_PRIVATE (context);
  
      if (priv->engine != NULL) {
@@ -812,6 +822,348 @@ index 32ba998..63d6c0e 100644
      @method()
      def FocusIn(self): pass
  
+diff --git a/po/POTFILES.in b/po/POTFILES.in
+index 444ed03..6b30bdf 100644
+--- a/po/POTFILES.in
++++ b/po/POTFILES.in
+@@ -33,4 +33,5 @@
+ ./ui/gtk/languagebar.py
+ ./setup/main.py
+ ./setup/keyboardshortcut.py
++./setup/enginecombobox.py
+ ./setup/setup.glade
+diff --git a/po/fr.po b/po/fr.po
+index 92d7c4b..cb88f6e 100644
+--- a/po/fr.po
++++ b/po/fr.po
+@@ -8,7 +8,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: ibus VERSION\n"
+ "Report-Msgid-Bugs-To: http://code.google.com/p/ibus/issues/entry\n"
+-"POT-Creation-Date: 2009-02-11 14:27+0800\n"
++"POT-Creation-Date: 2009-02-17 16:05+0800\n"
+ "PO-Revision-Date: 2009-02-06 01:55+0100\n"
+ "Last-Translator: Julroy67 <julroy67@gmail.com>\n"
+ "Language-Team: French <julroy67@gmail.com>\n"
+@@ -18,25 +18,25 @@ msgstr ""
+ "X-Poedit-Language: French\n"
+ "X-Poedit-Country: FRANCE\n"
+ 
+-#: ibus/lang.py:40 ui/gtk/panel.py:311 ui/gtk/panel.py:312 ui/gtk/panel.py:313
+-#: ui/gtk/panel.py:314
++#: ibus/lang.py:40 ui/gtk/panel.py:310 ui/gtk/panel.py:311 ui/gtk/panel.py:312
++#: ui/gtk/panel.py:313
+ msgid "Other"
+ msgstr "Autre"
+ 
+-#: ui/gtk/panel.py:99
++#: ui/gtk/panel.py:97
+ #, fuzzy
+ msgid "IBus - Running"
+ msgstr "IBus - Démarré"
+ 
+-#: ui/gtk/panel.py:281
++#: ui/gtk/panel.py:280
+ msgid "Restart"
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:374
++#: ui/gtk/panel.py:379
+ msgid "IBus is an intelligent input bus for Linux/Unix."
+ msgstr "IBus est un IME intelligent pour Linux/Unix"
+ 
+-#: ui/gtk/panel.py:378
++#: ui/gtk/panel.py:383
+ msgid "translator-credits"
+ msgstr "HUMBERT Julien <julroy67@gmail.com>"
+ 
+@@ -105,6 +105,10 @@ msgstr ""
+ msgid "Please press a key (or a key combination)"
+ msgstr "Veuillez presser une touche (ou une combinaison de touches)"
+ 
++#: setup/enginecombobox.py:94
++msgid "Select an input method"
++msgstr ""
++
+ #: setup/setup.glade:7
+ msgid "IBus - Setup"
+ msgstr "IBus - Configuration"
+diff --git a/po/ja.po b/po/ja.po
+index 011fa9d..0b2d558 100644
+--- a/po/ja.po
++++ b/po/ja.po
+@@ -8,7 +8,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: ibus VERSION\n"
+ "Report-Msgid-Bugs-To: http://code.google.com/p/ibus/issues/entry\n"
+-"POT-Creation-Date: 2009-02-11 14:27+0800\n"
++"POT-Creation-Date: 2009-02-17 16:05+0800\n"
+ "PO-Revision-Date: 2008-08-28 17:31+0900\n"
+ "Last-Translator: UTUMI Hirosi <utuhiro78@yahoo.co.jp>\n"
+ "Language-Team: Japanese <gnome-translation@gnome.gr.jp>\n"
+@@ -16,24 +16,24 @@ msgstr ""
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
+ 
+-#: ibus/lang.py:40 ui/gtk/panel.py:311 ui/gtk/panel.py:312 ui/gtk/panel.py:313
+-#: ui/gtk/panel.py:314
++#: ibus/lang.py:40 ui/gtk/panel.py:310 ui/gtk/panel.py:311 ui/gtk/panel.py:312
++#: ui/gtk/panel.py:313
+ msgid "Other"
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:99
++#: ui/gtk/panel.py:97
+ msgid "IBus - Running"
+ msgstr "IBus - 実行中"
+ 
+-#: ui/gtk/panel.py:281
++#: ui/gtk/panel.py:280
+ msgid "Restart"
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:374
++#: ui/gtk/panel.py:379
+ msgid "IBus is an intelligent input bus for Linux/Unix."
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:378
++#: ui/gtk/panel.py:383
+ msgid "translator-credits"
+ msgstr "UTUMI Hirosi <utuhiro78@yahoo.co.jp>"
+ 
+@@ -100,6 +100,10 @@ msgstr ""
+ msgid "Please press a key (or a key combination)"
+ msgstr "キーもしくはキーの組み合わせを入力してください"
+ 
++#: setup/enginecombobox.py:94
++msgid "Select an input method"
++msgstr ""
++
+ #: setup/setup.glade:7
+ msgid "IBus - Setup"
+ msgstr "IBus - セットアップ"
+diff --git a/po/pa.po b/po/pa.po
+index 4bf8549..109fba8 100644
+--- a/po/pa.po
++++ b/po/pa.po
+@@ -6,7 +6,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: ibus\n"
+ "Report-Msgid-Bugs-To: http://code.google.com/p/ibus/issues/entry\n"
+-"POT-Creation-Date: 2009-02-11 14:27+0800\n"
++"POT-Creation-Date: 2009-02-17 16:05+0800\n"
+ "PO-Revision-Date: 2008-10-17 14:15+0530\n"
+ "Last-Translator: Amanpreet Singh <aalam@users.sf.net>\n"
+ "Language-Team: Punjabi/Panjabi <punjabi-l10n@lists.sf.net>\n"
+@@ -16,24 +16,24 @@ msgstr ""
+ "X-Generator: Lokalize 0.2\n"
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
+ 
+-#: ibus/lang.py:40 ui/gtk/panel.py:311 ui/gtk/panel.py:312 ui/gtk/panel.py:313
+-#: ui/gtk/panel.py:314
++#: ibus/lang.py:40 ui/gtk/panel.py:310 ui/gtk/panel.py:311 ui/gtk/panel.py:312
++#: ui/gtk/panel.py:313
+ msgid "Other"
+ msgstr "ਹੋਰ"
+ 
+-#: ui/gtk/panel.py:99
++#: ui/gtk/panel.py:97
+ msgid "IBus - Running"
+ msgstr "IBus -  ਚੱਲ ਰਿਹਾ ਹੈ"
+ 
+-#: ui/gtk/panel.py:281
++#: ui/gtk/panel.py:280
+ msgid "Restart"
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:374
++#: ui/gtk/panel.py:379
+ msgid "IBus is an intelligent input bus for Linux/Unix."
+ msgstr "IBus ਲੀਨਕਸ/ਯੂਨੈਕਸ ਲਈ ਮਾਹਰ ਇੰਪੁੱਟ ਬੱਸ ਹੈ।"
+ 
+-#: ui/gtk/panel.py:378
++#: ui/gtk/panel.py:383
+ msgid "translator-credits"
+ msgstr "ਅਮਨਪਰੀਤ ਸਿੰਘ ਆਲਮ"
+ 
+@@ -99,6 +99,10 @@ msgstr ""
+ msgid "Please press a key (or a key combination)"
+ msgstr "ਕੋਈ ਵੀ ਸਵਿੱਚ ਦੱਬੋ (ਜਾਂ ਸਵਿੱਚ ਜੋੜ)"
+ 
++#: setup/enginecombobox.py:94
++msgid "Select an input method"
++msgstr ""
++
+ #: setup/setup.glade:7
+ msgid "IBus - Setup"
+ msgstr "IBus - ਸੈੱਟਅੱਪ"
+diff --git a/po/zh_CN.po b/po/zh_CN.po
+index c56b4c6..59aea5e 100644
+--- a/po/zh_CN.po
++++ b/po/zh_CN.po
+@@ -7,7 +7,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: 0.1.1.20080813\n"
+ "Report-Msgid-Bugs-To: http://code.google.com/p/ibus/issues/entry\n"
+-"POT-Creation-Date: 2009-02-11 14:27+0800\n"
++"POT-Creation-Date: 2009-02-17 16:05+0800\n"
+ "PO-Revision-Date: 2008-08-13 21:59+0800\n"
+ "Last-Translator: Huang Peng <shawn.p.huang@gmail.com>\n"
+ "Language-Team: Huang Peng <shawn.p.huang@gmail.com>\n"
+@@ -16,24 +16,24 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=1; plural=0;\n"
+ 
+-#: ibus/lang.py:40 ui/gtk/panel.py:311 ui/gtk/panel.py:312 ui/gtk/panel.py:313
+-#: ui/gtk/panel.py:314
++#: ibus/lang.py:40 ui/gtk/panel.py:310 ui/gtk/panel.py:311 ui/gtk/panel.py:312
++#: ui/gtk/panel.py:313
+ msgid "Other"
+ msgstr "其他"
+ 
+-#: ui/gtk/panel.py:99
++#: ui/gtk/panel.py:97
+ msgid "IBus - Running"
+ msgstr "IBus - 运行"
+ 
+-#: ui/gtk/panel.py:281
++#: ui/gtk/panel.py:280
+ msgid "Restart"
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:374
++#: ui/gtk/panel.py:379
+ msgid "IBus is an intelligent input bus for Linux/Unix."
+ msgstr ""
+ 
+-#: ui/gtk/panel.py:378
++#: ui/gtk/panel.py:383
+ msgid "translator-credits"
+ msgstr "Huang Peng <shawn.p.huang@gmail.com>"
+ 
+@@ -99,6 +99,10 @@ msgstr ""
+ msgid "Please press a key (or a key combination)"
+ msgstr "请按一个键盘按键(或者一个组合按键)"
+ 
++#: setup/enginecombobox.py:94
++msgid "Select an input method"
++msgstr "选择输入法"
++
+ #: setup/setup.glade:7
+ msgid "IBus - Setup"
+ msgstr "IBus - 设置"
+@@ -192,26 +196,3 @@ msgstr "关于"
+ #: setup/setup.glade:524
+ msgid "gtk-close"
+ msgstr ""
+-
+-#~ msgid "Started"
+-#~ msgstr "启动"
+-
+-#~ msgid "Preload"
+-#~ msgstr "预加载"
+-
+-#~ msgid "Cannot enable input engine"
+-#~ msgstr "不能启动输入引擎"
+-
+-#~ msgid ""
+-#~ "IBus can not enable input engine, because IBus does not load any input "
+-#~ "engines!\n"
+-#~ "Please use ibus-setup program to load some input engines."
+-#~ msgstr ""
+-#~ "IBus不能启动输入引擎,因为IBus没有加载任何输入引擎!\n"
+-#~ "请运行ibus-setup程序,启动需要的输入法引擎。"
+-
+-#~ msgid "Setup"
+-#~ msgstr "设置"
+-
+-#~ msgid "Don't show this again"
+-#~ msgstr "不再显示该信息"
+diff --git a/setup/enginecombobox.py b/setup/enginecombobox.py
+index c8eaa15..6db543a 100644
+--- a/setup/enginecombobox.py
++++ b/setup/enginecombobox.py
+@@ -22,15 +22,19 @@
+ import gtk
+ import gobject
+ import ibus
+-
++import gettext
+ from icon import load_icon
+ 
++_  = lambda a : gettext.dgettext("ibus", a)
++
+ class EngineComboBox(gtk.ComboBox):
+     def __init__(self, engines):
+         super(EngineComboBox, self).__init__()
+ 
+         self.__model = gtk.TreeStore(gobject.TYPE_PYOBJECT)
+ 
++        iter1 = self.__model.append(None)
++        self.__model.set(iter1, 0, 0)
+         lang = {}
+         for e in engines:
+             l = ibus.get_language_name(e.language)
+@@ -57,11 +61,16 @@ class EngineComboBox(gtk.ComboBox):
+         self.pack_start(renderer, True)
+         self.set_cell_data_func(renderer, self.__name_cell_data_cb)
+ 
++        self.set_active(0)
++
+     def __icon_cell_data_cb(self, celllayout, renderer, model, iter):
+         engine = self.__model.get_value(iter, 0)
+ 
+         icon_size = gtk.icon_size_lookup(gtk.ICON_SIZE_LARGE_TOOLBAR)[0]
+-        if isinstance (engine, str) or isinstance (engine, unicode):
++        if isinstance(engine, str) or isinstance (engine, unicode):
++            renderer.set_property("visible", False)
++            renderer.set_property("sensitive", False)
++        elif isinstance(engine, int):
+             renderer.set_property("visible", False)
+             renderer.set_property("sensitive", False)
+         else:
+@@ -69,7 +78,7 @@ class EngineComboBox(gtk.ComboBox):
+             renderer.set_property("sensitive", True)
+             pixbuf = load_icon(engine.icon, gtk.ICON_SIZE_LARGE_TOOLBAR)
+             if pixbuf == None:
+-                pixbuf = load_icon("default-engine", gtk.ICON_SIZE_LARGE_TOOLBAR)
++                pixbuf = load_icon("engine-default", gtk.ICON_SIZE_LARGE_TOOLBAR)
+             if pixbuf == None:
+                 pixbuf = load_icon("gtk-missing-image", gtk.ICON_SIZE_LARGE_TOOLBAR)
+             renderer.set_property("pixbuf", pixbuf)
+@@ -80,13 +89,17 @@ class EngineComboBox(gtk.ComboBox):
+         if isinstance (engine, str) or isinstance (engine, unicode):
+             renderer.set_property("sensitive", False)
+             renderer.set_property("text", engine)
++        elif isinstance(engine, int):
++            renderer.set_property("sensitive", True)
++            renderer.set_property("text", _("Select an input method"))
+         else:
+             renderer.set_property("sensitive", True)
+             renderer.set_property("text", engine.longname)
+ 
+     def get_active_engine(self):
++        i = self.get_active()
+         iter = self.get_active_iter()
+-        if iter == None:
++        if i == 0 or i == -1:
+             return None
+         return self.get_model()[iter][0]
+ 
+diff --git a/setup/enginetreeview.py b/setup/enginetreeview.py
+index 4e4c131..70130a2 100644
+--- a/setup/enginetreeview.py
++++ b/setup/enginetreeview.py
+@@ -65,7 +65,7 @@ class EngineTreeView(gtk.TreeView):
+         pixbuf = load_icon(engine.icon, gtk.ICON_SIZE_LARGE_TOOLBAR)
+ 
+         if pixbuf == None:
+-            pixbuf = load_icon("default-engine", gtk.ICON_SIZE_LARGE_TOOLBAR)
++            pixbuf = load_icon("engine-default", gtk.ICON_SIZE_LARGE_TOOLBAR)
+         if pixbuf == None:
+             pixbuf = load_icon("gtk-missing-image", gtk.ICON_SIZE_LARGE_TOOLBAR)
+ 
 diff --git a/src/ibusattribute.c b/src/ibusattribute.c
 index 7b41ab2..e52e984 100644
 --- a/src/ibusattribute.c
@@ -866,7 +1218,7 @@ index 9965761..52631e8 100644
                              G_TYPE_INVALID,
                              G_TYPE_INVALID);
 diff --git a/src/ibusengine.c b/src/ibusengine.c
-index 0c36dd4..27fc71e 100644
+index 0c36dd4..d924e25 100644
 --- a/src/ibusengine.c
 +++ b/src/ibusengine.c
 @@ -101,7 +101,7 @@ static void     ibus_engine_cursor_down     (IBusEngine         *engine);
@@ -993,15 +1345,17 @@ index 0c36dd4..27fc71e 100644
  
      engine_signals[PROPERTY_ACTIVATE] =
          g_signal_new (I_("property-activate"),
-@@ -328,7 +342,10 @@ ibus_engine_class_init (IBusEngineClass *klass)
+@@ -327,8 +341,11 @@ ibus_engine_class_init (IBusEngineClass *klass)
+             G_SIGNAL_RUN_LAST,
              G_STRUCT_OFFSET (IBusEngineClass, property_activate),
              NULL, NULL,
-             ibus_marshal_VOID__STRING_INT,
+-            ibus_marshal_VOID__STRING_INT,
 -            G_TYPE_NONE, 0);
++            ibus_marshal_VOID__STRING_UINT,
 +            G_TYPE_NONE,
 +            2,
 +            G_TYPE_STRING,
-+            G_TYPE_INT);
++            G_TYPE_UINT);
  
      engine_signals[PROPERTY_SHOW] =
          g_signal_new (I_("property-show"),
@@ -1043,7 +1397,15 @@ index 0c36dd4..27fc71e 100644
                          "%s.%s: Can not match signature (ubu) of method",
                          IBUS_INTERFACE_ENGINE, "ProcessKeyEvent");
          ibus_connection_send (connection, error_message);
-@@ -527,7 +550,7 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+@@ -520,14 +543,14 @@ ibus_engine_ibus_message (IBusEngine     *engine,
+     }
+     else if (ibus_message_is_method_call (message, IBUS_INTERFACE_ENGINE, "PropertyActivate")) {
+         gchar *name;
+-        gint state;
++        guint state;
+         gboolean retval;
+         IBusError *error = NULL;
+ 
          retval = ibus_message_get_args (message,
                                          &error,
                                          G_TYPE_STRING, &name,
@@ -1374,6 +1736,18 @@ index 62ca7d8..ede02b1 100644
  G_END_DECLS
  #endif
  
+diff --git a/src/ibusmarshalers.list b/src/ibusmarshalers.list
+index 14def28..7ef0c76 100644
+--- a/src/ibusmarshalers.list
++++ b/src/ibusmarshalers.list
+@@ -3,6 +3,7 @@ VOID:OBJECT
+ VOID:POINTER
+ VOID:STRING
+ VOID:STRING,INT
++VOID:STRING,UINT
+ BOOL:POINTER
+ BOOL:POINTER,POINTER
+ BOOL:UINT,UINT
 diff --git a/src/ibusproperty.c b/src/ibusproperty.c
 index 712bf1f..0976363 100644
 --- a/src/ibusproperty.c
@@ -1458,6 +1832,15 @@ index 9b87701..1725dda 100644
  
      text->text = (gchar *)g_malloc (12);
      len = g_unichar_to_utf8 (c, text->text);
+diff --git a/ui/gtk/icon.py b/ui/gtk/icon.py
+index 077848d..b8f6ac7 100644
+--- a/ui/gtk/icon.py
++++ b/ui/gtk/icon.py
+@@ -45,4 +45,3 @@ class IconWidget(gtk.Image):
+ 
+         self.set_from_pixbuf(pixbuf)
+         self.show()
+-
 diff --git a/ui/gtk/languagebar.py b/ui/gtk/languagebar.py
 index 3546ef7..2a10a43 100644
 --- a/ui/gtk/languagebar.py
@@ -1541,7 +1924,7 @@ index 9a3b30a..6f6c7d1 100644
  
          self.set_active (self._prop._state == ibus.PROP_STATE_CHECKED)
 diff --git a/ui/gtk/panel.py b/ui/gtk/panel.py
-index e7850e6..d968393 100644
+index e7850e6..6325df0 100644
 --- a/ui/gtk/panel.py
 +++ b/ui/gtk/panel.py
 @@ -74,9 +74,7 @@ class Panel(ibus.PanelBase):
@@ -1563,6 +1946,30 @@ index e7850e6..d968393 100644
          self.__language_bar.focus_out()
          self.__set_im_icon(self.__ibus_icon)
  
+@@ -318,7 +317,10 @@ class Panel(ibus.PanelBase):
+                     engine = tmp[lang][0]
+                     item = gtk.ImageMenuItem("%s - %s" % (lang, engine.longname))
+                     size = gtk.icon_size_lookup(gtk.ICON_SIZE_MENU)
+-                    item.set_image (_icon.IconWidget(engine.icon, size[0]))
++                    if engine.icon:
++                        item.set_image (_icon.IconWidget(engine.icon, size[0]))
++                    else:
++                        item.set_image (_icon.IconWidget("engine-default", size[0]))
+                     item.connect("activate", self.__im_menu_item_activate_cb, engine)
+                     menu.add(item)
+                 else:
+@@ -329,7 +331,10 @@ class Panel(ibus.PanelBase):
+                     for engine in tmp[lang]:
+                         item = gtk.ImageMenuItem(engine.longname)
+                         size = gtk.icon_size_lookup(gtk.ICON_SIZE_MENU)
+-                        item.set_image (_icon.IconWidget(engine.icon, size[0]))
++                        if engine.icon:
++                            item.set_image (_icon.IconWidget(engine.icon, size[0]))
++                        else:
++                            item.set_image (_icon.IconWidget("engine-default", size[0]))
+                         item.connect("activate", self.__im_menu_item_activate_cb, engine)
+                         submenu.add(item)
+ 
 diff --git a/ui/gtk/toolitem.py b/ui/gtk/toolitem.py
 index 0e4e4ad..09ad686 100644
 --- a/ui/gtk/toolitem.py

diff --git a/ibus.spec b/ibus.spec
index 5cb4664..863f8d4 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -3,7 +3,7 @@
 %define mod_path ibus-1.1
 Name:       ibus
 Version:    1.1.0.20090211
-Release:    9%{?dist}
+Release:    10%{?dist}
 Summary:    Intelligent Input Bus for Linux OS
 License:    LGPLv2+
 Group:      System Environment/Libraries
@@ -181,6 +181,10 @@ fi
 %{_libdir}/pkgconfig/*
 
 %changelog
+* Tue Feb 17 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-10
+- Recreate the ibus-HEAD.patch from upstream git source tree.
+- Put 'Select an input method' in engine select combobox (#485861).
+
 * Tue Feb 17 2009 Huang Peng <shawn.p.huang@gmail.com> - 1.1.0.20090211-9
 - Add requires im-chooser >= 1.2.5.
 

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-05-31  2:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-05-31  2:04 [rpms/ibus] autotool: - Recreate the ibus-HEAD.patch from upstream git source tree Peng Huang
2026-05-31  2:04 Peng Huang
2026-05-31  2:04 Peng Huang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox