Skip to content

Commit 06a04c4

Browse files
authored
fix: check filename pattern for invalid characters (#304)
Refs: #15
1 parent 51a854b commit 06a04c4

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

app/src/main/kotlin/org/fossify/voicerecorder/dialogs/FilenamePatternDialog.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package org.fossify.voicerecorder.dialogs
33
import androidx.appcompat.app.AlertDialog
44
import androidx.core.widget.doAfterTextChanged
55
import org.fossify.commons.extensions.getAlertDialogBuilder
6+
import org.fossify.commons.extensions.isAValidFilename
67
import org.fossify.commons.extensions.setupDialogStuff
78
import org.fossify.commons.extensions.viewBinding
89
import org.fossify.voicerecorder.R
@@ -26,7 +27,7 @@ class FilenamePatternDialog(private val activity: SimpleActivity, private val ca
2627
true
2728
}
2829

29-
filenamePatternValue.doAfterTextChanged { validatePattern(it?.toString().orEmpty()) }
30+
filenamePatternValue.doAfterTextChanged { validatePattern(it?.toString().orEmpty().trim()) }
3031
}
3132

3233
activity.getAlertDialogBuilder()
@@ -36,7 +37,7 @@ class FilenamePatternDialog(private val activity: SimpleActivity, private val ca
3637
activity.setupDialogStuff(binding.root, this, R.string.filename_pattern) { alertDialog ->
3738
dialog = alertDialog
3839
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
39-
val newPattern = binding.filenamePatternValue.text.toString()
40+
val newPattern = binding.filenamePatternValue.text.toString().trim()
4041
config.filenamePattern = newPattern
4142
callback(newPattern)
4243
alertDialog.dismiss()
@@ -48,6 +49,7 @@ class FilenamePatternDialog(private val activity: SimpleActivity, private val ca
4849
private fun validatePattern(pattern: String) {
4950
binding.filenamePatternHint.error = when {
5051
pattern.isEmpty() -> activity.getString(org.fossify.commons.R.string.filename_cannot_be_empty)
52+
!pattern.isAValidFilename() -> activity.getString(org.fossify.commons.R.string.invalid_name)
5153
!containsAllDateTimePlaceholders(pattern) -> activity.getString(R.string.filename_pattern_must_contain_all)
5254
else -> null
5355
}

0 commit comments

Comments
 (0)