Difference between revisions of "On Screen Keyboard"
Rboatright (talk | contribs) (→Issues: 4) |
Rboatright (talk | contribs) (9) |
||
Line 34: | Line 34: | ||
=Change Log= | =Change Log= | ||
===8/13/09 - Fixes=== | ===8/13/09 - Fixes=== | ||
− | Functional backspace, space and enter keys added | + | * Functional backspace, space and enter keys added. |
− | |||
− | |||
===8/16/09 - Fixes=== | ===8/16/09 - Fixes=== | ||
− | Added functional shift and sym capabilities. | + | * Added functional shift and sym capabilities. |
− | Added landscape mode resize. | + | * Added landscape mode resize. |
===8/18/09 - Fixes/Enhancements=== | ===8/18/09 - Fixes/Enhancements=== | ||
− | Added theme capabilities | + | * Added theme capabilities |
− | Changed default theme to use remix2000's images (big thanks!) | + | * Changed default theme to use remix2000's images (big thanks!) |
− | Added missing symbols | + | * Added missing symbols |
− | Fixed landscape mode to correctly render in landscape if launched from that state. | + | * Fixed landscape mode to correctly render in landscape if launched from that state. |
Thanks again to remix2000 for the nice keyboard images. I'll have specs up eventually for the images/theme framework once I implement a user-app callable way to switch themes. | Thanks again to remix2000 for the nice keyboard images. I'll have specs up eventually for the images/theme framework once I implement a user-app callable way to switch themes. | ||
===8/18/09 (evening) - Fixes/Enhancements=== | ===8/18/09 (evening) - Fixes/Enhancements=== | ||
− | Increased width of keyboard to span entire screen | + | * Increased width of keyboard to span entire screen |
− | Added orange-key functionality | + | * Added orange-key functionality |
− | Made keyboard draggable after tapping blank key | + | * Made keyboard draggable after tapping blank key |
− | Added haptic feedback | + | * Added haptic feedback |
=Issues= | =Issues= |
Revision as of 13:57, 19 August 2009
Warning. This is PRE ALPHA testing grade only software. It may cause your pre to melt into a puddle and dissolve while turning blue. Use at your own risk!
Introduction
The Palm Pre ships with a very limited on-screen keyboard for inserting symbols. It works in portrait and landscape, in all apps, in all fields. This on screen keyboard provides a basis for programmers to develop a fully functional on screen keyboard for the Pre.
Explanation
On an unmodified Pre if you press the "sym" key and a scrollable 5x5 keyboard pops up full of alternate characters.
This is controlled by code incorporated into the framework.js. The specific functions there can be seeen in /usr/palm/frameworks/mojo/submissions/191.15/javascripts/widget_charselector.js
with the layout controlled by 3 files in /usr/palm/frameworks/mojo/submissions/191.15/templates/charselector
the actual list of characters that appear on the screen is controlled by /usr/palm/frameworks/mojo/submissions/191.15/resources/en_us/alternatechars_table.json
At the simplest level then, creating an on-screen keyboard requires editing the alternate characters table json, to add the "regular" charcters to it, and then when you want a keyboard, press SYM and poof, a keyboard. The problem with that is, the alternatechars_table.json is "fragile" the slightests mis-edit results in the pre entering a continuous book cycle.
At the next level, the framework's copy of widget_charselector.js needs to be modified to not close the keyboard after each keypress.
As of 12 August 2009 Webos-internals contributor Eric Gaudet (irc egaudet) announced success at patching the framework.js to accept a new function derived from the charselector widget. This pre-alpha proof of concept on-screen keyboard is available as a patch.
Procedure
The patch is on Gitorious, please read the following to install the patch: Applying Patches
The patch should be stored (on Pre) in: /opt/src/modifications/frameworks/add-onscreen-keyboard.patch
There are also theme images needed in the current release. Folow these instructions to install the patch AND the theme images (NOTE: must be root)
sh /opt/src/modifications/install add-onscreen-keyboard.patch sh /opt/src/modifications/frameworks/install_theme
Change Log
8/13/09 - Fixes
- Functional backspace, space and enter keys added.
8/16/09 - Fixes
- Added functional shift and sym capabilities.
- Added landscape mode resize.
8/18/09 - Fixes/Enhancements
- Added theme capabilities
- Changed default theme to use remix2000's images (big thanks!)
- Added missing symbols
- Fixed landscape mode to correctly render in landscape if launched from that state.
Thanks again to remix2000 for the nice keyboard images. I'll have specs up eventually for the images/theme framework once I implement a user-app callable way to switch themes.
8/18/09 (evening) - Fixes/Enhancements
- Increased width of keyboard to span entire screen
- Added orange-key functionality
- Made keyboard draggable after tapping blank key
- Added haptic feedback
Issues
as of 17 August 2009 the following issues are known:
- Do not bring up keyboard when using hard keyboard clipboard events (might have to disable the keyboard when slider is open exposing hard keyboard)
- Enable usage to search contacts/universal search -- for example Name, email address, etc are search fields not text fields.
- Verify auto-correct when space added.
- Add clipboard capabilities
- Explore T9-type, limited-width keyboard options