D3E defines key names, "FullWidth" (for Zenkaku), "HalfWidth" (for Hankaku), "Katakana" and "Hiragana".
If the key actually sets the state to the named mode, it's okay. However, GTK, Qt and Android defines the keys as:
GTK Qt Android
GDK_Hiragana_Katakana Qt::Key_Hiragana_Katakana KEYCODE_KATAKANA_HIRAGANA
GDK_Zenkaku_Hankaku Qt::Key_Zenkaku_Hankaku KEYCODE_ZENKAKU_HANKAKU
Note that GTK and Qt also defines
So, if the former key code values are mapped, we cannot use the key names for latter key code values.
So, I think that 'ToggleFullWidthHalfWidth' or something and 'ToggleKatakanaHiragana' or something should be defined.
I'll also be removing:
unless these actually exist as separate keys. I've never seen them that way on a keyboard - they've always been a single key that toggles between the 2 states.
(In reply to comment #1)
> I'll also be removing:
> * Hiragana
> * Katakana
> * FullWidth
> * HalfWidth
> unless these actually exist as separate keys. I've never seen them that way
> on a keyboard - they've always been a single key that toggles between the 2
That's too bad for Windows. On Windows, these keys are "hidden" lockable keys. There are no LEDs for them, but when user presses HalfWidth/FullWidth key, then, the current locked state key up message is dispatched and new locked state key down message is dispatched.
See this bug of Gecko:
For example, when I press Half Width / Full Width key multiple times, then, keyup event for HalfWith and keydown event for FullWidth are fired at (2n+1) time. And keyup event for FullWidth keyup event and keydown event for HalfWidth event are fired at (2n) time.
Unfortunately, Hiragana key and Katakana key are more complicated. They also behaves like HalfWidth or FullWidth key, but Alphanumeric key also causes keyup event for them.
So, implementing on Windows, these key names are necessary. However, on Linux and Android, they are not lockable key. Therefore, we need the key names which indicate toggle key.
See new key mapping on Gecko 25 and later.
# See VK_OEM_* in the table.
Fixed in latest ED.
All 6 keynames are defined:
Thank you, Gary.
However, is it OK "ZenkakuHankaku" vs. "FullWidth" and "HalfWidth"? Sounds odd for me.