diff --git a/ibus-530711-preload-sys.patch b/ibus-530711-preload-sys.patch index 0c08e2e..8b362cb 100644 --- a/ibus-530711-preload-sys.patch +++ b/ibus-530711-preload-sys.patch @@ -1,4 +1,4 @@ -From 5c7c6c12daee2ae48d5f1264855445ecc4f38b1d Mon Sep 17 00:00:00 2001 +From 95fd937e14ec2d2f1de0f5fa0e186cfdf996c921 Mon Sep 17 00:00:00 2001 From: fujiwarat Date: Wed, 1 May 2013 13:35:01 +0900 Subject: [PATCH] Reload preload engines until users customize the list. @@ -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 fccab62..184de80 100644 +index d0b3db8..52ece27 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 4469963..d6d2228 100644 +index fb012c3..54251e7 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala -@@ -324,6 +324,8 @@ class Panel : IBus.PanelService { +@@ -413,6 +413,8 @@ class Panel : IBus.PanelService { if (m_config != null) { m_config.value_changed.connect(config_value_changed_cb); m_config.watch("general", "preload_engines"); @@ -265,7 +265,7 @@ index 4469963..d6d2228 100644 m_config.watch("general", "embed_preedit_text"); m_config.watch("general", "engines_order"); m_config.watch("general", "switcher_delay_time"); -@@ -397,7 +399,136 @@ class Panel : IBus.PanelService { +@@ -487,7 +489,136 @@ class Panel : IBus.PanelService { init_gkbd(); } @@ -402,7 +402,7 @@ index 4469963..d6d2228 100644 } private void update_xkb_engines() { -@@ -614,6 +745,11 @@ class Panel : IBus.PanelService { +@@ -704,6 +835,11 @@ class Panel : IBus.PanelService { string section, string name, Variant variant) { diff --git a/ibus-541492-xkb.patch b/ibus-541492-xkb.patch index c92a19a..3af76f8 100644 --- a/ibus-541492-xkb.patch +++ b/ibus-541492-xkb.patch @@ -1,6 +1,6 @@ -From f14ffe9913736019f556e507c1521ef2dee96392 Mon Sep 17 00:00:00 2001 +From 69171c9c9446a60da1979c88478055c9df35136f Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Wed, 1 May 2013 14:28:31 +0900 +Date: Wed, 5 Jun 2013 11:48:54 +0900 Subject: [PATCH] Add libgnomekbd and load preload engines. --- @@ -51,7 +51,7 @@ index be45e41..44b3e61 100644 VAPIGEN_VAPIS = ibus-1.0.vapi ibus_1_0_vapi_DEPS = gio-2.0 -@@ -39,15 +37,30 @@ ibus_1_0_vapi_FILES = \ +@@ -39,18 +37,33 @@ ibus_1_0_vapi_FILES = \ $(srcdir)/IBus-1.0-custom.vala \ $(NULL) @@ -71,7 +71,10 @@ index be45e41..44b3e61 100644 -vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps) +vapi_DATA = ibus-1.0.vapi ibus-1.0.deps + MAINTAINERCLEANFILES = $(VAPIGEN_VAPIS) + EXTRA_DIST = \ + $(VAPIGEN_VAPIS) \ + Gkbd-3.0.metadata \ + gkbd.deps \ IBus-1.0.metadata \ @@ -102,7 +105,7 @@ index 0000000..172632c +glib-2.0 +gmodule-2.0 diff --git a/configure.ac b/configure.ac -index 3036792..06b6e0c 100644 +index 781bbf5..f576f46 100644 --- a/configure.ac +++ b/configure.ac @@ -237,6 +237,45 @@ else @@ -151,19 +154,19 @@ index 3036792..06b6e0c 100644 # GObject introspection GOBJECT_INTROSPECTION_CHECK([0.6.8]) -@@ -574,6 +613,7 @@ Build options: - No snooper regexes "$NO_SNOOPER_APPS" +@@ -590,6 +629,7 @@ Build options: Panel icon "$IBUS_ICON_KEYBOARD" Enable surrounding-text $enable_surrounding_text + Enable libnotify $enable_libnotify + Build libgnomebkd $enable_libgnomekbd Run test cases $enable_tests ]) diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in -index 9263adc..fccab62 100644 +index 9cfe83b..d0b3db8 100644 --- a/data/ibus.schemas.in +++ b/data/ibus.schemas.in -@@ -42,6 +42,52 @@ +@@ -56,6 +56,52 @@ @@ -216,7 +219,7 @@ index 9263adc..fccab62 100644 /schemas/desktop/ibus/general/hotkey/trigger /desktop/ibus/general/hotkey/trigger ibus -@@ -66,6 +112,19 @@ +@@ -80,6 +126,19 @@ @@ -320,16 +323,16 @@ index ef811a4..f82a162 100644 #include diff --git a/src/ibusxkbxml.c b/src/ibusxkbxml.c new file mode 100644 -index 0000000..4792664 +index 0000000..f815e5d --- /dev/null +++ b/src/ibusxkbxml.c @@ -0,0 +1,466 @@ +/* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */ +/* vim:set et sts=4: */ +/* bus - The Input Bus -+ * Copyright (C) 2012 Takao Fujiwara -+ * Copyright (C) 2012 Peng Huang -+ * Copyright (C) 2012 Red Hat, Inc. ++ * Copyright (C) 2013 Takao Fujiwara ++ * Copyright (C) 2013 Peng Huang ++ * Copyright (C) 2013 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public @@ -792,16 +795,16 @@ index 0000000..4792664 +#undef TABLE_LOOKUP_STRING_FUNC diff --git a/src/ibusxkbxml.h b/src/ibusxkbxml.h new file mode 100644 -index 0000000..6f5b7bd +index 0000000..5aa486d --- /dev/null +++ b/src/ibusxkbxml.h @@ -0,0 +1,187 @@ +/* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */ +/* vim:set et sts=4: */ +/* bus - The Input Bus -+ * Copyright (C) 2012 Takao Fujiwara -+ * Copyright (C) 2012 Peng Huang -+ * Copyright (C) 2012 Red Hat, Inc. ++ * Copyright (C) 2013 Takao Fujiwara ++ * Copyright (C) 2013 Peng Huang ++ * Copyright (C) 2013 Red Hat, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public @@ -984,7 +987,7 @@ index 0000000..6f5b7bd +G_END_DECLS +#endif diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am -index 43454bc..6b7e70a 100644 +index 2038814..aa79eee 100644 --- a/ui/gtk3/Makefile.am +++ b/ui/gtk3/Makefile.am @@ -45,6 +45,8 @@ USE_SYMBOL_ICON = FALSE @@ -1005,9 +1008,9 @@ index 43454bc..6b7e70a 100644 -Wno-unused-variable \ -Wno-unused-but-set-variable \ -Wno-unused-function \ -@@ -83,12 +87,40 @@ AM_VALAFLAGS = \ - --pkg=xi \ +@@ -98,12 +102,40 @@ AM_VALAFLAGS += \ $(NULL) + endif +if ENABLE_LIBGNOMEKBD +AM_CFLAGS += \ @@ -1046,7 +1049,7 @@ index 43454bc..6b7e70a 100644 handle.vala \ iconwidget.vala \ keybindingmanager.vala \ -@@ -97,6 +129,7 @@ ibus_ui_gtk3_SOURCES = \ +@@ -112,6 +144,7 @@ ibus_ui_gtk3_SOURCES = \ property.vala \ separator.vala \ switcher.vala \ @@ -1054,7 +1057,7 @@ index 43454bc..6b7e70a 100644 $(NULL) ibus_ui_gtk3_LDADD = \ -@@ -105,9 +138,12 @@ ibus_ui_gtk3_LDADD = \ +@@ -120,9 +153,12 @@ ibus_ui_gtk3_LDADD = \ CLEANFILES = \ gtkpanel.xml \ @@ -1069,7 +1072,7 @@ index 43454bc..6b7e70a 100644 diff --git a/ui/gtk3/gkbdlayout.vala.false b/ui/gtk3/gkbdlayout.vala.false new file mode 100644 -index 0000000..a387de9 +index 0000000..506aff2 --- /dev/null +++ b/ui/gtk3/gkbdlayout.vala.false @@ -0,0 +1,63 @@ @@ -1077,9 +1080,9 @@ index 0000000..a387de9 + * + * ibus - The Input Bus + * -+ * Copyright 2012 Red Hat, Inc. -+ * Copyright(c) 2012 Peng Huang -+ * Copyright(c) 2012 Takao Fujiwara ++ * Copyright(c) 2013 Red Hat, Inc. ++ * Copyright(c) 2013 Peng Huang ++ * Copyright(c) 2013 Takao Fujiwara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public @@ -1138,7 +1141,7 @@ index 0000000..a387de9 +} diff --git a/ui/gtk3/gkbdlayout.vala.true b/ui/gtk3/gkbdlayout.vala.true new file mode 100644 -index 0000000..2b78c69 +index 0000000..a6e0f8d --- /dev/null +++ b/ui/gtk3/gkbdlayout.vala.true @@ -0,0 +1,108 @@ @@ -1146,9 +1149,9 @@ index 0000000..2b78c69 + * + * ibus - The Input Bus + * -+ * Copyright 2012 Red Hat, Inc. -+ * Copyright(c) 2012 Peng Huang -+ * Copyright(c) 2012 Takao Fujiwara ++ * Copyright(c) 2013 Red Hat, Inc. ++ * Copyright(c) 2013 Peng Huang ++ * Copyright(c) 2013 Takao Fujiwara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public @@ -1251,7 +1254,7 @@ index 0000000..2b78c69 + */ +} diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala -index 0c793f4..4469963 100644 +index 39aca08..fb012c3 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala @@ -49,6 +49,13 @@ class Panel : IBus.PanelService { @@ -1283,7 +1286,7 @@ index 0c793f4..4469963 100644 } private void keybinding_manager_bind(KeybindingManager keybinding_manager, -@@ -316,6 +331,7 @@ class Panel : IBus.PanelService { +@@ -405,6 +420,7 @@ class Panel : IBus.PanelService { m_config.watch("general/hotkey", "triggers"); m_config.watch("panel", "custom_font"); m_config.watch("panel", "use_custom_font"); @@ -1291,8 +1294,8 @@ index 0c793f4..4469963 100644 // Update m_use_system_keyboard_layout before update_engines() // is called. set_use_system_keyboard_layout(null); -@@ -332,6 +348,204 @@ class Panel : IBus.PanelService { - set_custom_font(); +@@ -422,6 +438,204 @@ class Panel : IBus.PanelService { + } } + private void gkbdlayout_changed_cb() { @@ -1496,18 +1499,18 @@ index 0c793f4..4469963 100644 private void exec_setxkbmap(IBus.EngineDesc engine) { string layout = engine.get_layout(); string variant = engine.get_layout_variant(); -@@ -392,7 +606,7 @@ class Panel : IBus.PanelService { +@@ -482,7 +696,7 @@ class Panel : IBus.PanelService { } // set xkb layout if (!m_use_system_keyboard_layout) { - exec_setxkbmap(engine); -+ set_layout(engine); ++ set_layout(engine); } } diff --git a/ui/gtk3/xkblayout.vala b/ui/gtk3/xkblayout.vala new file mode 100644 -index 0000000..165a905 +index 0000000..b4b54ff --- /dev/null +++ b/ui/gtk3/xkblayout.vala @@ -0,0 +1,431 @@ @@ -1515,9 +1518,9 @@ index 0000000..165a905 + * + * ibus - The Input Bus + * -+ * Copyright 2012 Red Hat, Inc. -+ * Copyright(c) 2012 Peng Huang -+ * Copyright(c) 2012 Takao Fujiwara ++ * Copyright(c) 2013 Red Hat, Inc. ++ * Copyright(c) 2013 Peng Huang ++ * Copyright(c) 2013 Takao Fujiwara + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch index 4a8c673..4ad6b03 100644 --- a/ibus-HEAD.patch +++ b/ibus-HEAD.patch @@ -1,3 +1,80 @@ +From 0b612dfb8ab52a61896b9079acd2d76a360f8666 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Mon, 22 Apr 2013 20:16:31 +0900 +Subject: [PATCH] Fix make dist errors. + +Review URL: https://codereview.appspot.com/8850043 +--- + bindings/pygobject/Makefile.am | 6 +++++- + bindings/vala/Makefile.am | 2 ++ + 2 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/bindings/pygobject/Makefile.am b/bindings/pygobject/Makefile.am +index 3980bc6..6360397 100644 +--- a/bindings/pygobject/Makefile.am ++++ b/bindings/pygobject/Makefile.am +@@ -27,7 +27,11 @@ overrides_PYTHON = \ + gi/overrides/IBus.py \ + $(NULL) + +-TESTS = test-override-ibus.py ++TESTS = ++ ++if ENABLE_TESTS ++TESTS += test-override-ibus.py ++endif + + TESTS_ENVIRONMENT = \ + PYTHONPATH=$(top_srcdir)/tests:$${PYTHONPATH:+:$$PYTHONPATH} \ +diff --git a/bindings/vala/Makefile.am b/bindings/vala/Makefile.am +index aba3454..381ef31 100644 +--- a/bindings/vala/Makefile.am ++++ b/bindings/vala/Makefile.am +@@ -50,4 +50,6 @@ EXTRA_DIST = \ + xi.vapi \ + $(NULL) + ++DIST_SOURCES = $(VAPIGEN_VAPIS) ++ + -include $(top_srcdir)/git.mk +-- +1.8.0 + +From 4e175e3337337f2c261088d4576ea63a144cee3a Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Wed, 24 Apr 2013 13:44:35 +0900 +Subject: [PATCH] Use EXTRA_DIST instead of DIST_SOURCES. + +Review URL: https://codereview.appspot.com/8698047 +--- + bindings/vala/Makefile.am | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/bindings/vala/Makefile.am b/bindings/vala/Makefile.am +index 381ef31..be45e41 100644 +--- a/bindings/vala/Makefile.am ++++ b/bindings/vala/Makefile.am +@@ -42,7 +42,10 @@ ibus_1_0_vapi_FILES = \ + vapidir = $(datadir)/vala/vapi + vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps) + ++MAINTAINERCLEANFILES = $(VAPIGEN_VAPIS) ++ + EXTRA_DIST = \ ++ $(VAPIGEN_VAPIS) \ + IBus-1.0.metadata \ + IBus-1.0-custom.vala \ + ibus-1.0.deps \ +@@ -50,6 +53,4 @@ EXTRA_DIST = \ + xi.vapi \ + $(NULL) + +-DIST_SOURCES = $(VAPIGEN_VAPIS) +- + -include $(top_srcdir)/git.mk +-- +1.8.0 + From 667b7f0b96e5a7e1190e606a9c680bcbda8c2a88 Mon Sep 17 00:00:00 2001 From: fujiwarat Date: Tue, 30 Apr 2013 21:46:02 +0900 @@ -554,14 +631,60 @@ index 0d7a5b2..8090a42 100644 -- 1.8.0 -From 4b7b5202bbe89c097233e4252b157052c6e5e846 Mon Sep 17 00:00:00 2001 +From 927e9f58da9b4a9898403c8e339109e2ad2fa966 Mon Sep 17 00:00:00 2001 +From: Daiki Ueno +Date: Mon, 13 May 2013 11:47:29 +0900 +Subject: [PATCH] Check GtkIMContext:input-purpose to disable IM on lock + screen + +Recent GtkIMContext has "input-purpose" property, which can be used to check if the target widget is a password entry, in a more reliable way. + +BUG=none +R=Shawn.P.Huang@gmail.com + +Review URL: https://codereview.appspot.com/7064059 +--- + client/gtk2/ibusimcontext.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c +index 49598b4..3694dd4 100644 +--- a/client/gtk2/ibusimcontext.c ++++ b/client/gtk2/ibusimcontext.c +@@ -803,6 +803,18 @@ ibus_im_context_focus_in (GtkIMContext *context) + return; + + /* don't set focus on password entry */ ++#if GTK_CHECK_VERSION (3, 6, 0) ++ { ++ GtkInputPurpose purpose; ++ ++ g_object_get (G_OBJECT (context), ++ "input-purpose", &purpose, ++ NULL); ++ ++ if (purpose == GTK_INPUT_PURPOSE_PASSWORD) ++ return; ++ } ++#endif + if (ibusimcontext->client_window != NULL) { + GtkWidget *widget; + +-- +1.8.0 + +From f3d80dc026853c1024cdf6bda31b1496939cb095 Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Wed, 1 May 2013 12:31:57 +0900 +Date: Mon, 13 May 2013 16:36:19 +0900 Subject: [PATCH] Defalut triggers key is changed to space. We have been used space as the default triggers key. GNOME3 and Windows7 applied space as the default trigger key and IBus follows it for the consistent key between desktops. + +BUG=RH#953404 + +Review URL: https://codereview.appspot.com/9081043 --- data/ibus.schemas.in | 2 +- setup/main.py | 2 +- @@ -619,3 +742,583 @@ index 8090a42..0c793f4 100644 -- 1.8.0 +From 3c96d67404da274c34631ad821da736cf55a2b62 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Wed, 15 May 2013 12:03:54 +0900 +Subject: [PATCH] Add man files of /usr/bin files. + +Review URL: https://codereview.appspot.com/9413043 +--- + bus/Makefile.am | 21 ++++++++++++-- + bus/ibus-daemon.1.in | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++ + setup/Makefile.am | 18 ++++++++++-- + setup/ibus-setup.1.in | 33 ++++++++++++++++++++++ + tools/Makefile.am | 21 ++++++++++++-- + tools/ibus.1.in | 58 ++++++++++++++++++++++++++++++++++++++ + 6 files changed, 222 insertions(+), 6 deletions(-) + create mode 100644 bus/ibus-daemon.1.in + create mode 100644 setup/ibus-setup.1.in + create mode 100644 tools/ibus.1.in + +diff --git a/bus/Makefile.am b/bus/Makefile.am +index 7024b8f..f06b70c 100644 +--- a/bus/Makefile.am ++++ b/bus/Makefile.am +@@ -2,8 +2,8 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2007-2010 Peng Huang +-# Copyright (c) 2007-2010 Red Hat, Inc. ++# Copyright (c) 2007-2013 Peng Huang ++# Copyright (c) 2007-2013 Red Hat, Inc. + # + # This library is free software; you can redistribute it and/or + # modify it under the terms of the GNU Lesser General Public +@@ -162,6 +162,7 @@ test_stress_LDADD = \ + + EXTRA_DIST = \ + $(desktop_in_files) \ ++ $(man_one_in_files) \ + marshalers.list \ + $(NULL) + +@@ -169,6 +170,11 @@ DISTCLEANFILES = \ + $(desktop_DATA) \ + $(NULL) + ++CLEANFILES = \ ++ $(man_one_DATA) \ ++ $(man_one_files) \ ++ $(NULL) ++ + $(libibus): + $(MAKE) -C $(top_builddir)/src + +@@ -182,4 +188,15 @@ desktop_in_files = ibus.desktop.in + desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) + @INTLTOOL_DESKTOP_RULE@ + ++man_one_in_files = ibus-daemon.1.in ++man_one_files = $(man_one_in_files:.1.in=.1) ++man_one_DATA =$(man_one_files:.1=.1.gz) ++man_onedir = $(datadir)/man/man1 ++%.1: %.1.in ++ $(AM_V_GEN) sed \ ++ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ ++ mv $@.tmp $@ ++%.1.gz: %.1 ++ $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ ++ + -include $(top_srcdir)/git.mk +diff --git a/bus/ibus-daemon.1.in b/bus/ibus-daemon.1.in +new file mode 100644 +index 0000000..74e7431 +--- /dev/null ++++ b/bus/ibus-daemon.1.in +@@ -0,0 +1,77 @@ ++.\" This file is distributed under the same license as the ibus ++.\" package. ++.\" Copyright (C) Takao Fujiwara , 2013. ++.\" Copyright (c) Peng Huang , 2013. ++.\" ++.TH IBUS-DAEMON "1" "April 2010" "@VERSION@" "User Commands" ++.SH NAME ++.B ibus\-daemon ++\- daemon program for ibus ++ ++.SH SYNOPSIS ++.B ibus\-daemon ++[\fIOPTION\fR]... ++ ++.SH DESCRIPTION ++ ++.PP ++IBus is an Intelligent Input Bus. It is a new input framework for Linux ++OS. It provides full featured and user friendly input method user ++interface. It also may help developers to develop input method easily. ++ ++.PP ++.B ibus\-daemon ++is a daemon program for ibus and it is also a start up program for users ++to activate ibus daemon, engines and panel. ++ ++.SS "Help Options:" ++.TP ++\fB\-h\fR, \fB\-\-help\fR ++Show help options ++ ++.SS "Application Options:" ++.TP ++\fB\-d\fR, \fB\-\-daemonize\fR ++run ibus as background process. ++.TP ++\fB\-s\fR, \fB\-\-single\fR ++do not execute panel and config module. ++.TP ++\fB\-x\fR, \fB\-\-xim\fR ++execute ibus XIM server. ++.TP ++\fB\-n\fR, \fB\-\-desktop\fR=\fIname\fR ++specify the name of desktop session. [default=gnome] ++.TP ++\fB\-p\fR, \fB\-\-panel\fR=\fIcmdline\fR ++specify the cmdline of panel program. ++.TP ++\fB\-c\fR, \fB\-\-config\fR=\fIcmdline\fR ++specify the cmdline of config program. ++.TP ++\fB\-a\fR, \fB\-\-address\fR=\fIaddress\fR ++specify the address of ibus daemon. ++.TP ++\fB\-r\fR, \fB\-\-replace\fR ++if there is an old ibus\-daemon is running, it will be replaced. ++.TP ++\fB\-t\fR, \fB\-\-re\-scan\fR ++force to re\-scan components, and re\-create registry cache. ++.TP ++\fB\-o\fR, \fB\-\-timeout\fR=\fItimeout\fR [default is 2000] ++dbus reply timeout in milliseconds. ++.TP ++\fB\-j\fR, \fB\-\-monitor\-timeout\fR=\fItimeout\fR [default is 0] ++timeout of poll changes of engines in seconds. 0 to disable it. ++.TP ++\fB\-m\fR, \fB\-\-mem\-profile\fR ++enable memory profile, send SIGUSR2 to print out the memory profile. ++.TP ++\fB\-v\fR, \fB\-\-verbose\fR ++verbose. ++ ++.SH BUGS ++If you find a bug, please report it at http://code.google.com/p/ibus/issues/list ++ ++.SH "SEE ALSO" ++.BR ibus (1) +diff --git a/setup/Makefile.am b/setup/Makefile.am +index 9618d7f..5274f19 100644 +--- a/setup/Makefile.am ++++ b/setup/Makefile.am +@@ -2,8 +2,8 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2007-2010 Peng Huang +-# Copyright (c) 2007-2010 Red Hat, Inc. ++# Copyright (c) 2007-2013 Peng Huang ++# Copyright (c) 2007-2013 Red Hat, Inc. + # + # This library is free software; you can redistribute it and/or + # modify it under the terms of the GNU Lesser General Public +@@ -42,12 +42,26 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) + desktopdir = $(datadir)/applications + @INTLTOOL_DESKTOP_RULE@ + ++man_one_in_files = ibus-setup.1.in ++man_one_files = $(man_one_in_files:.1.in=.1) ++man_one_DATA =$(man_one_files:.1=.1.gz) ++man_onedir = $(datadir)/man/man1 ++%.1: %.1.in ++ $(AM_V_GEN) sed \ ++ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ ++ mv $@.tmp $@ ++%.1.gz: %.1 ++ $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ ++ + CLEANFILES = \ ++ $(man_one_DATA) \ ++ $(man_one_files) \ + *.pyc \ + ibus-setup \ + $(NULL) + + EXTRA_DIST = \ ++ $(man_one_in_files) \ + ibus-setup.in \ + setup.ui \ + ibus-setup.desktop.in \ +diff --git a/setup/ibus-setup.1.in b/setup/ibus-setup.1.in +new file mode 100644 +index 0000000..3daafe4 +--- /dev/null ++++ b/setup/ibus-setup.1.in +@@ -0,0 +1,33 @@ ++.\" This file is distributed under the same license as the ibus ++.\" package. ++.\" Copyright (C) LI Daobing , 2008. ++.\" Copyright (C) Takao Fujiwara , 2013. ++.\" Copyright (c) Peng Huang , 2013. ++.\" ++.TH "IBUS-SETUP" 1 "November 2008" "@VERSION@" "User Commands" ++.SH NAME ++.B ibus-setup ++\- configuration program for ibus ++ ++.SH "SYNOPSIS" ++.B ibus-setup ++ ++.SH "DESCRIPTION" ++ ++.PP ++IBus is an Intelligent Input Bus. It is a new input framework for Linux ++OS. It provides full featured and user friendly input method user ++interface. It also may help developers to develop input method easily. ++ ++.PP ++.B ibus-setup ++is the configuration program for IBus. ++ ++.PP ++Homepage: http://code.google.com/p/ibus/ ++ ++.SH BUGS ++If you find a bug, please report it at http://code.google.com/p/ibus/issues/list ++ ++.SH "SEE ALSO" ++.BR ibus (1) +diff --git a/tools/Makefile.am b/tools/Makefile.am +index 5aa1099..65d1877 100644 +--- a/tools/Makefile.am ++++ b/tools/Makefile.am +@@ -2,8 +2,8 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2007-2010 Peng Huang +-# Copyright (c) 2007-2010 Red Hat, Inc. ++# Copyright (c) 2007-2013 Peng Huang ++# Copyright (c) 2007-2013 Red Hat, Inc. + # + # This library is free software; you can redistribute it and/or + # modify it under the terms of the GNU Lesser General Public +@@ -75,8 +75,25 @@ bash_completion_DATA= \ + $(NULL) + bash_completiondir=@datadir@/bash-completion/completions + ++man_one_in_files = ibus.1.in ++man_one_files = $(man_one_in_files:.1.in=.1) ++man_one_DATA =$(man_one_files:.1=.1.gz) ++man_onedir = $(datadir)/man/man1 ++%.1: %.1.in ++ $(AM_V_GEN) sed \ ++ -e 's|@VERSION[@]|$(VERSION)|g' $< > $@.tmp && \ ++ mv $@.tmp $@ ++%.1.gz: %.1 ++ $(AM_V_GEN) gzip -c $< > $@.tmp && mv $@.tmp $@ ++ + EXTRA_DIST = \ ++ $(man_one_in_files) \ + ibus.bash \ + $(NULL) + ++CLEANFILES = \ ++ $(man_one_DATA) \ ++ $(man_one_files) \ ++ $(NULL) ++ + -include $(top_srcdir)/git.mk +diff --git a/tools/ibus.1.in b/tools/ibus.1.in +new file mode 100644 +index 0000000..05bf63d +--- /dev/null ++++ b/tools/ibus.1.in +@@ -0,0 +1,58 @@ ++.\" This file is distributed under the same license as the ibus ++.\" package. ++.\" Copyright (C) Takao Fujiwara , 2013. ++.\" Copyright (c) Peng Huang , 2013. ++.\" ++.TH "IBUS" 1 "May 2013" "@VERSION@" "User Commands" ++.SH NAME ++.B ibus ++\- command line utility for ibus ++ ++.SH "SYNOPSIS" ++.B ibus ++\fICOMMAND\fR [\fIOPTION\fR]... ++ ++.SH "DESCRIPTION" ++ ++.PP ++IBus is an Intelligent Input Bus. It is a new input framework for Linux ++OS. It provides full featured and user friendly input method user ++interface. It also may help developers to develop input method easily. ++ ++.PP ++.B ibus ++is a command line utility which can restart or exit ibus-daemon, ++get or set the current ibus engine or list the ibus engines. ++ ++.PP ++Homepage: http://code.google.com/p/ibus/ ++ ++.SH "COMMAND" ++.TP ++\fBhelp\fR ++Show the commands list. ++.TP ++\fBengine\fR [\fBENGINE_NAME\fR] ++Show the curent ibus engine when ++.B ENGINE_NAME ++is not given. Set ++.B ENGINE_NAME ++to the current ibus engine. ++.TP ++\fBexit\fR ++Exit ibus-daemon. ++.TP ++\fBlist-engine\fR ++Show ibus engines list. ++.TP ++\fBrestart\fR ++Restart ibus-daemon. ++.TP ++\fBversion\fR ++Show the ibus version. ++.TP ++\fBwatch\fR ++Under construction. ++ ++.SH BUGS ++If you find a bug, please report it at http://code.google.com/p/ibus/issues/list. +-- +1.8.0 + +From 62f07b7a6904b8b03a59f3baf413becb2d5d9e14 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Fri, 17 May 2013 12:12:54 +0900 +Subject: [PATCH] Let users know the default hotkey is Super+space with + libnotify. + +Review URL: https://codereview.appspot.com/9407043 +--- + configure.ac | 20 +++++++++-- + data/ibus.schemas.in | 14 ++++++++ + ui/gtk3/Makefile.am | 19 +++++++++-- + ui/gtk3/panel.vala | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++-- + 4 files changed, 141 insertions(+), 6 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 3036792..781bbf5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2,8 +2,8 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2007-2010 Peng Huang +-# Copyright (c) 2007-2010 Red Hat, Inc. ++# Copyright (c) 2007-2013 Peng Huang ++# Copyright (c) 2007-2013 Red Hat, Inc. + # + # This library is free software; you can redistribute it and/or + # modify it under the terms of the GNU Lesser General Public +@@ -498,6 +498,21 @@ if test x"$enable_engine" = x"yes"; then + enable_engine="yes (enabled, use --disable-engine to disable)" + fi + ++# --disable-libnotify ++AC_ARG_ENABLE(libnotify, ++ AS_HELP_STRING([--disable-libnotify], ++ [Disable to link libnotify]), ++ [enable_libnotify=$enableval], ++ [enable_libnotify=yes] ++) ++AM_CONDITIONAL([ENABLE_LIBNOTIFY], [test x"$enable_libnotify" = x"yes"]) ++if test x"$enable_libnotify" = x"yes"; then ++ PKG_CHECK_MODULES(LIBNOTIFY, [ ++ libnotify >= 0.7 ++ ]) ++ enable_libnotify="yes (enabled, use --disable-libnotify to disable)" ++fi ++ + # Check iso-codes. + PKG_CHECK_MODULES(ISOCODES, [ + iso-codes +@@ -574,6 +589,7 @@ Build options: + No snooper regexes "$NO_SNOOPER_APPS" + Panel icon "$IBUS_ICON_KEYBOARD" + Enable surrounding-text $enable_surrounding_text ++ Enable libnotify $enable_libnotify + Run test cases $enable_tests + ]) + +diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in +index 9263adc..9cfe83b 100644 +--- a/data/ibus.schemas.in ++++ b/data/ibus.schemas.in +@@ -42,6 +42,20 @@ + + + ++ /schemas/desktop/ibus/general/version ++ /desktop/ibus/general/version ++ ibus ++ string ++ ++ ++ Saved version number ++ The saved version number will be used to check the ++ difference between the version of the previous installed ++ ibus and one of the current ibus. ++ ++ ++ ++ + /schemas/desktop/ibus/general/hotkey/trigger + /desktop/ibus/general/hotkey/trigger + ibus +diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am +index 43454bc..2038814 100644 +--- a/ui/gtk3/Makefile.am ++++ b/ui/gtk3/Makefile.am +@@ -2,8 +2,8 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2007-2010 Peng Huang +-# Copyright (c) 2007-2010 Red Hat, Inc. ++# Copyright (c) 2007-2013 Peng Huang ++# Copyright (c) 2007-2013 Red Hat, Inc. + # + # This library is free software; you can redistribute it and/or + # modify it under the terms of the GNU Lesser General Public +@@ -83,6 +83,21 @@ AM_VALAFLAGS = \ + --pkg=xi \ + $(NULL) + ++if ENABLE_LIBNOTIFY ++AM_CFLAGS += \ ++ @LIBNOTIFY_CFLAGS@ \ ++ $(NULL) ++ ++AM_LDADD += \ ++ @LIBNOTIFY_LIBS@ \ ++ $(NULL) ++ ++AM_VALAFLAGS += \ ++ --pkg=libnotify \ ++ -D ENABLE_LIBNOTIFY \ ++ $(NULL) ++endif ++ + libexec_PROGRAMS = ibus-ui-gtk3 + + ibus_ui_gtk3_SOURCES = \ +diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala +index 0c793f4..39aca08 100644 +--- a/ui/gtk3/panel.vala ++++ b/ui/gtk3/panel.vala +@@ -298,6 +298,95 @@ class Panel : IBus.PanelService { + var_embed_preedit); + } + ++ private int compare_versions(string version1, string version2) { ++ string[] version1_list = version1.split("."); ++ string[] version2_list = version2.split("."); ++ int major1, minor1, micro1, major2, minor2, micro2; ++ ++ if (version1 == version2) { ++ return 0; ++ } ++ ++ // The initial dconf value of "version" is "". ++ if (version1 == "") { ++ return -1; ++ } ++ if (version2 == "") { ++ return 1; ++ } ++ ++ assert(version1_list.length >= 3); ++ assert(version2_list.length >= 3); ++ ++ major1 = int.parse(version1_list[0]); ++ minor1 = int.parse(version1_list[1]); ++ micro1 = int.parse(version1_list[2]); ++ ++ major2 = int.parse(version2_list[0]); ++ minor2 = int.parse(version2_list[1]); ++ micro2 = int.parse(version2_list[2]); ++ ++ if (major1 == minor1 && minor1 == minor2 && micro1 == micro2) { ++ return 0; ++ } ++ if ((major1 > major2) || ++ (major1 == major2 && minor1 > minor2) || ++ (major1 == major2 && minor1 == minor2 && ++ micro1 > micro2)) { ++ return 1; ++ } ++ return -1; ++ } ++ ++ private void update_version_1_5_3() { ++#if ENABLE_LIBNOTIFY ++ if (!Notify.is_initted()) { ++ Notify.init ("ibus"); ++ } ++ ++ var notification = new Notify.Notification( ++ _("IBus Update"), ++ _("Super+space is now the default hotkey."), ++ "ibus"); ++ notification.set_timeout(30 * 1000); ++ notification.set_category("hotkey"); ++ ++ try { ++ notification.show(); ++ } catch (GLib.Error e){ ++ warning ("Notification is failed for IBus 1.5.3: %s", e.message); ++ } ++#else ++ warning(_("Super+space is now the default hotkey.")); ++#endif ++ } ++ ++ private void set_version() { ++ Variant var_prev_version = m_config.get_value("general", "version"); ++ Variant var_current_version = null; ++ string prev_version = "".dup(); ++ string current_version = null; ++ ++ if (var_prev_version != null) { ++ prev_version = var_prev_version.dup_string(); ++ } ++ ++ if (compare_versions(prev_version, "1.5.3") < 0) { ++ update_version_1_5_3(); ++ } ++ ++ current_version = "%d.%d.%d".printf(IBus.MAJOR_VERSION, ++ IBus.MINOR_VERSION, ++ IBus.MICRO_VERSION); ++ ++ if (prev_version == current_version) { ++ return; ++ } ++ ++ var_current_version = new Variant.string(current_version); ++ m_config.set_value("general", "version", var_current_version); ++ } ++ + public void set_config(IBus.Config config) { + if (m_config != null) { + m_config.value_changed.disconnect(config_value_changed_cb); +@@ -325,11 +414,12 @@ class Panel : IBus.PanelService { + bind_switch_shortcut(null); + set_switcher_delay_time(null); + set_embed_preedit_text(null); ++ set_custom_font(); ++ ++ set_version(); + } else { + update_engines(null, null); + } +- +- set_custom_font(); + } + + private void exec_setxkbmap(IBus.EngineDesc engine) { +-- +1.8.0 + diff --git a/ibus-xx-1.5.2.patch b/ibus-xx-1.5.2.patch new file mode 100644 index 0000000..d387d99 --- /dev/null +++ b/ibus-xx-1.5.2.patch @@ -0,0 +1,13 @@ +diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala +index 54251e7..69d0723 100644 +--- a/ui/gtk3/panel.vala ++++ b/ui/gtk3/panel.vala +@@ -386,7 +386,7 @@ class Panel : IBus.PanelService { + prev_version = var_prev_version.dup_string(); + } + +- if (compare_versions(prev_version, "1.5.3") < 0) { ++ if (compare_versions(prev_version, "1.5.2") < 0) { + update_version_1_5_3(); + } + diff --git a/ibus-xx-ctrl-space.patch b/ibus-xx-ctrl-space.patch new file mode 100644 index 0000000..00da9b5 --- /dev/null +++ b/ibus-xx-ctrl-space.patch @@ -0,0 +1,33 @@ +diff --git a/data/ibus.schemas.in b/data/ibus.schemas.in +index 007fc66..6c75562 100644 +--- a/data/ibus.schemas.in ++++ b/data/ibus.schemas.in +@@ -143,7 +143,7 @@ se,si,sk,sy,sy(ku),th,tj,tr,ua,uz,vn + ibus + list + string +- [<Super>space] ++ [<Control>space] + + Trigger shortcut keys for gtk_accelerator_parse + The shortcut keys for turning input method on or off +diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala +index 54251e7..867dbd2 100644 +--- a/ui/gtk3/panel.vala ++++ b/ui/gtk3/panel.vala +@@ -354,6 +354,7 @@ class Panel : IBus.PanelService { + } + + private void update_version_1_5_3() { ++#if 0 + #if ENABLE_LIBNOTIFY + if (!Notify.is_initted()) { + Notify.init ("ibus"); +@@ -374,6 +375,7 @@ class Panel : IBus.PanelService { + #else + warning(_("Super+space is now the default hotkey.")); + #endif ++#endif + } + + private void set_version() { diff --git a/ibus-xx-setup-frequent-lang.patch b/ibus-xx-setup-frequent-lang.patch index 50eef74..d08b57c 100644 --- a/ibus-xx-setup-frequent-lang.patch +++ b/ibus-xx-setup-frequent-lang.patch @@ -1,4 +1,4 @@ -From 985443696823678f86d2340e2404f7d120fe5688 Mon Sep 17 00:00:00 2001 +From 056dfbe663a0dd8158f05baae764e2debd73c1e5 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,10 +11,10 @@ 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 184de80..c02ecde 100644 +index 52ece27..007fc66 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 +@@ -339,6 +339,174 @@ se,si,sk,sy,sy(ku),th,tj,tr,ua,uz,vn diff --git a/ibus.spec b/ibus.spec index ea23a04..750c779 100644 --- a/ibus.spec +++ b/ibus.spec @@ -41,7 +41,7 @@ Name: ibus Version: 1.5.2 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Intelligent Input Bus for Linux OS License: LGPLv2+ Group: System Environment/Libraries @@ -52,9 +52,6 @@ Source1: %{name}-xinput # ibus-gjs Source2: http://fujiwara.fedorapeople.org/ibus/gnome-shell/%{name}-gjs-%{ibus_gjs_version}.tar.gz %endif -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 # Upstreamed patches. Patch0: %{name}-HEAD.patch # https://bugzilla.redhat.com/show_bug.cgi?id=810211 @@ -75,6 +72,12 @@ Patch92: %{name}-xx-g-s-disable-preedit.patch # The patch enables to build on fedora 17. Patch93: %{name}-xx-f17.patch %endif +# The patch is applied until ibus 1.5.3 is released. +Patch94: %{name}-xx-1.5.2.patch +%if (0%{?fedora} < 19 && 0%{?rhel} < 7) +# Keep the default triggers for the back compatiblity. +Patch95: %{name}-xx-ctrl-space.patch +%endif BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -97,6 +100,7 @@ BuildRequires: vala-tools BuildRequires: GConf2-devel BuildRequires: intltool BuildRequires: iso-codes-devel +BuildRequires: libnotify-devel %if %with_gkbd BuildRequires: libgnomekbd-devel %endif @@ -285,10 +289,14 @@ rm -f data/dconf/00-upstream-settings %if (0%{?fedora} < 18 && 0%{?rhel} < 7) %patch93 -p1 -b .f17 %endif +%patch94 -p1 -b .152 +%if (0%{?fedora} < 19 && 0%{?rhel} < 7) +%patch95 -p1 -b .ctrl +%endif %build %if %with_preload_xkb_engine -autoreconf -f -i +autoreconf -f -i -v %endif %configure \ --disable-static \ @@ -366,14 +374,6 @@ 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` @@ -518,6 +518,11 @@ fi %{_datadir}/gtk-doc/html/* %changelog +* Wed Jun 05 2013 Takao Fujiwara - 1.5.2-4 +- Updated ibus-HEAD.patch for upstream. +- Added ibus-xx-1.5.2.patch until 1.5.3 will be released. +- Added ibus-xx-ctrl-space.patch for back compatible triggers. + * Wed May 01 2013 Takao Fujiwara - 1.5.2-3 - Updated ibus-HEAD.patch for upstream. - Deleted ibus-947318-reconnect-gtk-client.patch diff --git a/sources b/sources index 33b607c..8473189 100644 --- a/sources +++ b/sources @@ -1,6 +1,3 @@ 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