1.5 KiB
Touch Keyboard
A library that provides an on-screen keyboard for text input.
Settings
Text size - small or big text font. Default=Big. Suggested=Small.
Offset keyboard - display the keyboard on top, making it faster to see what character you have selected. Default=No. Suggested=Yes.
Loop around - should the keyboard highlight loop around when going past the edges? Default=Yes. Suggested=No.
One-to-one input and release to select - should the input correspond directly to discrete areas on the screen, instead of being handled by scaled relative changes in position on swipes? Default=No. Suggested=Yes.
Speed scaling - how much should a swipe move the highligt on the keyboard? Higher number corresponds to slower movement. Not applicable if using one-to-one input. Default=24. Suggested=15.
Usage
In your app's metadata, add:
"dependencies": {"textinput":"type"},
From inside your app, call:
Bangle.loadWidgets();
Bangle.drawWidgets();
require("textinput").input({text:"Foo"}).then(result => {
console.log("Text input", E.toJS(result));
});
The first argument to input
is an object containing the following:
text
- initial text to edit
(in the future, the ability to restrict usage of newline/etc may be added)
Make your own
You can create your own keyboard input apps. Just ensure that they have
"type":"textinput",
in their metadata and provide a library called textinput
that exports an input
method.
To-do
Make this Bangle.js 1 compatible (use left/right touch and up/down buttons)