IBus new Control+Space window

Recently I updated ibus to 1.4.99.20120203-3 in Fedora 17 or later.
The ibus is not available in upstream yet but we would need the new ibus for Fedora 17. It enhances:

  • Performance of Control+Space.
  • New Control+Space GUI window.
  • IBus indicator can work without ibus-daemon on gnome-shell to handle XKB only.

Previously ibus-daemon handles the trigger key, Control+Space, and some of the performance problems were happened when input method engines are switched. Now the ibus status icon on panel handles Control+Space and I hope the performance issue was fixed.

Previously the trigger key switches a previous ibus engine and next engine. Now the trigger key behaves to switch multiple engines likes Alt+Tab. If you use Control+Shift+Space, the reverse switching is called. The following is the new window with ibus GTK:
IBus Switcher Window with ibus-ui-gtk3
The following is the new window with ibus-gnome3 on gnome-shell:
IBus Switcher Window with ibus-gnome3 on gnome-shell
IBus menu with ibus-gnome3 on gnome-shell
IBus lookup window with ibus-gnome3 on gnome-shell

Requirements:

# yum install ibus ibus-gnome3 gnome-shell gjs
# rpm -q ibus gnome-shell gjs
ibus-1.4.99.20120203-3.fc17.x86_64
gnome-shell-3.3.5-1.fc17.x86_64
gjs-1.31.10-1.fc17.x86_64

Currently we use the devel branch with ibus and ibus-gjs git and when the upstream is updated, I will move the devel branch to master.

Posted in IBus | Tagged , , , | 6 Comments

ibus-gjs new lookup window

Folks, a happy new year.

ibus-gnome3-1.4.0-17 is now available in Fedora 16 or later.

# yum install ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-17.fc16.x86_64

It would enhances the gnome-shell lookup window.
ibus-gjs lookup window on gnome-shell

Posted in IBus | Tagged , , , | Leave a comment

ibus-gjs community version is available on extensions.gnome.org

Now ibus-gjs is also available on extensions.gnome.org for other platforms:
https://extensions.gnome.org/extension/68/input-method-status-indicator/

You need to install gjs and gnome-shell and enable gnome-shell.

The community version does not enable Fedora ibus xkb feature since it’s not upstreamed.
If you use Fedora, you could install ibus-gnome3 rpm instead of extensions.gnome.org .
I updated the README file.

Posted in Ubuntu | Tagged , , | Leave a comment

ibus-1.4.0-14 is available

ibus-1.4.0-14 is available soon in f16 or higher.
You could now install ibus-1.4.0-14 in Fedora 16 updates-testing repository.

# yum install --enablerepo=updates-testing ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-14.fc16.x86_64

This update enhances the shell menu.
Icon activated menu on ibus-gjs icon indicator
Now menu icons on ibus icon menu use the prefix of language names for XKB keymaps and multi-byte special chars for input methods and have numeric suffix if the icon strings are duplicated. (e.g. 中2 and en2)
The ibus shell menu also deletes the item of quit, restart, ibus-setup to follow the UI spec since the indicator will persist for XKB keymaps even if ibus is not running. We’d like to integarte ibus setup into gnome-control-center.
Also this update adds the IM engine’s setup button on ibus-setup.
IME button on ibus-setup
The feature is upstreamed in ibus HEAD.
We also would like to integrate this function into gnome-control-center.

Posted in IBus | Tagged , , , , | 7 Comments

IBus-GJS 3.2.1.20111021 was released

Recently I fixed several bugs in ibus-gjs for gnome-shell 3.2.1 and gjs 1.30.0.
ibus-1.4.0-5.fc16 has all the fixes and probably it will be available tomorrow in Fedora test repository.

# yum install --enablerepo=updates-testing ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-5.fc16.x86_64

The development ibus-gjs is avaialable here.
1. Get the current keyboard layout when no variant.
ibus could not get the current keyboard layout when the layout has no variant. e.g. ‘us’ layout.
The patch was integrated.

2. An error when XKB feature is disabled.
Fedora enables the XKB feature but this problem is reported by the other platforms.
The patch was integrated.

3. Cannot open ibus panel icon menu in gnome-shell 3.2.1.
I had added a workaround not to move the input focus with ibus status icon in Fedora 15 but it does not work in Fedora 16 and the workaround caused an up compatible issue in gnome-shell 3.2.1.
The patch was integrated.

4. IM engine’s menu items are not selectable on ibus panel icon meenu.
IME menu items cannot be selected because of no focus in gnome-shell 3.2.x because of the F15 workaround.
The patch was integrated.

Posted in IBus | Tagged , , | 12 Comments

IBus XIM Compose Key

Now IBus supports XIM compose keys. ibus-xkb owns the hard-coded XIM data.
IBus also supports the ISO 14755 (Unicode hex codes).
The module ibus-xkb is the part of Fedora IBus and I’m porting the features into ibus-xkb.
I put the demo here:

The compose feature does not depend on the client applications; GTK, QT, X11 applications.

The demo file is generated by gnome-shell. Control+Shift+Alt+R keybinding can start/stop to record desktop :) .
https://live.gnome.org/GnomeShell/Features

Posted in IBus | Tagged , , | 1 Comment

Mousepad does not enable TAB with IBus

Mousepad is a simple text editor for Xfce and it’s available on Fedora too.
I got the following request:

If I’m not mistaken, you’re the author of this patch for mousepad: http://code.google.com/p/ibus/issues/detail?id=1192
First off, thank you very much for fixing this annoying bug that has vexed me for months!
Now, the only problem is that the same bug still exists for the TAB key, as in TAB key strokes are not recognized with ibus running, but work if I kill ibus.
Sadly, I couldn’t really tell how you fixed the enter key, so I couldn’t reproduce a fix for TAB either.
Maybe your could help me? This problem just seems way too small to open up yet another bug report, so I hope you can help me.

お願いします!

I checked the source code and the similar fix also needs to be applied for TAB key.
The following is the all the fix of Enter and TAB keys:

--- mousepad-0.2.16/src/keyevent.c.orig
+++ mousepad-0.2.16/src/keyevent.c
@@ -89,19 +89,19 @@ static gboolean cb_key_press_event(GtkWi
 	case GDK_Return:
 		if (check_preedit(text_view))
 			return FALSE;
-		if ((indent_get_state() && !(event->state &= GDK_SHIFT_MASK)) ||
-			(!indent_get_state() && (event->state &= GDK_SHIFT_MASK))) {
+		if ((indent_get_state() && !(event->state & GDK_SHIFT_MASK)) ||
+			(!indent_get_state() && (event->state & GDK_SHIFT_MASK))) {
 			indent_real(text_view);
 			return TRUE;
 		}
 		break;
 	case GDK_Tab:
-		if (event->state &= GDK_CONTROL_MASK) {
+		if (event->state & GDK_CONTROL_MASK) {
 			indent_toggle_tab_width(text_view);
 			return TRUE;
 		}
 	case GDK_ISO_Left_Tab:
-		if (event->state &= GDK_SHIFT_MASK) {
+		if (event->state & GDK_SHIFT_MASK) {
 			keyval = 0;
 			indent_multi_line_unindent(buffer);
 		} else if (!check_selection_bound(buffer))
Posted in IBus | Tagged , , | 2 Comments