diff --git a/src/app/utilsadapter.cpp b/src/app/utilsadapter.cpp
index 03c8549e17c26f32c465c67e835001b043ed6c7d..9c5bc6296cec3005cf2614efd3d3168dcf36b8ee 100644
--- a/src/app/utilsadapter.cpp
+++ b/src/app/utilsadapter.cpp
@@ -799,8 +799,23 @@ bool
 UtilsAdapter::isRTL()
 {
     auto pref = getAppValue(Settings::Key::LANG).toString();
-    pref == "SYSTEM" ? QLocale::system().name() : pref;
-    return pref == "ar" || pref == "he" || pref == "fa" || pref == "ur";
+    pref = pref == "SYSTEM" ? QLocale::system().name() : pref;
+    static const QStringList rtlLanguages {
+        // as defined by ISO 639-1
+        "ar", // Arabic
+        "he", // Hebrew
+        "fa", // Persian (Farsi)
+        "ur", // Urdu
+        "ps", // Pashto
+        "ku", // Kurdish
+        "sd", // Sindhi
+        "dv", // Dhivehi (Maldivian)
+        "yi", // Yiddish
+        "am", // Amharic
+        "ti", // Tigrinya
+        "kk"  // Kazakh (in Arabic script)
+    };
+    return rtlLanguages.contains(pref);
 }
 
 bool