FS#6220 - Keyboard: max. glyph width doesn't get reset when using custom .kbd and changing font

Attached to Project: Rockbox
Opened by PaulJam (PaulJam) - Friday, 20 October 2006, 21:33 GMT
Last edited by Nils Wallménius (nls) - Sunday, 19 August 2007, 17:11 GMT
Task Type Bugs
Category User Interface
Status Closed
Assigned To No-one
Operating System Iriver H300 series
Severity Very Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


When using a custom layout for the virtual keyboard via a .kbd file and change to a font that is narrower than the previous font, the width of the grid in the keyboard is still that which was used for the previous font. Only after a reboot the width is adjusted to the new font. When changing to a wider font the grid gets calculated correctly.

Reproduction (on H300):
Load the font nimbus12, load a .kbd file, enter the virtual keyboard, now 18 glyphs fit on each line. Then load the font courB14 and enter the keyboard, now 15 glyphs fit on each line. When you now load the nimbus12 font again and enter the virtual keyboard the number of glyphs that fit on each line is still 15 instead of 18.

Possible fix:
in apps/recorder/keyboard.c insert the line "param[l].font_w = 0;" before the maximum glyph width gets calculated in line 329. This fixes the problem, but I don't know if it has any bad side effects.
This task depends upon

Closed by  Nils Wallménius (nls)
Sunday, 19 August 2007, 17:11 GMT
Reason for closing:  Fixed