Skip to content

Conversation

@abdrsk
Copy link

@abdrsk abdrsk commented Jan 22, 2026

Only 150 strings tho can be added on top later (missing strings are in english).
Didnt added to settings (pls add).
im not good at these things so correct me if i missed something


Summary by cubic

Adds initial Turkish localization by introducing values-tr/strings.xml. This improves accessibility for Turkish speakers; untranslated keys fall back to English.

  • New Features

    • Added tr locale with Turkish strings for core UI, Steam flows, and custom games.
    • Untranslated entries remain in English to ensure continuity.
  • Migration

    • Expose “Türkçe” in Settings > Language to allow switching to the new locale.
    • No other code changes required.

Written for commit 748f403. Summary will update on new commits.

Summary by CodeRabbit

  • New Features
    • Added Turkish language support across the entire app, including login, settings, library management, controller configuration, and all user interface elements.

✏️ Tip: You can customize this high-level summary in your review settings.

Only 150 strings tho can be added on top later.
Didnt added to settings (pls add).
@coderabbitai
Copy link

coderabbitai bot commented Jan 22, 2026

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

📝 Walkthrough

Walkthrough

This pull request introduces a comprehensive Turkish localization file (values-tr/strings.xml) containing approximately 980 new string resource entries. The file covers all major app sections including authentication, home screen, settings, game/library management, controller bindings, GOG integration, and Wine/Proton components. All additions are purely translational content with no functional or architectural changes.

Changes

Cohort / File(s) Summary
Turkish Localization Resources
app/src/main/res/values-tr/strings.xml
Adds 980+ new Turkish string resources spanning: authentication/login flows, core UI navigation labels, custom games management, controller binding dialogs, physical controller configuration, GOG integration, Wine/Proton manager, library operations, settings panels, dialog messages, and status indicators. Includes multi-line help text via CDATA blocks and placeholder strings for various feature workflows.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 A thousand words in Turkish flow,
From login screens to settings' glow,
Controllers bound, and games to play,
The app now speaks in a brand new way! 🎮✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title is vague and does not accurately convey the scope of the change. It uses informal language ('a little') and fails to clearly communicate that this is a Turkish localization file addition. Consider revising the title to be more descriptive and professional, such as 'Add Turkish localization strings' or 'Add Turkish translation for UI strings'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

