diff options
4 files changed, 792 insertions, 0 deletions
diff --git a/packages/InputDevices/res/raw/keyboard_layout_georgian.kcm b/packages/InputDevices/res/raw/keyboard_layout_georgian.kcm new file mode 100644 index 000000000000..35b66a37336b --- /dev/null +++ b/packages/InputDevices/res/raw/keyboard_layout_georgian.kcm @@ -0,0 +1,383 @@ +# Copyright (C) 2020 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Georgian QWERTY keyboard layout. +# This is a typical Georgian PC keyboard layout. +# As an added convenience, English characters are accessible using ralt (Alt Gr). +# + +type OVERLAY + +map key 86 BACKSLASH + +### ROW 1 + +key GRAVE { + label: '\u201e' + base: '\u201e' + shift, capslock: '\u201c' + ralt: '`' + ralt+shift: '~' +} + +key 1 { + label: '1' + base: '1' + shift: '!' + ralt: '!' +} + +key 2 { + label: '2' + base: '2' + shift: '@' + ralt: '@' + ralt+shift: '\u201e' +} + +key 3 { + label: '3' + base: '3' + shift: '#' + ralt: '#' + ralt+shift: '\u201c' +} + +key 4 { + label: '4' + base: '4' + shift: '$' + ralt: '$' +} + +key 5 { + label: '5' + base: '5' + shift: '%' + ralt: '%' + ralt+shift: '\u20ac' +} + +key 6 { + label: '6' + base: '6' + shift: '^' + ralt: '^' +} + +key 7 { + label: '7' + base: '7' + shift: '&' + ralt: '&' +} + +key 8 { + label: '8' + base: '8' + shift: '*' + ralt: '*' + ralt+shift: '\u00b0' +} + +key 9 { + label: '9' + base: '9' + shift: '(' + ralt: '(' +} + +key 0 { + label: '0' + base: '0' + shift: ')' + ralt: ')' +} + +key MINUS { + label: '-' + base: '-' + shift: '_' + ralt: '_' + ralt+shift: '\u2014' +} + +key EQUALS { + label: '=' + base: '=' + shift: '+' + ralt: '+' + ralt+shift: '\u2013' +} + +### ROW 2 + +key Q { + label: '\u10e5' + base: '\u10e5' + ralt: 'q' + ralt+shift, ralt+capslock: 'Q' +} + +key W { + label: '\u10ec' + base: '\u10ec' + shift, capslock: '\u10ed' + ralt: 'w' + ralt+shift, ralt+capslock: 'W' +} + +key E { + label: '\u10d4' + base: '\u10d4' + ralt: 'e' + ralt+shift, ralt+capslock: 'E' +} + +key R { + label: '\u10e0' + base: '\u10e0' + shift, capslock: '\u10e6' + ralt: 'r' + ralt+shift, ralt+capslock: 'R' +} + +key T { + label: '\u10e2' + base: '\u10e2' + shift, capslock: '\u10d7' + ralt: 't' + ralt+shift, ralt+capslock: 'T' +} + +key Y { + label: '\u10e7' + base: '\u10e7' + ralt: 'y' + ralt+shift, ralt+capslock: 'Y' +} + +key U { + label: '\u10e3' + base: '\u10e3' + ralt: 'u' + ralt+shift, ralt+capslock: 'U' +} + +key I { + label: '\u10d8' + base: '\u10d8' + ralt: 'i' + ralt+shift, ralt+capslock: 'I' +} + +key O { + label: '\u10dd' + base: '\u10dd' + ralt: 'o' + ralt+shift, ralt+capslock: 'O' +} + +key P { + label: '\u10de' + base: '\u10de' + ralt: 'p' + ralt+shift, ralt+capslock: 'P' +} + +key LEFT_BRACKET { + label: '[' + base: '[' + shift, capslock: '{' + ralt: '[' + ralt+shift: '{' +} + +key RIGHT_BRACKET { + label: ']' + base: ']' + shift, capslock: '}' + ralt: ']' + ralt+shift: '}' +} + +key BACKSLASH { + label: '~' + base: '~' + shift: '|' + ralt: '\\' + ralt+shift: '|' +} + +### ROW 3 + +key A { + label: '\u10d0' + base: '\u10d0' + ralt: 'a' + ralt+shift, ralt+capslock: 'A' +} + +key S { + label: '\u10e1' + base: '\u10e1' + shift, capslock: '\u10e8' + ralt: 's' + ralt+shift, ralt+capslock: 'S' +} + +key D { + label: '\u10d3' + base: '\u10d3' + ralt: 'd' + ralt+shift, ralt+capslock: 'D' +} + +key F { + label: '\u10e4' + base: '\u10e4' + ralt: 'f' + ralt+shift, ralt+capslock: 'F' +} + +key G { + label: '\u10d2' + base: '\u10d2' + ralt: 'g' + ralt+shift, ralt+capslock: 'G' +} + +key H { + label: '\u10f0' + base: '\u10f0' + ralt: 'h' + ralt+shift, ralt+capslock: 'H' +} + +key J { + label: '\u10ef' + base: '\u10ef' + shift, capslock: '\u10df' + ralt: 'j' + ralt+shift, ralt+capslock: 'J' +} + +key K { + label: '\u10d9' + base: '\u10d9' + ralt: 'k' + ralt+shift, ralt+capslock: 'K' +} + +key L { + label: '\u10da' + base: '\u10da' + shift, capslock: '\u20be' + ralt: 'l' + ralt+shift, ralt+capslock: 'L' +} + +key SEMICOLON { + label: ';' + base: ';' + shift, capslock: ':' + ralt: ';' + ralt+shift: ':' +} + +key APOSTROPHE { + label: '\'' + base: '\'' + shift, capslock: '"' + ralt: '\'' + ralt+shift: '"' +} + +### ROW 4 + +key Z { + label: '\u10d6' + base: '\u10d6' + shift, capslock: '\u10eb' + ralt: 'z' + ralt+shift, ralt+capslock: 'Z' +} + +key X { + label: '\u10ee' + base: '\u10ee' + ralt: 'x' + ralt+shift, ralt+capslock: 'X' +} + +key C { + label: '\u10ea' + base: '\u10ea' + shift, capslock: '\u10e9' + ralt: 'c' + ralt+shift, ralt+capslock: 'C' +} + +key V { + label: '\u10d5' + base: '\u10d5' + ralt: 'v' + ralt+shift, ralt+capslock: 'V' +} + +key B { + label: '\u10d1' + base: '\u10d1' + ralt: 'b' + ralt+shift, ralt+capslock: 'B' +} + +key N { + label: '\u10dc' + base: '\u10dc' + ralt: 'n' + ralt+shift, ralt+capslock: 'N' +} + +key M { + label: '\u10db' + base: '\u10db' + ralt: 'm' + ralt+shift, ralt+capslock: 'M' +} + +key COMMA { + label: ',' + base: ',' + shift, capslock: '<' + ralt: ',' + ralt+shift: '<' +} + +key PERIOD { + label: '.' + base: '.' + shift, capslock: '>' + ralt: '.' + ralt+shift: '>' +} + +key SLASH { + label: '/' + base: '/' + shift: '?' + ralt: '/' + ralt+shift: '?' +} diff --git a/packages/InputDevices/res/raw/keyboard_layout_mongolian.kcm b/packages/InputDevices/res/raw/keyboard_layout_mongolian.kcm new file mode 100644 index 000000000000..3d4a8c69d216 --- /dev/null +++ b/packages/InputDevices/res/raw/keyboard_layout_mongolian.kcm @@ -0,0 +1,395 @@ +# Copyright (C) 2020 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Mongolian keyboard layout. +# This is a typical Mongolian PC keyboard layout. +# As an added convenience, English characters are accessible using ralt (Alt Gr). +# + +type OVERLAY + +map key 86 BACKSLASH + +### ROW 1 + +key GRAVE { + label: '=' + base: '=' + shift, capslock: '+' + ralt: '`' + ralt+shift: '~' +} + +key 1 { + label: '1' + base: '1' + shift: '\u2116' + ralt: '\u2116' +} + +key 2 { + label: '2' + base: '2' + shift: '-' + ralt: '-' +} + +key 3 { + label: '3' + base: '3' + shift: '"' + ralt: '"' +} + +key 4 { + label: '4' + base: '4' + shift: '\u20ae' + ralt: '\u20ae' +} + +key 5 { + label: '5' + base: '5' + shift: ':' + ralt: ':' +} + +key 6 { + label: '6' + base: '6' + shift: '.' + ralt: '.' +} + +key 7 { + label: '7' + base: '7' + shift: '_' + ralt: '_' +} + +key 8 { + label: '8' + base: '8' + shift: ',' + ralt: ',' +} + +key 9 { + label: '9' + base: '9' + shift: '%' + ralt: '%' +} + +key 0 { + label: '0' + base: '0' + shift: '?' + ralt: '?' +} + +key MINUS { + label: '\u0435' + base: '\u0435' + shift: '\u0415' + ralt: '\u0415' +} + +key EQUALS { + label: '\u0449' + base: '\u0449' + shift: '\u0429' + ralt: '\u0429' +} + +### ROW 2 + +key Q { + label: '\u0444' + base: '\u0444' + shift, capslock: '\u0424' + ralt: 'q' + ralt+shift, ralt+capslock: 'Q' +} + +key W { + label: '\u0446' + base: '\u0446' + shift, capslock: '\u0426' + ralt: 'w' + ralt+shift, ralt+capslock: 'W' +} + +key E { + label: '\u0443' + base: '\u0443' + shift, capslock: '\u0423' + ralt: 'e' + ralt+shift, ralt+capslock: 'E' +} + +key R { + label: '\u0436' + base: '\u0436' + shift, capslock: '\u0416' + ralt: 'r' + ralt+shift, ralt+capslock: 'R' +} + +key T { + label: '\u044d' + base: '\u044d' + shift, capslock: '\u042d' + ralt: 't' + ralt+shift, ralt+capslock: 'T' +} + +key Y { + label: '\u043d' + base: '\u043d' + shift, capslock: '\u041d' + ralt: 'y' + ralt+shift, ralt+capslock: 'Y' +} + +key U { + label: '\u0433' + base: '\u0433' + shift, capslock: '\u0413' + ralt: 'u' + ralt+shift, ralt+capslock: 'U' +} + +key I { + label: '\u0448' + base: '\u0448' + shift, capslock: '\u0428' + ralt: 'i' + ralt+shift, ralt+capslock: 'I' +} + +key O { + label: '\u04af' + base: '\u04af' + shift, capslock: '\u04ae' + ralt: 'o' + ralt+shift, ralt+capslock: 'O' +} + +key P { + label: '\u0437' + base: '\u0437' + shift, capslock: '\u0417' + ralt: 'p' + ralt+shift, ralt+capslock: 'P' +} + +key LEFT_BRACKET { + label: '\u043a' + base: '\u043a' + shift, capslock: '\u041a' + ralt: '[' + ralt+shift: '{' +} + +key RIGHT_BRACKET { + label: '\u044a' + base: '\u044a' + shift, capslock: '\u042a' + ralt: ']' + ralt+shift: '}' +} + +### ROW 3 + +key A { + label: '\u0439' + base: '\u0439' + shift, capslock: '\u0419' + ralt: 'a' + ralt+shift, ralt+capslock: 'A' +} + +key S { + label: '\u044b' + base: '\u044b' + shift, capslock: '\u042b' + ralt: 's' + ralt+shift, ralt+capslock: 'S' +} + +key D { + label: '\u0431' + base: '\u0431' + shift, capslock: '\u0411' + ralt: 'd' + ralt+shift, ralt+capslock: 'D' +} + +key F { + label: '\u04e9' + base: '\u04e9' + shift, capslock: '\u04e8' + ralt: 'f' + ralt+shift, ralt+capslock: 'F' +} + +key G { + label: '\u0430' + base: '\u0430' + shift, capslock: '\u0410' + ralt: 'g' + ralt+shift, ralt+capslock: 'G' +} + +key H { + label: '\u0445' + base: '\u0445' + shift, capslock: '\u0425' + ralt: 'h' + ralt+shift, ralt+capslock: 'H' +} + +key J { + label: '\u0440' + base: '\u0440' + shift, capslock: '\u0420' + ralt: 'j' + ralt+shift, ralt+capslock: 'J' +} + +key K { + label: '\u043e' + base: '\u043e' + shift, capslock: '\u041e' + ralt: 'k' + ralt+shift, ralt+capslock: 'K' +} + +key L { + label: '\u043b' + base: '\u043b' + shift, capslock: '\u041b' + ralt: 'l' + ralt+shift, ralt+capslock: 'L' +} + +key SEMICOLON { + label: '\u0434' + base: '\u0434' + shift, capslock: '\u0414' + ralt: ';' + ralt+shift: ':' +} + +key APOSTROPHE { + label: '\u043f' + base: '\u043f' + shift, capslock: '\u041f' + ralt: '\'' + ralt+shift: '"' +} + +key BACKSLASH { + label: '\\' + base: '\\' + shift: '|' + ralt: '/' + ralt+shift: '|' +} + +### ROW 4 + +key Z { + label: '\u044f' + base: '\u044f' + shift, capslock: '\u042f' + ralt: 'z' + ralt+shift, ralt+capslock: 'Z' +} + +key X { + label: '\u0447' + base: '\u0447' + shift, capslock: '\u0427' + ralt: 'x' + ralt+shift, ralt+capslock: 'X' +} + +key C { + label: '\u0451' + base: '\u0451' + shift, capslock: '\u0401' + ralt: 'c' + ralt+shift, ralt+capslock: 'C' +} + +key V { + label: '\u0441' + base: '\u0441' + shift, capslock: '\u0421' + ralt: 'v' + ralt+shift, ralt+capslock: 'V' +} + +key B { + label: '\u043c' + base: '\u043c' + shift, capslock: '\u041c' + ralt: 'b' + ralt+shift, ralt+capslock: 'B' +} + +key N { + label: '\u0438' + base: '\u0438' + shift, capslock: '\u0418' + ralt: 'n' + ralt+shift, ralt+capslock: 'N' +} + +key M { + label: '\u0442' + base: '\u0442' + shift, capslock: '\u0422' + ralt: 'm' + ralt+shift, ralt+capslock: 'M' +} + +key COMMA { + label: '\u044c' + base: '\u044c' + shift, capslock: '\u042c' + ralt: ',' + ralt+shift: '<' +} + +key PERIOD { + label: '\u0432' + base: '\u0432' + shift, capslock: '\u0412' + ralt: '.' + ralt+shift: '>' +} + +key SLASH { + label: '\u044e' + base: '\u044e' + shift: '\u042e' + ralt: '/' + ralt+shift: '?' +} diff --git a/packages/InputDevices/res/values/strings.xml b/packages/InputDevices/res/values/strings.xml index ac70c945297b..987814626689 100644 --- a/packages/InputDevices/res/values/strings.xml +++ b/packages/InputDevices/res/values/strings.xml @@ -131,4 +131,10 @@ <!-- Belarusian keyboard layout label. [CHAR LIMIT=35] --> <string name="keyboard_layout_belarusian">Belarusian</string> + + <!-- Mongolian keyboard layout label. [CHAR LIMIT=35] --> + <string name="keyboard_layout_mongolian">Mongolian</string> + + <!-- Georgian keyboard layout label. [CHAR LIMIT=35] --> + <string name="keyboard_layout_georgian">Georgian</string> </resources> diff --git a/packages/InputDevices/res/xml/keyboard_layouts.xml b/packages/InputDevices/res/xml/keyboard_layouts.xml index 68ca093e45b1..0d7a13b3eb34 100644 --- a/packages/InputDevices/res/xml/keyboard_layouts.xml +++ b/packages/InputDevices/res/xml/keyboard_layouts.xml @@ -167,4 +167,12 @@ <keyboard-layout android:name="keyboard_layout_belarusian" android:label="@string/keyboard_layout_belarusian" android:keyboardLayout="@raw/keyboard_layout_belarusian" /> + + <keyboard-layout android:name="keyboard_layout_mongolian" + android:label="@string/keyboard_layout_mongolian" + android:keyboardLayout="@raw/keyboard_layout_mongolian" /> + + <keyboard-layout android:name="keyboard_layout_georgian" + android:label="@string/keyboard_layout_georgian" + android:keyboardLayout="@raw/keyboard_layout_georgian" /> </keyboard-layouts> |