EnglishV4MultiIT keyboard layout (#449)

* EnglishV4MultiIT keyboard layout

* format code with ./gradlew formatKotlin

---------

Co-authored-by: Yuri Valentini <yv@3cx.com>
This commit is contained in:
Yuri Valentini 2023-09-29 16:11:51 +02:00 committed by GitHub
parent 63e669bb54
commit f01bc1a4cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 500 additions and 0 deletions

View File

@ -0,0 +1,497 @@
package com.dessalines.thumbkey.keyboards
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.outlined.ArrowDropDown
import androidx.compose.material.icons.outlined.ArrowDropUp
import androidx.compose.material.icons.outlined.Copyright
import androidx.compose.material.icons.outlined.KeyboardCapslock
import com.dessalines.thumbkey.utils.ColorVariant
import com.dessalines.thumbkey.utils.FontSizeVariant
import com.dessalines.thumbkey.utils.KeyAction
import com.dessalines.thumbkey.utils.KeyC
import com.dessalines.thumbkey.utils.KeyDisplay
import com.dessalines.thumbkey.utils.KeyItemC
import com.dessalines.thumbkey.utils.KeyboardC
import com.dessalines.thumbkey.utils.KeyboardMode
import com.dessalines.thumbkey.utils.SwipeDirection
import com.dessalines.thumbkey.utils.SwipeNWay
val THUMBKEY_EN_V4_MULTI_IT_MAIN = KeyboardC(
listOf(
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("s"),
action = KeyAction.CommitText("s"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("w"),
action = KeyAction.CommitText("w"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("r"),
action = KeyAction.CommitText("r"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.TWO_WAY_VERTICAL,
swipes = mapOf(
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("g"),
action = KeyAction.CommitText("g"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("o"),
action = KeyAction.CommitText("o"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ò"),
action = KeyAction.CommitText("ò"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ù"),
action = KeyAction.CommitText("ù"),
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("u"),
action = KeyAction.CommitText("u"),
),
),
),
EMOJI_KEY_ITEM,
),
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("n"),
action = KeyAction.CommitText("n"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.TWO_WAY_HORIZONTAL,
swipes = mapOf(
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("m"),
action = KeyAction.CommitText("m"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("h"),
action = KeyAction.CommitText("h"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("j"),
action = KeyAction.CommitText("j"),
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("q"),
action = KeyAction.CommitText("q"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("b"),
action = KeyAction.CommitText("b"),
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("p"),
action = KeyAction.CommitText("p"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("y"),
action = KeyAction.CommitText("y"),
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("x"),
action = KeyAction.CommitText("x"),
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("v"),
action = KeyAction.CommitText("v"),
),
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("k"),
action = KeyAction.CommitText("k"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("a"),
action = KeyAction.CommitText("a"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("l"),
action = KeyAction.CommitText("l"),
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.IconDisplay(Icons.Outlined.ArrowDropUp),
action = KeyAction.ToggleShiftMode(true),
color = ColorVariant.MUTED,
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("à"),
action = KeyAction.CommitText("à"),
),
),
),
NUMERIC_KEY_ITEM,
),
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("t"),
action = KeyAction.CommitText("t"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("c"),
action = KeyAction.CommitText("c"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("i"),
action = KeyAction.CommitText("i"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("ì"),
action = KeyAction.CommitText("ì"),
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("f"),
action = KeyAction.CommitText("f"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("'"),
action = KeyAction.CommitText("'"),
color = ColorVariant.MUTED,
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("z"),
action = KeyAction.CommitText("z"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("-"),
action = KeyAction.CommitText("-"),
color = ColorVariant.MUTED,
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("."),
action = KeyAction.CommitText("."),
color = ColorVariant.MUTED,
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("*"),
action = KeyAction.CommitText("*"),
color = ColorVariant.MUTED,
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("e"),
action = KeyAction.CommitText("e"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("d"),
action = KeyAction.CommitText("d"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("è"),
action = KeyAction.CommitText("è"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("é"),
action = KeyAction.CommitText("é"),
),
),
),
BACKSPACE_KEY_ITEM,
),
listOf(
SPACEBAR_KEY_ITEM,
RETURN_KEY_ITEM,
),
),
)
val THUMBKEY_EN_V4_MULTI_IT_SHIFTED = KeyboardC(
listOf(
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("S"),
action = KeyAction.CommitText("S"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("W"),
action = KeyAction.CommitText("W"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("R"),
action = KeyAction.CommitText("R"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.TWO_WAY_VERTICAL,
swipes = mapOf(
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("G"),
action = KeyAction.CommitText("G"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("O"),
action = KeyAction.CommitText("O"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("Ò"),
action = KeyAction.CommitText("Ò"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("Ù"),
action = KeyAction.CommitText("Ù"),
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("U"),
action = KeyAction.CommitText("U"),
),
),
),
EMOJI_KEY_ITEM,
),
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("N"),
action = KeyAction.CommitText("N"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.TWO_WAY_HORIZONTAL,
swipes = mapOf(
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("M"),
action = KeyAction.CommitText("M"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("H"),
action = KeyAction.CommitText("H"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("J"),
action = KeyAction.CommitText("J"),
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("Q"),
action = KeyAction.CommitText("Q"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("B"),
action = KeyAction.CommitText("B"),
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("P"),
action = KeyAction.CommitText("P"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("Y"),
action = KeyAction.CommitText("Y"),
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("X"),
action = KeyAction.CommitText("X"),
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("V"),
action = KeyAction.CommitText("V"),
),
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("K"),
action = KeyAction.CommitText("K"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("A"),
action = KeyAction.CommitText("A"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("L"),
action = KeyAction.CommitText("L"),
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.IconDisplay(Icons.Outlined.ArrowDropDown),
action = KeyAction.ToggleShiftMode(false),
color = ColorVariant.MUTED,
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.IconDisplay(Icons.Outlined.KeyboardCapslock),
capsModeDisplay = KeyDisplay.IconDisplay(Icons.Outlined.Copyright),
action = KeyAction.ToggleCapsLock,
color = ColorVariant.MUTED,
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("À"),
action = KeyAction.CommitText("À"),
),
),
),
NUMERIC_KEY_ITEM,
),
listOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("T"),
action = KeyAction.CommitText("T"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("C"),
action = KeyAction.CommitText("C"),
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("I"),
action = KeyAction.CommitText("I"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.EIGHT_WAY,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("Ì"),
action = KeyAction.CommitText("Ì"),
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("F"),
action = KeyAction.CommitText("F"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("'"),
action = KeyAction.CommitText("'"),
color = ColorVariant.MUTED,
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("Z"),
action = KeyAction.CommitText("Z"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("-"),
action = KeyAction.CommitText("-"),
color = ColorVariant.MUTED,
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("."),
action = KeyAction.CommitText("."),
color = ColorVariant.MUTED,
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("*"),
action = KeyAction.CommitText("*"),
color = ColorVariant.MUTED,
),
),
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("E"),
action = KeyAction.CommitText("E"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY,
),
swipeType = SwipeNWay.FOUR_WAY_DIAGONAL,
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("D"),
action = KeyAction.CommitText("D"),
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("È"),
action = KeyAction.CommitText("È"),
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("É"),
action = KeyAction.CommitText("É"),
),
),
),
BACKSPACE_KEY_ITEM,
),
listOf(
SPACEBAR_KEY_ITEM,
RETURN_KEY_ITEM,
),
),
)
val THUMBKEY_EN_V4_MULTI_IT_KEYBOARD_MODES: Map<KeyboardMode, KeyboardC> = mapOf(
KeyboardMode.MAIN to THUMBKEY_EN_V4_MULTI_IT_MAIN,
KeyboardMode.SHIFTED to THUMBKEY_EN_V4_MULTI_IT_SHIFTED,
KeyboardMode.NUMERIC to NUMERIC_KEYBOARD,
)

View File

@ -166,6 +166,7 @@ enum class KeyboardLayout(val title: String, val index: Int) {
ThumbKeyIDv2("Thumb-Key Bahasa Indonesia with Symbols v2", 62),
ThumbKeyIDv1SN("Thumb-Key Bahasa Indonesia with Symbols and Number v1", 63),
ThumbKeyESCAv1("Thumb-Key español català v1", 64),
ThumbKeyENv4MultiIT("Thumb-Key english v4 (EN+IT multi)", 65),
}
enum class KeyboardPosition(private val stringId: Int) {

View File

@ -53,6 +53,7 @@ import com.dessalines.thumbkey.keyboards.THUMBKEY_DE_V2_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_DE_V2_MULTILINGUAL_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_PROGRAMMER_WIDE_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_MULTI_IT_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_MULTI_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_PROGRAMMER_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_SYMBOLS_KEYBOARD_MODES
@ -135,6 +136,7 @@ fun keyboardLayoutToModes(layout: KeyboardLayout): Map<KeyboardMode, KeyboardC>
KeyboardLayout.ThumbKeyENv4 -> THUMBKEY_EN_V4_KEYBOARD_MODES
KeyboardLayout.ThumbKeyENv4Programmer -> THUMBKEY_EN_V4_PROGRAMMER_KEYBOARD_MODES
KeyboardLayout.ThumbKeyENv4Multi -> THUMBKEY_EN_V4_MULTI_KEYBOARD_MODES
KeyboardLayout.ThumbKeyENv4MultiIT -> THUMBKEY_EN_V4_MULTI_IT_KEYBOARD_MODES
KeyboardLayout.ThumbKeyDEv2 -> THUMBKEY_DE_V2_KEYBOARD_MODES
KeyboardLayout.ThumbKeyDAv1 -> THUMBKEY_DA_V1_KEYBOARD_MODES
KeyboardLayout.ThumbKeyESv1 -> THUMBKEY_ES_V1_KEYBOARD_MODES