diff options
Diffstat (limited to 'src/layouts/ko_KR')
-rw-r--r-- | src/layouts/ko_KR/dialpad.fallback | 0 | ||||
-rw-r--r-- | src/layouts/ko_KR/digits.fallback | 0 | ||||
-rw-r--r-- | src/layouts/ko_KR/handwriting.qml | 73 | ||||
-rw-r--r-- | src/layouts/ko_KR/main.qml | 334 | ||||
-rw-r--r-- | src/layouts/ko_KR/numbers.fallback | 0 | ||||
-rw-r--r-- | src/layouts/ko_KR/symbols.qml | 362 |
6 files changed, 769 insertions, 0 deletions
diff --git a/src/layouts/ko_KR/dialpad.fallback b/src/layouts/ko_KR/dialpad.fallback new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/layouts/ko_KR/dialpad.fallback diff --git a/src/layouts/ko_KR/digits.fallback b/src/layouts/ko_KR/digits.fallback new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/layouts/ko_KR/digits.fallback diff --git a/src/layouts/ko_KR/handwriting.qml b/src/layouts/ko_KR/handwriting.qml new file mode 100644 index 00000000..5502517d --- /dev/null +++ b/src/layouts/ko_KR/handwriting.qml @@ -0,0 +1,73 @@ +// Copyright (C) 2021 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +import QtQuick +import QtQuick.Layouts +import QtQuick.VirtualKeyboard +import QtQuick.VirtualKeyboard.Components + +KeyboardLayout { + function createInputMethod() { + return Qt.createQmlObject('import QtQuick; import QtQuick.VirtualKeyboard.Plugins; HandwritingInputMethod {}', parent) + } + sharedLayouts: ['symbols'] + inputMode: preferredInputMode() + + Connections { + target: InputContext + function onInputMethodHintsChanged() { + var newInputMode = preferredInputMode() + if (InputContext.inputEngine.inputModes.indexOf(newInputMode) !== -1) + InputContext.inputEngine.inputMode = newInputMode + } + } + + function preferredInputMode() { + return InputContext.inputMethodHints & + (Qt.ImhPreferLatin | Qt.ImhEmailCharactersOnly | Qt.ImhUrlCharactersOnly | + Qt.ImhLatinOnly) ? InputEngine.InputMode.Latin : InputEngine.InputMode.KoreanHandwriting + } + + KeyboardRow { + KeyboardColumn { + Layout.preferredWidth: 1 + InputModeKey { + } + ChangeLanguageKey { + visible: true + } + ShiftKey { + } + HandwritingModeKey { + } + } + KeyboardColumn { + Layout.preferredWidth: 8 + TraceInputKey { + objectName: "hwrInputArea" + patternRecognitionMode: InputEngine.PatternRecognitionMode.Handwriting + horizontalRulers: + InputContext.inputEngine.inputMode !== InputEngine.InputMode.KoreanHandwriting ? [] : + [Math.round(boundingBox.height / 4), Math.round(boundingBox.height / 4) * 2, Math.round(boundingBox.height / 4) * 3] + } + } + KeyboardColumn { + Layout.preferredWidth: 1 + Key { + key: Qt.Key_Period + text: "." + alternativeKeys: "<>()/\\\"'=+-_:;,.?! " + smallText: "!?" + smallTextVisible: true + highlighted: true + } + HideKeyboardKey { + visible: true + } + BackspaceKey { + } + EnterKey { + } + } + } +} diff --git a/src/layouts/ko_KR/main.qml b/src/layouts/ko_KR/main.qml new file mode 100644 index 00000000..b04c6310 --- /dev/null +++ b/src/layouts/ko_KR/main.qml @@ -0,0 +1,334 @@ +// Copyright (C) 2021 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +import QtQuick +import QtQuick.VirtualKeyboard +import QtQuick.VirtualKeyboard.Components +import QtQuick.Layouts + +KeyboardLayoutLoader { + function createInputMethod() { + return Qt.createQmlObject('import QtQuick; import QtQuick.VirtualKeyboard.Plugins; HangulInputMethod {}', parent, "main.qml") + } + sourceComponent: InputContext.shiftActive ? page2 : page1 + sharedLayouts: ['symbols'] + Component { + id: page1 + KeyboardLayout { + keyWeight: 160 + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + text: "\u3142" + alternativeKeys: "\u3142\u3143" + } + Key { + id: normalKey + text: "\u3148" + alternativeKeys: "\u3148\u3149" + } + Key { + text: "\u3137" + alternativeKeys: "\u3137\u3138" + } + Key { + text: "\u3131" + alternativeKeys: "\u3131\u3132" + } + Key { + text: "\u3145" + alternativeKeys: "\u3145\u3146" + } + Key { + text: "\u315B" + } + Key { + text: "\u3155" + } + Key { + text: "\u3151" + } + Key { + text: "\u3150" + alternativeKeys: "\u3150\u3152" + } + Key { + text: "\u3154" + alternativeKeys: "\u3154\u3156" + } + } + KeyboardRow { + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + FillerKey { + } + Key { + text: "\u3141" + weight: normalKeyWidth + Layout.fillWidth: false + } + } + Key { + text: "\u3134" + } + Key { + text: "\u3147" + } + Key { + text: "\u3139" + } + Key { + text: "\u314E" + } + Key { + text: "\u3157" + } + Key { + text: "\u3153" + } + Key { + text: "\u314F" + } + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + Key { + text: "\u3163" + weight: normalKeyWidth + Layout.fillWidth: false + } + FillerKey { + } + } + } + KeyboardRow { + ShiftKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + Key { + text: "\u314B" + } + Key { + text: "\u314C" + } + Key { + text: "\u314A" + } + Key { + text: "\u314D" + } + Key { + text: "\u3160" + } + Key { + text: "\u315C" + } + Key { + text: "\u3161" + } + BackspaceKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "," + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: Qt.Key_Period + weight: normalKeyWidth + Layout.fillWidth: false + text: "." + alternativeKeys: "!.?" + smallText: "!?" + smallTextVisible: true + highlighted: true + } + HideKeyboardKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } + Component { + id: page2 + KeyboardLayout { + keyWeight: 160 + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + text: "\u3143" + } + Key { + id: normalKey + text: "\u3149" + } + Key { + text: "\u3138" + } + Key { + text: "\u3132" + } + Key { + text: "\u3146" + } + Key { + text: "\u315B" + } + Key { + text: "\u3155" + } + Key { + text: "\u3151" + } + Key { + text: "\u3152" + } + Key { + text: "\u3156" + } + } + KeyboardRow { + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + FillerKey { + } + Key { + text: "\u3141" + weight: normalKeyWidth + Layout.fillWidth: false + } + } + Key { + text: "\u3134" + } + Key { + text: "\u3147" + } + Key { + text: "\u3139" + } + Key { + text: "\u314E" + } + Key { + text: "\u3157" + } + Key { + text: "\u3153" + } + Key { + text: "\u314F" + } + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + Key { + text: "\u3163" + weight: normalKeyWidth + Layout.fillWidth: false + } + FillerKey { + } + } + } + KeyboardRow { + ShiftKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + Key { + text: "\u314B" + } + Key { + text: "\u314C" + } + Key { + text: "\u314A" + } + Key { + text: "\u314D" + } + Key { + text: "\u3160" + } + Key { + text: "\u315C" + } + Key { + text: "\u3161" + } + BackspaceKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "," + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: Qt.Key_Period + weight: normalKeyWidth + Layout.fillWidth: false + text: "." + alternativeKeys: "!.?" + smallText: "!?" + smallTextVisible: true + highlighted: true + } + HideKeyboardKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } +} diff --git a/src/layouts/ko_KR/numbers.fallback b/src/layouts/ko_KR/numbers.fallback new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/layouts/ko_KR/numbers.fallback diff --git a/src/layouts/ko_KR/symbols.qml b/src/layouts/ko_KR/symbols.qml new file mode 100644 index 00000000..c7e0890c --- /dev/null +++ b/src/layouts/ko_KR/symbols.qml @@ -0,0 +1,362 @@ +// Copyright (C) 2021 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +import QtQuick +import QtQuick.Layouts +import QtQuick.VirtualKeyboard +import QtQuick.VirtualKeyboard.Components + +KeyboardLayoutLoader { + function createInputMethod() { + return Qt.createQmlObject('import QtQuick; import QtQuick.VirtualKeyboard.Plugins; HangulInputMethod {}', parent, "symbols.qml") + } + sharedLayouts: ['main'] + property bool secondPage + onVisibleChanged: if (!visible) secondPage = false + sourceComponent: secondPage ? page2 : page1 + Component { + id: page1 + KeyboardLayout { + keyWeight: 160 + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + key: Qt.Key_1 + text: "1" + } + Key { + id: normalKey + key: Qt.Key_2 + text: "2" + } + Key { + key: Qt.Key_3 + text: "3" + } + Key { + key: Qt.Key_4 + text: "4" + } + Key { + key: Qt.Key_5 + text: "5" + } + Key { + key: Qt.Key_6 + text: "6" + } + Key { + key: Qt.Key_7 + text: "7" + } + Key { + key: Qt.Key_8 + text: "8" + } + Key { + key: Qt.Key_9 + text: "9" + } + Key { + key: Qt.Key_0 + text: "0" + } + } + KeyboardRow { + Key { + key: Qt.Key_At + text: "@" + } + Key { + key: Qt.Key_NumberSign + text: "#" + } + Key { + key: Qt.Key_Percent + text: "%" + } + Key { + key: Qt.Key_Ampersand + text: "&" + } + Key { + key: Qt.Key_Asterisk + text: "*" + } + Key { + key: Qt.Key_Underscore + text: "_" + } + Key { + key: Qt.Key_Minus + text: "-" + } + Key { + key: Qt.Key_Plus + text: "+" + } + Key { + key: Qt.Key_ParenLeft + text: "(" + } + Key { + key: Qt.Key_ParenRight + text: ")" + } + } + KeyboardRow { + Key { + displayText: "1/2" + functionKey: true + onClicked: secondPage = !secondPage + highlighted: true + } + Key { + key: Qt.Key_QuoteDbl + text: '"' + } + Key { + key: Qt.Key_Less + text: "<" + } + Key { + key: Qt.Key_Greater + text: ">" + } + Key { + key: Qt.Key_Apostrophe + text: "'" + } + Key { + key: Qt.Key_Colon + text: ":" + } + Key { + key: Qt.Key_Slash + text: "/" + } + Key { + key: Qt.Key_Exclam + text: "!" + } + Key { + key: Qt.Key_Question + text: "?" + } + BackspaceKey { + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + displayText: "\uD55C\uAE00" + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "," + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: Qt.Key_Period + weight: normalKeyWidth + Layout.fillWidth: false + text: "." + highlighted: true + } + HideKeyboardKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } + Component { + id: page2 + KeyboardLayout { + keyWeight: 160 + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + key: Qt.Key_AsciiTilde + text: "~" + } + Key { + id: normalKey + key: Qt.Key_Agrave + text: "`" + } + Key { + key: Qt.Key_Bar + text: "|" + } + Key { + key: 0x7B + text: "·" + } + Key { + key: 0x221A + text: "√" + } + Key { + key: Qt.Key_division + text: "÷" + } + Key { + key: Qt.Key_multiply + text: "×" + } + Key { + key: Qt.Key_onehalf + text: "½" + alternativeKeys: "¼⅓½¾⅞" + } + Key { + key: Qt.Key_BraceLeft + text: "{" + } + Key { + key: Qt.Key_BraceRight + text: "}" + } + } + KeyboardRow { + Key { + key: Qt.Key_Dollar + text: "$" + } + Key { + key: 0x20AC + text: "€" + } + Key { + key: 0xC2 + text: "£" + } + Key { + key: 0x20A9 + text: "\u20A9" + } + Key { + key: 0xA5 + text: "¥" + } + Key { + key: Qt.Key_AsciiCircum + text: "^" + } + Key { + key: Qt.Key_Equal + text: "=" + } + Key { + key: Qt.Key_section + text: "§" + } + Key { + key: Qt.Key_BracketLeft + text: "[" + } + Key { + key: Qt.Key_BracketRight + text: "]" + } + } + KeyboardRow { + Key { + displayText: "2/2" + functionKey: true + onClicked: secondPage = !secondPage + highlighted: true + } + Key { + key: 0x2122 + text: '™' + } + Key { + key: 0x00AE + text: '®' + } + Key { + key: Qt.Key_guillemotleft + text: '«' + } + Key { + key: Qt.Key_guillemotright + text: '»' + } + Key { + key: Qt.Key_Semicolon + text: ";" + } + Key { + key: 0x201C + text: '“' + } + Key { + key: 0x201D + text: '”' + } + Key { + key: Qt.Key_Backslash + text: "\\" + } + BackspaceKey { + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + displayText: "\uD55C\uAE00" + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "," + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: 0x2026 + weight: normalKeyWidth + Layout.fillWidth: false + text: "\u2026" + highlighted: true + } + HideKeyboardKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } +} |