From ffac498609f18a557d7213a3c58c8e1ee5499be8 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Sun, 19 Oct 2025 09:16:18 -0400 Subject: [PATCH] Sync countdown current with max when equal (#1221) --- module/applications/ui/countdownEdit.mjs | 12 ++++++++++++ styles/less/ui/countdown/countdown-edit.less | 3 +++ templates/ui/countdown-edit.hbs | 4 ++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/module/applications/ui/countdownEdit.mjs b/module/applications/ui/countdownEdit.mjs index a5980146..d8f24c39 100644 --- a/module/applications/ui/countdownEdit.mjs +++ b/module/applications/ui/countdownEdit.mjs @@ -110,6 +110,18 @@ export default class CountdownEdit extends HandlebarsApplicationMixin(Applicatio static async updateData(_event, _, formData) { const { hideNewCountdowns, ...settingsData } = foundry.utils.expandObject(formData.object); + + // Sync current and max if max is changing and they were equal before + for (const [id, countdown] of Object.entries(settingsData.countdowns ?? {})) { + const existing = this.data.countdowns[id]; + const wasEqual = existing && existing.progress.current === existing.progress.max; + if (wasEqual && countdown.progress.max !== existing.progress.max) { + countdown.progress.current = countdown.progress.max; + } else { + countdown.progress.current = Math.min(countdown.progress.current, countdown.progress.max); + } + } + this.hideNewCountdowns = hideNewCountdowns; this.updateSetting(settingsData); } diff --git a/styles/less/ui/countdown/countdown-edit.less b/styles/less/ui/countdown/countdown-edit.less index b675d9e2..1460c6ef 100644 --- a/styles/less/ui/countdown/countdown-edit.less +++ b/styles/less/ui/countdown/countdown-edit.less @@ -126,6 +126,9 @@ &.tiny { flex: 0; + input { + min-width: 2.5rem; + } } input, diff --git a/templates/ui/countdown-edit.hbs b/templates/ui/countdown-edit.hbs index 6b9e1a32..b95a8471 100644 --- a/templates/ui/countdown-edit.hbs +++ b/templates/ui/countdown-edit.hbs @@ -50,11 +50,11 @@
- +
- +