FS#5641 - Custom keyboard - better embed and solves bugs.

Attached to Project: Rockbox
Opened by Shachar (Lamed) - Monday, 10 July 2006, 01:09 GMT
Last edited by Jonas Häggqvist (rasher) - Sunday, 14 December 2008, 20:12 GMT
Task Type Patches
Category User Interface
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


This is my last patch i've been working on at the last week.
The virtual keyboard have had some time ago some new features implemented into, but they were very uncomfortable to use. my patch improves many things.

* switching between the default and custom (loaded) keyboard buffer.
user: If player has a button to flip pages, it will now first flip pages on the same buffer, and at the last page it will flip to the next buffer.
if not, player flips pages on left and right screen edges, and flips keyboard buffers on up/down edges.
code: There's a new buffer defined in keyboard.c, static unsigned short custom_kbd_buf[KBD_BUF_SIZE]. the load_kbd function loads the table into that buffer. that way we can switch between the two buffers without reloading an external file every time.

* custom keyboard buffer treats on newlines.
user: whether you use windows or linux, just write a file in your own native lanugage, with whatever keys you need; you wouldn't get one long line with all the characters that you choose.
code: the new custom_kbd_buf is loaded into kbd_buf, (just like the default_kbd keyboard buffer does) so we can act on newlines.

* code cleanups
code: there where some functions that where run when they shouldn't have run at all, or should have run just once.

* fix a global settings bug.
code: settings.c and filetree.c treat .kbd extension files in a wrong way, causing the loaded custom keyboard not to be saved in a configuration file, or loaded in a fresh boot or a settings load. it's fixed.
This task depends upon

Closed by  Jonas Häggqvist (rasher)
Sunday, 14 December 2008, 20:12 GMT
Reason for closing:  Rejected
Additional comments about closing:  No work for more than 2 years.
Comment by Shachar (Lamed) - Wednesday, 06 September 2006, 21:52 GMT
This patch is obviously not working since the remote virtual keyboard patch update that iirc, mmmm made. there are now a lot of small problems and glitches to work out in the cvs.