🤖 Fix all issues with AI agents
In `@app/src/main/res/values-tr/strings.xml`:
- Around line 355-360: The CDATA for the string resource
box86_64_env_var_help__avx contains an unintended trailing backslash before the
CDATA close; remove that stray "\" from the CDATA block so the text ends with
"...RDRAND.<br />" and then the CDATA close, ensuring the string resource has no
extraneous escape characters.
- Around line 77-96: Fix spelling/typo errors in the Custom Games localization
entries: update custom_games_manual_subtitle to "Kütüphaneden eklendi",
custom_games_no_manual_entries to "Artık manuel olarak eklenmiş oyun yok.",
custom_games_remove_path_message to "Bu yolu listeden kaldırılsın mı? Dosya
bilgileri diskte kalır.", custom_games_manual_removed_toast to "Manuel dosya
kütüphanenizden kaldırıldı.", custom_games_scan_description to "Bu yoldaki
dosyalar .exe dosyaları için tarandı ve özel oyunlar olarak kaydedildi. Bu,
başlangıç sürecini yavaşlatabilir.", custom_game_folder_picker_error to "Yolu
işlemekte başarısız olundu." and custom_game_exe_selection_title to
"Çalıştırılabilir dosya seçimi gerekli" and custom_game_exe_selection_message to
"Bu oyunun birden fazla çalıştırılabilir dosyası var. Hangi dosyanın
başlatılacağını seçmek için lütfen Özel Oyun Ayarları'na girin."; verify and
correct Turkish dotted/dotless i usage (i/ı, İ/ı) in the referenced string
resource names (custom_games_*, custom_game_*, container_config_*) to ensure
proper spelling and accents.
- Around line 3-18: Fix Turkish typos/diacritics in the listed string resources:
update login_user to "Kullanıcı Girişi", login_2fa to "İki faktörlü kimlik
doğrulaması", login_qr to a natural phrase like "QR kod ile giriş" (or "QR kodu
ile giriş"), steam_2fa_incorrect to "Önceki kod hatalıydı, lütfen tekrar
deneyin.", steam_2fa_device (string name steam_2fa_device) to "Lütfen
doğrulayıcı (authenticator) uygulamanızdan iki faktörlü kimlik doğrulama
kodunuzu giriniz." or simply "Lütfen doğrulayıcı uygulamanızdan iki faktörlü
kimlik doğrulama kodunuzu giriniz.", steam_2fa_email to "Lütfen %s'e gönderilen
doğrulama kodunu giriniz", steam_install_space_prompt/steam_install_space to fix
grammar and diacritics (e.g. "İndirilecek uygulamanın aşağıdaki alan
gereksinimleri vardır. Devam etmek ister misiniz?\n\n\tİndirme boyutu:
%1$s\n\tDiskteki alan: %2$s\n\tKullanılabilir alan: %3$s" and "İndirme boyutu:
%1$s\nDiskteki alan: %2$s\nKullanılabilir alan: %3$s"),
steam_install_not_enough_space to "Kurulacak uygulamanın %1$s alana ihtiyacı var
ama diskte sadece %2$s alan mevcut", and steam_cancel_download_message to
"Uygulamayı indirmeyi iptal etmek istediğinizden emin misiniz?"; apply these
corrected Turkish diacritics/wording to the corresponding string resource names
in the diff.
- Around line 198-233: Fix Turkish typos in the string resources: change
"Katagori" (string name category) to "Kategori"; "Görunum" (appearance) to
"Görünüm"; "Bu kontrolun türünü değiştirin" (element_type_subtitle) to "Bu
kontrolün türünü değiştirin"; replace all occurrences of "tüş" with "tuş" (e.g.,
bindings_auto_generated_subtitle and button_slots_help); translate or localize
"Atamalar (Auto-generated)" (bindings_auto_generated) to a Turkish phrase like
"Atamalar (Otomatik oluşturuldu)" or similar; and correct any other obvious
misspellings in related keys (bindings, element editor labels) to proper Turkish
while keeping placeholders (%1$s, %1$d, %3$.2fx) intact.
- Around line 581-588: The SUPPORTED_LANGUAGES map in LocaleHelper.kt is missing
Turkish so the new translations won't be selectable; open LocaleHelper.kt and
add the entry "tr" to "Türkçe" into the SUPPORTED_LANGUAGES map (the map
referenced as SUPPORTED_LANGUAGES) following the same key/value pattern as other
languages so the Settings language menu includes Turkish.
🧹 Nitpick comments (1)
app/src/main/res/values-tr/strings.xml (1)

102-163: Consider omitting untranslated English strings from the Turkish locale.

Large blocks remain English (e.g., Winlator, controller, login). Keeping them here duplicates the base locale and risks drift. Prefer translating or removing these entries so Android falls back to values/strings.xml.

Also applies to: 166-190, 252-294, 654-689

Comment on lines +355 to +360
<string name="box86_64_env_var_help__avx"><![CDATA[
AVX and AVX2 implemented, along with BMI1, BMI2, ADX, FMA, F16C and RDANDR extension!<br /><br />
<b>0</b> : Disable AVX extension<br />
<b>1</b> : enable AVX, BMI1, F16C and VAES extension.<br />
<b>2</b> : All 1 plus enable AVX2, BMI2, FMA, ADX,VPCLMULQDQ and RDRAND.<br />\
]]></string>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Remove stray backslash in CDATA.

The trailing \ is likely unintended and may render or affect line breaks.

