Skip to content

terminator dead key/compose key press/release events eaten by ibus and gtk never receives #1802

@sboddy

Description

@sboddy

Hope the title isn't too provocative.

What version of the product are you using? On what operating system?
OS (Linux distributions, UNIX or ...): Linux Ubuntu 14.04 (Trusty) - all up-to-date
Architecture (i386, x86_64): i386
IBus version: 1.5.5-1ubuntu3.1
Python version: 2.7.5-5ubuntu3
dbus version: 1.6.18-0ubuntu4.3
python-dbus version: 1.2.0-2build2
python-ibus version: 1.5.5-1ubuntu3.1
gtk version (if bug is about gtk applications): 2.24.23-0ubuntu1.2 / 3.10.8-0ubuntu1.5
(ibus-gtk: 1.5.5-1ubuntu3.1)

What steps will reproduce the problem?

  1. Launch Terminator
  2. Split with Ctrl+Shift+o to two terminals
  3. Broadcast to all Alt+a (or use dropdown menu that looks like three boxes)
  4. Type some normal characters, should appear in both terminals
  5. Try to enter a dead key or compose sequence, i.e. AltGr+' then e to get é

What is the expected output? What do you see instead?
The é should appear in both terminals. Instead it only appears in the one with the current focus.
If I kill the ibus processes, and repeat the test, the é appears in both terminals as expected.

Please provide any additional information below.
Terminator relies on the key-press-event to detect input into a terminal, then emits that to other listening terminals to control multiple terminals. (Useful in large environments) Some debugging and printing of events shows a difference between what is received when ibus is running and what is received after killing ibus.

Further details can be seen here:
https://bugs.launchpad.net/terminator/+bug/1463704
At first I thought it was the vte component that terminator uses, and raised a bug against it, but that was not the case. Discussion with the vte dev is here:
https://bugzilla.gnome.org/show_bug.cgi?id=750798

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions