[ibus] Fixed Bug 810211 - Cancel Control + space pressing Control key.

Takao Fujiwara fujiwara at fedoraproject.org
Fri May 18 10:16:46 UTC 2012


commit 2f7b82ca3fd385bdaa47071e6c506cf26f92581b
Author: Takao Fujiwara <tfujiwar at redhat.com>
Date:   Fri May 18 19:08:00 2012 +0900

    Fixed Bug 810211 - Cancel Control + space pressing Control key.

 .gitignore                         |    1 +
 ibus-541492-xkb.patch              |  187 +++++++++++++++++++++++++++++------
 ibus-HEAD.patch                    |   36 +++++++
 ibus-xx-branding-switcher-ui.patch |   57 ++++++++---
 ibus-xx-no-use.diff                |   35 ++++---
 ibus.spec                          |   16 +++-
 sources                            |    2 +-
 7 files changed, 270 insertions(+), 64 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 40268a7..75dcfec 100644
--- a/.gitignore
+++ b/.gitignore
@@ -42,3 +42,4 @@ ibus-1.3.6.tar.gz
 /ibus-gjs-3.3.90.20120317.tar.gz
 /ibus-gjs-3.3.92.20120327.tar.gz
 /ibus-gjs-3.4.1.20120428.tar.gz
+/ibus-gjs-3.4.1.20120518.tar.gz
diff --git a/ibus-541492-xkb.patch b/ibus-541492-xkb.patch
index efd0e40..c419dbd 100644
--- a/ibus-541492-xkb.patch
+++ b/ibus-541492-xkb.patch
@@ -1,32 +1,34 @@
-From 5de26fdf6f300a4e532a39f8c3778e94ff629125 Mon Sep 17 00:00:00 2001
+From 8115592c491ed0bfd60df15d109dda2d7ae1dbc0 Mon Sep 17 00:00:00 2001
 From: fujiwarat <takao.fujiwara1 at gmail.com>
-Date: Sat, 28 Apr 2012 13:07:30 +0900
+Date: Wed, 9 May 2012 19:23:11 +0900
 Subject: [PATCH] Add ibus-xkb and libgnomekbd.
 
 ---
- client/x11/gdk-private.c      |    3 +-
- configure.ac                  |   59 +++++
- data/ibus.schemas.in          |  102 ++++++++
- engine/Makefile.am            |   20 ++
- engine/ibus-xkb-main.c        |  111 +++++++++
- engine/main.vala              |   86 +++++++
- engine/simple.xml.in.in       |  531 +----------------------------------------
- engine/xkblib.c               |  327 +++++++++++++++++++++++++
- engine/xkblib.h               |   41 ++++
- ibus-1.0.pc.in                |    4 +
- setup/main.py                 |   25 +-
- 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/gkbdlayout.vala.false |   63 +++++
- ui/gtk3/gkbdlayout.vala.true  |  111 +++++++++
- ui/gtk3/panel.vala            |  275 +++++++++++++++++++--
- ui/gtk3/xkblayout.vala        |  466 ++++++++++++++++++++++++++++++++++++
- 22 files changed, 2380 insertions(+), 555 deletions(-)
+ client/x11/gdk-private.c       |    3 +-
+ configure.ac                   |   59 +++++
+ data/ibus.schemas.in           |  102 ++++++++
+ engine/Makefile.am             |   20 ++
+ engine/ibus-xkb-main.c         |  111 +++++++++
+ engine/main.vala               |   86 +++++++
+ engine/simple.xml.in.in        |  531 +---------------------------------------
+ engine/xkblib.c                |  327 +++++++++++++++++++++++++
+ engine/xkblib.h                |   41 ++++
+ ibus-1.0.pc.in                 |    4 +
+ setup/main.py                  |   25 +-
+ 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/gkbdlayout.vala.false  |   63 +++++
+ ui/gtk3/gkbdlayout.vala.true   |  111 +++++++++
+ ui/gtk3/keybindingmanager.vala |    4 +
+ ui/gtk3/panel.vala             |  279 +++++++++++++++++++--
+ ui/gtk3/switcher.vala          |   53 +++-
+ ui/gtk3/xkblayout.vala         |  466 +++++++++++++++++++++++++++++++++++
+ 24 files changed, 2433 insertions(+), 563 deletions(-)
  create mode 100644 engine/ibus-xkb-main.c
  create mode 100644 engine/xkblib.c
  create mode 100644 engine/xkblib.h
