From ba8f25c0f0aa8930a9fa4cd3ab0121bf38055ab8 Mon Sep 17 00:00:00 2001 From: Takao Fujiwara Date: Apr 19 2013 04:23:36 +0000 Subject: Bumped to 1.5.2 --- diff --git a/.gitignore b/.gitignore index 297b080..1831e41 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,7 @@ ibus-1.3.6.tar.gz /ibus-gjs-3.4.1.20120518.tar.gz /ibus-gjs-3.4.1.20120815.tar.gz /ibus-gjs-3.4.1.20130115.tar.gz +/ibus-1.5.2.tar.gz +/ibus.1 +/ibus-setup.1 +/ibus-daemon.1 diff --git a/ibus-530711-preload-sys.patch b/ibus-530711-preload-sys.patch index 42245b4..8c441c5 100644 --- a/ibus-530711-preload-sys.patch +++ b/ibus-530711-preload-sys.patch @@ -1,6 +1,6 @@ -From 84354457b25d77fed1184224ce71a31ff6facfec Mon Sep 17 00:00:00 2001 +From c907ff38e6f6de6637d79945efb9d1365b15a327 Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Thu, 31 Jan 2013 17:30:09 +0900 +Date: Fri, 19 Apr 2013 09:47:18 +0900 Subject: [PATCH] Reload preload engines until users customize the list. The idea is, if users don't customize the preload_engines with ibus-setup, @@ -25,7 +25,7 @@ IBUS_PRELOAD_ENGINE_MODE_USER and users can customize the value 5 files changed, 254 insertions(+), 11 deletions(-) diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in -index 70bf9ca..7833959 100644 +index 704ba60..136c192 100644 --- a/data/ibus.schemas.in +++ b/data/ibus.schemas.in @@ -2,6 +2,30 @@ @@ -253,10 +253,10 @@ index 737b3e2..8ce5a16 100644 * @x: x coordinate. * @y: y coordinate. diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala -index 55b63ce..4717431 100644 +index 10eaa0c..0a12c0f 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala -@@ -291,6 +291,8 @@ class Panel : IBus.PanelService { +@@ -308,6 +308,8 @@ class Panel : IBus.PanelService { if (m_config != null) { m_config.value_changed.connect(config_value_changed_cb); m_config.watch("general", "preload_engines"); @@ -264,8 +264,8 @@ index 55b63ce..4717431 100644 + m_config.watch("general", "preload_engine_mode"); m_config.watch("general", "engines_order"); m_config.watch("general", "switcher_delay_time"); - m_config.watch("general/hotkey", "triggers"); -@@ -358,7 +360,136 @@ class Panel : IBus.PanelService { + m_config.watch("general", "use_system_keyboard_layout"); +@@ -379,7 +381,136 @@ class Panel : IBus.PanelService { init_gkbd(); } @@ -402,7 +402,7 @@ index 55b63ce..4717431 100644 } private void update_xkb_engines() { -@@ -573,6 +704,11 @@ class Panel : IBus.PanelService { +@@ -596,6 +727,11 @@ class Panel : IBus.PanelService { string section, string name, Variant variant) { diff --git a/ibus-541492-xkb.patch b/ibus-541492-xkb.patch index 52e90d0..0ae91f0 100644 --- a/ibus-541492-xkb.patch +++ b/ibus-541492-xkb.patch @@ -1,12 +1,13 @@ -From 6772bc0fc82074cd00d56c0e9795d163b489281e Mon Sep 17 00:00:00 2001 +From 3130e980aafbb1ec025a7ca68559fb83e801cba3 Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Fri, 11 Jan 2013 22:55:17 +0900 -Subject: [PATCH] Add ibus-xkb and libgnomekbd. +Date: Fri, 19 Apr 2013 09:46:33 +0900 +Subject: [PATCH] Add libgnomekbd and load preload engines. --- bindings/vala/Gkbd-3.0.metadata | 1 + - bindings/vala/Makefile.am | 15 ++ + bindings/vala/Makefile.am | 19 +- bindings/vala/Xkl-1.0.metadata | 3 + + bindings/vala/gkbd.deps | 3 + configure.ac | 40 ++++ data/ibus.schemas.in | 59 +++++ ibus-1.0.pc.in | 1 + @@ -20,9 +21,10 @@ Subject: [PATCH] Add ibus-xkb and libgnomekbd. ui/gtk3/gkbdlayout.vala.true | 108 ++++++++++ ui/gtk3/panel.vala | 216 ++++++++++++++++++- ui/gtk3/xkblayout.vala | 431 +++++++++++++++++++++++++++++++++++++ - 16 files changed, 1641 insertions(+), 1 deletion(-) + 17 files changed, 1645 insertions(+), 4 deletions(-) create mode 100644 bindings/vala/Gkbd-3.0.metadata create mode 100644 bindings/vala/Xkl-1.0.metadata + create mode 100644 bindings/vala/gkbd.deps create mode 100644 src/ibusxkbxml.c create mode 100644 src/ibusxkbxml.h create mode 100644 ui/gtk3/gkbdlayout.vala.false @@ -37,32 +39,41 @@ index 0000000..661e6fd @@ -0,0 +1 @@ +Configuration cheader_filename="libgnomekbd/gkbd-configuration.h" diff --git a/bindings/vala/Makefile.am b/bindings/vala/Makefile.am -index aba3454..bf3074a 100644 +index aba3454..3f93fba 100644 --- a/bindings/vala/Makefile.am +++ b/bindings/vala/Makefile.am -@@ -28,6 +28,17 @@ vapi_deps = \ +@@ -28,8 +28,6 @@ vapi_deps = \ $(top_builddir)/src/IBus-1.0.gir \ $(NULL) +-ibus-1.0.vapi: $(vapi_deps) +- + VAPIGEN_VAPIS = ibus-1.0.vapi + + ibus_1_0_vapi_DEPS = gio-2.0 +@@ -39,15 +37,30 @@ ibus_1_0_vapi_FILES = \ + $(srcdir)/IBus-1.0-custom.vala \ + $(NULL) + +if ENABLE_LIBGNOMEKBD -+vapi_deps += $(builddir)/gkbd.vapi ++ibus-1.0.vapi: $(vapi_deps) gkbd.vapi + -+$(builddir)/gkbd.vapi: -+ $(AM_V_GEN) $(VAPIGEN) --library gkbd \ -+ --metadatadir $(srcdir) \ -+ --pkg gtk+-3.0 --pkg glib-2.0 --pkg gmodule-2.0 \ -+ /usr/share/gir-1.0/Gkbd-3.0.gir -+ $(NULL) ++VAPIGEN_VAPIS += gkbd.vapi ++ ++gkbd_vapi_DEPS = gtk+-3.0 glib-2.0 gmodule-2.0 ++gkbd_vapi_METADATADIRS = $(srcdir) ++gkbd_vapi_FILES = /usr/share/gir-1.0/Gkbd-3.0.gir ++else ++ibus-1.0.vapi: $(vapi_deps) +endif + - ibus-1.0.vapi: $(vapi_deps) - - VAPIGEN_VAPIS = ibus-1.0.vapi -@@ -43,11 +54,15 @@ vapidir = $(datadir)/vala/vapi - vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps) + vapidir = $(datadir)/vala/vapi +-vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps) ++vapi_DATA = ibus-1.0.vapi ibus-1.0.deps EXTRA_DIST = \ + Gkbd-3.0.metadata \ ++ gkbd.deps \ IBus-1.0.metadata \ IBus-1.0-custom.vala \ ibus-1.0.deps \ @@ -71,8 +82,6 @@ index aba3454..bf3074a 100644 + Xkl-1.0.metadata \ $(NULL) -+CLEANFILES = gkbd.vapi -+ -include $(top_srcdir)/git.mk diff --git a/bindings/vala/Xkl-1.0.metadata b/bindings/vala/Xkl-1.0.metadata new file mode 100644 @@ -83,8 +92,17 @@ index 0000000..4961d0c +Xkl cheader_filename="libxklavier/xklavier.h" +Engine + .filter_events.evt ref type="X.Event" +diff --git a/bindings/vala/gkbd.deps b/bindings/vala/gkbd.deps +new file mode 100644 +index 0000000..172632c +--- /dev/null ++++ b/bindings/vala/gkbd.deps +@@ -0,0 +1,3 @@ ++gtk+-3.0 ++glib-2.0 ++gmodule-2.0 diff --git a/configure.ac b/configure.ac -index b328073..61d1464 100644 +index 3036792..06b6e0c 100644 --- a/configure.ac +++ b/configure.ac @@ -237,6 +237,45 @@ else @@ -133,7 +151,7 @@ index b328073..61d1464 100644 # GObject introspection GOBJECT_INTROSPECTION_CHECK([0.6.8]) -@@ -579,6 +618,7 @@ Build options: +@@ -574,6 +613,7 @@ Build options: No snooper regexes "$NO_SNOOPER_APPS" Panel icon "$IBUS_ICON_KEYBOARD" Enable surrounding-text $enable_surrounding_text @@ -142,7 +160,7 @@ index b328073..61d1464 100644 ]) diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in -index dbb6da8..70bf9ca 100644 +index 54ccb4c..704ba60 100644 --- a/data/ibus.schemas.in +++ b/data/ibus.schemas.in @@ -42,6 +42,52 @@ @@ -231,44 +249,44 @@ index 9f593ab..c93a0ed 100644 Name: IBus Description: IBus Library diff --git a/ibus.spec.in b/ibus.spec.in -index 58cac38..4b6f869 100644 +index 7989949..5391538 100644 --- a/ibus.spec.in +++ b/ibus.spec.in -@@ -4,6 +4,7 @@ +@@ -5,6 +5,7 @@ # Build flags %define build_python_library 0 -+%define build_xkb 0 ++%define build_libgnomekbd 0 %define glib_ver %([ -a %{_libdir}/pkgconfig/glib-2.0.pc ] && pkg-config --modversion glib-2.0 | cut -d. -f 1,2 || echo -n "999") %define gconf2_version 2.12.0 -@@ -38,6 +39,10 @@ BuildRequires: GConf2-devel +@@ -40,6 +41,10 @@ BuildRequires: dconf-devel BuildRequires: pygobject2-devel BuildRequires: intltool BuildRequires: iso-codes-devel -+%if %{build_xkb} ++%if %{build_libgnomekbd} +BuildRequires: libxkbfile-devel +BuildRequires: libgnomekbd-devel +%endif Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-gtk2 = %{version}-%{release} -@@ -51,6 +56,9 @@ Requires: im-chooser >= %{im_chooser_version} - Requires: GConf2 >= %{gconf2_version} +@@ -53,6 +58,9 @@ Requires: dbus-python >= %{dbus_python_version} + Requires: im-chooser >= %{im_chooser_version} Requires: notify-python Requires: librsvg2 -+%if %{build_xkb} ++%if %{build_libgnomekbd} +Requires: libgnomekbd +%endif Requires(post): desktop-file-utils Requires(postun): desktop-file-utils -@@ -132,6 +140,10 @@ OPTIONS="$OPTIONS --enable-python-library" +@@ -153,6 +161,10 @@ OPTIONS="$OPTIONS --enable-python-library" OPTIONS="$OPTIONS --disable-python-library" %endif -+%if %{build_xkb} -+OPTIONS="$OPTIONS --enable-xkb --enable-libgnomekbd" ++%if %{build_libgnomekbd} ++OPTIONS="$OPTIONS --enable-libgnomekbd" +%endif + %configure $OPTIONS @@ -966,10 +984,10 @@ index 0000000..6f5b7bd +G_END_DECLS +#endif diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am -index 5473027..b7e663c 100644 +index 43454bc..6b7e70a 100644 --- a/ui/gtk3/Makefile.am +++ b/ui/gtk3/Makefile.am -@@ -47,6 +47,8 @@ USE_SYMBOL_ICON = FALSE +@@ -45,6 +45,8 @@ USE_SYMBOL_ICON = FALSE # force include config.h before gi18n.h. AM_CPPFLAGS = -include $(CONFIG_HEADER) @@ -978,7 +996,7 @@ index 5473027..b7e663c 100644 AM_CFLAGS = \ @GLIB2_CFLAGS@ \ @GIO2_CFLAGS@ \ -@@ -58,6 +60,8 @@ AM_CFLAGS = \ +@@ -56,6 +58,8 @@ AM_CFLAGS = \ -DBINDIR=\"$(bindir)\" \ -DIBUS_DISABLE_DEPRECATED \ -DSWITCHER_USE_SYMBOL_ICON=$(USE_SYMBOL_ICON) \ @@ -987,23 +1005,8 @@ index 5473027..b7e663c 100644 -Wno-unused-variable \ -Wno-unused-but-set-variable \ -Wno-unused-function \ -@@ -91,6 +95,7 @@ ibus_ui_gtk3_SOURCES = \ - application.vala \ - candidatearea.vala \ - candidatepanel.vala \ -+ gkbdlayout.vala \ - handle.vala \ - iconwidget.vala \ - keybindingmanager.vala \ -@@ -99,17 +104,48 @@ ibus_ui_gtk3_SOURCES = \ - property.vala \ - separator.vala \ - switcher.vala \ -+ xkblayout.vala \ - $(NULL) - - ibus_ui_gtk3_LDADD = \ - $(AM_LDADD) \ +@@ -83,12 +87,40 @@ AM_VALAFLAGS = \ + --pkg=xi \ $(NULL) +if ENABLE_LIBGNOMEKBD @@ -1033,15 +1036,35 @@ index 5473027..b7e663c 100644 + @cp $(srcdir)/gkbdlayout.vala.false $(srcdir)/gkbdlayout.vala +endif + - CLEANFILES = \ + libexec_PROGRAMS = ibus-ui-gtk3 + + ibus_ui_gtk3_SOURCES = \ + application.vala \ + candidatearea.vala \ + candidatepanel.vala \ + gkbdlayout.vala \ + handle.vala \ + iconwidget.vala \ + keybindingmanager.vala \ +@@ -97,6 +129,7 @@ ibus_ui_gtk3_SOURCES = \ + property.vala \ + separator.vala \ + switcher.vala \ ++ xkblayout.vala \ + $(NULL) + + ibus_ui_gtk3_LDADD = \ +@@ -105,9 +138,12 @@ ibus_ui_gtk3_LDADD = \ + + CLEANFILES = \ gtkpanel.xml \ ++ gkbdlayout.vala \ $(NULL) EXTRA_DIST = \ + gkbdlayout.vala.false \ + gkbdlayout.vala.true \ - gtkpanel.xml.in.in \ + gtkpanel.xml.in \ $(NULL) diff --git a/ui/gtk3/gkbdlayout.vala.false b/ui/gtk3/gkbdlayout.vala.false @@ -1228,13 +1251,13 @@ index 0000000..2b78c69 + */ +} diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala -index 24e6b2e..55b63ce 100644 +index 0d7a5b2..10eaa0c 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala -@@ -48,6 +48,13 @@ class Panel : IBus.PanelService { - private Gtk.AboutDialog m_about_dialog; +@@ -49,6 +49,13 @@ class Panel : IBus.PanelService { private Gtk.CssProvider m_css_provider; private int m_switcher_delay_time = 400; + private bool m_use_system_keyboard_layout = false; + private GkbdLayout m_gkbdlayout = null; + private XKBLayout m_xkblayout = null; + private string[] m_layouts = {}; @@ -1245,7 +1268,7 @@ index 24e6b2e..55b63ce 100644 private const string ACCELERATOR_SWITCH_IME_FOREWARD = "space"; private GLib.List m_keybindings = new GLib.List(); -@@ -90,6 +97,14 @@ class Panel : IBus.PanelService { +@@ -91,6 +98,14 @@ class Panel : IBus.PanelService { ~Panel() { unbind_switch_shortcut(); @@ -1260,15 +1283,15 @@ index 24e6b2e..55b63ce 100644 } private void keybinding_manager_bind(KeybindingManager keybinding_manager, -@@ -281,6 +296,7 @@ class Panel : IBus.PanelService { +@@ -299,6 +314,7 @@ class Panel : IBus.PanelService { m_config.watch("general/hotkey", "triggers"); m_config.watch("panel", "custom_font"); m_config.watch("panel", "use_custom_font"); + init_engines_order(); - update_engines(m_config.get_value("general", "preload_engines"), - m_config.get_value("general", "engines_order")); - unbind_switch_shortcut(); -@@ -293,6 +309,204 @@ class Panel : IBus.PanelService { + // Update m_use_system_keyboard_layout before update_engines() + // is called. + set_use_system_keyboard_layout(null); +@@ -314,6 +330,204 @@ class Panel : IBus.PanelService { set_custom_font(); } @@ -1473,15 +1496,15 @@ index 24e6b2e..55b63ce 100644 private void exec_setxkbmap(IBus.EngineDesc engine) { string layout = engine.get_layout(); string variant = engine.get_layout_variant(); -@@ -352,7 +566,7 @@ class Panel : IBus.PanelService { - return; +@@ -374,7 +588,7 @@ class Panel : IBus.PanelService { } // set xkb layout -- exec_setxkbmap(engine); -+ set_layout(engine); + if (!m_use_system_keyboard_layout) { +- exec_setxkbmap(engine); ++ set_layout(engine); + } } - private void config_value_changed_cb(IBus.Config config, diff --git a/ui/gtk3/xkblayout.vala b/ui/gtk3/xkblayout.vala new file mode 100644 index 0000000..165a905 diff --git a/ibus-810211-no-switch-by-no-trigger.patch b/ibus-810211-no-switch-by-no-trigger.patch index 50ef12d..c1bea4d 100644 --- a/ibus-810211-no-switch-by-no-trigger.patch +++ b/ibus-810211-no-switch-by-no-trigger.patch @@ -1,4 +1,4 @@ -From 092d20121fc5401810b60c1d01f331a80b4ed42c Mon Sep 17 00:00:00 2001 +From d3bc903b487bb301395947f692ce0d8c130874e3 Mon Sep 17 00:00:00 2001 From: fujiwarat Date: Sat, 6 Oct 2012 17:54:27 +0900 Subject: [PATCH] Fix not to switch engines by non-trigger keys. @@ -8,10 +8,10 @@ Subject: [PATCH] Fix not to switch engines by non-trigger keys. 1 file changed, 6 insertions(+) diff --git a/ui/gtk3/switcher.vala b/ui/gtk3/switcher.vala -index 494fab9..c5286b1 100644 +index 4a02743..c606682 100644 --- a/ui/gtk3/switcher.vala +++ b/ui/gtk3/switcher.vala -@@ -127,6 +127,7 @@ class Switcher : Gtk.Window { +@@ -140,6 +140,7 @@ class Switcher : Gtk.Window { /* Let gtk recalculate the window size. */ resize(1, 1); @@ -19,7 +19,7 @@ index 494fab9..c5286b1 100644 m_selected_engine = index; m_label.set_text(m_buttons[index].longname); m_buttons[index].grab_focus(); -@@ -365,6 +366,11 @@ class Switcher : Gtk.Window { +@@ -378,6 +379,11 @@ class Switcher : Gtk.Window { break; default: debug("0x%04x", pe->keyval); diff --git a/ibus-947318-reconnect-gtk-client.patch b/ibus-947318-reconnect-gtk-client.patch new file mode 100644 index 0000000..a0c8a05 --- /dev/null +++ b/ibus-947318-reconnect-gtk-client.patch @@ -0,0 +1,43 @@ +From ef3aaa7bee7dd4c9ab3ccbe5a62d20be3b06a309 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Thu, 18 Apr 2013 09:48:25 +0900 +Subject: [PATCH] IBusIMContext needs to reconnect IBusBus when IBusBus is + disconnected. + +--- + client/gtk2/ibusimcontext.c | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c +index 49598b4..8c7dbcc 100644 +--- a/client/gtk2/ibusimcontext.c ++++ b/client/gtk2/ibusimcontext.c +@@ -1474,6 +1474,25 @@ _ibus_context_destroy_cb (IBusInputContext *ibuscontext, + + g_signal_emit (ibusimcontext, _signal_preedit_changed_id, 0); + g_signal_emit (ibusimcontext, _signal_preedit_end_id, 0); ++ ++ /* This destroy callback can be called when the client app connects to ++ * IBusBus and the app is disconnected. E.g. gnome-shell connects to ++ * IBusBus and it has StEntry input text and ibus can be restarted. ++ * And each ibusimcontext also needs to reconnect IBusBus here. */ ++ if (!ibus_bus_is_connected (_bus)) { ++ g_signal_handlers_disconnect_by_func (_bus, ++ G_CALLBACK (_bus_connected_cb), ++ ibusimcontext); ++ g_object_unref (_bus); ++ _bus = ibus_bus_new_async (); ++ ++ if (ibus_bus_is_connected (_bus)) { ++ _create_input_context (ibusimcontext); ++ } ++ ++ g_signal_connect (_bus, "connected", G_CALLBACK (_bus_connected_cb), ++ ibusimcontext); ++ } + } + + static void +-- +1.8.0 + diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch index 00c3b85..8b13789 100644 --- a/ibus-HEAD.patch +++ b/ibus-HEAD.patch @@ -1,397 +1 @@ -From 8ac534fc002356b93e2015a8866f1ea89e3895f9 Mon Sep 17 00:00:00 2001 -From: fujiwarat -Date: Sat, 15 Dec 2012 17:40:18 +0900 -Subject: [PATCH] Use Variant.unpack() instead of Variant.dup_strv(). - -Variant.dup_strv() returns a tuple in pygobject 3.2, e.g. (['space'], 1L), and a list in pygobject 3.4, e.g. ['space'] . - -BUG=RH#887153 - -Review URL: https://codereview.appspot.com/6941051 ---- - setup/main.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/setup/main.py b/setup/main.py -index a8acc7a..707faa4 100644 ---- a/setup/main.py -+++ b/setup/main.py -@@ -87,7 +87,7 @@ class Setup(object): - label = 'switch_engine' - variant = self.__config.get_value('general/hotkey', name) - if variant != None: -- shortcuts = variant.dup_strv() -+ shortcuts = variant.unpack() - else: - shortcuts = ['space'] - --- -1.7.12.1 - -From 62cd0492e3459416e1775aedc327bced53f66828 Mon Sep 17 00:00:00 2001 -From: Rui Matos -Date: Wed, 9 Jan 2013 10:14:55 -0500 -Subject: [PATCH] client: Queue events while the IBus context isn't ready - -There are actually 3 patches here. - ---- -client: Queue events while the IBus context isn't ready - -We may lose events that ought to be processed while the IBus context -isn't ready or if the connection to IBus isn't fully established yet. - -To avoid that, enqueue events to be processed later when the IBus -context creation finishes. - ---- -client: Don't cancel an ongoing create input context on another request - -This would only add more delays. - ---- -client: Cancel any ongoing create input context request on finalize - -BUG= - -Review URL: https://codereview.appspot.com/6988047 -Patch from Rui Matos . ---- - client/gtk2/ibusimcontext.c | 220 ++++++++++++++++++++++++++------------------ - 1 file changed, 133 insertions(+), 87 deletions(-) - -diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c -index 011676f..94005b7 100644 ---- a/client/gtk2/ibusimcontext.c -+++ b/client/gtk2/ibusimcontext.c -@@ -40,6 +40,8 @@ - # define IDEBUG(a...) - #endif - -+#define MAX_QUEUED_EVENTS 20 -+ - struct _IBusIMContext { - GtkIMContext parent; - -@@ -63,6 +65,7 @@ struct _IBusIMContext { - - /* cancellable */ - GCancellable *cancellable; -+ GQueue *events_queue; - }; - - struct _IBusIMContextClass { -@@ -154,6 +157,8 @@ static GType _ibus_type_im_context = 0; - static GtkIMContextClass *parent_class = NULL; - - static IBusBus *_bus = NULL; -+static guint _daemon_name_watch_id = 0; -+static gboolean _daemon_is_running = FALSE; - - void - ibus_im_context_register_type (GTypeModule *type_module) -@@ -261,6 +266,46 @@ _process_key_event_done (GObject *object, - gdk_event_free ((GdkEvent *)event); - } - -+static gboolean -+_process_key_event (IBusInputContext *context, -+ GdkEventKey *event) -+{ -+ guint state = event->state; -+ gboolean retval = FALSE; -+ -+ if (event->type == GDK_KEY_RELEASE) { -+ state |= IBUS_RELEASE_MASK; -+ } -+ -+ if (_use_sync_mode) { -+ retval = ibus_input_context_process_key_event (context, -+ event->keyval, -+ event->hardware_keycode - 8, -+ state); -+ } -+ else { -+ ibus_input_context_process_key_event_async (context, -+ event->keyval, -+ event->hardware_keycode - 8, -+ state, -+ -1, -+ NULL, -+ _process_key_event_done, -+ gdk_event_copy ((GdkEvent *) event)); -+ -+ retval = TRUE; -+ } -+ -+ if (retval) { -+ event->state |= IBUS_HANDLED_MASK; -+ } -+ else { -+ event->state |= IBUS_IGNORED_MASK; -+ } -+ -+ return retval; -+} -+ - - /* emit "retrieve-surrounding" glib signal of GtkIMContext, if - * context->caps has IBUS_CAP_SURROUNDING_TEXT and the current IBus -@@ -387,38 +432,7 @@ _key_snooper_cb (GtkWidget *widget, - ibusimcontext->time = event->time; - } - -- guint state = event->state; -- if (event->type == GDK_KEY_RELEASE) { -- state |= IBUS_RELEASE_MASK; -- } -- -- if (_use_sync_mode) { -- retval = ibus_input_context_process_key_event ( -- ibuscontext, -- event->keyval, -- event->hardware_keycode - 8, -- state); -- } -- else { -- ibus_input_context_process_key_event_async ( -- ibuscontext, -- event->keyval, -- event->hardware_keycode - 8, -- state, -- -1, -- NULL, -- _process_key_event_done, -- gdk_event_copy ((GdkEvent *) event)); -- retval = TRUE; -- -- } -- -- if (retval) { -- event->state |= IBUS_HANDLED_MASK; -- } -- else { -- event->state |= IBUS_IGNORED_MASK; -- } -+ retval = _process_key_event (ibuscontext, event); - - if (ibusimcontext != NULL) { - /* unref ibusimcontext could call ibus_im_context_finalize here -@@ -450,6 +464,23 @@ _get_boolean_env(const gchar *name, - } - - static void -+daemon_name_appeared (GDBusConnection *connection, -+ const gchar *name, -+ const gchar *owner, -+ gpointer data) -+{ -+ _daemon_is_running = TRUE; -+} -+ -+static void -+daemon_name_vanished (GDBusConnection *connection, -+ const gchar *name, -+ gpointer data) -+{ -+ _daemon_is_running = FALSE; -+} -+ -+static void - ibus_im_context_class_init (IBusIMContextClass *class) - { - IDEBUG ("%s", __FUNCTION__); -@@ -533,6 +564,14 @@ ibus_im_context_class_init (IBusIMContextClass *class) - /* always install snooper */ - if (_key_snooper_id == 0) - _key_snooper_id = gtk_key_snooper_install (_key_snooper_cb, NULL); -+ -+ _daemon_name_watch_id = g_bus_watch_name (G_BUS_TYPE_SESSION, -+ IBUS_SERVICE_IBUS, -+ G_BUS_NAME_WATCHER_FLAGS_NONE, -+ daemon_name_appeared, -+ daemon_name_vanished, -+ NULL, -+ NULL); - } - - static void -@@ -543,6 +582,8 @@ ibus_im_context_class_fini (IBusIMContextClass *class) - gtk_key_snooper_remove (_key_snooper_id); - _key_snooper_id = 0; - } -+ -+ g_bus_unwatch_name (_daemon_name_watch_id); - } - - /* Copied from gtk+2.0-2.20.1/modules/input/imcedilla.c to fix crosbug.com/11421. -@@ -602,6 +643,7 @@ ibus_im_context_init (GObject *obj) - ibusimcontext->caps = IBUS_CAP_PREEDIT_TEXT | IBUS_CAP_FOCUS; - #endif - -+ ibusimcontext->events_queue = g_queue_new (); - - // Create slave im context - ibusimcontext->slave = gtk_im_context_simple_new (); -@@ -651,6 +693,13 @@ ibus_im_context_finalize (GObject *obj) - - g_signal_handlers_disconnect_by_func (_bus, G_CALLBACK (_bus_connected_cb), obj); - -+ if (ibusimcontext->cancellable != NULL) { -+ /* Cancel any ongoing create input context request */ -+ g_cancellable_cancel (ibusimcontext->cancellable); -+ g_object_unref (ibusimcontext->cancellable); -+ ibusimcontext->cancellable = NULL; -+ } -+ - if (ibusimcontext->ibuscontext) { - ibus_proxy_destroy ((IBusProxy *)ibusimcontext->ibuscontext); - } -@@ -670,6 +719,9 @@ ibus_im_context_finalize (GObject *obj) - pango_attr_list_unref (ibusimcontext->preedit_attrs); - } - -+ g_queue_free_full (ibusimcontext->events_queue, -+ (GDestroyNotify)gdk_event_free); -+ - G_OBJECT_CLASS(parent_class)->finalize (obj); - } - -@@ -681,65 +733,56 @@ ibus_im_context_filter_keypress (GtkIMContext *context, - - IBusIMContext *ibusimcontext = IBUS_IM_CONTEXT (context); - -- if (G_LIKELY (ibusimcontext->ibuscontext && ibusimcontext->has_focus)) { -- /* If context does not have focus, ibus will process key event in sync mode. -- * It is a workaround for increase search in treeview. -- */ -- gboolean retval = FALSE; -- -- if (event->state & IBUS_HANDLED_MASK) -- return TRUE; -+ if (!_daemon_is_running) -+ return gtk_im_context_filter_keypress (ibusimcontext->slave, event); - -- if (event->state & IBUS_IGNORED_MASK) -- return gtk_im_context_filter_keypress (ibusimcontext->slave, event); -+ /* If context does not have focus, ibus will process key event in -+ * sync mode. It is a workaround for increase search in treeview. -+ */ -+ if (!ibusimcontext->has_focus) -+ return gtk_im_context_filter_keypress (ibusimcontext->slave, event); - -- /* XXX it is a workaround for some applications do not set client window. */ -- if (ibusimcontext->client_window == NULL && event->window != NULL) -- gtk_im_context_set_client_window ((GtkIMContext *)ibusimcontext, event->window); -+ if (event->state & IBUS_HANDLED_MASK) -+ return TRUE; - -- _request_surrounding_text (ibusimcontext); -+ if (event->state & IBUS_IGNORED_MASK) -+ return gtk_im_context_filter_keypress (ibusimcontext->slave, event); - -- if (ibusimcontext != NULL) { -- ibusimcontext->time = event->time; -- } -+ /* XXX it is a workaround for some applications do not set client -+ * window. */ -+ if (ibusimcontext->client_window == NULL && event->window != NULL) -+ gtk_im_context_set_client_window ((GtkIMContext *)ibusimcontext, -+ event->window); - -- guint state = event->state; -- if (event->type == GDK_KEY_RELEASE) { -- state |= IBUS_RELEASE_MASK; -- } -+ _request_surrounding_text (ibusimcontext); - -- if (_use_sync_mode) { -- retval = ibus_input_context_process_key_event ( -- ibusimcontext->ibuscontext, -- event->keyval, -- event->hardware_keycode - 8, -- state); -- } -- else { -- ibus_input_context_process_key_event_async ( -- ibusimcontext->ibuscontext, -- event->keyval, -- event->hardware_keycode - 8, -- state, -- -1, -- NULL, -- _process_key_event_done, -- gdk_event_copy ((GdkEvent *) event)); -- retval = TRUE; -- } -+ ibusimcontext->time = event->time; - -- if (retval) { -- event->state |= IBUS_HANDLED_MASK; -+ if (ibusimcontext->ibuscontext) { -+ if (_process_key_event (ibusimcontext->ibuscontext, event)) - return TRUE; -- } -- else { -- event->state |= IBUS_IGNORED_MASK; -- return gtk_im_context_filter_keypress (ibusimcontext->slave, event); -- } -+ else -+ return gtk_im_context_filter_keypress (ibusimcontext->slave, -+ event); - } -- else { -- return gtk_im_context_filter_keypress (ibusimcontext->slave, event); -+ -+ /* At this point we _should_ be waiting for the IBus context to be -+ * created or the connection to IBus to be established. If that's -+ * the case we queue events to be processed when the IBus context -+ * is ready. */ -+ g_return_val_if_fail (ibusimcontext->cancellable != NULL || -+ ibus_bus_is_connected (_bus) == FALSE, -+ FALSE); -+ g_queue_push_tail (ibusimcontext->events_queue, -+ gdk_event_copy ((GdkEvent *)event)); -+ -+ if (g_queue_get_length (ibusimcontext->events_queue) > MAX_QUEUED_EVENTS) { -+ g_warning ("Events queue growing too big, will start to drop."); -+ gdk_event_free ((GdkEvent *) -+ g_queue_pop_head (ibusimcontext->events_queue)); - } -+ -+ return TRUE; - } - - static void -@@ -1482,6 +1525,14 @@ _create_input_context_done (IBusBus *bus, - ibus_input_context_focus_in (ibusimcontext->ibuscontext); - _set_cursor_location_internal (ibusimcontext); - } -+ -+ if (!g_queue_is_empty (ibusimcontext->events_queue)) { -+ GdkEventKey *event; -+ while (event = g_queue_pop_head (ibusimcontext->events_queue)) { -+ _process_key_event (context, event); -+ gdk_event_free ((GdkEvent *)event); -+ } -+ } - } - - g_object_unref (ibusimcontext); -@@ -1494,12 +1545,7 @@ _create_input_context (IBusIMContext *ibusimcontext) - - g_assert (ibusimcontext->ibuscontext == NULL); - -- if (ibusimcontext->cancellable != NULL) { -- /* Cancel previous create input context request */ -- g_cancellable_cancel (ibusimcontext->cancellable); -- g_object_unref (ibusimcontext->cancellable); -- ibusimcontext->cancellable = NULL; -- } -+ g_return_if_fail (ibusimcontext->cancellable == NULL); - - ibusimcontext->cancellable = g_cancellable_new (); - --- -1.8.0 diff --git a/ibus-xx-setup-frequent-lang.patch b/ibus-xx-setup-frequent-lang.patch index e703cb4..4e7467f 100644 --- a/ibus-xx-setup-frequent-lang.patch +++ b/ibus-xx-setup-frequent-lang.patch @@ -1,4 +1,4 @@ -From 1f21bce0403cdf7f99faa33842bc23b49aaee8cc Mon Sep 17 00:00:00 2001 +From 918f22efe0898a6dc87da4d94dadf413e7840e43 Mon Sep 17 00:00:00 2001 From: fujiwarat Date: Thu, 31 Jan 2013 17:31:55 +0900 Subject: [PATCH] Enable ibus-setup to show the frequently used languages @@ -11,7 +11,7 @@ Subject: [PATCH] Enable ibus-setup to show the frequently used languages 3 files changed, 300 insertions(+), 24 deletions(-) diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in -index 7833959..72bcc72 100644 +index 136c192..bd566ca 100644 --- a/data/ibus.schemas.in +++ b/data/ibus.schemas.in @@ -325,6 +325,174 @@ se,si,sk,sy,sy(ku),th,tj,tr,ua,uz,vn diff --git a/ibus-xx-vapi-build-failure.patch b/ibus-xx-vapi-build-failure.patch deleted file mode 100644 index 20670db..0000000 --- a/ibus-xx-vapi-build-failure.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- ibus-1.5.1/bindings/vala/Makefile.am.orig 2013-01-15 16:58:25.571433690 +0900 -+++ ibus-1.5.1/bindings/vala/Makefile.am 2013-01-15 16:58:46.983455158 +0900 -@@ -20,17 +20,38 @@ - # Free Software Foundation, Inc., 59 Temple Place, Suite 330, - # Boston, MA 02111-1307 USA - ---include $(VAPIGEN_MAKEFILE) -+vapidir = $(datadir)/vala/vapi -+dist_vapi_DATA = \ -+ ibus-@IBUS_API_VERSION@.vapi \ -+ ibus-@IBUS_API_VERSION@.deps \ -+ $(NULL) - -+# Don't rebuild vapi every time gir is updated. -+if ENABLE_LIBGNOMEKBD - vapi_deps = \ -- IBus-1.0.metadata \ -- IBus-1.0-custom.vala \ -- $(top_builddir)/src/IBus-1.0.gir \ -+ $(srcdir)/IBus-1.0.metadata \ -+ $(srcdir)/IBus-1.0-custom.vala \ -+ | \ -+ $(builddir)/gkbd.vapi \ -+ $(top_srcdir)/src/IBus-@IBUS_API_VERSION@.gir \ - $(NULL) -+else -+vapi_deps = \ -+ $(srcdir)/IBus-1.0.metadata \ -+ $(srcdir)/IBus-1.0-custom.vala \ -+ | \ -+ $(top_srcdir)/src/IBus-@IBUS_API_VERSION@.gir \ -+ $(NULL) -+endif - --if ENABLE_LIBGNOMEKBD --vapi_deps += $(builddir)/gkbd.vapi -+ibus-@IBUS_API_VERSION@.vapi: $(vapi_deps) -+ $(AM_V_GEN) $(VAPIGEN) --library ibus-@IBUS_API_VERSION@ \ -+ --pkg gio-2.0 \ -+ --metadatadir=$(srcdir) \ -+ $(top_srcdir)/src/IBus-@IBUS_API_VERSION@.gir \ -+ $(srcdir)/IBus-1.0-custom.vala - -+if ENABLE_LIBGNOMEKBD - $(builddir)/gkbd.vapi: - $(AM_V_GEN) $(VAPIGEN) --library gkbd \ - --metadatadir $(srcdir) \ -@@ -39,25 +60,10 @@ $(builddir)/gkbd.vapi: - $(NULL) - endif - --ibus-1.0.vapi: $(vapi_deps) -- --VAPIGEN_VAPIS = ibus-1.0.vapi -- --ibus_1_0_vapi_DEPS = gio-2.0 --ibus_1_0_vapi_METADATADIRS = $(srcdir) --ibus_1_0_vapi_FILES = \ -- $(top_builddir)/src/IBus-1.0.gir \ -- $(srcdir)/IBus-1.0-custom.vala \ -- $(NULL) -- --vapidir = $(datadir)/vala/vapi --vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps) -- - EXTRA_DIST = \ - Gkbd-3.0.metadata \ - IBus-1.0.metadata \ - IBus-1.0-custom.vala \ -- ibus-1.0.deps \ - config.vapi \ - xi.vapi \ - Xkl-1.0.metadata \ -@@ -65,4 +71,6 @@ EXTRA_DIST = \ - - CLEANFILES = gkbd.vapi - -+MAINTAINERCLEANFILES = ibus-@IBUS_API_VERSION@.vapi -+ - -include $(top_srcdir)/git.mk diff --git a/ibus.spec b/ibus.spec index 5b964fd..36bcdc7 100644 --- a/ibus.spec +++ b/ibus.spec @@ -1,4 +1,4 @@ -%global with_xkbfile 1 +%global with_preload_xkb_engine 1 %global with_pygobject2 1 %global with_pygobject3 1 @@ -34,8 +34,8 @@ %global dbus_python_version 0.83.0 Name: ibus -Version: 1.5.1 -Release: 3%{?dist} +Version: 1.5.2 +Release: 1%{?dist} Summary: Intelligent Input Bus for Linux OS License: LGPLv2+ Group: System Environment/Libraries @@ -45,6 +45,9 @@ Source1: %{name}-xinput %if %with_gjs # ibus-gjs Source2: http://fujiwara.fedorapeople.org/ibus/gnome-shell/%{name}-gjs-%{ibus_gjs_version}.tar.gz +Source3: https://raw.github.com/ibus/ibus/master/debian/ibus.1 +Source4: https://raw.github.com/ibus/ibus/master/debian/ibus-daemon.1 +Source5: https://raw.github.com/ibus/ibus/master/debian/ibus-setup.1 %endif # Upstreamed patches. Patch0: %{name}-HEAD.patch @@ -56,6 +59,8 @@ Patch2: %{name}-541492-xkb.patch Patch3: %{name}-530711-preload-sys.patch # Hide minor input method engines on ibus-setup by locale Patch4: %{name}-xx-setup-frequent-lang.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=947318 +Patch5: %{name}-947318-reconnect-gtk-client.patch %if (0%{?fedora} <= 17 && 0%{?rhel} < 7) # Workaround to disable preedit on gnome-shell until bug 658420 is fixed. @@ -66,15 +71,12 @@ Patch92: %{name}-xx-g-s-disable-preedit.patch # The patch enables to build on fedora 17. Patch93: %{name}-xx-f17.patch %endif -# Fix the build failure in f17 and f19 vala. -Patch94: %{name}-xx-vapi-build-failure.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gettext-devel BuildRequires: libtool -BuildRequires: python2-devel BuildRequires: gtk2-devel BuildRequires: gtk3-devel BuildRequires: dbus-glib-devel @@ -84,18 +86,12 @@ BuildRequires: gtk-doc BuildRequires: dconf-devel BuildRequires: dbus-x11 BuildRequires: vala +BuildRequires: vala-devel BuildRequires: vala-tools # for AM_GCONF_SOURCE_2 in configure.ac BuildRequires: GConf2-devel -%if %with_pygobject3 -BuildRequires: gobject-introspection-devel -BuildRequires: pygobject3-devel -%endif BuildRequires: intltool BuildRequires: iso-codes-devel -%if %with_xkbfile -BuildRequires: libxkbfile-devel -%endif %if %with_gkbd BuildRequires: libgnomekbd-devel %endif @@ -104,21 +100,13 @@ BuildRequires: libgnomekbd-devel BuildRequires: gjs BuildRequires: gnome-shell %endif -BuildRequires: diffstat -Requires: %{name}-libs = %{version}-%{release} -Requires: %{name}-gtk2 = %{version}-%{release} -%if (0%{?fedora} > 14 || 0%{?rhel} > 6) -Requires: %{name}-gtk3 = %{version}-%{release} -%endif +Requires: %{name}-libs = %{version}-%{release} +Requires: %{name}-gtk2 = %{version}-%{release} +Requires: %{name}-gtk3 = %{version}-%{release} +Requires: %{name}-setup = %{version}-%{release} +Requires: %{name}-pygtk2 = %{version}-%{release} -%if %with_pygobject2 -Requires: pygtk2 -%endif -%if %with_pygobject3 -Requires: pygobject3 -%endif -Requires: pyxdg Requires: iso-codes Requires: dbus-python >= %{dbus_python_version} Requires: dbus-x11 @@ -187,6 +175,35 @@ Requires(post): glib2 >= %{glib_ver} %description gtk3 This package contains ibus im module for gtk3 +%if %with_pygobject3 +%package setup +Summary: IBus setup utility +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +Requires: pygobject3 +BuildRequires: gobject-introspection-devel +BuildRequires: pygobject3-devel +BuildArch: noarch + +%description setup +This is a setup utility for IBus. +%endif + +%if %with_pygobject2 +%package pygtk2 +Summary: IBus pygtk2 library +Group: System Environment/Libraries +Requires: %{name} = %{version}-%{release} +Requires: pygtk2 +Requires: pyxdg +BuildRequires: python2-devel +BuildArch: noarch + +%description pygtk2 +This is a pygtk2 library for IBus. Now major IBUs engines use pygobject3 +and this package will be deprecated. +%endif + %if %with_gjs %package gnome3 Summary: IBus gnome-shell-extension for GNOME3 @@ -231,51 +248,27 @@ The ibus-devel-docs package contains developer documentation for ibus gzip -dc %SOURCE2 | tar xf - %endif -# home [dot] corp [dot] redhat [dot] com/wiki/rpmdiff-multilib -# Update timestamps on the files touched by a patch, to avoid non-equal -# .pyc/.pyo files across the multilib peers within a build, where "Level" -# is the patch prefix option (e.g. -p1) -UpdateTimestamps() { - Level=$1 - PatchFile=$2 - # Locate the affected files: - for f in $(diffstat $Level -l $PatchFile); do - # Set the files to have the same timestamp as that of the patch: - touch -r $PatchFile $f - done -} - # %%patch0 -p1 -# UpdateTimestamps -p1 %%{PATCH0} -%patch0 -p1 -UpdateTimestamps -p1 %{PATCH0} %if (0%{?fedora} <= 17 && 0%{?rhel} < 7) %patch92 -p1 -b .g-s-preedit -UpdateTimestamps -p1 %{PATCH92} %endif +%patch5 -p1 -b .reconnect cp client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c || %patch1 -p1 -b .noswitch -UpdateTimestamps -p1 %{PATCH1} -%if %with_xkbfile -%patch2 -p1 -b .xkb -UpdateTimestamps -p1 %{PATCH2} +%if %with_preload_xkb_engine +%patch2 -p1 -b .preload-xkb rm -f bindings/vala/ibus-1.0.vapi rm -f data/dconf/00-upstream-settings %endif %patch3 -p1 -b .preload-sys -UpdateTimestamps -p1 %{PATCH3} %patch4 -p1 -b .setup-frequent-lang -UpdateTimestamps -p1 %{PATCH4} %if (0%{?fedora} < 18 && 0%{?rhel} < 7) %patch93 -p1 -b .f17 -UpdateTimestamps -p1 %{PATCH93} %endif -%patch94 -p1 -b .vapi -UpdateTimestamps -p1 %{PATCH94} %build -%if %with_xkbfile +%if %with_preload_xkb_engine autoreconf -f -i %endif %configure \ @@ -297,7 +290,7 @@ autoreconf -f -i %endif --enable-introspection -%if %with_xkbfile +%if %with_preload_xkb_engine make -C ui/gtk3 maintainer-clean-generic %endif # make -C po update-gmo @@ -354,6 +347,14 @@ if test -f ibus/_config.py.in -a \ fi fi +for S in %{SOURCE3} %{SOURCE4} %{SOURCE5} +do + cp $S . + MP=`basename $S` + gzip $MP + install -pm 644 -D ${MP}.gz $RPM_BUILD_ROOT%{_datadir}/man/man1/${MP}.gz +done + %if %with_gjs # https://bugzilla.redhat.com/show_bug.cgi?id=657165 d=`basename %SOURCE2 .tar.gz` @@ -421,27 +422,24 @@ fi # FIXME: no version number %files -f %{name}10.lang %doc AUTHORS COPYING README -%if %with_pygobject2 -%dir %{python2_sitelib}/ibus -%{python2_sitelib}/ibus/* -%endif %dir %{_datadir}/ibus/ %{_bindir}/ibus %{_bindir}/ibus-daemon -%{_bindir}/ibus-setup -%if %with_pygobject3 -%{_datadir}/ibus/* -%endif %{_datadir}/applications/* -%{_datadir}/icons/hicolor/*/apps/* +%{_datadir}/bash-completion/completions/ibus.bash %{_datadir}/GConf/gsettings/* %{_datadir}/glib-2.0/schemas/*.xml +%{_datadir}/ibus/component +%{_datadir}/ibus/engine +%{_datadir}/ibus/keymaps +%{_datadir}/icons/hicolor/*/apps/* +%{_datadir}/man/man1/ibus.1.gz +%{_datadir}/man/man1/ibus-daemon.1.gz %{_libexecdir}/ibus-engine-simple %{_libexecdir}/ibus-dconf %{_libexecdir}/ibus-ui-gtk3 %{_libexecdir}/ibus-x11 # {_sysconfdir}/xdg/autostart/ibus.desktop -%{_sysconfdir}/bash_completion.d/ibus.bash %{_sysconfdir}/dconf/db/ibus.d %{_sysconfdir}/dconf/profile/ibus %python2_sitearch/gi/overrides/IBus.py* @@ -449,9 +447,7 @@ fi %files libs %{_libdir}/libibus-%{ibus_api_version}.so.* -%if %with_pygobject3 %{_libdir}/girepository-1.0/IBus-1.0.typelib -%endif %files gtk2 %{_libdir}/gtk-2.0/%{gtk2_binary_version}/immodules/im-ibus.so @@ -459,6 +455,19 @@ fi %files gtk3 %{_libdir}/gtk-3.0/%{gtk3_binary_version}/immodules/im-ibus.so +%if %with_pygobject3 +%files setup +%{_bindir}/ibus-setup +%{_datadir}/ibus/setup +%{_datadir}/man/man1/ibus-setup.1.gz +%endif + +%if %with_pygobject2 +%files pygtk2 +%dir %{python2_sitelib}/ibus +%{python2_sitelib}/ibus/* +%endif + %if %with_gjs %files gnome3 %{_datadir}/gnome-shell/js/ui/status/ibus @@ -477,6 +486,11 @@ fi %{_datadir}/gtk-doc/html/* %changelog +* Thu Apr 18 2013 Takao Fujiwara - 1.5.2-1 +- Bumped to 1.5.2 +- Created noarch packages for python files due to .pyc and .pyo. +- Added man pages. + * Mon Feb 18 2013 Takao Fujiwara - 1.5.1-3 - Copied gtk2 module to gtk3 one. diff --git a/sources b/sources index ce31a01..33b607c 100644 --- a/sources +++ b/sources @@ -1,3 +1,6 @@ -f0103201249c657712f5f4d9a36923ed ibus-1.5.1.tar.gz +1b6b9c91089767762e00f8b5858d1b59 ibus-1.5.2.tar.gz 2d2ad58e3e41429dbd883ba7e501c9b2 ibus-gjs-3.2.1.20111230.tar.gz da9a22c82ab33423d7afeb3da4146fa8 ibus-gjs-3.4.1.20130115.tar.gz +63a1b72673b34aaa20dcbdcdced51b1a ibus.1 +1def117ead16ebcbfe223908db979721 ibus-setup.1 +af808609c134cb7b2ffd17eeb189309e ibus-daemon.1