🧹 Proposed fix
-        <b>2</b> : All 1 plus enable AVX2, BMI2, FMA, ADX,VPCLMULQDQ and RDRAND.<br />\
+        <b>2</b> : All 1 plus enable AVX2, BMI2, FMA, ADX,VPCLMULQDQ and RDRAND.<br />
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
<string name="box86_64_env_var_help__avx"><![CDATA[
AVX and AVX2 implemented, along with BMI1, BMI2, ADX, FMA, F16C and RDANDR extension!<br /><br />
<b>0</b> : Disable AVX extension<br />
<b>1</b> : enable AVX, BMI1, F16C and VAES extension.<br />
<b>2</b> : All 1 plus enable AVX2, BMI2, FMA, ADX,VPCLMULQDQ and RDRAND.<br />\
]]></string>
<string name="box86_64_env_var_help__avx"><![CDATA[
AVX and AVX2 implemented, along with BMI1, BMI2, ADX, FMA, F16C and RDANDR extension!<br /><br />
<b>0</b> : Disable AVX extension<br />
<b>1</b> : enable AVX, BMI1, F16C and VAES extension.<br />
<b>2</b> : All 1 plus enable AVX2, BMI2, FMA, ADX,VPCLMULQDQ and RDRAND.<br />
]]></string>
🤖 Prompt for AI Agents
In `@app/src/main/res/values-tr/strings.xml` around lines 355 - 360, The CDATA for
the string resource box86_64_env_var_help__avx contains an unintended trailing
backslash before the CDATA close; remove that stray "\" from the CDATA block so
the text ends with "...RDRAND.<br />" and then the CDATA close, ensuring the
string resource has no extraneous escape characters.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5 issues found across 1 file

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="app/src/main/res/values-tr/strings.xml">

<violation number="1" location="app/src/main/res/values-tr/strings.xml:1">
P1: Turkish translations will not be selectable by users. The language needs to be added to the `SUPPORTED_LANGUAGES` map in `LocaleHelper.kt` (add `"tr" to "Türkçe"`) for Turkish to appear in the Settings language menu.</violation>

<violation number="2" location="app/src/main/res/values-tr/strings.xml:14">
P2: Escape apostrophes in formatted string resources (e.g., "%s'e") so aapt doesn’t treat them as invalid quoting. Unescaped apostrophes in strings.xml can break resource compilation; use `\'` or wrap the full value in double quotes. Apply the same fix to other Turkish strings with apostrophes.</violation>

<violation number="3" location="app/src/main/res/values-tr/strings.xml:18">
P2: Turkish spelling errors: 'indırmeyi' should be 'indirmeyi' (missing dotted i) and 'istediginizden' should be 'istediğinizden' (missing soft g ğ). These diacritic errors will be visible to Turkish users.</violation>

<violation number="4" location="app/src/main/res/values-tr/strings.xml:77">
P2: Turkish spelling error: 'eklendı' should be 'eklendi' (requires dotted i). This is a visible UI label for manually added games.</violation>

<violation number="5" location="app/src/main/res/values-tr/strings.xml:198">
P2: Turkish spelling error: 'Katagori' should be 'Kategori'. The 'a' should be 'e' in this common word.</violation>
</file>

Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Ask questions if you need clarification on any suggestion

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

@@ -0,0 +1,980 @@
<resources>
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1: Turkish translations will not be selectable by users. The language needs to be added to the SUPPORTED_LANGUAGES map in LocaleHelper.kt (add "tr" to "Türkçe") for Turkish to appear in the Settings language menu.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At app/src/main/res/values-tr/strings.xml, line 1:

<comment>Turkish translations will not be selectable by users. The language needs to be added to the `SUPPORTED_LANGUAGES` map in `LocaleHelper.kt` (add `"tr" to "Türkçe"`) for Turkish to appear in the Settings language menu.</comment>

<file context>
@@ -0,0 +1,980 @@
+<resources>
+    <string name="app_name">GameNative</string>
+    <string name="login_user">Kullanici Giriş</string>
</file context>
Fix with Cubic

<string name="steam_2fa_incorrect">Bir önceki kod hatalıydı, lütfen tekrar deneyin.</string>
<string name="steam_2fa_confirmation">Steam Mobile uygulamasını kullanarak girişinizi doğrulayın…</string>
<string name="steam_2fa_device">Lütfen authenticator uygulamanızdan iki faktörlu kimlik doğrulama kodunuzu giriniz.</string>
<string name="steam_2fa_email">Lütfen %s'e gönderilmiş doğrulama kodunu giriniz</string>
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Escape apostrophes in formatted string resources (e.g., "%s'e") so aapt doesn’t treat them as invalid quoting. Unescaped apostrophes in strings.xml can break resource compilation; use \' or wrap the full value in double quotes. Apply the same fix to other Turkish strings with apostrophes.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At app/src/main/res/values-tr/strings.xml, line 14:

