Created attachment 3521[details]
topmenu_kbd_group.patch
Now in the openbox menu only latin acellerators really works even the multilayout x-keyboard used. Active layout may not correspond to the defined accelerators when the menu is displayed. In this case, the user must manually set latin layout, which is inconvenient. The proposed patch adds a new key TopMenyuKbdGrup in the <menu> section, lets you specify a layout number that will be installed automatically when you open the menu.
For instance my layouts are "en,ru,ua" (i.e. "en" is group 0). And so
<menu>
<TopMenuKbdGroup>0</TopMenuKbdGroup>
...
</menu>
Unlike some, I think this is useful - especially now that we have utf8 support in menus. We do, however, need a way to restore the original keyboard group once the menu goes away. I don't think it's good usability/engineering to change state out of band like that and not restore it.
(In reply to Paul G from comment #1)
> Unlike some, I think this is useful - especially now that we have utf8
> support in menus. We do, however, need a way to restore the original
> keyboard group once the menu goes away. I don't think it's good
> usability/engineering to change state out of band like that and not restore
> it.
It is not hard technically, but I am not sure that it is right. Change the layout and than restore it - it is incomprehensible behavior. This is not the Linux standard behavior (the same layout for whole system) nor Windows standard behavior (separate layouts for each application).
And also one problem. After utf8 accelerators improving there is possible that user manually change layout during the menu works. IMHO in this case layout restoring is inadmissible.
I think, simple and understandable behavior is better than too smart.
I think you can count on one hand the number of people on this earth who know what an XKB group is. Changing layouts automatically when opening menus also seems wrong in many ways.
(In reply to Mikachu from comment #3)
> I think you can count on one hand the number of people on this earth who
> know what an XKB group is. Changing layouts automatically when opening menus
> also seems wrong in many ways.
100% users who use several keyboard layouts know what is the keyboard layout. Users who use several keyboard layouts but not know wath is xkb layout are Gnome. KDE etc users, not openbox users.
Openbox must be useful.
Created attachment 3521 [details] topmenu_kbd_group.patch Now in the openbox menu only latin acellerators really works even the multilayout x-keyboard used. Active layout may not correspond to the defined accelerators when the menu is displayed. In this case, the user must manually set latin layout, which is inconvenient. The proposed patch adds a new key TopMenyuKbdGrup in the <menu> section, lets you specify a layout number that will be installed automatically when you open the menu. For instance my layouts are "en,ru,ua" (i.e. "en" is group 0). And so <menu> <TopMenuKbdGroup>0</TopMenuKbdGroup> ... </menu>