From fac47562a7e14219ba141d870548b9eb358b32ab Mon Sep 17 00:00:00 2001 From: Takao Fujiwara Date: Fri, 14 Sep 2012 20:24:18 +0900 Subject: [PATCH] Bumped to 1.4.99.20120914 --- .gitignore | 1 + ibus-530711-preload-sys.patch | 26 ++-- ibus-541492-xkb.patch | 232 +++++++++++++++++++----------- ibus-xx-no-use.diff | 12 +- ibus-xx-setup-frequent-lang.patch | 8 +- ibus.spec | 7 +- sources | 2 +- 7 files changed, 177 insertions(+), 111 deletions(-) diff --git a/.gitignore b/.gitignore index ff05faf..6ec67c1 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ ibus-1.3.6.tar.gz /ibus-1.4.99.20120428.tar.gz /ibus-1.4.99.20120712.tar.gz /ibus-1.4.99.20120822.tar.gz +/ibus-1.4.99.20120914.tar.gz /ibus-gjs-3.0.2.20110823.tar.gz /ibus-gjs-3.1.4.20110823.tar.gz /ibus-gjs-3.0.2.20110908.tar.gz diff --git a/ibus-530711-preload-sys.patch b/ibus-530711-preload-sys.patch index 3b8e98d..6dd854f 100644 --- a/ibus-530711-preload-sys.patch +++ b/ibus-530711-preload-sys.patch @@ -1,6 +1,6 @@ -From 87a84380b6e8da9f61671d96eca20bc700579ca6 Mon Sep 17 00:00:00 2001 +From d3ae9bc16830c4cca27eba953e4576ded588e1f3 Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Thu, 6 Sep 2012 12:48:44 +0900 +Date: Fri, 14 Sep 2012 18:49:59 +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, @@ -60,10 +60,10 @@ index 07169ae..4086f67 100644 /desktop/ibus/general/preload_engines ibus diff --git a/setup/main.py b/setup/main.py -index 9bc16f0..d62bdf2 100644 +index 141cdc2..0b6ce9c 100644 --- a/setup/main.py +++ b/setup/main.py -@@ -181,6 +181,20 @@ class Setup(object): +@@ -189,6 +189,20 @@ class Setup(object): self.__checkbutton_use_global_engine.connect("toggled", self.__checkbutton_use_global_engine_toggled_cb) @@ -84,7 +84,7 @@ index 9bc16f0..d62bdf2 100644 # init engine page self.__engines = self.__bus.list_engines() value = self.__config.get_value("general", "load_xkb_layouts") -@@ -242,6 +256,7 @@ class Setup(object): +@@ -250,6 +264,7 @@ class Setup(object): self.__checkbutton_auto_start_toggled_cb) self.__config = self.__bus.get_config() @@ -92,7 +92,7 @@ index 9bc16f0..d62bdf2 100644 self.__init_hotkey() self.__init_panel() -@@ -250,8 +265,8 @@ class Setup(object): +@@ -264,8 +279,8 @@ class Setup(object): def __combobox_notify_active_engine_cb(self, combobox, property): engine = self.__combobox.get_active_engine() button = self.__builder.get_object("button_engine_add") @@ -103,7 +103,7 @@ index 9bc16f0..d62bdf2 100644 def __get_engine_setup_exec_args(self, engine): args = [] -@@ -330,6 +345,34 @@ class Setup(object): +@@ -344,6 +359,34 @@ class Setup(object): del self.__engine_setup_exec_list[name] self.__engine_setup_exec_list[name] = os.spawnl(os.P_NOWAIT, *args) @@ -138,7 +138,7 @@ index 9bc16f0..d62bdf2 100644 def __init_bus(self): self.__bus = IBus.Bus() if self.__bus.is_connected(): -@@ -540,8 +583,18 @@ class Setup(object): +@@ -554,8 +597,18 @@ class Setup(object): value = GLib.Variant.new_boolean(value) self.__config.set_value("general", "use_global_engine", value) @@ -148,7 +148,7 @@ index 9bc16f0..d62bdf2 100644 + if section == 'general' and name == 'preload_engines': + value = [] + if variant != None: -+ value = variant.dup_strv() ++ value = self.__variant_dup_strv(variant) + engines = self.__get_engine_descs_from_names(value) + current_engines = self.__treeview.get_engines() + engines_csv = str.join(',', map(lambda e: e.get_name(), engines)) @@ -228,10 +228,10 @@ index 737b3e2..8ce5a16 100644 * @x: x coordinate. * @y: y coordinate. diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala -index 8cb5e8c..d7b925b 100644 +index 8e6f756..01cc7aa 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala -@@ -299,6 +299,8 @@ class Panel : IBus.PanelService { +@@ -291,6 +291,8 @@ class Panel : IBus.PanelService { if (m_config != null) { m_config.value_changed.connect(config_value_changed_cb); m_config.watch("general", "preload_engines"); @@ -240,7 +240,7 @@ index 8cb5e8c..d7b925b 100644 m_config.watch("general", "engines_order"); m_config.watch("general/hotkey", "trigger_accel"); m_config.watch("general/hotkey", "trigger_accel_backward"); -@@ -360,7 +362,136 @@ class Panel : IBus.PanelService { +@@ -352,7 +354,136 @@ class Panel : IBus.PanelService { init_gkbd(); } @@ -377,7 +377,7 @@ index 8cb5e8c..d7b925b 100644 } private void update_xkb_engines() { -@@ -521,6 +652,11 @@ class Panel : IBus.PanelService { +@@ -513,6 +644,11 @@ class Panel : IBus.PanelService { string section, string name, Variant variant) { diff --git a/ibus-541492-xkb.patch b/ibus-541492-xkb.patch index 268afdf..998c3bc 100644 --- a/ibus-541492-xkb.patch +++ b/ibus-541492-xkb.patch @@ -1,9 +1,12 @@ -From 127b639fe84cafcb65247654757fd6fde10c8e44 Mon Sep 17 00:00:00 2001 +From 39f4aa0d61f12ea1b46588fe23da639b293d76b0 Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Thu, 6 Sep 2012 12:47:09 +0900 +Date: Fri, 14 Sep 2012 18:48:56 +0900 Subject: [PATCH] Add ibus-xkb and libgnomekbd. --- + bindings/vala/Gkbd-3.0.metadata | 1 + + bindings/vala/Makefile.am | 20 ++ + bindings/vala/Xkl-1.0.metadata | 3 + client/x11/gdk-private.c | 3 +- configure.ac | 60 +++++ data/ibus.schemas.in | 94 +++++++ @@ -16,33 +19,96 @@ Subject: [PATCH] Add ibus-xkb and libgnomekbd. engine/simple.xml.in.in | 531 +-------------------------------------- ibus-1.0.pc.in | 4 + ibus.spec.in | 12 + - setup/main.py | 25 +- + setup/main.py | 39 ++- src/Makefile.am | 5 + src/ibus.h | 1 + src/ibusxkbxml.c | 466 ++++++++++++++++++++++++++++++++++ src/ibusxkbxml.h | 187 ++++++++++++++ - ui/gtk3/Gkbd-3.0.metadata | 1 + - ui/gtk3/Makefile.am | 48 ++++ - ui/gtk3/Xkl-1.0.metadata | 3 + + ui/gtk3/Makefile.am | 39 +++ ui/gtk3/gkbdlayout.vala.false | 63 +++++ - ui/gtk3/gkbdlayout.vala.true | 111 ++++++++ + ui/gtk3/gkbdlayout.vala.true | 108 ++++++++ ui/gtk3/keybindingmanager.vala | 14 +- ui/gtk3/panel.vala | 365 +++++++++++++++++++++++---- ui/gtk3/switcher.vala | 49 ++-- - ui/gtk3/xkblayout.vala | 466 ++++++++++++++++++++++++++++++++++ - 26 files changed, 2540 insertions(+), 603 deletions(-) + ui/gtk3/xkblayout.vala | 464 ++++++++++++++++++++++++++++++++++ + 27 files changed, 2560 insertions(+), 603 deletions(-) + create mode 100644 bindings/vala/Gkbd-3.0.metadata + create mode 100644 bindings/vala/Xkl-1.0.metadata create mode 100644 engine/ibus-xkb/Makefile.am create mode 100644 engine/ibus-xkb/ibus-xkb-main.c create mode 100644 engine/ibus-xkb/xkblib.c create mode 100644 engine/ibus-xkb/xkblib.h create mode 100644 src/ibusxkbxml.c create mode 100644 src/ibusxkbxml.h - create mode 100644 ui/gtk3/Gkbd-3.0.metadata - create mode 100644 ui/gtk3/Xkl-1.0.metadata create mode 100644 ui/gtk3/gkbdlayout.vala.false create mode 100644 ui/gtk3/gkbdlayout.vala.true create mode 100644 ui/gtk3/xkblayout.vala +diff --git a/bindings/vala/Gkbd-3.0.metadata b/bindings/vala/Gkbd-3.0.metadata +new file mode 100644 +index 0000000..661e6fd +--- /dev/null ++++ b/bindings/vala/Gkbd-3.0.metadata +@@ -0,0 +1 @@ ++Configuration cheader_filename="libgnomekbd/gkbd-configuration.h" +diff --git a/bindings/vala/Makefile.am b/bindings/vala/Makefile.am +index abcc543..ed132e0 100644 +--- a/bindings/vala/Makefile.am ++++ b/bindings/vala/Makefile.am +@@ -27,12 +27,22 @@ dist_vapi_DATA = \ + $(NULL) + + # Don't rebuild vapi every time gir is updated. ++if ENABLE_LIBGNOMEKBD + vapi_deps = \ + $(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 + + ibus-@IBUS_API_VERSION@.vapi: $(vapi_deps) + $(AM_V_GEN) $(VAPIGEN) --library ibus-@IBUS_API_VERSION@ \ +@@ -41,11 +51,21 @@ ibus-@IBUS_API_VERSION@.vapi: $(vapi_deps) + $(top_srcdir)/src/IBus-@IBUS_API_VERSION@.gir \ + $(srcdir)/IBus-1.0-custom.vala + ++if ENABLE_LIBGNOMEKBD ++$(builddir)/gkbd.vapi: ++ $(VAPIGEN) --metadatadir . --library gkbd \ ++ --pkg gtk+-3.0 --pkg glib-2.0 --pkg gmodule-2.0 \ ++ /usr/share/gir-1.0/Gkbd-3.0.gir ++ $(NULL) ++endif ++ + EXTRA_DIST = \ ++ Gkbd-3.0.metadata \ + IBus-1.0.metadata \ + IBus-1.0-custom.vala \ + config.vapi \ + xi.vapi \ ++ Xkl-1.0.metadata \ + $(NULL) + + MAINTAINERCLEANFILES = ibus-@IBUS_API_VERSION@.vapi +diff --git a/bindings/vala/Xkl-1.0.metadata b/bindings/vala/Xkl-1.0.metadata +new file mode 100644 +index 0000000..4961d0c +--- /dev/null ++++ b/bindings/vala/Xkl-1.0.metadata +@@ -0,0 +1,3 @@ ++Xkl cheader_filename="libxklavier/xklavier.h" ++Engine ++ .filter_events.evt ref type="X.Event" diff --git a/client/x11/gdk-private.c b/client/x11/gdk-private.c index 009a5b0..20689c3 100644 --- a/client/x11/gdk-private.c @@ -1544,17 +1610,32 @@ index 58cac38..4b6f869 100644 # make -C po update-gmo diff --git a/setup/main.py b/setup/main.py -index 300f11b..9bc16f0 100644 +index 300f11b..141cdc2 100644 --- a/setup/main.py +++ b/setup/main.py -@@ -183,14 +183,22 @@ class Setup(object): +@@ -71,6 +71,14 @@ class Setup(object): + self.__builder.set_translation_domain(DOMAINNAME) + self.__builder.add_from_file(gtk_builder_file); + self.__bus = None ++ ++ # In the latest pygobject3 3.3.4 or later, g_variant_dup_strv ++ # returns the allocated strv but in the previous release, ++ # it returned the tuple of (strv, length) ++ self.__tuple_for_variant_strv = False ++ if type(GLib.Variant.new_strv([]).dup_strv()) == tuple: ++ self.__tuple_for_variant_strv = True ++ + self.__init_bus() + self.__init_ui() + +@@ -183,14 +191,22 @@ class Setup(object): # init engine page self.__engines = self.__bus.list_engines() + value = self.__config.get_value("general", "load_xkb_layouts") + load_layouts = [] + if value != None: -+ load_layouts = value.dup_strv() ++ load_layouts = self.__variant_dup_strv(value) + engines = [] + for engine in self.__engines: + if not engine.get_name().startswith('xkb:'): @@ -1575,7 +1656,20 @@ index 300f11b..9bc16f0 100644 self.__treeview = self.__builder.get_object("treeview_engines") self.__treeview.set_engines(engines) -@@ -263,6 +271,13 @@ class Setup(object): +@@ -239,6 +255,12 @@ class Setup(object): + self.__init_panel() + self.__init_general() + ++ def __variant_dup_strv(self, variant): ++ if self.__tuple_for_variant_strv: ++ return variant.dup_strv()[0] ++ else: ++ return variant.dup_strv() ++ + def __combobox_notify_active_engine_cb(self, combobox, property): + engine = self.__combobox.get_active_engine() + button = self.__builder.get_object("button_engine_add") +@@ -263,6 +285,13 @@ class Setup(object): args.append(path.basename(setup_path)) return args @@ -2282,20 +2376,13 @@ index 0000000..6f5b7bd + const gchar *variant); +G_END_DECLS +#endif -diff --git a/ui/gtk3/Gkbd-3.0.metadata b/ui/gtk3/Gkbd-3.0.metadata -new file mode 100644 -index 0000000..661e6fd ---- /dev/null -+++ b/ui/gtk3/Gkbd-3.0.metadata -@@ -0,0 +1 @@ -+Configuration cheader_filename="libgnomekbd/gkbd-configuration.h" diff --git a/ui/gtk3/Makefile.am b/ui/gtk3/Makefile.am -index 639e3ea..e8e8d15 100644 +index 5473027..cbd746c 100644 --- a/ui/gtk3/Makefile.am +++ b/ui/gtk3/Makefile.am -@@ -44,6 +44,9 @@ INCLUDES = \ - - USE_SYMBOL_ICON = FALSE +@@ -47,6 +47,9 @@ USE_SYMBOL_ICON = FALSE + # force include config.h before gi18n.h. + AM_CPPFLAGS = -include $(CONFIG_HEADER) +HAVE_IBUS_XKB_C = $(strip $(subst false, FALSE, $(subst true, TRUE, $(HAVE_IBUS_XKB)))) +HAVE_IBUS_GKBD_C = $(strip $(subst false, FALSE, $(subst true, TRUE, $(HAVE_IBUS_GKBD)))) @@ -2303,9 +2390,9 @@ index 639e3ea..e8e8d15 100644 AM_CFLAGS = \ @GLIB2_CFLAGS@ \ @GIO2_CFLAGS@ \ -@@ -60,6 +63,10 @@ AM_CFLAGS = \ - -DIBUS_DISABLE_DEPRECATED \ - -DIBUS_VERSION=\"@IBUS_VERSION@\" \ +@@ -58,6 +61,10 @@ AM_CFLAGS = \ + -DBINDIR=\"$(bindir)\" \ + -DIBUS_DISABLE_DEPRECATED \ -DSWITCHER_USE_SYMBOL_ICON=$(USE_SYMBOL_ICON) \ + -DHAVE_IBUS_XKB=$(HAVE_IBUS_XKB_C) \ + -DHAVE_IBUS_GKBD=$(HAVE_IBUS_GKBD_C) \ @@ -2314,7 +2401,7 @@ index 639e3ea..e8e8d15 100644 -Wno-unused-variable \ -Wno-unused-but-set-variable \ -Wno-unused-function \ -@@ -90,6 +97,7 @@ ibus_ui_gtk3_SOURCES = \ +@@ -91,6 +98,7 @@ ibus_ui_gtk3_SOURCES = \ application.vala \ candidatearea.vala \ candidatepanel.vala \ @@ -2322,15 +2409,14 @@ index 639e3ea..e8e8d15 100644 handle.vala \ iconwidget.vala \ keybindingmanager.vala \ -@@ -98,6 +106,7 @@ ibus_ui_gtk3_SOURCES = \ +@@ -99,17 +107,48 @@ ibus_ui_gtk3_SOURCES = \ property.vala \ separator.vala \ switcher.vala \ + xkblayout.vala \ - grabkeycode.c \ $(NULL) -@@ -105,12 +114,51 @@ ibus_ui_gtk3_LDADD = \ + ibus_ui_gtk3_LDADD = \ $(AM_LDADD) \ $(NULL) @@ -2347,20 +2433,14 @@ index 639e3ea..e8e8d15 100644 + +AM_VALAFLAGS += \ + --vapidir=. \ -+ --metadatadir=. \ ++ --metadatadir=$(top_srcdir)/bindings/vala \ + --pkg=glib-2.0 \ + --pkg=gmodule-2.0 \ + --pkg=gkbd \ + --pkg=Xkl-1.0 \ + $(NULL) + -+$(srcdir)/gkbd.vapi: -+ $(VAPIGEN) --metadatadir . --library gkbd \ -+ --pkg gtk+-3.0 --pkg glib-2.0 --pkg gmodule-2.0 \ -+ /usr/share/gir-1.0/Gkbd-3.0.gir -+ $(NULL) -+ -+$(srcdir)/gkbdlayout.vala: $(srcdir)/gkbd.vapi ++$(srcdir)/gkbdlayout.vala: $(top_builddir)/bindings/vala/gkbd.vapi + @cp $(srcdir)/gkbdlayout.vala.true $(srcdir)/gkbdlayout.vala +else +$(srcdir)/gkbdlayout.vala: @@ -2368,29 +2448,16 @@ index 639e3ea..e8e8d15 100644 +endif + CLEANFILES = \ -+ gkbd.vapi \ + gkbdlayout.vala \ gtkpanel.xml \ $(NULL) EXTRA_DIST = \ -+ Gkbd-3.0.metadata \ + gkbdlayout.vala.false \ + gkbdlayout.vala.true \ gtkpanel.xml.in.in \ -+ Xkl-1.0.metadata \ $(NULL) - -diff --git a/ui/gtk3/Xkl-1.0.metadata b/ui/gtk3/Xkl-1.0.metadata -new file mode 100644 -index 0000000..4961d0c ---- /dev/null -+++ b/ui/gtk3/Xkl-1.0.metadata -@@ -0,0 +1,3 @@ -+Xkl cheader_filename="libxklavier/xklavier.h" -+Engine -+ .filter_events.evt ref type="X.Event" diff --git a/ui/gtk3/gkbdlayout.vala.false b/ui/gtk3/gkbdlayout.vala.false new file mode 100644 index 0000000..a387de9 @@ -2462,10 +2529,10 @@ index 0000000..a387de9 +} diff --git a/ui/gtk3/gkbdlayout.vala.true b/ui/gtk3/gkbdlayout.vala.true new file mode 100644 -index 0000000..adacd81 +index 0000000..2b78c69 --- /dev/null +++ b/ui/gtk3/gkbdlayout.vala.true -@@ -0,0 +1,111 @@ +@@ -0,0 +1,108 @@ +/* vim:set et sts=4 sw=4: + * + * ibus - The Input Bus @@ -2490,9 +2557,6 @@ index 0000000..adacd81 + * Boston, MA 02111-1307 USA + */ + -+using Gkbd; -+using Gtk; -+ +public class GkbdLayout +{ + public signal void changed(); @@ -2578,10 +2642,10 @@ index 0000000..adacd81 + */ +} diff --git a/ui/gtk3/keybindingmanager.vala b/ui/gtk3/keybindingmanager.vala -index 2e1be4a..14b3fd3 100644 +index 5ff0c65..bfe560c 100644 --- a/ui/gtk3/keybindingmanager.vala +++ b/ui/gtk3/keybindingmanager.vala -@@ -54,15 +54,18 @@ public class KeybindingManager : GLib.Object { +@@ -41,15 +41,18 @@ public class KeybindingManager : GLib.Object { private class Keybinding { public Keybinding(uint keysym, Gdk.ModifierType modifiers, @@ -2601,7 +2665,7 @@ index 2e1be4a..14b3fd3 100644 } /** -@@ -70,7 +73,7 @@ public class KeybindingManager : GLib.Object { +@@ -57,7 +60,7 @@ public class KeybindingManager : GLib.Object { * * @param event passing on gdk event */ @@ -2610,7 +2674,7 @@ index 2e1be4a..14b3fd3 100644 private KeybindingManager() { -@@ -86,7 +89,8 @@ public class KeybindingManager : GLib.Object { +@@ -73,7 +76,8 @@ public class KeybindingManager : GLib.Object { */ public bool bind(uint keysym, Gdk.ModifierType modifiers, @@ -2620,7 +2684,7 @@ index 2e1be4a..14b3fd3 100644 unowned X.Display display = Gdk.x11_get_default_xdisplay(); int keycode = display.keysym_to_keycode(keysym); -@@ -97,7 +101,7 @@ public class KeybindingManager : GLib.Object { +@@ -84,7 +88,7 @@ public class KeybindingManager : GLib.Object { grab_keycode (Gdk.Display.get_default(), keysym, modifiers); // store binding @@ -2629,7 +2693,7 @@ index 2e1be4a..14b3fd3 100644 m_bindings.append(binding); return true; -@@ -211,7 +215,7 @@ public class KeybindingManager : GLib.Object { +@@ -198,7 +202,7 @@ public class KeybindingManager : GLib.Object { if (event.key.keyval != binding.keysym || modifiers != binding.modifiers) continue; @@ -2639,11 +2703,11 @@ index 2e1be4a..14b3fd3 100644 } } diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala -index 25d705d..8cb5e8c 100644 +index 40079ec..8e6f756 100644 --- a/ui/gtk3/panel.vala +++ b/ui/gtk3/panel.vala -@@ -29,6 +29,20 @@ public extern const string IBUS_VERSION; - public extern const string BINDIR; +@@ -21,6 +21,20 @@ + */ class Panel : IBus.PanelService { + private class Keybinding { @@ -2663,7 +2727,7 @@ index 25d705d..8cb5e8c 100644 private IBus.Bus m_bus; private IBus.Config m_config; private Gtk.StatusIcon m_status_icon; -@@ -41,10 +55,17 @@ class Panel : IBus.PanelService { +@@ -33,10 +47,17 @@ class Panel : IBus.PanelService { private GLib.Pid m_setup_pid = 0; private Gtk.AboutDialog m_about_dialog; private Gtk.CssProvider m_css_provider; @@ -2683,7 +2747,7 @@ index 25d705d..8cb5e8c 100644 public Panel(IBus.Bus bus) { GLib.assert(bus.is_connected()); -@@ -67,7 +88,6 @@ class Panel : IBus.PanelService { +@@ -59,7 +80,6 @@ class Panel : IBus.PanelService { m_candidate_panel.page_down.connect((w) => this.page_down()); m_switcher = new Switcher(); @@ -2691,7 +2755,7 @@ index 25d705d..8cb5e8c 100644 m_property_manager = new PropertyManager(); m_property_manager.property_activate.connect((k, s) => { -@@ -79,64 +99,135 @@ class Panel : IBus.PanelService { +@@ -71,64 +91,135 @@ class Panel : IBus.PanelService { ~Panel() { unbind_switch_shortcut(); @@ -2856,7 +2920,7 @@ index 25d705d..8cb5e8c 100644 } private void set_custom_font() { -@@ -204,12 +295,16 @@ class Panel : IBus.PanelService { +@@ -196,12 +287,16 @@ class Panel : IBus.PanelService { } m_config = config; @@ -2873,7 +2937,7 @@ index 25d705d..8cb5e8c 100644 update_engines(m_config.get_value("general", "preload_engines"), m_config.get_value("general", "engines_order")); } else { -@@ -219,6 +314,192 @@ class Panel : IBus.PanelService { +@@ -211,6 +306,192 @@ class Panel : IBus.PanelService { set_custom_font(); } @@ -3066,7 +3130,7 @@ index 25d705d..8cb5e8c 100644 private void switch_engine(int i, bool force = false) { GLib.assert(i >= 0 && i < m_engines.length); -@@ -233,15 +514,7 @@ class Panel : IBus.PanelService { +@@ -225,15 +506,7 @@ class Panel : IBus.PanelService { return; } // set xkb layout @@ -3077,13 +3141,13 @@ index 25d705d..8cb5e8c 100644 - engine.get_layout()); - } - } catch (GLib.SpawnError e) { -- warning("execute setxkblayout failed"); +- warning("Execute setxkbmap failed: %s", e.message); - } + set_layout(engine.get_layout()); } private void config_value_changed_cb(IBus.Config config, -@@ -253,6 +526,13 @@ class Panel : IBus.PanelService { +@@ -245,6 +518,13 @@ class Panel : IBus.PanelService { return; } @@ -3097,7 +3161,7 @@ index 25d705d..8cb5e8c 100644 if (section == "panel" && (name == "custom_font" || name == "use_custom_font")) { set_custom_font(); -@@ -272,8 +552,7 @@ class Panel : IBus.PanelService { +@@ -264,8 +544,7 @@ class Panel : IBus.PanelService { event, primary_modifiers); if (pressed) { int i = revert ? m_engines.length - 1 : 1; @@ -3108,10 +3172,10 @@ index 25d705d..8cb5e8c 100644 debug("switch cancelled"); } else { diff --git a/ui/gtk3/switcher.vala b/ui/gtk3/switcher.vala -index ea56c07..6035471 100644 +index 7b731c0..2fffcc3 100644 --- a/ui/gtk3/switcher.vala +++ b/ui/gtk3/switcher.vala -@@ -71,13 +71,26 @@ class Switcher : Gtk.Window { +@@ -63,13 +63,26 @@ class Switcher : Gtk.Window { public string longname { get; set; } } @@ -3140,7 +3204,7 @@ index ea56c07..6035471 100644 private Gdk.ModifierType m_primary_modifier; private GLib.MainLoop m_loop; private int m_result; -@@ -113,19 +126,17 @@ class Switcher : Gtk.Window { +@@ -105,19 +118,17 @@ class Switcher : Gtk.Window { grab_focus(); } @@ -3163,7 +3227,7 @@ index ea56c07..6035471 100644 update_engines(engines); m_result = 0; -@@ -310,23 +321,25 @@ class Switcher : Gtk.Window { +@@ -302,23 +313,25 @@ class Switcher : Gtk.Window { public override bool key_press_event(Gdk.EventKey e) { bool retval = true; Gdk.EventKey *pe = &e; @@ -3202,10 +3266,10 @@ index ea56c07..6035471 100644 case 0xff51: /* Left */ diff --git a/ui/gtk3/xkblayout.vala b/ui/gtk3/xkblayout.vala new file mode 100644 -index 0000000..8b75387 +index 0000000..33e9d9d --- /dev/null +++ b/ui/gtk3/xkblayout.vala -@@ -0,0 +1,466 @@ +@@ -0,0 +1,464 @@ +/* vim:set et sts=4 sw=4: + * + * ibus - The Input Bus @@ -3230,8 +3294,6 @@ index 0000000..8b75387 + * Boston, MA 02111-1307 USA + */ + -+using IBus; -+ +public extern const bool HAVE_IBUS_GKBD; +public extern const bool HAVE_IBUS_XKB; +public extern const int XKB_LAYOUTS_MAX_LENGTH; diff --git a/ibus-xx-no-use.diff b/ibus-xx-no-use.diff index 492513d..1a2ede8 100644 --- a/ibus-xx-no-use.diff +++ b/ibus-xx-no-use.diff @@ -1,6 +1,6 @@ -From 7ba6b518fe414e2dc988acd9f7688ceca56d69f8 Mon Sep 17 00:00:00 2001 +From 59cf8aea1a9d6f687f58671e07f19b827cc9ff4a Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Thu, 6 Sep 2012 13:05:56 +0900 +Date: Fri, 14 Sep 2012 20:04:11 +0900 Subject: [PATCH] Disabled to show non-used GUI. --- @@ -9,10 +9,10 @@ Subject: [PATCH] Disabled to show non-used GUI. 2 files changed, 77 insertions(+), 24 deletions(-) diff --git a/setup/main.py b/setup/main.py -index cf63643..d14796c 100644 +index 37a8b0a..7b0b8d5 100644 --- a/setup/main.py +++ b/setup/main.py -@@ -77,22 +77,31 @@ class Setup(object): +@@ -85,22 +85,31 @@ class Setup(object): self.__init_ui() def __init_hotkey(self): @@ -50,7 +50,7 @@ index cf63643..d14796c 100644 def __init_panel(self): values = dict(self.__config.get_values("panel")) -@@ -445,6 +454,48 @@ class Setup(object): +@@ -459,6 +468,48 @@ class Setup(object): entry.set_text(text) entry.set_tooltip_text(text) @@ -66,7 +66,7 @@ index cf63643..d14796c 100644 + orig_list =['space'] + variant = self.__config.get_value(section, name) + if variant != None: -+ orig_list = variant.dup_strv() ++ orig_list = self.__variant_dup_strv(variant) + orig_text = ';'.join(orig_list) + if text == orig_text: + return diff --git a/ibus-xx-setup-frequent-lang.patch b/ibus-xx-setup-frequent-lang.patch index f0d5e20..921ed8c 100644 --- a/ibus-xx-setup-frequent-lang.patch +++ b/ibus-xx-setup-frequent-lang.patch @@ -1,6 +1,6 @@ -From 75fccb88c64fd28f20901608810da16cc57b4fc7 Mon Sep 17 00:00:00 2001 +From 294c84451647426d687988b60aa0b2719c6f27cc Mon Sep 17 00:00:00 2001 From: fujiwarat -Date: Thu, 6 Sep 2012 12:50:14 +0900 +Date: Fri, 14 Sep 2012 18:50:10 +0900 Subject: [PATCH] Enable ibus-setup to show the frequently used languages only in IME list. @@ -411,10 +411,10 @@ index f80b164..578098c 100644 return self.get_property("active-engine") diff --git a/setup/main.py b/setup/main.py -index d62bdf2..a69617d 100644 +index 0b6ce9c..7e1f8e7 100644 --- a/setup/main.py +++ b/setup/main.py -@@ -209,6 +209,7 @@ class Setup(object): +@@ -217,6 +217,7 @@ class Setup(object): engines.append(engine) self.__combobox = self.__builder.get_object("combobox_engines") diff --git a/ibus.spec b/ibus.spec index 2531703..e3a0594 100644 --- a/ibus.spec +++ b/ibus.spec @@ -29,8 +29,8 @@ %define gnome_icon_theme_legacy_version 2.91.6 Name: ibus -Version: 1.4.99.20120822 -Release: 2%{?dist} +Version: 1.4.99.20120914 +Release: 1%{?dist} Summary: Intelligent Input Bus for Linux OS License: LGPLv2+ Group: System Environment/Libraries @@ -473,6 +473,9 @@ dconf update %{_datadir}/gtk-doc/html/* %changelog +* Fri Sep 14 2012 Takao Fujiwara - 1.4.99.20120914-1 +- Bumped to 1.4.99.20120914 + * Thu Sep 06 2012 Takao Fujiwara - 1.4.99.20120822-2 - Updated ibus-530711-preload-sys.patch - Updated ibus-541492-xkb.patch diff --git a/sources b/sources index 00074d7..44eb7a2 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -b7b7aa75b28cc28521e71ca499854695 ibus-1.4.99.20120822.tar.gz +3eba21398b1485d94aa4b587764ae6b1 ibus-1.4.99.20120914.tar.gz 2d2ad58e3e41429dbd883ba7e501c9b2 ibus-gjs-3.2.1.20111230.tar.gz 8acf4ac4d1a7dfb9a0af9e755a8e7dba ibus-gjs-3.4.1.20120815.tar.gz