Created attachment 125768 [details] [review]
don't specify the keytype when not needed
this is a bug report continuing the issue from bug #57242.
The commmit bf4d7d059daf5c6f81d70f8d3e5e2a87265381b7 to xkbcomp breaks the AltGr key in the Slovene ("si") keyboard layout for certain combinations. If the commit is reverted, the functionality is restored.
Attached is also a diff by Benno Schulenberg to xkeyboard-config that fixes the issue.
As I understand, an error in xkeyboard-config was revealed after updating xkbcomp.
Several keyboard layouts in xkeyboard-config (ca cd de gr ie il in kz lk rs ru se ua us uz) here and there set the key.type. In most cases they also define as many levels as the key.type is set to, so there is no problem. At other times they set less levels, but the layout is self-contained (it doesn't include another layout -- which could contain more levels), so there is no problem either. There are just aq few problemtic layouts: beside the ones in symbols/rs, it is the "ru" layout in symbols/de and the sin_phonetic layout in symbols/lk.
For the last one, it is just Shift+V that stops producing V with the new xkbcomp. This is easily fixed by explicitly defining V on the second level of AB04. (But maybe the key can be left blank, because I doubt the V is there on purpose.) For the "de(ru)" layout, it are all the upper levels of the alphabetic keys that stop producing anything with the new xkbcomp. This is easily fixed by removing the key.type setting from that layout.
Also the Slovenian (and Serbian and other layouts that make use of symbols/rs) can easily be made to work with the newer xkcomp by not setting the key.type in those layouts. See the upcoming patch -- against xkeyboard-config.
Created attachment 125771 [details] [review]
makes the rs layouts work with xkbcomp from git
See bug #97336 for a completer patch.
Should this bug be marked resolved? The fix in bug #97336 seems appropriate.
(In reply to Matej Nanut from comment #4)
> Should this bug be marked resolved?
Not yet. Only when the patch has gone into git. Maybe the maintainer thinks it is not the correct fix. It could take a while before he responds, so let's wait and see.
Sergey - patch looks good to me
Thank you, applied!