diff options
Diffstat (limited to 'src/layouts/ar_AR')
-rw-r--r-- | src/layouts/ar_AR/dialpad.fallback | 0 | ||||
-rw-r--r-- | src/layouts/ar_AR/digits.qml | 100 | ||||
-rw-r--r-- | src/layouts/ar_AR/handwriting.qml | 74 | ||||
-rw-r--r-- | src/layouts/ar_AR/main.qml | 205 | ||||
-rw-r--r-- | src/layouts/ar_AR/numbers.qml | 173 | ||||
-rw-r--r-- | src/layouts/ar_AR/symbols.qml | 365 |
6 files changed, 917 insertions, 0 deletions
diff --git a/src/layouts/ar_AR/dialpad.fallback b/src/layouts/ar_AR/dialpad.fallback new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/layouts/ar_AR/dialpad.fallback diff --git a/src/layouts/ar_AR/digits.qml b/src/layouts/ar_AR/digits.qml new file mode 100644 index 00000000..3b9788a2 --- /dev/null +++ b/src/layouts/ar_AR/digits.qml @@ -0,0 +1,100 @@ +// Copyright (C) 2016 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 +import QtQuick.VirtualKeyboard.Plugins + +KeyboardLayout { + inputMethod: PlainInputMethod {} + inputMode: InputEngine.InputMode.Numeric + + KeyboardColumn { + Layout.fillWidth: false + Layout.fillHeight: true + Layout.alignment: Qt.AlignHCenter + Layout.preferredWidth: height + KeyboardRow { + Key { + key: 0x0667 + text: "\u0667" + alternativeKeys: "\u06677" + } + Key { + key: 0x0668 + text: "\u0668" + alternativeKeys: "\u06688" + } + Key { + key: 0x0669 + text: "\u0669" + alternativeKeys: "\u06699" + } + BackspaceKey {} + } + KeyboardRow { + Key { + key: 0x0664 + text: "\u0664" + alternativeKeys: "\u06644" + } + Key { + key: 0x0665 + text: "\u0665" + alternativeKeys: "\u06655" + } + Key { + key: 0x0666 + text: "\u0666" + alternativeKeys: "\u06666" + } + Key { + text: " " + displayText: "\u2423" + repeat: true + showPreview: false + key: Qt.Key_Space + highlighted: true + } + } + KeyboardRow { + Key { + key: 0x0661 + text: "\u0661" + alternativeKeys: "\u06611" + } + Key { + key: 0x0662 + text: "\u0662" + alternativeKeys: "\u06622" + } + Key { + key: 0x0663 + text: "\u0663" + alternativeKeys: "\u06633" + } + HideKeyboardKey { + visible: true + } + } + KeyboardRow { + ChangeLanguageKey { + customLayoutsOnly: true + visible: true + } + Key { + key: 0x0660 + text: "\u0660" + alternativeKeys: "\u06600" + } + Key { + key: Qt.Key_Comma + text: "\u066B" + alternativeKeys: "\u066B,." + } + EnterKey {} + } + } +} diff --git a/src/layouts/ar_AR/handwriting.qml b/src/layouts/ar_AR/handwriting.qml new file mode 100644 index 00000000..e93dfab7 --- /dev/null +++ b/src/layouts/ar_AR/handwriting.qml @@ -0,0 +1,74 @@ +// 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: InputEngine.InputMode.Arabic + readonly property bool alphabeticInputMode: [InputEngine.InputMode.Latin, InputEngine.InputMode.Dialable].indexOf(InputContext.inputEngine.inputMode) !== -1 + + KeyboardRow { + KeyboardColumn { + Layout.preferredWidth: 1 + InputModeKey { + inputModeNameList: [ + "ABC", // InputEngine.InputMode.Latin + "\u0660\u0661\u0662", // InputEngine.InputMode.Numeric + "123", // InputEngine.InputMode.Dialable + "", // InputEngine.InputMode.Pinyin + "", // InputEngine.InputMode.Cangjie + "", // InputEngine.InputMode.Zhuyin + "", // InputEngine.InputMode.Hangul + "", // InputEngine.InputMode.Hiragana + "", // InputEngine.InputMode.Katakana + "", // InputEngine.InputMode.FullwidthLatin + "", // InputEngine.InputMode.Greek + "", // InputEngine.InputMode.Cyrillic + "\u0623\u200C\u0628\u200C\u062C", // InputEngine.InputMode.Arabic + ] + } + ChangeLanguageKey { + visible: true + } + ShiftKey { + } + HandwritingModeKey { + } + } + KeyboardColumn { + Layout.preferredWidth: 8 + TraceInputKey { + objectName: "hwrInputArea" + patternRecognitionMode: InputEngine.PatternRecognitionMode.Handwriting + horizontalRulers: + alphabeticInputMode ? [] : + [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: alphabeticInputMode ? "#%&*/\\\"'=+-_:;,.?!<>() " : "#%&*/\\\"'=+-_:\u061B\u060C.\u061F!<>() " + smallText: alphabeticInputMode ? "!?" : "\u061F!" + smallTextVisible: true + highlighted: true + } + HideKeyboardKey { + visible: true + } + BackspaceKey { + } + EnterKey { + } + } + } +} diff --git a/src/layouts/ar_AR/main.qml b/src/layouts/ar_AR/main.qml new file mode 100644 index 00000000..d31bd2cc --- /dev/null +++ b/src/layouts/ar_AR/main.qml @@ -0,0 +1,205 @@ +// 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 + +KeyboardLayout { + inputMode: InputEngine.InputMode.Arabic + keyWeight: 160 + smallTextVisible: true + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + text: "\u0636" + alternativeKeys: "1\u0636\u0661" + } + Key { + id: normalKey + text: "\u0635" + alternativeKeys: "2\u0635\u0662" + } + Key { + text: "\u062B" + alternativeKeys: "3\u062B\u0663" + } + Key { + text: "\u0642" + alternativeKeys: "4\u0642\u0664" + } + Key { + text: "\u0641" + alternativeKeys: "5\u0641\u0665" + } + Key { + text: "\u063A" + alternativeKeys: "6\u063A\u0666" + } + Key { + text: "\u0639" + alternativeKeys: "7\u0639\u0667" + } + Key { + text: "\u0647" + alternativeKeys: "8\u0647\u0668" + } + Key { + text: "\u062E" + alternativeKeys: "9\u062E\u0669" + } + Key { + text: "\u062D" + alternativeKeys: "0\u062D\u0660" + } + Key { + text: "\u062C" + alternativeKeys: "\u062C\u0686" + } + Key { + text: "\u062F" + alternativeKeys: "\u062F\uFDFC" + } + } + KeyboardRow { + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + FillerKey { + } + Key { + text: "\u0634" + weight: normalKeyWidth + Layout.fillWidth: false + } + } + Key { + text: "\u0633" + } + Key { + text: "\u064A" + } + Key { + text: "\u0628" + alternativeKeys: "\u0628\u067E" + } + Key { + text: "\u0644" + alternativeKeys: ["\u0644\u0623", "\u0644\u0622", "\u0644", "\u0644\u0627", "\u0644\u0625"] + } + Key { + text: "\u0627" + alternativeKeys: "\u0625\u0627\u0623\u0622" + } + Key { + text: "\u062A" + } + Key { + text: "\u0646" + } + Key { + text: "\u0645" + } + Key { + text: "\u0643" + alternativeKeys: "\u0643\u06AF" + } + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + Key { + text: "\u0630" + weight: normalKeyWidth + Layout.fillWidth: false + } + FillerKey { + } + } + } + KeyboardRow { + KeyboardRow { + Layout.preferredWidth: functionKeyWidth + Layout.fillWidth: false + FillerKey { + } + Key { + text: "\u0626" + weight: normalKeyWidth + Layout.fillWidth: false + } + } + Key { + text: "\u0621" + } + Key { + text: "\u0624" + } + Key { + text: "\u0631" + } + Key { + text: "\u0649" + } + Key { + text: "\u0629" + } + Key { + text: "\u0648" + } + Key { + text: "\u0632" + } + Key { + text: "\u0637" + } + Key { + text: "\u0638" + alternativeKeys: "\u064E\u064C\u0650\u064D\u0651\u0652\u0670\u0653\u0640\u0638\u064B\u064F" + smallText: "\u25CC\u0650 " + } + BackspaceKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + KeyboardRow { + SymbolModeKey { + displayText: "\u0661\u0662\u0663\u061F" + weight: functionKeyWidth + Layout.fillWidth: false + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "\u060C" + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: Qt.Key_Period + weight: normalKeyWidth + Layout.fillWidth: false + text: "." + alternativeKeys: "!,\u060C\u061B.\u061F" + highlighted: true + } + HideKeyboardKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } +} diff --git a/src/layouts/ar_AR/numbers.qml b/src/layouts/ar_AR/numbers.qml new file mode 100644 index 00000000..a9dec1f8 --- /dev/null +++ b/src/layouts/ar_AR/numbers.qml @@ -0,0 +1,173 @@ +// Copyright (C) 2016 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 +import QtQuick.VirtualKeyboard.Plugins + +KeyboardLayout { + inputMethod: PlainInputMethod {} + inputMode: InputEngine.InputMode.Numeric + + KeyboardRow { + Layout.fillWidth: false + Layout.fillHeight: true + Layout.alignment: Qt.AlignHCenter + KeyboardColumn { + Layout.fillWidth: false + Layout.fillHeight: true + Layout.preferredWidth: parent.height / 4 * 3 + KeyboardRow { + Key { + key: Qt.Key_ParenLeft + text: "(" + } + Key { + key: Qt.Key_ParenRight + text: ")" + } + Key { + key: Qt.Key_Period + text: "." + } + } + KeyboardRow { + Key { + key: Qt.Key_division + text: "\u00F7" + } + Key { + key: Qt.Key_multiply + text: "\u00D7" + } + Key { + key: Qt.Key_Plus + text: "+" + } + } + KeyboardRow { + Key { + key: Qt.Key_AsciiCircum + text: "^" + } + Key { + key: Qt.Key_Slash + text: "/" + } + Key { + key: Qt.Key_Minus + text: "-" + } + } + KeyboardRow { + Key { + key: 0x221A + text: "√" + } + Key { + key: Qt.Key_Percent + text: "%" + } + Key { + key: Qt.Key_Asterisk + text: "*" + } + } + } + KeyboardColumn { + Layout.fillWidth: false + Layout.fillHeight: true + Layout.preferredWidth: parent.height / 8 + KeyboardRow { + FillerKey {} + } + } + KeyboardColumn { + Layout.fillWidth: false + Layout.fillHeight: true + Layout.preferredWidth: parent.height + KeyboardRow { + Key { + key: 0x0667 + text: "\u0667" + alternativeKeys: "\u06677" + } + Key { + key: 0x0668 + text: "\u0668" + alternativeKeys: "\u06688" + } + Key { + key: 0x0669 + text: "\u0669" + alternativeKeys: "\u06699" + } + BackspaceKey {} + } + KeyboardRow { + Key { + key: 0x0664 + text: "\u0664" + alternativeKeys: "\u06644" + } + Key { + key: 0x0665 + text: "\u0665" + alternativeKeys: "\u06655" + } + Key { + key: 0x0666 + text: "\u0666" + alternativeKeys: "\u06666" + } + Key { + text: " " + displayText: "\u2423" + repeat: true + showPreview: false + key: Qt.Key_Space + highlighted: true + } + } + KeyboardRow { + Key { + key: 0x0661 + text: "\u0661" + alternativeKeys: "\u06611" + } + Key { + key: 0x0662 + text: "\u0662" + alternativeKeys: "\u06622" + } + Key { + key: 0x0663 + text: "\u0663" + alternativeKeys: "\u06633" + } + HideKeyboardKey { + visible: true + } + } + KeyboardRow { + ChangeLanguageKey { + customLayoutsOnly: true + visible: true + } + Key { + key: 0x0660 + text: "\u0660" + alternativeKeys: "\u06600" + } + Key { + key: Qt.Key_Comma + text: "\u066B" + alternativeKeys: "\u066B,." + } + EnterKey {} + } + } + } +} diff --git a/src/layouts/ar_AR/symbols.qml b/src/layouts/ar_AR/symbols.qml new file mode 100644 index 00000000..a28a96e8 --- /dev/null +++ b/src/layouts/ar_AR/symbols.qml @@ -0,0 +1,365 @@ +// 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 { + property bool secondPage + onVisibleChanged: if (!visible) secondPage = false + sourceComponent: secondPage ? page2 : page1 + Component { + id: page1 + KeyboardLayout { + keyWeight: 160 + smallTextVisible: true + readonly property real normalKeyWidth: normalKey.width + readonly property real functionKeyWidth: mapFromItem(normalKey, normalKey.width / 2, 0).x + KeyboardRow { + Key { + key: 0x0661 + text: "\u0661" + alternativeKeys: "\u06611" + } + Key { + id: normalKey + key: 0x0662 + text: "\u0662" + alternativeKeys: "\u06622" + } + Key { + key: 0x0663 + text: "\u0663" + alternativeKeys: "\u06633" + } + Key { + key: 0x0664 + text: "\u0664" + alternativeKeys: "\u06644" + } + Key { + key: 0x0665 + text: "\u0665" + alternativeKeys: "\u06655" + } + Key { + key: 0x0666 + text: "\u0666" + alternativeKeys: "\u06666" + } + Key { + key: 0x0667 + text: "\u0667" + alternativeKeys: "\u06677" + } + Key { + key: 0x0668 + text: "\u0668" + alternativeKeys: "\u06688" + } + Key { + key: 0x0669 + text: "\u0669" + alternativeKeys: "\u06699" + } + Key { + key: 0x0660 + text: "\u0660" + alternativeKeys: "\u06600" + } + } + 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_Semicolon + text: "\u061B" + alternativeKeys: "\u061B;" + } + Key { + key: Qt.Key_Slash + text: "/" + } + Key { + key: Qt.Key_Exclam + text: "!" + } + Key { + key: Qt.Key_Question + text: "\u061F" + alternativeKeys: "\u061F?" + } + BackspaceKey { + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + displayText: "\u0623\u200C\u0628\u200C\u062C" + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "\u060C" + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: Qt.Key_Period + weight: normalKeyWidth + Layout.fillWidth: false + text: "." + alternativeKeys: "!,\u060C." + highlighted: true + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } + Component { + id: page2 + KeyboardLayout { + keyWeight: 160 + smallTextVisible: true + 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: 0xA2 + text: "¢" + } + 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_Colon + text: ":" + } + Key { + key: 0x201C + text: '“' + } + Key { + key: 0x201D + text: '”' + } + Key { + key: Qt.Key_Backslash + text: "\\" + } + BackspaceKey { + } + } + KeyboardRow { + SymbolModeKey { + weight: functionKeyWidth + Layout.fillWidth: false + displayText: "\u0623\u200C\u0628\u200C\u062C" + } + ChangeLanguageKey { + weight: normalKeyWidth + Layout.fillWidth: false + } + Key { + key: Qt.Key_Comma + weight: normalKeyWidth + Layout.fillWidth: false + text: "\u060C" + smallText: "\u2699" + smallTextVisible: keyboard.isFunctionPopupListAvailable() + highlighted: true + } + SpaceKey { + } + Key { + key: 0x2026 + weight: normalKeyWidth + Layout.fillWidth: false + text: "\u2026" + highlighted: true + } + EnterKey { + weight: functionKeyWidth + Layout.fillWidth: false + } + } + } + } +} |