@@ -2472,11 +2474,26 @@ index 0000000..adacd81
 +    }
 +    */
 +}
+diff --git a/ui/gtk3/keybindingmanager.vala b/ui/gtk3/keybindingmanager.vala
+index dd3c7bd..4459ab2 100644
+--- a/ui/gtk3/keybindingmanager.vala
++++ b/ui/gtk3/keybindingmanager.vala
+@@ -133,6 +133,10 @@ public class KeybindingManager : GLib.Object {
+             m_bindings.remove (binding);
+     }
+ 
++    public GLib.List get_keybindings() {
++        return m_bindings.copy();
++    }
++
+     public static KeybindingManager get_instance () {
+         if (m_instance == null)
+             m_instance = new KeybindingManager ();
 diff --git a/ui/gtk3/panel.vala b/ui/gtk3/panel.vala
-index 251a65e..c08f188 100644
+index 251a65e..ff83284 100644
 --- a/ui/gtk3/panel.vala
 +++ b/ui/gtk3/panel.vala
-@@ -41,8 +41,16 @@ class Panel : IBus.PanelService {
+@@ -41,8 +41,17 @@ class Panel : IBus.PanelService {
      private GLib.Pid m_setup_pid = 0;
      private Gtk.AboutDialog m_about_dialog;
      private Gtk.CssProvider m_css_provider;
@@ -2487,13 +2504,14 @@ index 251a65e..c08f188 100644
 +    private int m_fallback_lock_id = -1;
 +    private bool m_changed_xkb_option = false;
 +    private GLib.Timer m_changed_layout_timer;
++    private GLib.List m_keybindings;
      private const string ACCELERATOR_SWITCH_IME_FOREWARD = "<Control>space";
      private const string ACCELERATOR_SWITCH_IME_BACKWARD = "<Control><Shift>space";
 +    private string[] ACCELERATOR_IME_HOTKEYS = {};
  
      public Panel(IBus.Bus bus) {
          GLib.assert(bus.is_connected());
-@@ -66,13 +74,6 @@ class Panel : IBus.PanelService {
+@@ -66,13 +75,6 @@ class Panel : IBus.PanelService {
  
          m_switcher = new Switcher();
  
@@ -2507,7 +2525,7 @@ index 251a65e..c08f188 100644
          m_property_manager = new PropertyManager();
          m_property_manager.property_activate.connect((k, s) => {
              property_activate(k, s);
-@@ -83,8 +84,66 @@ class Panel : IBus.PanelService {
+@@ -83,8 +85,67 @@ class Panel : IBus.PanelService {
  
      ~Panel() {
          var keybinding_manager = KeybindingManager.get_instance();
@@ -2573,10 +2591,11 @@ index 251a65e..c08f188 100644
 +                    (e) => handle_engine_switch(e, true));
 +            }
 +        }
++        m_keybindings = keybinding_manager.get_keybindings();
      }
  
      private void set_custom_font() {
-@@ -152,12 +211,14 @@ class Panel : IBus.PanelService {
+@@ -152,12 +213,14 @@ class Panel : IBus.PanelService {
          }
  
          m_config = config;
@@ -2591,7 +2610,7 @@ index 251a65e..c08f188 100644
              update_engines(m_config.get_value("general", "preload_engines"),
                             m_config.get_value("general", "engines_order"));
          } else {
-@@ -167,6 +228,192 @@ class Panel : IBus.PanelService {
+@@ -167,6 +230,192 @@ class Panel : IBus.PanelService {
          set_custom_font();
      }
  
@@ -2784,7 +2803,7 @@ index 251a65e..c08f188 100644
      private void switch_engine(int i, bool force = false) {
          GLib.assert(i >= 0 && i < m_engines.length);
  
-@@ -186,15 +433,7 @@ class Panel : IBus.PanelService {
+@@ -186,15 +435,7 @@ class Panel : IBus.PanelService {
              return;
          }
          // set xkb layout
@@ -2801,6 +2820,110 @@ index 251a65e..c08f188 100644
  
          string[] names = {};
          foreach(var desc in m_engines) {
+@@ -234,7 +475,7 @@ class Panel : IBus.PanelService {
+                 event, primary_modifiers);
+         if (pressed) {
+             int i = revert ? m_engines.length - 1 : 1;
+-            i = m_switcher.run(event, m_engines, i);
++            i = m_switcher.run(event, m_engines, i, m_keybindings);
+             if (i < 0) {
+                 debug("switch cancelled");
+             } else {
+diff --git a/ui/gtk3/switcher.vala b/ui/gtk3/switcher.vala
+index 81812ec..52b0577 100644
+--- a/ui/gtk3/switcher.vala
++++ b/ui/gtk3/switcher.vala
+@@ -23,14 +23,42 @@
+ using IBus;
+ using GLib;
+ using Gtk;
++using Gdk;
+ 
+ class Switcher : Gtk.Window {
++    private class Keybinding {
++        public Keybinding(string accelerator,
++                          uint keysym,
++                          Gdk.ModifierType modifiers) {
++            this.accelerator = accelerator;
++            this.keysym = keysym;
++            this.modifiers = modifiers;
++        }
++
++        public string accelerator { get; set; }
++        public uint keysym { get; set; }
++        public Gdk.ModifierType modifiers { get; set; }
++    }
++
++    public static const uint MODIFIER_FILTER =
++        Gdk.ModifierType.MODIFIER_MASK & ~(
++        Gdk.ModifierType.MOD2_MASK |
++        Gdk.ModifierType.LOCK_MASK |
++        Gdk.ModifierType.MOD4_MASK |
++        Gdk.ModifierType.MOD5_MASK |
++        Gdk.ModifierType.BUTTON1_MASK |
++        Gdk.ModifierType.BUTTON2_MASK |
++        Gdk.ModifierType.BUTTON3_MASK |
++        Gdk.ModifierType.BUTTON4_MASK |
++        Gdk.ModifierType.BUTTON5_MASK);
++
+     private Gtk.Box m_box;
+     private Gtk.Button[] m_buttons = {};
+     private IBus.EngineDesc[] m_engines;
+     private uint m_selected_engine;
+     private uint m_primary_modifier;
+     private GLib.MainLoop m_loop;
++    private unowned GLib.List<Keybinding> m_keybindings;
+     private int m_result;
+ 
+     public Switcher() {
+@@ -49,7 +77,7 @@ class Switcher : Gtk.Window {
+         grab_focus();
+     }
+ 
+-    public int run(Gdk.Event event, IBus.EngineDesc[] engines, int index) {
++    public int run(Gdk.Event event, IBus.EngineDesc[] engines, int index, GLib.List keybindings) {
+         assert (m_loop == null);
+         assert (index < engines.length);
+ 
+@@ -61,6 +89,7 @@ class Switcher : Gtk.Window {
+         m_result = 0;
+         m_selected_engine = index;
+         m_buttons[index].grab_focus();
++        m_keybindings = (GLib.List<Keybinding>) keybindings;
+ 
+         Gdk.Device device = event.get_device();
+         if (device == null) {
+@@ -219,14 +248,24 @@ class Switcher : Gtk.Window {
+ 
+     public override bool key_press_event(Gdk.EventKey e) {
+         Gdk.EventKey *pe = &e;
+-        switch (pe->keyval) {
+-            case 0x0020: /* space */
+-            case 0xff80: /* KP_Space */
+-                if ((pe->state & Gdk.ModifierType.SHIFT_MASK) == 0)
++        Gdk.ModifierType state = pe->state & MODIFIER_FILTER;
++
++        for (unowned GLib.List<Keybinding> keybindings = m_keybindings;
++             keybindings != null;
++             keybindings = keybindings.next) {
++            Keybinding keybinding = keybindings.data;
++            if (pe->keyval == keybinding.keysym &&
++                state == keybinding.modifiers) {
++                if ((state & Gdk.ModifierType.SHIFT_MASK) == 0) {
+                     next_engine();
+-                else
++                } else {
+                     previous_engine();
+-                break;
++                }
++                return true;
++            }
++        }
++
++        switch (pe->keyval) {
+             case 0x08fb: /* leftarrow */
+             case 0xff51: /* Down */
+                 break;
 diff --git a/ui/gtk3/xkblayout.vala b/ui/gtk3/xkblayout.vala
 new file mode 100644
 index 0000000..8b75387
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index 8b13789..f9ca7f6 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -1 +1,37 @@
+From 469335730bb9dc7ba1702cfc5108491b6993677b Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1 at gmail.com>
+Date: Wed, 9 May 2012 17:09:23 +0900
+Subject: [PATCH] Fix not to switch engines by non-trigger keys.
+
+---
+ ui/gtk3/switcher.vala |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/ui/gtk3/switcher.vala b/ui/gtk3/switcher.vala
+index 73b58d2..81812ec 100644
+--- a/ui/gtk3/switcher.vala
++++ b/ui/gtk3/switcher.vala
+@@ -58,6 +58,7 @@ class Switcher : Gtk.Window {
+                 event.key.state & KeybindingManager.MODIFIER_FILTER);
+ 
+         update_engines(engines);
++        m_result = 0;
+         m_selected_engine = index;
+         m_buttons[index].grab_focus();
+ 
+@@ -242,7 +243,11 @@ class Switcher : Gtk.Window {
+                 break;
+             default:
+                 debug("0x%04x", pe->keyval);
+-                break;
++                if (m_loop != null) {
++                    m_loop.quit();
++                    m_loop = null;
++                }
++                return false;
+         }
+         return true;
+     }
+-- 
+1.7.10
 
diff --git a/ibus-xx-branding-switcher-ui.patch b/ibus-xx-branding-switcher-ui.patch
index 15f7a6a..5b7ae3b 100644
--- a/ibus-xx-branding-switcher-ui.patch
+++ b/ibus-xx-branding-switcher-ui.patch
@@ -1,27 +1,34 @@
---- ibus-1.4.99.20120428/ui/gtk3/switcher.vala.orig	2012-04-28 13:49:41.000000000 +0900
-+++ ibus-1.4.99.20120428/ui/gtk3/switcher.vala	2012-04-28 16:26:16.595996905 +0900
-@@ -23,15 +23,20 @@
- using IBus;
+diff --git a/ui/gtk3/switcher.vala b/ui/gtk3/switcher.vala
+index 52b0577..7821221 100644
+--- a/ui/gtk3/switcher.vala
++++ b/ui/gtk3/switcher.vala
+@@ -24,6 +24,8 @@ using IBus;
  using GLib;
  using Gtk;
+ using Gdk;
 +using Pango;
 +using Atk;
  
  class Switcher : Gtk.Window {
+     private class Keybinding {
+@@ -53,6 +55,7 @@ class Switcher : Gtk.Window {
+         Gdk.ModifierType.BUTTON5_MASK);
+ 
      private Gtk.Box m_box;
 +    private Gtk.Label m_label;
      private Gtk.Button[] m_buttons = {};
      private IBus.EngineDesc[] m_engines;
      private uint m_selected_engine;
-     private uint m_primary_modifier;
+@@ -60,6 +63,8 @@ class Switcher : Gtk.Window {
      private GLib.MainLoop m_loop;
+     private unowned GLib.List<Keybinding> m_keybindings;
      private int m_result;
 +    private int m_default_font_size = 16;
 +    private const int m_desc_label_max_len = 20;
  
      public Switcher() {
          GLib.Object(
-@@ -43,8 +48,23 @@ class Switcher : Gtk.Window {
+@@ -71,8 +76,23 @@ class Switcher : Gtk.Window {
              modal : true,
              focus_visible : true
          );
@@ -47,15 +54,15 @@
  
          grab_focus();
      }
-@@ -59,6 +79,7 @@ class Switcher : Gtk.Window {
- 
+@@ -88,6 +108,7 @@ class Switcher : Gtk.Window {
          update_engines(engines);
+         m_result = 0;
          m_selected_engine = index;
 +        m_label.set_text(m_buttons[index].get_data("longname"));
          m_buttons[index].grab_focus();
+         m_keybindings = (GLib.List<Keybinding>) keybindings;
  
-         Gdk.Device device = event.get_device();
-@@ -138,6 +159,35 @@ class Switcher : Gtk.Window {
+@@ -168,6 +189,35 @@ class Switcher : Gtk.Window {
          return m_result;
      }
  
@@ -91,7 +98,7 @@
      private void update_engines(IBus.EngineDesc[] engines) {
          foreach (var button in m_buttons) {
              button.destroy();
-@@ -149,28 +199,15 @@ class Switcher : Gtk.Window {
+@@ -179,28 +229,15 @@ class Switcher : Gtk.Window {
              return;
          }
  
@@ -123,7 +130,7 @@
              button.show();
  
              button.enter_notify_event.connect((e) => {
-@@ -186,12 +223,40 @@ class Switcher : Gtk.Window {
+@@ -216,12 +253,40 @@ class Switcher : Gtk.Window {
                  return true;
              });
  
@@ -166,7 +173,7 @@
      }
  
      private void next_engine() {
-@@ -199,6 +264,7 @@ class Switcher : Gtk.Window {
+@@ -229,6 +294,7 @@ class Switcher : Gtk.Window {
              m_selected_engine = 0;
          else
              m_selected_engine ++;
@@ -174,7 +181,7 @@
          set_focus(m_buttons[m_selected_engine]);
      }
  
-@@ -207,6 +273,7 @@ class Switcher : Gtk.Window {
+@@ -237,6 +303,7 @@ class Switcher : Gtk.Window {
              m_selected_engine = m_engines.length - 1;
          else
              m_selected_engine --;
@@ -182,3 +189,25 @@
          set_focus(m_buttons[m_selected_engine]);
      }
  
+@@ -267,18 +334,18 @@ class Switcher : Gtk.Window {
+ 
+         switch (pe->keyval) {
+             case 0x08fb: /* leftarrow */
+-            case 0xff51: /* Down */
++            case 0xff51: /* Left */
++                previous_engine();
+                 break;
+             case 0x08fc: /* uparrow */
+             case 0xff52: /* Up */
+-                previous_engine();
+                 break;
+             case 0x08fd: /* rightarrow */
+             case 0xff53: /* Right */
++                next_engine();
+                 break;
+             case 0x08fe: /* downarrow */
+             case 0xff54: /* Down */
+-                next_engine();
+                 break;
+             default:
+                 debug("0x%04x", pe->keyval);
diff --git a/ibus-xx-no-use.diff b/ibus-xx-no-use.diff
index 2220490..cce7ce1 100644
--- a/ibus-xx-no-use.diff
+++ b/ibus-xx-no-use.diff
@@ -1,5 +1,5 @@
---- ibus-1.4.99.20120317/setup/main.py.orig	2012-03-16 14:58:17.228279261 +0900
-+++ ibus-1.4.99.20120317/setup/main.py	2012-03-16 14:58:50.316202253 +0900
+--- ibus-1.4.99.20120428/setup/main.py.orig	2012-05-01 12:11:29.055651061 +0900
++++ ibus-1.4.99.20120428/setup/main.py	2012-05-01 17:55:23.053440859 +0900
 @@ -75,22 +75,30 @@ class Setup(object):
          self.__init_ui()
  
@@ -37,7 +37,7 @@
  
      def __init_panel(self):
          values = dict(self.__config.get_values("panel"))
-@@ -446,6 +454,37 @@ class Setup(object):
+@@ -443,6 +451,46 @@ class Setup(object):
          entry.set_text(text)
          entry.set_tooltip_text(text)
  
@@ -55,18 +55,27 @@
 +        orig_text = ';'.join(orig_list)
 +        if text == orig_text:
 +            return
-+        is_valid = True
++        invalid_shortcut = None
 +        for shortcut in shortcuts:
 +            (key, mods) = Gtk.accelerator_parse(shortcut)
-+            if not Gtk.accelerator_valid(key, mods):
-+                is_valid = False
-+                dlg = Gtk.MessageDialog(type = Gtk.MessageType.ERROR,
-+                        buttons = Gtk.ButtonsType.CLOSE,
-+                        message_format = "Invalid key %s" % shortcut)
-+                dlg.run()
-+                dlg.destroy()
-+                break
-+        if not is_valid:
++            if shortcut.find('<') >= 0:
++                if mods <= 0:
++                    invalid_shortcut = shortcut
++                    break
++                if not Gtk.accelerator_valid(key, mods):
++                    invalid_shortcut = shortcut
++                    break
++            # Alt_R could be supported as the trigger key.
++            else:
++                if key <= 0:
++                    invalid_shortcut = shortcut
++                    break
++        if invalid_shortcut != None:
++            dlg = Gtk.MessageDialog(type = Gtk.MessageType.ERROR,
++                    buttons = Gtk.ButtonsType.CLOSE,
++                    message_format = "Invalid key %s" % invalid_shortcut)
++            dlg.run()
++            dlg.destroy()
 +            return
 +        self.__config.set_value(section, name, GLib.Variant.new_strv(shortcuts))
 +        text = '\n'.join(shortcuts)
diff --git a/ibus.spec b/ibus.spec
index e01197e..7946676 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -14,7 +14,7 @@
 %endif
 
 %if (0%{?fedora} > 16 || 0%{?rhel} > 6)
-%define ibus_gjs_version 3.4.1.20120428
+%define ibus_gjs_version 3.4.1.20120518
 %define ibus_gjs_build_failure 1
 %else
 %define ibus_gjs_version 3.2.1.20111230
@@ -30,7 +30,7 @@
 
 Name:       ibus
 Version:    1.4.99.20120428
-Release:    1%{?dist}
+Release:    2%{?dist}
 Summary:    Intelligent Input Bus for Linux OS
 License:    LGPLv2+
 Group:      System Environment/Libraries
@@ -39,7 +39,7 @@ URL:        http://code.google.com/p/ibus/
 Source0:    http://fujiwara.fedorapeople.org/ibus/gnome-shell/%{name}-%{version}.tar.gz
 Source1:    xinput-ibus
 Source2:    http://fujiwara.fedorapeople.org/ibus/gnome-shell/ibus-gjs-%{ibus_gjs_version}.tar.gz
-# Patch0:     ibus-HEAD.patch
+Patch0:     ibus-HEAD.patch
 Patch1:     ibus-541492-xkb.patch
 Patch2:     ibus-530711-preload-sys.patch
 Patch3:     ibus-xx-setup-frequent-lang.patch
@@ -207,7 +207,7 @@ The ibus-devel-docs package contains developer documentation for ibus
 zcat %SOURCE2 | tar xf -
 %endif
 
-# %patch0 -p1
+%patch0 -p1
 %patch92 -p1 -b .g-s-preedit
 cp client/gtk2/ibusimcontext.c client/gtk3/ibusimcontext.c ||
 %if %with_xkbfile
@@ -462,6 +462,14 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &>/dev/null || :
 %{_datadir}/gtk-doc/html/*
 
 %changelog
+* Fri Apr 27 2012 Takao Fujiwara <tfujiwar at redhat.com> - 1.4.99.20120428-2
+- Updated ibus-HEAD.patch
+- Updated ibus-541492-xkb.patch
+- Updated ibus-xx-branding-switcher-ui.patch
+  Fixed Bug 810211 - Cancel Control + space pressing Control key.
+- Updated ibus-xx-no-use.diff
+  Enabled to customize trigger keys with non-modifier trigger keys.
+
 * Fri Apr 27 2012 Takao Fujiwara <tfujiwar at redhat.com> - 1.4.99.20120428-1
 - Bumped to 1.4.99.20120428
   Fixed Bug 799571 - no IME list at the session login.
diff --git a/sources b/sources
index 247cdef..fca7a92 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
 276f30a81b634feb9c4bcc3e564ac948  ibus-1.4.99.20120428.tar.gz
-d7ce6d92da05c0701f31540e5b4a3eee  ibus-gjs-3.4.1.20120428.tar.gz
 2d2ad58e3e41429dbd883ba7e501c9b2  ibus-gjs-3.2.1.20111230.tar.gz
+3fdef3e31c0354d927dc06df5dc02f9c  ibus-gjs-3.4.1.20120518.tar.gz


More information about the scm-commits mailing list