Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding farsi layout. Fixes #110 #113

Merged
merged 1 commit into from
Mar 31, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
270 changes: 270 additions & 0 deletions app/src/main/java/com/dessalines/thumbkey/keyboards/ThumbKeyFAv1.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
package com.dessalines.thumbkey.keyboards

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

val THUMBKEY_FA_V1_MAIN = KeyboardC(
arrayOf(
arrayOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("د"),
action = KeyAction.CommitText("د"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ص"),
action = KeyAction.CommitText("ص")
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("ض"),
action = KeyAction.CommitText("ض")
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ذ"),
action = KeyAction.CommitText("ذ")
)
)
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("ر"),
action = KeyAction.CommitText("ر"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("ز"),
action = KeyAction.CommitText("ز")
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ژ"),
action = KeyAction.CommitText("ژ")
)
)
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("و"),
action = KeyAction.CommitText("و"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("ؤ"),
action = KeyAction.CommitText("ؤ")
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("ء"),
action = KeyAction.CommitText("ء")
)
)
),
SETTINGS_KEY_ITEM
),
arrayOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("ن"),
action = KeyAction.CommitText("ن"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ج"),
action = KeyAction.CommitText("ج")
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ح"),
action = KeyAction.CommitText("ح")
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("چ"),
action = KeyAction.CommitText("چ")
)
)
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("ا"),
action = KeyAction.CommitText("ا"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("پ"),
action = KeyAction.CommitText("پ")
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("ب"),
action = KeyAction.CommitText("ب")
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("آ"),
action = KeyAction.CommitText("آ")
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("س"),
action = KeyAction.CommitText("س")
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("ش"),
action = KeyAction.CommitText("ش")
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("ل"),
action = KeyAction.CommitText("ل")
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("ع"),
action = KeyAction.CommitText("ع")
),
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("خ"),
action = KeyAction.CommitText("خ")
)
)
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("م"),
action = KeyAction.CommitText("م"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.LEFT to KeyC(
display = KeyDisplay.TextDisplay("ک"),
action = KeyAction.CommitText("ک")
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("گ"),
action = KeyAction.CommitText("گ")
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("ق"),
action = KeyAction.CommitText("ق")
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("ف"),
action = KeyAction.CommitText("ف")
)
)
),
NUMERIC_KEY_ITEM
),
arrayOf(
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("ت"),
action = KeyAction.CommitText("ت"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
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.TOP to KeyC(
display = KeyDisplay.TextDisplay("ث"),
action = KeyAction.CommitText("ث")
)
)
),
KeyItemC(
center = KeyC(
display = KeyDisplay.TextDisplay("ی"),
action = KeyAction.CommitText("ی"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("ئ"),
action = KeyAction.CommitText("ئ")
),
SwipeDirection.TOP_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("'"),
action = KeyAction.CommitText("'"),
color = ColorVariant.MUTED
),
SwipeDirection.BOTTOM to KeyC(
display = KeyDisplay.TextDisplay("<|>"),
action = KeyAction.CommitText("‌")
),
SwipeDirection.BOTTOM_RIGHT to KeyC(
display = KeyDisplay.TextDisplay("."),
action = KeyAction.CommitText("."),
color = ColorVariant.MUTED
),
SwipeDirection.RIGHT to KeyC(
display = KeyDisplay.TextDisplay("-"),
action = KeyAction.CommitText("-"),
color = ColorVariant.MUTED
),
SwipeDirection.LEFT 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("ه"),
action = KeyAction.CommitText("ه"),
size = FontSizeVariant.LARGE,
color = ColorVariant.PRIMARY
),
swipes = mapOf(
SwipeDirection.TOP_LEFT to KeyC(
display = KeyDisplay.TextDisplay("ط"),
action = KeyAction.CommitText("ط")
),
SwipeDirection.TOP to KeyC(
display = KeyDisplay.TextDisplay("ظ"),
action = KeyAction.CommitText("ظ")
),
SwipeDirection.BOTTOM_LEFT to KeyC(
display = KeyDisplay.TextDisplay("؟"),
action = KeyAction.CommitText("؟")
)
)
),
BACKSPACE_KEY_ITEM
),
arrayOf(
SPACEBAR_KEY_ITEM,
RETURN_KEY_ITEM
)
)
)

val THUMBKEY_FA_V1_KEYBOARD_MODES: Map<KeyboardMode, KeyboardC> = mapOf(
KeyboardMode.MAIN to THUMBKEY_FA_V1_MAIN,
KeyboardMode.SHIFTED to THUMBKEY_FA_V1_MAIN,
KeyboardMode.NUMERIC to NUMERIC_KEYBOARD
)
1 change: 1 addition & 0 deletions app/src/main/java/com/dessalines/thumbkey/utils/Types.kt
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ enum class KeyboardLayout(val title: String) {
ThumbKeyENv4("Thumb-Key English v4"),
ThumbKeyDEv2("Thumb-Key Deutsch v2"),
ThumbKeyEUv1("Thumb-Key euskara v1"),
ThumbKeyFAv1("Thumb-Key فارس v1"),
ThumbKeyFIv1("Thumb-Key suomi v1"),
ThumbKeyITv1("Thumb-Key italiano v1"),
ThumbKeyPTv1("Thumb-Key português v1"),
Expand Down
2 changes: 2 additions & 0 deletions app/src/main/java/com/dessalines/thumbkey/utils/Utils.kt
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import com.dessalines.thumbkey.keyboards.MESSAGEEASE_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_DE_V2_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EN_V4_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_EU_V1_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_FA_V1_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_FI_V1_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_IT_V1_KEYBOARD_MODES
import com.dessalines.thumbkey.keyboards.THUMBKEY_PT_V1_KEYBOARD_MODES
Expand Down Expand Up @@ -75,6 +76,7 @@ fun keyboardLayoutToModes(layout: KeyboardLayout): Map<KeyboardMode, KeyboardC>
KeyboardLayout.ThumbKeyENv4 -> THUMBKEY_EN_V4_KEYBOARD_MODES
KeyboardLayout.ThumbKeyDEv2 -> THUMBKEY_DE_V2_KEYBOARD_MODES
KeyboardLayout.ThumbKeyEUv1 -> THUMBKEY_EU_V1_KEYBOARD_MODES
KeyboardLayout.ThumbKeyFAv1 -> THUMBKEY_FA_V1_KEYBOARD_MODES
KeyboardLayout.ThumbKeyFIv1 -> THUMBKEY_FI_V1_KEYBOARD_MODES
KeyboardLayout.ThumbKeyITv1 -> THUMBKEY_IT_V1_KEYBOARD_MODES
KeyboardLayout.ThumbKeyPTv1 -> THUMBKEY_PT_V1_KEYBOARD_MODES
Expand Down