From 73a5f2064b3a4c435252a74d9542a1508346d641 Mon Sep 17 00:00:00 2001 From: Himanshu-Kandwal Date: Wed, 5 Nov 2025 19:53:03 +0530 Subject: [PATCH 1/4] fix : Unnecessary type casting of time(Long) into int --- .../main/java/org/nsh07/pomodoro/service/TimerService.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/nsh07/pomodoro/service/TimerService.kt b/app/src/main/java/org/nsh07/pomodoro/service/TimerService.kt index 8932c50..01552a2 100644 --- a/app/src/main/java/org/nsh07/pomodoro/service/TimerService.kt +++ b/app/src/main/java/org/nsh07/pomodoro/service/TimerService.kt @@ -168,11 +168,11 @@ class TimerService : Service() { if (startTime == 0L) startTime = SystemClock.elapsedRealtime() time = when (timerState.value.timerMode) { - TimerMode.FOCUS -> timerRepository.focusTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration).toInt() + TimerMode.FOCUS -> timerRepository.focusTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration) - TimerMode.SHORT_BREAK -> timerRepository.shortBreakTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration).toInt() + TimerMode.SHORT_BREAK -> timerRepository.shortBreakTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration) - else -> timerRepository.longBreakTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration).toInt() + else -> timerRepository.longBreakTime - (SystemClock.elapsedRealtime() - startTime - pauseDuration) } iterations = From eb167e22e87ae370603c07e0f5a9cb4ddf746af8 Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Thu, 6 Nov 2025 22:27:25 +0100 Subject: [PATCH 2/4] Added translation using Weblate (Dutch) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Translated using Weblate (Arabic) Currently translated at 97.3% (74 of 76 strings) Translated using Weblate (Italian) Currently translated at 86.8% (66 of 76 strings) Translated using Weblate (Czech) Currently translated at 10.5% (8 of 76 strings) Translated using Weblate (Czech) Currently translated at 94.1% (16 of 17 strings) Co-authored-by: Adam Panuška Co-authored-by: Extner32 Co-authored-by: Hosted Weblate Co-authored-by: K-MAX Co-authored-by: Leonardo Taiti Translate-URL: https://hosted.weblate.org/projects/tomato/store-descriptions/cs/ Translate-URL: https://hosted.weblate.org/projects/tomato/strings/ar/ Translate-URL: https://hosted.weblate.org/projects/tomato/strings/cs/ Translate-URL: https://hosted.weblate.org/projects/tomato/strings/it/ Translation: Tomato/Store descriptions Translation: Tomato/Strings --- app/src/main/res/values-ar/strings.xml | 11 +++++++++++ app/src/main/res/values-cs/strings.xml | 3 +++ app/src/main/res/values-it/strings.xml | 9 +++++++++ app/src/main/res/values-nl/strings.xml | 3 +++ fastlane/metadata/android/cs-CZ/full_description.txt | 9 +++++++++ 5 files changed, 35 insertions(+) create mode 100644 app/src/main/res/values-nl/strings.xml create mode 100644 fastlane/metadata/android/cs-CZ/full_description.txt diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 23c0782..0700ef0 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -62,4 +62,15 @@ المظهر الفترات الصوت + عدم الازعاج + تشغيل وضع عدم الازعاج عند تشغيل مؤقت التركيز + احصل علي Tomato+ + اللون الديناميكي + تعديل ألوان السمة من الخليفة الخاصة بك + Tomato FOSS + كل الميزات مفتوحة لي هذه النسخة، اذا كنت تريد صنع اختلاف في حياتك، فكر في التبرع لي علي %1$s. + اللغة + اختيار لغة + قيم التطبيق علي جوجل بلاي + مُختار diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 9050dd5..290eba8 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -2,4 +2,7 @@ Zapnout Zastavit + Alarm + Rozezvoň alarm, když vyprší časovač + Zvuk alarmu diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 1f13090..092043f 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -56,4 +56,13 @@ Prossimo Timer Progresso timer + L\'anno scorso + Tocca un punto qualsiasi durante la visualizzazione del timer per passare alla modalità AOD + Aspetto + Suono + Non disturbare + Ottieni Tomato+ + Adatta i colori del tema dal tuo sfondo + Lingua + Scegli la lingua diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml new file mode 100644 index 0000000..55344e5 --- /dev/null +++ b/app/src/main/res/values-nl/strings.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/fastlane/metadata/android/cs-CZ/full_description.txt b/fastlane/metadata/android/cs-CZ/full_description.txt new file mode 100644 index 0000000..e9d0e13 --- /dev/null +++ b/fastlane/metadata/android/cs-CZ/full_description.txt @@ -0,0 +1,9 @@ +Tomato je minimalistický Pomodoro časovač pro Android vycházející ze stylu Material 3 Expressive. + +Vlastnosti: +- Jednoduché, minimalistické UI založené na posledních pokynech Material 3 Expressive +- Podrobné statistiky časů práce/učení v jednoduše pochopitelném stylu +- Statistiky za poslední týden či měsíc zobrazené v jednoduše pochopitelném grafu +- Další statistiky za poslední týden či měsíc zobrazující v jakém čase dne jsi nejproduktivnější. +- Upravitelné parametry časomíry +- Podpora Android 16 Live Updates From 61cc5243f10d55518fa1de03b5c5efb89468f5e4 Mon Sep 17 00:00:00 2001 From: Nishant Mishra Date: Fri, 7 Nov 2025 16:33:24 +0530 Subject: [PATCH 3/4] fix(settings): fix crash that occurred when editing time Closes: #120 --- .../ui/settingsScreen/SettingsScreen.kt | 12 +++--------- .../components/MinuteInputField.kt | 2 +- .../components/MinutesTransformation.kt | 18 ++++++++---------- gradle/libs.versions.toml | 10 +++++----- 4 files changed, 17 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt index e523c16..c8ae71f 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt @@ -101,15 +101,9 @@ fun SettingsScreenRoot( onDispose { viewModel.cancelTextFieldFlowCollection() } } - val focusTimeInputFieldState = rememberSaveable(saver = TextFieldState.Saver) { - viewModel.focusTimeTextFieldState - } - val shortBreakTimeInputFieldState = rememberSaveable(saver = TextFieldState.Saver) { - viewModel.shortBreakTimeTextFieldState - } - val longBreakTimeInputFieldState = rememberSaveable(saver = TextFieldState.Saver) { - viewModel.longBreakTimeTextFieldState - } + val focusTimeInputFieldState = viewModel.focusTimeTextFieldState + val shortBreakTimeInputFieldState = viewModel.shortBreakTimeTextFieldState + val longBreakTimeInputFieldState = viewModel.longBreakTimeTextFieldState val isPlus by viewModel.isPlus.collectAsStateWithLifecycle() val alarmEnabled by viewModel.alarmEnabled.collectAsStateWithLifecycle(true) diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinuteInputField.kt b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinuteInputField.kt index f34a694..f5f0c23 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinuteInputField.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinuteInputField.kt @@ -54,7 +54,7 @@ fun MinuteInputField( state = state, lineLimits = TextFieldLineLimits.SingleLine, inputTransformation = MinutesInputTransformation, - outputTransformation = MinutesOutputTransformation, +// outputTransformation = MinutesOutputTransformation, keyboardOptions = KeyboardOptions( keyboardType = KeyboardType.NumberPassword, imeAction = imeAction diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinutesTransformation.kt b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinutesTransformation.kt index e9df5af..790c6fb 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinutesTransformation.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/components/MinutesTransformation.kt @@ -18,9 +18,7 @@ package org.nsh07.pomodoro.ui.settingsScreen.components import androidx.compose.foundation.text.input.InputTransformation -import androidx.compose.foundation.text.input.OutputTransformation import androidx.compose.foundation.text.input.TextFieldBuffer -import androidx.compose.foundation.text.input.insert import androidx.core.text.isDigitsOnly object MinutesInputTransformation : InputTransformation { @@ -31,11 +29,11 @@ object MinutesInputTransformation : InputTransformation { } } -object MinutesOutputTransformation : OutputTransformation { - override fun TextFieldBuffer.transformOutput() { - when (this.length) { - 0 -> insert(0, "00") - 1 -> insert(0, "0") - } - } -} \ No newline at end of file +//object MinutesOutputTransformation : OutputTransformation { +// override fun TextFieldBuffer.transformOutput() { +// when (this.length) { +// 0 -> insert(0, "00") +// 1 -> insert(0, "0") +// } +// } +//} \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 85f21bf..ae2a776 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,17 +2,17 @@ activityCompose = "1.11.0" adaptive = "1.2.0" agp = "8.11.2" -composeBom = "2025.10.01" +composeBom = "2025.11.00" coreKtx = "1.17.0" espressoCore = "3.7.0" junit = "4.13.2" junitVersion = "1.3.0" kotlin = "2.2.21" -ksp = "2.2.20-2.0.4" +ksp = "2.3.1" lifecycleRuntimeKtx = "2.9.4" -materialKolor = "3.0.1" -navigation3 = "1.0.0-beta01" -revenuecat = "9.12.0" +materialKolor = "4.0.3" +navigation3 = "1.0.0-rc01" +revenuecat = "9.12.1" room = "2.8.3" vico = "2.2.1" From 211272a2f31ed05d76c560ef00fe7f23a6a60d48 Mon Sep 17 00:00:00 2001 From: Nishant Mishra Date: Fri, 7 Nov 2025 16:39:56 +0530 Subject: [PATCH 4/4] chore(release): bump version, update changelog --- app/build.gradle.kts | 4 ++-- fastlane/metadata/android/en-US/changelogs/19.txt | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 fastlane/metadata/android/en-US/changelogs/19.txt diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 434191e..7fe184d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -43,8 +43,8 @@ android { applicationId = "org.nsh07.pomodoro" minSdk = 27 targetSdk = 36 - versionCode = 18 - versionName = "1.6.3" + versionCode = 19 + versionName = "1.6.4" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/fastlane/metadata/android/en-US/changelogs/19.txt b/fastlane/metadata/android/en-US/changelogs/19.txt new file mode 100644 index 0000000..b144958 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/19.txt @@ -0,0 +1,13 @@ +[URGENT] This update contains a very important fix for a crash that occurred when editing the time in settings. Please update as soon as possible. + +New features: +- New redesigned alarm screen +- New font used across the UI +- Language selection for Android 13+ + +Fixes: +- Fixed a crash that occurred when editing the time in settings +- Clock now stays in place even when the time changes + +Enhancements: +- Updated translations \ No newline at end of file