support full localization

This commit is contained in:
qimiko committed 2022-11-05 12:51:17 -07:00
1 parent 2013cabfc7
commit 44faafacc3
3 files changed
+43 -19

No files matched your search

@@ -73,11 +73,11 @@ fun MainScreen(gdInstalled: Boolean = true) {
) { ) {
Image( Image(
painter = painterResource(id = R.drawable.geode_logo), painter = painterResource(id = R.drawable.geode_logo),
contentDescription = "Geode Logo", contentDescription = context.getString(R.string.launcher_logo_alt),
modifier = Modifier.size(136.dp, 136.dp) modifier = Modifier.size(136.dp, 136.dp)
) )
Text( Text(
"Geode", context.getString(R.string.launcher_title),
fontSize = 32.sp, fontSize = 32.sp,
modifier = Modifier.padding(12.dp) modifier = Modifier.padding(12.dp)
) )
@@ -106,34 +106,34 @@ fun MainScreen(gdInstalled: Boolean = true) {
} }
Row { Row {
Button(onClick = { onLaunch(context) }, enabled = gdInstalled) { Button(onClick = { onLaunch(context) }) {
Icon( Icon(
Icons.Filled.PlayArrow, Icons.Filled.PlayArrow,
contentDescription = "Play Icon" contentDescription = context.getString(R.string.launcher_launch_icon_alt)
) )
Spacer(Modifier.size(ButtonDefaults.IconSpacing)) Spacer(Modifier.size(ButtonDefaults.IconSpacing))
Text("Launch") Text(context.getString(R.string.launcher_launch))
} }
Spacer(Modifier.size(2.dp)) Spacer(Modifier.size(2.dp))
IconButton(onClick = { onSettings(context) }) { IconButton(onClick = { onSettings(context) }) {
Icon( Icon(
Icons.Filled.Settings, Icons.Filled.Settings,
contentDescription = "Settings Icon" contentDescription = context.getString(R.string.launcher_settings_icon_alt)
) )
} }
} }
} else { } else {
Text( Text(
"Geometry Dash could not be found.", context.getString(R.string.game_not_found),
modifier = Modifier.padding(12.dp) modifier = Modifier.padding(12.dp)
) )
OutlinedButton(onClick = { onSettings(context) }) { OutlinedButton(onClick = { onSettings(context) }) {
Icon( Icon(
Icons.Filled.Settings, Icons.Filled.Settings,
contentDescription = "Settings Icon" contentDescription = context.getString(R.string.launcher_settings_icon_alt)
) )
Spacer(Modifier.size(ButtonDefaults.IconSpacing)) Spacer(Modifier.size(ButtonDefaults.IconSpacing))
Text("Settings") Text(context.getString(R.string.launcher_settings))
} }
} }
} }
@@ -48,6 +48,7 @@ class SettingsActivity : ComponentActivity() {
} }
} }
/*
fun onExportSaveData(context: Context) { fun onExportSaveData(context: Context) {
Toast.makeText( Toast.makeText(
context, context,
@@ -55,6 +56,7 @@ fun onExportSaveData(context: Context) {
Toast.LENGTH_SHORT Toast.LENGTH_SHORT
).show() ).show()
} }
*/
fun onOpenFolder(context: Context) { fun onOpenFolder(context: Context) {
context.getExternalFilesDir(null)?.let { file -> context.getExternalFilesDir(null)?.let { file ->
@@ -62,12 +64,16 @@ fun onOpenFolder(context: Context) {
context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
clipboardManager.setPrimaryClip( clipboardManager.setPrimaryClip(
ClipData.newPlainText( ClipData.newPlainText(
"Launcher External Folder", context.getString(R.string.export_folder_tag),
file.path file.path
) )
) )
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.S_V2) { if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.S_V2) {
Toast.makeText(context, "Copied!", Toast.LENGTH_SHORT).show() Toast.makeText(
context,
context.getString(R.string.export_folder_copied),
Toast.LENGTH_SHORT
).show()
} }
} }
} }
@@ -84,13 +90,13 @@ fun SettingsScreen(onBackPressedDispatcher: OnBackPressedDispatcher?) {
IconButton(onClick = { onBackPressedDispatcher?.onBackPressed() }) { IconButton(onClick = { onBackPressedDispatcher?.onBackPressed() }) {
Icon( Icon(
imageVector = Icons.Filled.ArrowBack, imageVector = Icons.Filled.ArrowBack,
contentDescription = "Back" contentDescription = context.getString(R.string.settings_back_icon_alt)
) )
} }
}, },
title = { title = {
Text( Text(
"Settings", context.getString(R.string.title_activity_settings),
maxLines = 1, maxLines = 1,
overflow = TextOverflow.Ellipsis overflow = TextOverflow.Ellipsis
) )
@@ -119,12 +125,14 @@ fun SettingsScreen(onBackPressedDispatcher: OnBackPressedDispatcher?) {
onClick = { onOpenFolder(context) } onClick = { onOpenFolder(context) }
) )
} }
/*
OptionsGroup("Data") { OptionsGroup("Data") {
OptionsButton( OptionsButton(
title = "Export save data", title = "Export save data",
onClick = { onExportSaveData(context) } onClick = { onExportSaveData(context) }
) )
} }
*/
} }
} }
) )
@@ -236,7 +244,7 @@ fun OptionsCardPreview() {
) )
SettingsCard( SettingsCard(
title = "Testing option 2", title = "Testing option 2",
preferenceId = R.string.preference_load_testing preferenceId = R.string.preference_load_automatically
) )
} }
} }
+21 -5
View File
@@ -1,19 +1,35 @@
<resources> <resources>
<string name="app_name">Geode</string> <string name="app_name">Geode</string>
<string name="title_activity_geometry_dash">GeometryDash</string>
<string name="failed_mod_core">Failed to load mod core.</string>
<string name="no_activity_found">No activity found for this action.</string> <string name="no_activity_found">No activity found for this action.</string>
<!-- MainActivity strings -->
<string name="game_not_found">Geometry Dash was not found.</string>
<string name="launcher_launch">Launch</string>
<string name="launcher_settings">Settings</string>
<string name="launcher_title">Geode</string>
<string name="launcher_logo_alt">geode logo</string>
<string name="launcher_launch_icon_alt">play icon</string>
<string name="launcher_settings_icon_alt">settings icon</string>
<plurals name="automatically_load_countdown"> <plurals name="automatically_load_countdown">
<item quantity="one">Automatically launching game in %1$d second.</item> <item quantity="one">Automatically launching game in %1$d second.</item>
<item quantity="other">Automatically launching game in %1$d seconds.</item> <item quantity="other">Automatically launching game in %1$d seconds.</item>
</plurals> </plurals>
<!-- Preference keys -->
<string name="preference_file_key">GeodeLauncherPreferencesFileKey</string> <string name="preference_file_key">GeodeLauncherPreferencesFileKey</string>
<string name="preference_category_testing">General</string>
<string name="preference_load_testing">PreferenceLoadTesting</string> <string name="preference_load_testing">PreferenceLoadTesting</string>
<string name="preference_load_testing_name">Load files from /test</string>
<string name="preference_load_automatically">PreferenceLoadAutomatically</string> <string name="preference_load_automatically">PreferenceLoadAutomatically</string>
<!-- SettingsActivity strings -->
<string name="title_activity_settings">Settings</string>
<string name="settings_back_icon_alt">back arrow icon</string>
<string name="export_folder_tag">Launcher External Folder</string>
<string name="export_folder_copied">Copied!</string>
<string name="preference_category_testing">General</string>
<string name="preference_load_testing_name">Load files from /test</string>
<string name="preference_load_automatically_name">Automatically launch</string> <string name="preference_load_automatically_name">Automatically launch</string>
<string name="preference_load_automatically_description">Launches the game after a short delay.</string> <string name="preference_load_automatically_description">Launches the game after a short delay.</string>
<string name="preferences_copy_external_button">Copy external files directory</string> <string name="preferences_copy_external_button">Copy external files directory</string>
<string name="title_activity_settings">SettingsActivity</string>
</resources> </resources>