This is optional keyboard hack:
---------------------------------------------
Keyboard Hack:
Keyboard Geometry
/usr/lib64/maliit/plugins/jolla-keyboard.qml
cd /usr/lib64/maliit/plugins/
cp /usr/lib64/maliit/plugins/jolla-keyboard.qml /usr/lib64/maliit/plugins/jolla-keyboard.qml.bak
vi /usr/lib64/maliit/plugins/jolla-keyboard.qml
Undo:
cp /usr/lib64/maliit/plugins/jolla-keyboard.qml.bak /usr/lib64/maliit/plugins/jolla-keyboard.qml
88 interval: 300 //75 // 300 Testen!
646 duration: 100 // 300
668 PauseAnimation { duration: 67 } // 200
674 duration: 67 // 200
---------------------------------------------
Keyboard Comma Hack:
Put comma from left to space button to right:
cp SpacebarRow.qml SpacebarRow.qml.bak
File is:
vi /usr/share/maliit/plugins/com/jolla/SpacebarRow.qml
After the licence text, change it to look this way:
import QtQuick 2.0
import com.jolla.keyboard 1.0
KeyboardRow {
splitIndex: 2 //3
SymbolKey {}
// ContextAwareCommaKey {}
SpacebarKey {}
SpacebarKey {
active: splitActive
languageLabel: ""
}
ContextAwareCommaKey {} //move this line to here
PeriodKey {}
EnterKey {}
}
---------------------eof-----
1. Make splitIndex: 2 //3
2. Move line containing 'ContextAwareCommaKey {}' to it's new place
Undo:
cp SpacebarRow.qml.bak SpacebarRow.qml
---------------------------------------------
Reduce the keyboard's height - for layout extension see larger file at the end.
/usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml
cd /usr/share/maliit/plugins/com/jolla/
cp /usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml /usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml.bak
vi /usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml
Undo:
cp /usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml.bak /usr/share/maliit/plugins/com/jolla/KeyboardGeometry.qml
As a reminder, if using vi or vim, you can display the lines number by typing
:set number Line numbers may vary in other SFOS versions.
32 line 32, change the 58 value to e.g. 37:
property int keyHeightLandscape: isLargeScreen ? keyHeightPortrait : 58*verticalScale
33 line 33, change the 80 value to e.g. 50: // line 33 in SFOS 4.6.0.13
property int keyHeightPortrait: 80*verticalScale
38 52 line 38, change the 99 value to 70: // Line 36 in SFOS 4.5.0.19, line 52 in SFOS 4.6.0.13
property int popperHeight: isLargeScreen ? 99*scaleRatio : 120*scaleRatio
Then restart the GUI of course.
systemctl --user restart lipstick
--------------------------------------------- LAST TWEAK OF LIST
---------------------------------------------
Extend keyboard layout with smarter popups - no more shift and symbol needed - Example: DE, is possible the same way for other languages.
File is: /usr/share/maliit/plugins/com/jolla/layouts/de.qml
cd /usr/share/maliit/plugins/com/jolla/layouts/
cp /usr/share/maliit/plugins/com/jolla/layouts/de.qml /usr/share/maliit/plugins/com/jolla/layouts/de.qml.bak
vi /usr/share/maliit/plugins/com/jolla/layouts/de.qml
Undo:
cp /usr/share/maliit/plugins/com/jolla/layouts/de.qml.bak /usr/share/maliit/plugins/com/jolla/layouts/de.qml
This is the keyboard layout with 4 rows and extended popups (german)
After changing restart the GUI of course.
Replace content of file after the licence text with this:
import QtQuick 2.0
import ".."
KeyboardLayout {
splitSupported: true
KeyboardRow {
CharacterKey { caption: "1"; captionShifted: "1"; symView: "1"; symView2: "1" }
CharacterKey { caption: "2"; captionShifted: "2"; symView: "2"; symView2: "2" }
CharacterKey { caption: "3"; captionShifted: "3"; symView: "3"; symView2: "3" }
CharacterKey { caption: "4"; captionShifted: "4"; symView: "4"; symView2: "4" }
CharacterKey { caption: "5"; captionShifted: "5"; symView: "5"; symView2: "5" }
CharacterKey { caption: "6"; captionShifted: "6"; symView: "6"; symView2: "6" }
CharacterKey { caption: "7"; captionShifted: "7"; symView: "7"; symView2: "7" }
CharacterKey { caption: "8"; captionShifted: "8"; symView: "8"; symView2: "8" }
CharacterKey { caption: "9"; captionShifted: "9"; symView: "9"; symView2: "9" }
CharacterKey { caption: "0"; captionShifted: "0"; symView: "0"; symView2: "0" }
FittedCharacterKey { caption: "ß"; captionShifted: "@"; symView: "°"; symView2: "¤" }
}
KeyboardRow {
CharacterKey { caption: "q"; captionShifted: "Q"; symView: "_"; symView2: "€"; accents: "Q"; accentsShifted: "q" }
CharacterKey { caption: "w"; captionShifted: "W"; symView: "|"; symView2: "£"; accents: "W"; accentsShifted: "w" }
CharacterKey { caption: "e"; captionShifted: "E"; symView: "$"; symView2: "$"; accents: "&Eé€"; accentsShifted: "&eÉ€" }
CharacterKey { caption: "r"; captionShifted: "R"; symView: "§"; symView2: "¥"; accents: "#R¡!"; accentsShifted: "#r¡!" }
CharacterKey { caption: "t"; captionShifted: "T"; symView: "{"; symView2: "₹"; accents: "T~"; accentsShifted: "t~" }
CharacterKey { caption: "z"; captionShifted: "Z"; symView: "["; symView2: "¤"; accents: "Z"; accentsShifted: "z" }
CharacterKey { caption: "u"; captionShifted: "U"; symView: "]"; symView2: "<"; accents: "&_úU"; accentsShifted: "&_uúÚ" }
CharacterKey { caption: "i"; captionShifted: "I"; symView: "}"; symView2: ">"; accents: "Ií"; accentsShifted: "Íií" }
CharacterKey { caption: "o"; captionShifted: "O"; symView: "<"; symView2: "["; accents: "óO"; accentsShifted: "Óoó" }
CharacterKey { caption: "p"; captionShifted: "P"; symView: ">"; symView2: "]"; accents: "‰§%P+"; accentsShifted: "‰§%p+" }
FittedCharacterKey { caption: "ü"; captionShifted: "Ü"; symView: "%"; symView2: "‰"; accents: "Ü" }
}
KeyboardRow {
CharacterKey { caption: "a"; captionShifted: "A"; symView: "*"; symView2: "`"; accents: "A@'áåæ"; accentsShifted: "a@'ÁÅÆ"}
CharacterKey { caption: "s"; captionShifted: "S"; symView: "#"; symView2: "^"; accents: "|*S;ş$"; accentsShifted: "|*s;Ş$" }
CharacterKey { caption: "d"; captionShifted: "D"; symView: "+"; symView2: "|"; accents: "÷D:/$"; accentsShifted: "÷d:/$" }
CharacterKey { caption: "f"; captionShifted: "F"; symView: "-"; symView2: "_"; accents: "F¿?"; accentsShifted: "f¿?" }
CharacterKey { caption: "g"; captionShifted: "G"; symView: "="; symView2: "§"; accents: ">=Gğ'\""; accentsShifted: ">=gĞ'\"" }
CharacterKey { caption: "h"; captionShifted: "H"; symView: "("; symView2: "{"; accents: "H"; accentsShifted: "h" }
CharacterKey { caption: "j"; captionShifted: "J"; symView: ")"; symView2: "}"; accents: "J"; accentsShifted: "j" }
CharacterKey { caption: "k"; captionShifted: "K"; symView: "\""; symView2: "°"; accents: "<K([{"; accentsShifted: "<k([{" }
CharacterKey { caption: "l"; captionShifted: "L"; symView: "~"; symView2: "·"; accents: ">L)]}"; accentsShifted: ">l)]}" }
CharacterKey { caption: "ö"; captionShifted: "Ö"; symView: "!"; symView2: "¡"; accents: "Ö"; accentsShifted: "ö" }
CharacterKey { caption: "ä"; captionShifted: "Ä"; symView: "?"; symView2: "¿"; accents: "Ä"; accentsShifted: "ä" }
}
KeyboardRow {
splitIndex: 5
ShiftKey {}
CharacterKey { caption: "y"; captionShifted: "Y"; symView: "@"; symView2: "«"; accents: "ýY¥"; accentsShifted: "Ýy¥" }
CharacterKey { caption: "x"; captionShifted: "X"; symView: "&"; symView2: "»"; accents: "X*"; accentsShifted: "x*" }
CharacterKey { caption: "c"; captionShifted: "C"; symView: "/"; symView2: "÷"; accents: "Cç"; accentsShifted: "cÇ" }
CharacterKey { caption: "v"; captionShifted: "V"; symView: "\\"; symView2: "“"; accents: "V"; accentsShifted: "v" }
CharacterKey { caption: "b"; captionShifted: "B"; symView: "'"; symView2: "”"; accents: "`B"; accentsShifted: "`b" }
CharacterKey { caption: "n"; captionShifted: "N"; symView: ";"; symView2: "„"; accents: "Nñ#"; accentsShifted: "nÑ#" }
CharacterKey { caption: "m"; captionShifted: "M"; symView: ":"; symView2: "×"; accents: "×M-"; accentsShifted: "×m-" }
BackspaceKey {}
}
SpacebarRow {}
}
Enjoy!