diff --git a/CHANGELOG.md b/CHANGELOG.md
index ace00713..d23b8fdd 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added
- German QWERTZ layout without dedicated umlaut keys ([#47])
- Portuguese layout ([#133])
+- Portuguese HCESAR layout ([#256])
- Dutch layout ([#136])
### Changed
@@ -95,6 +96,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[#238]: https://github.com/FossifyOrg/Keyboard/issues/238
[#239]: https://github.com/FossifyOrg/Keyboard/issues/239
[#251]: https://github.com/FossifyOrg/Keyboard/issues/251
+[#256]: https://github.com/FossifyOrg/Keyboard/issues/256
[Unreleased]: https://github.com/FossifyOrg/Keyboard/compare/1.4.0...HEAD
[1.4.0]: https://github.com/FossifyOrg/Keyboard/compare/1.3.0...1.4.0
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 d51da0c4..a1120c45 100644
--- a/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt
+++ b/app/src/main/kotlin/org/fossify/keyboard/extensions/Context.kt
@@ -64,6 +64,7 @@ import org.fossify.keyboard.helpers.LANGUAGE_LITHUANIAN
import org.fossify.keyboard.helpers.LANGUAGE_NORWEGIAN
import org.fossify.keyboard.helpers.LANGUAGE_POLISH
import org.fossify.keyboard.helpers.LANGUAGE_PORTUGUESE
+import org.fossify.keyboard.helpers.LANGUAGE_PORTUGUESE_HCESAR
import org.fossify.keyboard.helpers.LANGUAGE_ROMANIAN
import org.fossify.keyboard.helpers.LANGUAGE_RUSSIAN
import org.fossify.keyboard.helpers.LANGUAGE_SLOVENIAN
@@ -304,6 +305,7 @@ fun Context.getKeyboardLanguageText(language: Int): String {
LANGUAGE_NORWEGIAN -> getString(R.string.translation_norwegian)
LANGUAGE_POLISH -> getString(R.string.translation_polish)
LANGUAGE_PORTUGUESE -> getString(R.string.translation_portuguese)
+ LANGUAGE_PORTUGUESE_HCESAR -> "${getString(R.string.translation_portuguese)} (HCESAR)"
LANGUAGE_ROMANIAN -> getString(R.string.translation_romanian)
LANGUAGE_RUSSIAN -> getString(R.string.translation_russian)
LANGUAGE_SLOVENIAN -> getString(R.string.translation_slovenian)
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 4c7d8209..dc1f57e8 100644
--- a/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt
+++ b/app/src/main/kotlin/org/fossify/keyboard/helpers/Constants.kt
@@ -62,6 +62,7 @@ const val LANGUAGE_ITALIAN = 31
const val LANGUAGE_CZECH_QWERTZ = 32
const val LANGUAGE_GERMAN_QWERTZ = 33
const val LANGUAGE_PORTUGUESE = 34
+const val LANGUAGE_PORTUGUESE_HCESAR = 35
const val LANGUAGE_DUTCH = 36
// Keep this sorted
@@ -93,6 +94,7 @@ val SUPPORTED_LANGUAGES = listOf(
LANGUAGE_NORWEGIAN,
LANGUAGE_POLISH,
LANGUAGE_PORTUGUESE,
+ LANGUAGE_PORTUGUESE_HCESAR,
LANGUAGE_ROMANIAN,
LANGUAGE_RUSSIAN,
LANGUAGE_SLOVENIAN,
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 3fd2346a..8aec3585 100644
--- a/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt
+++ b/app/src/main/kotlin/org/fossify/keyboard/services/SimpleKeyboardIME.kt
@@ -469,6 +469,7 @@ class SimpleKeyboardIME : InputMethodService(), OnKeyboardActionListener, Shared
LANGUAGE_NORWEGIAN -> R.xml.keys_letters_norwegian
LANGUAGE_POLISH -> R.xml.keys_letters_polish
LANGUAGE_PORTUGUESE -> R.xml.keys_letters_portuguese
+ LANGUAGE_PORTUGUESE_HCESAR -> R.xml.keys_letters_portuguese_hcesar
LANGUAGE_ROMANIAN -> R.xml.keys_letters_romanian
LANGUAGE_RUSSIAN -> R.xml.keys_letters_russian
LANGUAGE_SLOVENIAN -> R.xml.keys_letters_slovenian
diff --git a/app/src/main/res/xml/keys_letters_portuguese.xml b/app/src/main/res/xml/keys_letters_portuguese.xml
index b83895ab..71a7f064 100644
--- a/app/src/main/res/xml/keys_letters_portuguese.xml
+++ b/app/src/main/res/xml/keys_letters_portuguese.xml
@@ -92,7 +92,7 @@
diff --git a/app/src/main/res/xml/keys_letters_portuguese_hcesar.xml b/app/src/main/res/xml/keys_letters_portuguese_hcesar.xml
new file mode 100644
index 00000000..d394133c
--- /dev/null
+++ b/app/src/main/res/xml/keys_letters_portuguese_hcesar.xml
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file