Skip to content

Commit 04efe31

Browse files
authored
Merge pull request #2141 from theovilardo/impl/eq-preset-save-as-new
ui: add "Save New" action to Equalizer and improve layout
2 parents 5dd8238 + 9037cf0 commit 04efe31

11 files changed

Lines changed: 42 additions & 3 deletions

File tree

app/src/main/java/com/theveloper/pixelplay/presentation/screens/EqualizerScreen.kt

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -559,8 +559,11 @@ private fun BandSlidersSection(
559559
horizontalAlignment = Alignment.CenterHorizontally
560560
) {
561561
Row(
562+
modifier = Modifier
563+
.horizontalScroll(rememberScrollState())
564+
.padding(horizontal = 16.dp),
562565
verticalAlignment = Alignment.CenterVertically,
563-
horizontalArrangement = Arrangement.spacedBy(8.dp)
566+
horizontalArrangement = Arrangement.spacedBy(8.dp, Alignment.CenterHorizontally)
564567
) {
565568
val isCustomOrSaved = editingPresetName != null || currentPreset.name == "custom" || currentPreset.isCustom
566569
val displayLabel = editingPresetName ?: currentPreset.displayName
@@ -599,7 +602,7 @@ private fun BandSlidersSection(
599602
shape = CircleShape,
600603
onClick = onSaveClick
601604
) {
602-
Row(
605+
Row(
603606
modifier = Modifier.padding(horizontal = 12.dp, vertical = 8.dp),
604607
verticalAlignment = Alignment.CenterVertically
605608
) {
@@ -615,11 +618,12 @@ private fun BandSlidersSection(
615618
color = MaterialTheme.colorScheme.onTertiaryContainer,
616619
fontWeight = FontWeight.Bold
617620
)
618-
}
621+
}
619622
}
620623
}
621624

622625
if (editingPresetName != null) {
626+
// Update Option
623627
Surface(
624628
color = MaterialTheme.colorScheme.primaryContainer,
625629
shape = CircleShape,
@@ -643,6 +647,31 @@ private fun BandSlidersSection(
643647
)
644648
}
645649
}
650+
651+
// Save New Option
652+
Surface(
653+
color = MaterialTheme.colorScheme.tertiaryContainer,
654+
shape = CircleShape,
655+
onClick = onSaveClick
656+
) {
657+
Row(
658+
modifier = Modifier.padding(horizontal = 12.dp, vertical = 8.dp),
659+
verticalAlignment = Alignment.CenterVertically
660+
) {
661+
Icon(
662+
imageVector = Icons.Rounded.Save,
663+
contentDescription = null,
664+
modifier = Modifier.size(20.dp),
665+
tint = MaterialTheme.colorScheme.onTertiaryContainer
666+
)
667+
Spacer(modifier = Modifier.width(6.dp))
668+
Text(
669+
text = stringResource(R.string.equalizer_action_save_new),
670+
color = MaterialTheme.colorScheme.onTertiaryContainer,
671+
fontWeight = FontWeight.Bold
672+
)
673+
}
674+
}
646675
}
647676
}
648677

app/src/main/res/values-de/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Preset umbenennen</string>
4242
<string name="error_name_empty">Name darf nicht leer sein</string>
4343
<string name="action_save">Speichern</string>
44+
<string name="equalizer_action_save_new">Neu speichern</string>
4445
<string name="action_rename">Umbenennen</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-es/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Renombrar preset</string>
4242
<string name="error_name_empty">El nombre no puede estar vacío</string>
4343
<string name="action_save">Guardar</string>
44+
<string name="equalizer_action_save_new">Guardar nuevo</string>
4445
<string name="action_rename">Renombrar</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-fr/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Renommer le préréglage</string>
4242
<string name="error_name_empty">Le nom ne peut pas être vide</string>
4343
<string name="action_save">Enregistrer</string>
44+
<string name="equalizer_action_save_new">Enregistrer nouveau</string>
4445
<string name="action_rename">Renommer</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-in/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Ubah nama preset</string>
4242
<string name="error_name_empty">Nama tidak boleh kosong</string>
4343
<string name="action_save">Simpan</string>
44+
<string name="equalizer_action_save_new">Simpan baru</string>
4445
<string name="action_rename">Ubah Nama</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-it/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Rinomina preset</string>
4242
<string name="error_name_empty">Il nome non può essere vuoto</string>
4343
<string name="action_save">Salva</string>
44+
<string name="equalizer_action_save_new">Salva nuovo</string>
4445
<string name="action_rename">Rinomina</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-ko/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">프리셋 이름 변경</string>
4242
<string name="error_name_empty">이름은 비워둘 수 없습니다</string>
4343
<string name="action_save">저장</string>
44+
<string name="equalizer_action_save_new">새로 저장</string>
4445
<string name="action_rename">이름 변경</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-nb/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Endre navn på forhåndsinnstilling</string>
4242
<string name="error_name_empty">Navnet kan ikke være tomt</string>
4343
<string name="action_save">Lagre</string>
44+
<string name="equalizer_action_save_new">Lagre ny</string>
4445
<string name="action_rename">Endre navn</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-ru/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">Переименовать пресет</string>
4242
<string name="error_name_empty">Имя не может быть пустым</string>
4343
<string name="action_save">Сохранить</string>
44+
<string name="equalizer_action_save_new">Сохранить как новый</string>
4445
<string name="action_rename">Переименовать</string>
4546

4647
<!-- AI metadata sheet -->

app/src/main/res/values-zh-rCN/strings_components.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<string name="equalizer_rename_preset_title">重命名预设</string>
4242
<string name="error_name_empty">名称不能为空</string>
4343
<string name="action_save">保存</string>
44+
<string name="equalizer_action_save_new">保存新预设</string>
4445
<string name="action_rename">重命名</string>
4546

4647
<!-- AI metadata sheet -->

0 commit comments

Comments
 (0)