mirror of
https://github.com/jjsullivan5196/wvkbd.git
synced 2025-07-12 22:14:32 +02:00
Layout: Make Landscape Legit && Practical
-> Make Landscape into a Legit PC Keyboard. (More standard / usable) -> Add a tiny bit of padding on Left/Right edges (Looks better) Notes/Thoughts: While WvKBD is almost certianly the best Wayland/wlroots-based OnScreen Keyboard that I've found: Presonally, I think it is NOT designed for real-world usage with a 2-in-1 laptop or tablet, where you need a 'real' keyboard, with a proper layout. I found it pretty much impossible to use with Hyprland. eg: no mod keys on the main layout, awkward arrow keys, keys moved/placed in radically different places, etc. TBH, even on Mobile, the non-familiar / non-standard layouts feel awkward to me.. Plans: -> Fix/add padding on other layouts. -> Improve all other Layouts to be most standard Note: So far I have only been testing Landscape on my Surface 7 with Hyprland && my own Shell (based on/using Aylur's Gtk Shell). Signed-off-by: jordan Johnston <johnstonljordan@gmail.com>
This commit is contained in:
@ -1102,8 +1102,27 @@ static struct key keys_index[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static struct key keys_landscape[] = {
|
static struct key keys_landscape[] = {
|
||||||
{"Esc", "Esc", 1.0, Code, KEY_ESC, .scheme = 1},
|
{"", "", 0.04, Pad},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"Esc", "Esc", 0.6, Code, KEY_ESC, .scheme = 1},
|
||||||
|
{"`", "~", 1.0, Code, KEY_GRAVE, .scheme = 1},
|
||||||
|
{"1", "!", 1.0, Code, KEY_1, .scheme = 1},
|
||||||
|
{"2", "@", 1.0, Code, KEY_2, .scheme = 1},
|
||||||
|
{"3", "#", 1.0, Code, KEY_3, .scheme = 1},
|
||||||
|
{"4", "$", 1.0, Code, KEY_4, .scheme = 1},
|
||||||
|
{"5", "%", 1.0, Code, KEY_5, .scheme = 1},
|
||||||
|
{"6", "^", 1.0, Code, KEY_6, .scheme = 1},
|
||||||
|
{"7", "&", 1.0, Code, KEY_7, .scheme = 1},
|
||||||
|
{"8", "*", 1.0, Code, KEY_8, .scheme = 1},
|
||||||
|
{"9", "(", 1.0, Code, KEY_9, &layouts[ComposeBracket], .scheme = 1},
|
||||||
|
{"0", ")", 1.0, Code, KEY_0, &layouts[ComposeBracket], .scheme = 1},
|
||||||
|
{"PgUp", "PgUp", 0.44, Code, KEY_PAGEUP, .scheme = 1, .scheme = 1},
|
||||||
|
{"PgDn", "PgDn", 0.44, Code, KEY_PAGEDOWN, .scheme = 1, .scheme = 1},
|
||||||
|
{"Del", "Del", 0.9, Code, KEY_DELETE, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
|
{"Tab", "Tab", 0.8, Code, KEY_TAB, .scheme = 1},
|
||||||
{"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
|
{"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
|
||||||
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
|
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
|
||||||
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
|
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
|
||||||
@ -1114,13 +1133,15 @@ static struct key keys_landscape[] = {
|
|||||||
{"i", "I", 1.0, Code, KEY_I, &layouts[ComposeI]},
|
{"i", "I", 1.0, Code, KEY_I, &layouts[ComposeI]},
|
||||||
{"o", "O", 1.0, Code, KEY_O, &layouts[ComposeO]},
|
{"o", "O", 1.0, Code, KEY_O, &layouts[ComposeO]},
|
||||||
{"p", "P", 1.0, Code, KEY_P, &layouts[ComposeP]},
|
{"p", "P", 1.0, Code, KEY_P, &layouts[ComposeP]},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"[", "{", 0.468, Code, KEY_LEFTBRACE},
|
||||||
{"Tab", "Tab", 1.0, Code, KEY_TAB, .scheme = 1},
|
{"]", "}", 0.468, Code, KEY_RIGHTBRACE},
|
||||||
|
{"⌫", "⌫", 0.52, Code, KEY_BACKSPACE, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
{"↑", "↑", 0.75, Code, KEY_UP, .scheme = 1},
|
{"", "", 0.038, Pad},
|
||||||
{"↓", "↓", 0.75, Code, KEY_DOWN, .scheme = 1},
|
{"⌨͕", "⌨͔", 0.43, NextLayer, .scheme = 1},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"Caps", "Caps", 0.64, Mod, CapsLock, .scheme = 1},
|
||||||
{"a", "A", 1.0, Code, KEY_A, &layouts[ComposeA]},
|
{"a", "A", 1.0, Code, KEY_A, &layouts[ComposeA]},
|
||||||
{"s", "S", 1.0, Code, KEY_S, &layouts[ComposeS]},
|
{"s", "S", 1.0, Code, KEY_S, &layouts[ComposeS]},
|
||||||
{"d", "D", 1.0, Code, KEY_D, &layouts[ComposeD]},
|
{"d", "D", 1.0, Code, KEY_D, &layouts[ComposeD]},
|
||||||
@ -1130,13 +1151,15 @@ static struct key keys_landscape[] = {
|
|||||||
{"j", "J", 1.0, Code, KEY_J, &layouts[ComposeJ]},
|
{"j", "J", 1.0, Code, KEY_J, &layouts[ComposeJ]},
|
||||||
{"k", "K", 1.0, Code, KEY_K, &layouts[ComposeK]},
|
{"k", "K", 1.0, Code, KEY_K, &layouts[ComposeK]},
|
||||||
{"l", "L", 1.0, Code, KEY_L, &layouts[ComposeL]},
|
{"l", "L", 1.0, Code, KEY_L, &layouts[ComposeL]},
|
||||||
{"'", "\"", 1.0, Code, KEY_APOSTROPHE, &layouts[ComposeBracket]},
|
{";", ":", 0.468, Code, KEY_SEMICOLON},
|
||||||
{"/", ">", 1.0, Code, KEY_SLASH},
|
{"'", "''", 0.468, Code, KEY_APOSTROPHE, &layouts[ComposeBracket]},
|
||||||
|
{"Enter", "Enter", 0.8, Code, KEY_ENTER, .scheme = 1},
|
||||||
|
{"", "", 0.038, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
{"←", "←", 0.75, Code, KEY_LEFT, .scheme = 1},
|
{"", "", 0.035, Pad},
|
||||||
{"→", "→", 0.75, Code, KEY_RIGHT, .scheme = 1},
|
{"<>", "<>", 0.41, Layout, 0, &layouts[Special], .scheme = 1},
|
||||||
{"⇧", "⇫", 1.5, Mod, Shift, .scheme = 1},
|
{"⇧", "⇫", 0.9, Mod, Shift, .scheme = 1},
|
||||||
{"z", "Z", 1.0, Code, KEY_Z, &layouts[ComposeZ]},
|
{"z", "Z", 1.0, Code, KEY_Z, &layouts[ComposeZ]},
|
||||||
{"x", "X", 1.0, Code, KEY_X, &layouts[ComposeX]},
|
{"x", "X", 1.0, Code, KEY_X, &layouts[ComposeX]},
|
||||||
{"c", "C", 1.0, Code, KEY_C, &layouts[ComposeC]},
|
{"c", "C", 1.0, Code, KEY_C, &layouts[ComposeC]},
|
||||||
@ -1144,24 +1167,32 @@ static struct key keys_landscape[] = {
|
|||||||
{"b", "B", 1.0, Code, KEY_B, &layouts[ComposeB]},
|
{"b", "B", 1.0, Code, KEY_B, &layouts[ComposeB]},
|
||||||
{"n", "N", 1.0, Code, KEY_N, &layouts[ComposeN]},
|
{"n", "N", 1.0, Code, KEY_N, &layouts[ComposeN]},
|
||||||
{"m", "M", 1.0, Code, KEY_M, &layouts[ComposeM]},
|
{"m", "M", 1.0, Code, KEY_M, &layouts[ComposeM]},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{",", "<", 0.468, Code, KEY_COMMA, &layouts[ComposeMath]},
|
||||||
{"-", "_", 1.0, Code, KEY_MINUS, &layouts[ComposeBracket]},
|
{".", ">", 0.468, Code, KEY_DOT, &layouts[ComposePunctuation]},
|
||||||
{"⌫", "⌫", 1.5, Code, KEY_BACKSPACE, .scheme = 1},
|
{"/", "?", 0.468, Code, KEY_SLASH},
|
||||||
|
{"\\", "|", 0.468, Code, KEY_BACKSLASH},
|
||||||
|
{"↑", "↑", 0.468, Code, KEY_UP, .scheme = 1},
|
||||||
|
{"Cmp", "Cmp", 0.47, Compose, .scheme = 1},
|
||||||
|
{"", "", 0.035, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
{"⌨͕", "⌨͔", 1.0, NextLayer, .scheme = 1},
|
{"", "", 0.03, Pad},
|
||||||
{"Cmp", "Cmp", 1.0, Compose, .scheme = 1},
|
{"Ctr", "Ctr", 0.56, Mod, Ctrl, .scheme = 1},
|
||||||
{"Ctr", "Ctr", 1.0, Mod, Ctrl, .scheme = 1},
|
{"Sup", "Sup", 0.56, Mod, Super, .scheme = 1},
|
||||||
{",", "'", 1.0, Code, KEY_COMMA, &layouts[ComposeMath]},
|
{"Alt", "Alt", 0.56, Mod, Alt, .scheme = 1},
|
||||||
{"", "Tab", 5.0, Code, KEY_SPACE},
|
{"", "Tab", 5.8, Code, KEY_SPACE},
|
||||||
{".", "?", 1.0, Code, KEY_DOT, &layouts[ComposePunctuation]},
|
{"-", "_", 0.4, Code, KEY_MINUS, &layouts[ComposeBracket]},
|
||||||
{"Enter", "Enter", 2.0, Code, KEY_ENTER, .scheme = 1},
|
{"=", "+", 0.4, Code, KEY_EQUAL, &layouts[ComposeBracket]},
|
||||||
|
{"←", "←", 0.4, Code, KEY_LEFT, .scheme = 1},
|
||||||
|
{"↓", "↓", 0.4, Code, KEY_DOWN, .scheme = 1},
|
||||||
|
{"→", "→", 0.4, Code, KEY_RIGHT, .scheme = 1},
|
||||||
|
{"", "", 0.03, Pad},
|
||||||
/* end of layout */
|
/* end of layout */
|
||||||
{"", "", 0.0, Last},
|
{"", "", 0.0, Last},
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct key keys_landscape_special[] = {
|
static struct key keys_landscape_special[] = {
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"Esc", "Esc", 1.0, Code, KEY_ESC, .scheme = 1},
|
{"Esc", "Esc", 1.0, Code, KEY_ESC, .scheme = 1},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"", "", 0.5, Pad, .scheme = 1},
|
||||||
{"1", "!", 1.0, Code, KEY_1},
|
{"1", "!", 1.0, Code, KEY_1},
|
||||||
@ -1176,8 +1207,10 @@ static struct key keys_landscape_special[] = {
|
|||||||
{"0", ")", 1.0, Code, KEY_0, &layouts[ComposeBracket]},
|
{"0", ")", 1.0, Code, KEY_0, &layouts[ComposeBracket]},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"", "", 0.5, Pad, .scheme = 1},
|
||||||
{"Tab", "Tab", 1.0, Code, KEY_TAB, .scheme = 1},
|
{"Tab", "Tab", 1.0, Code, KEY_TAB, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"⇈", "⇈", 1.0, Code, KEY_PAGEUP, .scheme = 1},
|
{"⇈", "⇈", 1.0, Code, KEY_PAGEUP, .scheme = 1},
|
||||||
{"⇊", "⇊", 1.0, Code, KEY_PAGEDOWN, .scheme = 1},
|
{"⇊", "⇊", 1.0, Code, KEY_PAGEDOWN, .scheme = 1},
|
||||||
{"CpL", "CpL", 1.0, Mod, CapsLock, .scheme = 1},
|
{"CpL", "CpL", 1.0, Mod, CapsLock, .scheme = 1},
|
||||||
@ -1191,8 +1224,10 @@ static struct key keys_landscape_special[] = {
|
|||||||
{"\\", "|", 1.0, Code, KEY_BACKSLASH},
|
{"\\", "|", 1.0, Code, KEY_BACKSLASH},
|
||||||
{"/", ">", 1.0, Code, KEY_SLASH},
|
{"/", ">", 1.0, Code, KEY_SLASH},
|
||||||
{"Del", "Del", 1.0, Code, KEY_DELETE, .scheme = 1},
|
{"Del", "Del", 1.0, Code, KEY_DELETE, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"⇤", "⇤", 1.0, Code, KEY_HOME, .scheme = 1},
|
{"⇤", "⇤", 1.0, Code, KEY_HOME, .scheme = 1},
|
||||||
{"⇥", "⇥", 1.0, Code, KEY_END, .scheme = 1},
|
{"⇥", "⇥", 1.0, Code, KEY_END, .scheme = 1},
|
||||||
{"⇧", "⇫", 2.0, Mod, Shift, .scheme = 1},
|
{"⇧", "⇫", 2.0, Mod, Shift, .scheme = 1},
|
||||||
@ -1205,8 +1240,10 @@ static struct key keys_landscape_special[] = {
|
|||||||
{"/", ">", 1.0, Code, KEY_SLASH},
|
{"/", ">", 1.0, Code, KEY_SLASH},
|
||||||
{"", "", 0.5, Pad, .scheme = 1},
|
{"", "", 0.5, Pad, .scheme = 1},
|
||||||
{"⌫", "⌫", 1.5, Code, KEY_BACKSPACE, .scheme = 1},
|
{"⌫", "⌫", 1.5, Code, KEY_BACKSPACE, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"", "", 0.0, EndRow},
|
{"", "", 0.0, EndRow},
|
||||||
|
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
{"Abc", "Abc", 1.0, BackLayer, .scheme = 1},
|
{"Abc", "Abc", 1.0, BackLayer, .scheme = 1},
|
||||||
{"⌨͕", "⌨͔", 1.0, NextLayer, .scheme = 1},
|
{"⌨͕", "⌨͔", 1.0, NextLayer, .scheme = 1},
|
||||||
{"Ctr", "Ctr", 1.0, Mod, Ctrl, .scheme = 1},
|
{"Ctr", "Ctr", 1.0, Mod, Ctrl, .scheme = 1},
|
||||||
@ -1215,6 +1252,7 @@ static struct key keys_landscape_special[] = {
|
|||||||
{"Alt", "Alt", 1.0, Mod, Alt, .scheme = 1},
|
{"Alt", "Alt", 1.0, Mod, Alt, .scheme = 1},
|
||||||
{"AGr", "AGr", 1.0, Mod, AltGr, .scheme = 1},
|
{"AGr", "AGr", 1.0, Mod, AltGr, .scheme = 1},
|
||||||
{"Enter", "Enter", 2.0, Code, KEY_ENTER, .scheme = 1},
|
{"Enter", "Enter", 2.0, Code, KEY_ENTER, .scheme = 1},
|
||||||
|
{"", "", 0.04, Pad},
|
||||||
|
|
||||||
/* end of layout */
|
/* end of layout */
|
||||||
{"", "", 0.0, Last},
|
{"", "", 0.0, Last},
|
||||||
|
Reference in New Issue
Block a user