diff --git a/app/src/main/java/com/certified/audionote/ui/EditNoteFragment.kt b/app/src/main/java/com/certified/audionote/ui/EditNoteFragment.kt
index 92514ec..e73fdb6 100644
--- a/app/src/main/java/com/certified/audionote/ui/EditNoteFragment.kt
+++ b/app/src/main/java/com/certified/audionote/ui/EditNoteFragment.kt
@@ -19,6 +19,7 @@ package com.certified.audionote.ui
import android.Manifest
import android.app.DatePickerDialog
import android.app.TimePickerDialog
+import android.content.Context
import android.media.MediaPlayer
import android.media.MediaRecorder
import android.os.Bundle
@@ -75,7 +76,6 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
private var mediaRecorder: MediaRecorder? = null
private var mediaPlayer: MediaPlayer? = null
private var file: File? = null
- private val noteIsRequired = "The note title is required"
private var stopWatch: Stopwatch? = null
private var timer: Timer? = null
@@ -113,7 +113,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
openEditReminderDialog()
}
btnShare.setOnClickListener { shareNote(_note) }
- btnDelete.setOnClickListener { launchDeleteNoteDialog() }
+ btnDelete.setOnClickListener { launchDeleteNoteDialog(requireContext()) }
btnRecord.setOnClickListener(this@EditNoteFragment)
fabSaveNote.setOnClickListener(this@EditNoteFragment)
@@ -152,7 +152,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
etNoteTitle.apply {
// inputType = InputType.TYPE_NULL
keyListener = null
- setOnClickListener { showToast("You can't edit the note title") }
+ setOnClickListener { showToast(requireContext().getString(R.string.cant_edit_note_title)) }
}
btnRecord.setImageDrawable(
ResourcesCompat.getDrawable(
@@ -248,7 +248,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
startAlarm(requireContext(), pickedDateTime!!.timeInMillis, note)
navController.navigate(R.id.action_editNoteFragment_to_homeFragment)
} else {
- showToast(noteIsRequired)
+ showToast(requireContext().getString(R.string.title_required))
etNoteTitle.requestFocus()
}
}
@@ -274,13 +274,13 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
startRecording()
}
else {
- showToast(noteIsRequired)
+ showToast(requireContext().getString(R.string.title_required))
etNoteTitle.requestFocus()
}
else
requestPermission(
requireActivity(),
- "This permission is required to enable audio recording",
+ requireContext().getString(R.string.permission_required),
MainActivity.RECORD_AUDIO_PERMISSION_CODE,
Manifest.permission.RECORD_AUDIO
)
@@ -304,12 +304,12 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
description = etNoteDescription.text.toString().trim()
)
viewModel.insertNote(note)
- showToast("Note saved")
+ showToast(requireContext().getString(R.string.note_saved))
if (pickedDateTime?.timeInMillis != null && pickedDateTime!!.timeInMillis <= currentDateTime.timeInMillis)
startAlarm(requireContext(), pickedDateTime!!.timeInMillis, note)
navController.navigate(R.id.action_editNoteFragment_to_homeFragment)
} else {
- showToast(noteIsRequired)
+ showToast(requireContext().getString(R.string.title_required))
etNoteTitle.requestFocus()
}
}
@@ -373,13 +373,13 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
bottomSheetDialog.show()
}
- private fun launchDeleteNoteDialog() {
+ private fun launchDeleteNoteDialog(context: Context) {
val materialDialog = MaterialAlertDialogBuilder(requireContext())
materialDialog.apply {
- setTitle("Delete Note")
- setMessage("Are you sure you want to delete ${_note.title}?")
- setNegativeButton("No") { dialog, _ -> dialog?.dismiss() }
- setPositiveButton("Yes") { _, _ ->
+ setTitle(context.getString(R.string.delete_note))
+ setMessage("${context.getString(R.string.confirm_deletion)} ${_note.title}?")
+ setNegativeButton(context.getString(R.string.no)) { dialog, _ -> dialog?.dismiss() }
+ setPositiveButton(context.getString(R.string.yes)) { _, _ ->
viewModel.deleteNote(_note)
lifecycleScope.launch(Dispatchers.IO) { file?.delete() }
navController.navigate(R.id.action_editNoteFragment_to_homeFragment)
@@ -392,7 +392,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
val filePath = filePath(requireActivity())
val fileName = "${binding.etNoteTitle.text.toString().trim()}.3gp"
_note.filePath = "$filePath/$fileName"
- showToast("Started recording")
+ showToast(requireContext().getString(R.string.started_recording))
stopWatch = StopwatchBuilder()
.startFormat("MM:SS")
@@ -412,7 +412,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
stopWatch!!.start()
disableNoteTitleEdit()
} catch (e: IOException) {
- showToast("An error occurred")
+ showToast(requireContext().getString(R.string.error_occurred))
}
}
}
@@ -433,7 +433,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
val fileByte = (file.readBytes().size.toDouble() / 1048576.00)
val fileSize = roundOffDecimal(fileByte).toString()
_note.size = fileSize
- showToast("Stopped recording")
+ showToast(requireContext().getString(R.string.stopped_recording))
}
private fun startPlayingRecording() {
@@ -462,18 +462,18 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
start()
}
timer!!.start()
- showToast("Started playing recording")
+ showToast(requireContext().getString(R.string.started_playing_recording))
} catch (e: IOException) {
e.printStackTrace()
Log.d("TAG", "startPlayingRecording: ${e.localizedMessage}")
- showToast("An error occurred")
+ showToast(requireContext().getString(R.string.error_occurred))
}
}
private fun disableNoteTitleEdit() {
binding.etNoteTitle.apply {
keyListener = null
- setOnClickListener { showToast("You can't edit the note title") }
+ setOnClickListener { showToast(requireContext().getString(R.string.cant_edit_note_title)) }
}
}
@@ -497,7 +497,7 @@ class EditNoteFragment : Fragment(), View.OnClickListener, DatePickerDialog.OnDa
stop()
}
timer = null
- showToast("Stopped playing recording")
+ showToast(requireContext().getString(R.string.stopped_playing_recording))
}
private fun shareNote(note: Note) {
diff --git a/app/src/main/res/layout/bottom_sheet_dialog.xml b/app/src/main/res/layout/bottom_sheet_dialog.xml
index 8ae0540..f8d36b4 100644
--- a/app/src/main/res/layout/bottom_sheet_dialog.xml
+++ b/app/src/main/res/layout/bottom_sheet_dialog.xml
@@ -64,7 +64,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="3"
- android:text="Now playing"
+ android:text="@string/now_playing"
android:textSize="@dimen/_12ssp"
android:textColor="@color/black_day_white_night"
android:fontFamily="@font/open_sans_regular"
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
new file mode 100644
index 0000000..e3d2c7d
--- /dev/null
+++ b/app/src/main/res/values-it/strings.xml
@@ -0,0 +1,86 @@
+
+
+
+ Audio Notes
+ Visualizzazione
+ Tema
+ Scegli tema
+ Descrizione
+ Titolo della nota (obbligatorio)
+ Nuova Nota
+ Salva
+ Pulsante Aggiungi nota
+ Pulsante Indietro
+ Pulsante Elimina
+ Pulsante Condividi
+ Clicca per aggiungere un promemoria a questa nota
+ Registra
+ Pulsante Promemoria
+ Bentornato
+ Ehilà,
+ L\'elenco delle registrazioni è vuoto. Clicca sul pulsante in basso per iniziare
+ Informazioni
+ Attribuzioni e Licenze
+ Rilasciato sotto Licenza Apache, Versione 2.0
+ Versione dell\'app, licenza e altro
+ Impostazioni
+ Modifica Nota
+ Icona Sveglia
+ Modifica
+ Elimina
+ Nessun promemoria
+ Notifica di Audio Notes
+ Registra audio facilmente
+ Prendere appunti non dovrebbe riguardare la digitazione o la scrittura da sole. Usa la funzione di registrazione vocale per registrare la tua nota in modo facile e veloce per migliorare la tua produttività
+ Notifiche Personalizzate
+ Imposta un promemoria per le tue note e ricevi una notifica all\'ora esatta per cui hai impostato il promemoria. Non devi più preoccuparti di dimenticare di controllare una nota.
+ Progettato per te
+ Prendere appunti non dovrebbe essere fantascienza. L\'app è stata progettata pensando a te per facilitare il modo in cui prendi appunti e anche per migliorare la tua produttività
+ Registratore
+ Sviluppatore
+ Contribuisci
+ Visualizza il progetto su GitHub
+ Contatto e Feedback
+ Iniziamo
+ Proprio ora
+ un minuto fa
+ minuti fa
+ un\'ora fa
+ ore fa
+ un giorno fa
+ Predefinito di sistema
+ Chiaro
+ Scuro
+ In riproduzione
+ Non puoi modificare il titolo della nota
+ Il titolo della nota è obbligatorio
+ Questa autorizzazione è richiesta per abilitare le registrazioni audio
+ Nota salvata
+ Registrazione avviata
+ Registrazione terminata
+ Riproduzione della registrazione avviata
+ Riproduzione della registrazione terminata
+ Si è verificato un errore
+ Sì
+ No
+ Elimina Nota
+ Sei sicuro di voler eliminare
+ Tutte
+ Oggi
+ Imminenti
+ Completate
+
\ No newline at end of file
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 4a3174e..da124b6 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -17,9 +17,9 @@
- - System default
- - Light
- - Dark
+ - @string/theme_system_default
+ - @string/theme_light
+ - @string/theme_dark
@@ -29,9 +29,9 @@
- - All
- - Today
- - Upcoming
- - Completed
+ - @string/all
+ - @string/today
+ - @string/upcoming
+ - @string/completed
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7038782..904b1eb 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -67,4 +67,25 @@
an hour ago
hours ago
a day ago
+ System default
+ Light
+ Dark
+ Now playing
+ You can\'t edit the note title
+ The note title is required
+ This permission is required to enable audio recording
+ Note saved
+ Started recording
+ Stopped recording
+ Started playing recording
+ Stopped playing recording
+ An error occurred
+ Yes
+ No
+ Delete Note
+ Are you sure you want to delete
+ All
+ Today
+ Upcoming
+ Completed
\ No newline at end of file