From 479b4026612ae1d8ad3047b18570dd54706e75e5 Mon Sep 17 00:00:00 2001 From: Ettore Di Giacinto Date: Wed, 21 Oct 2026 10:08:32 +0000 Subject: [PATCH] fix(addons): drop the repeated title from the Voice and Face pages The add-on shell already titles the page, so the recognition pages showed the name twice: "Voice" above "Voices", "Face" above "Faces". Keep the supporting line and the model picker, as the Studio page does, and remove the unused title strings. Assisted-by: Claude Code:claude-sonnet-5-5 node playwright Signed-off-by: Ettore Di Giacinto --- addons/face/ui/src/FaceRecognition.jsx | 3 ++- addons/face/ui/src/i18n/en.js | 1 - addons/face/ui/test/recognition.test.mjs | 2 +- addons/voice/ui/src/VoiceRecognition.jsx | 3 ++- addons/voice/ui/src/i18n/en.js | 1 - 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/face/ui/src/FaceRecognition.jsx b/addons/face/ui/src/FaceRecognition.jsx index bd5689cbc..c298ac7d1 100644 --- a/addons/face/ui/src/FaceRecognition.jsx +++ b/addons/face/ui/src/FaceRecognition.jsx @@ -80,8 +80,9 @@ export function createFaceRecognition(ctx, api, identity) { return (
+ {/* The add-on shell already titles the page "Face", so this header + carries the supporting line and the model picker only. */} diff --git a/addons/face/ui/src/i18n/en.js b/addons/face/ui/src/i18n/en.js index efa468ebb..097847d14 100644 --- a/addons/face/ui/src/i18n/en.js +++ b/addons/face/ui/src/i18n/en.js @@ -1,6 +1,5 @@ // Generated once from the host locale files; edit by hand from here on. export default { - "faces.title": "Faces", "faces.lede": "Find out whose face is in a photo, or whether two photos show the same person. Photos go only to the model running on this server.", "tool.aria": "Recognition tool", "tool.sameTab": "Same person?", diff --git a/addons/face/ui/test/recognition.test.mjs b/addons/face/ui/test/recognition.test.mjs index 701e8d6b1..f63fd9390 100644 --- a/addons/face/ui/test/recognition.test.mjs +++ b/addons/face/ui/test/recognition.test.mjs @@ -64,7 +64,7 @@ test('recognition: the bundle has the face canvas, the face strings and no host const js = readFileSync(join(dir, 'ui/face.js'), 'utf8') assert.match(js, /biometrics-bbox/) assert.doesNotMatch(js, /from ['"]react(-dom)?/) - assert.match(js, /faces\.title/) + assert.match(js, /faces\.lede/) }) test('recognition: every translation key the sources read is in the Face bundle', async () => { diff --git a/addons/voice/ui/src/VoiceRecognition.jsx b/addons/voice/ui/src/VoiceRecognition.jsx index 9cda25511..21b3d4175 100644 --- a/addons/voice/ui/src/VoiceRecognition.jsx +++ b/addons/voice/ui/src/VoiceRecognition.jsx @@ -79,8 +79,9 @@ export function createVoiceRecognition(ctx, api, identity) { return (
+ {/* The add-on shell already titles the page "Voice", so this header + carries the supporting line and the model picker only. */} diff --git a/addons/voice/ui/src/i18n/en.js b/addons/voice/ui/src/i18n/en.js index d3acd54a8..b79486851 100644 --- a/addons/voice/ui/src/i18n/en.js +++ b/addons/voice/ui/src/i18n/en.js @@ -12,7 +12,6 @@ export default { "speech.generate": "Generate speech", "speech.result": "Result", "speech.noAccess": "Your account has no access to text-to-speech. The server will refuse the request.", - "voices.title": "Voices", "voices.lede": "Recognise who is speaking, and keep voices that text-to-speech can use.", "voices.tabs": "Voices sections", "voices.tab.recognition": "Recognition",