FS#7511 - Problem with onscreen keyboard and long lines
Opened by Raúl Núñez de Arenas Coronado (DervishD) - Tuesday, 31 July 2007, 18:40 GMT
Last edited by Teruaki Kawashima (teru) - Sunday, 04 October 2009, 14:53 GMT
Hi all :)
This problem happens even with the default font and iconset, but I've discovered it using the 6+12x13 font and my own set of icons (12x12 pixels).
The problem is that, if the line to edit is too long for the screen, characters whose UCS are 0xe110 (mapped to hw character 0x10) and 0xe10f (mapped to hw character 0x11) are painted indicating that there are more unseen characters. These characters seem to be taken not from the font, but from the iconset. Even with the default iconset, the left pointing arrow (0xe10f) slightly overlaps with the first character in the line being edited, but if the iconset is wide (for example, the one I'm using, which is 12 pixels wide while the font is only 6 pixels wide) then the glyph overlaps half of the next char or more, and can be seen completely (only about the half of the bitmap can be seen).
The easy fix is not to use icons in place of chars, that is, changing the definitions of KEYBOARD_INSERT_LEFT and KEYBOARD_INSERT_RIGHT in file apps/player/keyboard.c so they don't use characters in the 0xeXXX range, but an appropriate Unicode character. Since I don't know the bare minimum of Unicode glyphs that a font MUST contain to be usable in RockBox, I don't dare to suggest any character (although I would use '<' and '>' if forced to plain ASCII).
If you can use any Unicode character, then I would suggest U+25B8 for the right pointing triangle, U+25C2 for the left pointing triangle and probably U+25B6 or something like that for KEYBOARD_ARROW.
I know that this is not a bug strictly speaking, but it's a bit annoying and makes RB a bit less good looking, and since it's very easy to fix...
Raúl Núñez de Arenas Coronado (DervishD)
Sunday, 04 October 2009, 14:53 GMT
Reason for closing: Fixed
Additional comments about closing: fixed in r22917.