<comment>Escape apostrophes in formatted string resources (e.g., "%s'e") so aapt doesn’t treat them as invalid quoting. Unescaped apostrophes in strings.xml can break resource compilation; use `\'` or wrap the full value in double quotes. Apply the same fix to other Turkish strings with apostrophes.</comment>

<file context>
@@ -0,0 +1,980 @@
+    <string name="steam_2fa_incorrect">Bir önceki kod hatalıydı, lütfen tekrar deneyin.</string>
+    <string name="steam_2fa_confirmation">Steam Mobile uygulamasını kullanarak girişinizi doğrulayın…</string>
+    <string name="steam_2fa_device">Lütfen authenticator uygulamanızdan iki faktörlu kimlik doğrulama kodunuzu giriniz.</string>
+    <string name="steam_2fa_email">Lütfen %s'e gönderilmiş doğrulama kodunu giriniz</string>
+    <string name="steam_install_space_prompt">İndirilecek uygulamanın aşağıdaki alan gereksinimleri vardir. Devam etmek ister misiniz?\n\n\tİndirme boyutu: %1$s\n\tDiskte alan: %2$s\n\tKullanılabilir alan: %3$s</string>
+		<string name="steam_install_space">İndirme boyutu: %1$s\nDiske alan: %2$s\nKullanılabilir alan: %3$s</string>
</file context>
Fix with Cubic

<string name="search_bindings">Tuş ataması ara…</string>
<string name="search_placeholder">Ara…</string>
<string name="search">Ara</string>
<string name="category">Katagori</string>
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Turkish spelling error: 'Katagori' should be 'Kategori'. The 'a' should be 'e' in this common word.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At app/src/main/res/values-tr/strings.xml, line 198:

<comment>Turkish spelling error: 'Katagori' should be 'Kategori'. The 'a' should be 'e' in this common word.</comment>

<file context>
@@ -0,0 +1,980 @@
+		<string name="search_bindings">Tuş ataması ara…</string>
+    <string name="search_placeholder">Ara…</string>
+    <string name="search">Ara</string>
+    <string name="category">Katagori</string>
+    <string name="keyboard_bindings">Klavye</string>
+    <string name="mouse_bindings">Fare</string>
</file context>
Fix with Cubic

<string name="custom_games_title">Özel Oyunlar</string>
<string name="custom_games_no_paths">Hiçbir dosya yolu yok</string>
<string name="custom_games_grant_permission">İzin ver</string>
<string name="custom_games_manual_subtitle">Kütüphaneden eklendı</string>
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Jan 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Turkish spelling error: 'eklendı' should be 'eklendi' (requires dotted i). This is a visible UI label for manually added games.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At app/src/main/res/values-tr/strings.xml, line 77:

<comment>Turkish spelling error: 'eklendı' should be 'eklendi' (requires dotted i). This is a visible UI label for manually added games.</comment>

<file context>
@@ -0,0 +1,980 @@
+    <string name="custom_games_title">Özel Oyunlar</string>
+    <string name="custom_games_no_paths">Hiçbir dosya yolu yok</string>
+    <string name="custom_games_grant_permission">İzin ver</string>
+    <string name="custom_games_manual_subtitle">Kütüphaneden eklendı</string>
+    <string name="custom_games_no_manual_entries">Daha manuel olarak eklenmiş oyun yok.</string>
+    <string name="custom_games_remove_path_title">Yolu sil</string>
</file context>
Fix with Cubic

@abdrsk
Copy link
Author

abdrsk commented Jan 23, 2026

looks like i made some mistakes but cubic dev ai fixed them. do they get applied automatically or i need to do smth?

@abdrsk abdrsk changed the title translated to turkish a lil Rranslated to turkish a little Jan 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant