From 0c2cf4bbcdbe9f51bda7179589e8ce6e725ce8cf Mon Sep 17 00:00:00 2001 From: Naveen Singh Date: Mon, 25 Aug 2025 21:11:47 +0530 Subject: [PATCH] feat: add German QWERTZ layout without dedicated umlaut keys Refs: https://github.com/FossifyOrg/Keyboard/issues/47 --- CHANGELOG.md | 3 + .../fossify/keyboard/extensions/Context.kt | 2 + .../org/fossify/keyboard/helpers/Constants.kt | 2 + .../keyboard/services/SimpleKeyboardIME.kt | 1 + app/src/main/res/xml/keys_letters_german.xml | 6 +- .../res/xml/keys_letters_german_qwertz.xml | 179 ++++++++++++++++++ 6 files changed, 190 insertions(+), 3 deletions(-) create mode 100644 app/src/main/res/xml/keys_letters_german_qwertz.xml diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f163804..8ee4f398 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Added +- German QWERTZ layout without dedicated umlaut keys ([#47]) ## [1.4.0] - 2025-08-22 ### Added @@ -70,6 +72,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release +[#47]: https://github.com/FossifyOrg/Keyboard/issues/47 [#78]: https://github.com/FossifyOrg/Keyboard/issues/78 [#157]: https://github.com/FossifyOrg/Keyboard/issues/157 [#202]: https://github.com/FossifyOrg/Keyboard/issues/202 diff --git a/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt b/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt index 0cb72d29..060abca7 100644 --- a/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt +++ b/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt @@ -54,6 +54,7 @@ import org.fossify.keyboard.helpers.LANGUAGE_ESPERANTO import org.fossify.keyboard.helpers.LANGUAGE_FRENCH_AZERTY import org.fossify.keyboard.helpers.LANGUAGE_FRENCH_BEPO import org.fossify.keyboard.helpers.LANGUAGE_GERMAN +import org.fossify.keyboard.helpers.LANGUAGE_GERMAN_QWERTZ import org.fossify.keyboard.helpers.LANGUAGE_GREEK import org.fossify.keyboard.helpers.LANGUAGE_HEBREW import org.fossify.keyboard.helpers.LANGUAGE_ITALIAN @@ -289,6 +290,7 @@ fun Context.getKeyboardLanguageText(language: Int): String { LANGUAGE_FRENCH_AZERTY -> "${getString(R.string.translation_french)} (AZERTY)" LANGUAGE_FRENCH_BEPO -> "${getString(R.string.translation_french)} (BEPO)" LANGUAGE_GERMAN -> getString(R.string.translation_german) + LANGUAGE_GERMAN_QWERTZ -> "${getString(R.string.translation_german)} (QWERTZ)" LANGUAGE_GREEK -> getString(R.string.translation_greek) LANGUAGE_HEBREW -> getString(R.string.translation_hebrew) LANGUAGE_ITALIAN -> getString(R.string.translation_italian) diff --git a/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt b/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt index dec47b8f..2de11f79 100644 --- a/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt +++ b/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt @@ -60,6 +60,7 @@ const val LANGUAGE_KABYLE_AZERTY = 29 const val LANGUAGE_CZECH_QWERTY = 30 const val LANGUAGE_ITALIAN = 31 const val LANGUAGE_CZECH_QWERTZ = 32 +const val LANGUAGE_GERMAN_QWERTZ = 33 // Keep this sorted val SUPPORTED_LANGUAGES = listOf( @@ -80,6 +81,7 @@ val SUPPORTED_LANGUAGES = listOf( LANGUAGE_FRENCH_AZERTY, LANGUAGE_FRENCH_BEPO, LANGUAGE_GERMAN, + LANGUAGE_GERMAN_QWERTZ, LANGUAGE_GREEK, LANGUAGE_HEBREW, LANGUAGE_ITALIAN, diff --git a/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt b/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt index 250012d9..6a9ddca7 100644 --- a/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt +++ b/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt @@ -459,6 +459,7 @@ class SimpleKeyboardIME : InputMethodService(), OnKeyboardActionListener, Shared LANGUAGE_FRENCH_AZERTY -> R.xml.keys_letters_french_azerty LANGUAGE_FRENCH_BEPO -> R.xml.keys_letters_french_bepo LANGUAGE_GERMAN -> R.xml.keys_letters_german + LANGUAGE_GERMAN_QWERTZ -> R.xml.keys_letters_german_qwertz LANGUAGE_GREEK -> R.xml.keys_letters_greek LANGUAGE_HEBREW -> R.xml.keys_letters_hebrew LANGUAGE_ITALIAN -> R.xml.keys_letters_italian diff --git a/app/src/main/res/xml/keys_letters_german.xml b/app/src/main/res/xml/keys_letters_german.xml index 1263b81c..37e7ea93 100644 --- a/app/src/main/res/xml/keys_letters_german.xml +++ b/app/src/main/res/xml/keys_letters_german.xml @@ -75,7 +75,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +