From 864af57fd998109d245a21ad174522117d123738 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Sun, 1 Feb 2026 10:08:28 +0200 Subject: [PATCH] Fix i18n string interpolation for device name (#9806) Use a separate translatable string for "Media stored on another device" instead of interpolating a translated fragment into another string. This allows translators to properly handle the complete sentence for languages with different grammar structures. https://claude.ai/code/session_01TJMLcXE9HHneEXMEBJqL4u Co-authored-by: Claude --- src/view/com/composer/drafts/DraftItem.tsx | 32 ++++++++++------------ 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/src/view/com/composer/drafts/DraftItem.tsx b/src/view/com/composer/drafts/DraftItem.tsx index 7003d14cd5..4711aa21ea 100644 --- a/src/view/com/composer/drafts/DraftItem.tsx +++ b/src/view/com/composer/drafts/DraftItem.tsx @@ -45,23 +45,17 @@ export function DraftItem({ mediaExistsOnOtherDevice || draft.meta.hasQuotes - const deviceName = useMemo(() => { + const isUnknownDevice = useMemo(() => { const raw = draft.draft.deviceName - let name = raw switch (raw) { case device.FALLBACK_IOS: case device.FALLBACK_ANDROID: case device.FALLBACK_WEB: - name = _( - msg({ - message: `another device`, - comment: `Prefixed with "This media is stored on...". Example: "This media is stored on another device"`, - }), - ) - break + return true + default: + return false } - return name - }, [_, draft]) + }, [draft]) const handleDelete = useCallback(() => { onDelete(draft) @@ -115,12 +109,16 @@ export function DraftItem({ {mediaExistsOnOtherDevice && ( )} {mediaIsMissing && (