Skip to content

Overview

Keyboard

The BlueFletch Keyboard is a configurable replacement for the device's default keyboard. These configurable settings allow for changing the keyboard layouts, disable key previews, and choose a feedback option when a key is pressed.

Keyboard Layouts

The default keyboard layout is chosen with the boolean settings "bigButtonText" and "alphanumeric". Below are examples of the different keyboard settings.

Standard Layout

To get the standard keyboard, use the following settings:

"bigButtonText": false,
"alphanumeric": false

Example

Standard Layout

Alphanumeric Layout

To get the alphanumeric keyboard, use the following settings:

"bigButtonText": false,
"alphanumeric": true

Example

Alphanumeric Layout

Big Button Layout

To get the big button keyboard, use the following settings:

"bigButtonText": true,
"alphanumeric": false

If both "bigButtonText" and "alphanumeric" are set to true, the keyboard will default to big button layout.

Example

Left Big Button Layout Right Big Button Layout

Toggling Layouts

The layout can be switched in-use between standard ("Qwerty"), alphanumeric, and big button if toggling layouts in allowed in the configuration. Upon clicking the Toggle Keyboard button, the user will be prompted to select one of the three layouts.

To allow at all times, use this setting: "allowToggle": true

To allow only while there is a user logged-in to the device, use this setting: "toggleLoggedIn": true Example

Key Preview

Key previews allow for the user to see which key has been pressed while typing. This setting is adjusted by the "keyPreview" boolean value in the config file. In the picture below, "keyPreview" is set to true, and 'j' is being pressed.

Example

Key Preview

Feedback

The feedback on the press of a key is customizable and is adjusted with the "hapticFeedback" setting in the config file. It has the following settings:

For devices on Android 11, Touch vibration must be turned on in order to use the “hapticFeedback” feature of the keyboard. This setting can be found in the device's Sound settings.

Sound and Vibration

The device makes a click sound and vibrates on keypress. This is the default setting.

"hapticFeedback": "hapticClick"

Sound Only

The device makes a click sound on key press.

"hapticFeedback": "click"

Vibration Only

The device vibrates on key press.

"hapticFeedback": "haptic"

No Feedback

The devices does not give any feedback on key press.

"hapticFeedback": "none"

If there is a typo in the String variable, there will be no feedback.

Configuration

The configuration setting to control the keyboard layout, key previews, and feedback options are set within the launcher configuration file.

Field Description
hapticFeedback string Determines what feedback the user will receive on the press of a key. Valid values are "hapticClick", "click", "haptic", and "none". Defaults to "hapticClick".
bigButtonText boolean Determines if the default keyboard will be the big button layout. Valid values are true and false. Defaults to false.
alphanumeric boolean Determines if the default keyboard will be the alphanumeric layout. Valid values are true and false. Defaults to false.
allowToggle boolean If true, allows the keyboard layout to be switched between alphanumeric, big button, and standard ("Qwerty") via a button below the keyboard. Defaults to false.
toggleLoggedIn boolean If true, allows the keyboard layout to be switched between alphanumeric, big button, and standard ("Qwerty") only when a user is logged in; when the user logs out, keyboard returns to the defined layout. Defaults to false.
keyPreview boolean Determines if key previews will be displayed on key press. Valid values are true and false. Defaults to false.

Example Keyboard Config

"keyboard": {
  "hapticFeedback": "hapticClick",
  "bigButtonText": false,
  "alphanumeric": true,
  "keyPreview": false,
  "allowToggle": true,
  "toggleLoggedIn": false
}

Application Details

Package: com.bluefletch.keyboard

After installing the application, set as default keyboard.

Example via ADB

adb shell ime set com.bluefletch.keyboard/.KeyboardInputMethodService