ueno / libskk

Japanese SKK input method library
GNU General Public License v3.0
78 stars 27 forks source link

Let lonely modifiers pass through if no command assigned #64

Open lo48576 opened 6 years ago

lo48576 commented 6 years ago

This change prevents modifiers, "Control_L" without normal key for example, from being eaten by libskk.

This is essentially doing same thing as 10555a292c2c9f45294f84a52810eff16dd901c8, except for returning false to let modifiers pass through.

lo48576 commented 6 years ago

In my environment, modifiers such as Control_L causes unexpected behaviour without this patch.

Using fcitx-skk and libskk-1.0.5:

p o c Bksp →ぽ
p o c Ctrl → ぽc
p o c Ctrl Bksp Bksp →ぽc
p o c Ctrl a →ぽあ
p o c C-h Bksp a →ぽあ

This patch fixes behaviour in these cases (and it work as expected in my env.)

I can't reproduce this problem by using skk command, and I don't know how to write tests for this.