Skip to content

Commit 0f504d9

Browse files
committed
Add the l10n parameter when pasting a Signature annotation
1 parent 2e0f1ec commit 0f504d9

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

src/display/editor/signature.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,11 @@ class SignatureEditor extends DrawingEditor {
192192
this.div.hidden = true;
193193
this._uiManager.getSignature(this);
194194
}
195+
} else {
196+
this.div.setAttribute(
197+
"data-l10n-args",
198+
JSON.stringify({ description: this.#description || "" })
199+
);
195200
}
196201

197202
if (_isCopy) {
@@ -217,6 +222,10 @@ class SignatureEditor extends DrawingEditor {
217222

218223
set description(description) {
219224
this.#description = description;
225+
if (!this.div) {
226+
return;
227+
}
228+
this.div.setAttribute("data-l10n-args", JSON.stringify({ description }));
220229
super.addEditToolbar().then(toolbar => {
221230
toolbar?.updateEditSignatureButton(description);
222231
});
@@ -256,7 +265,6 @@ class SignatureEditor extends DrawingEditor {
256265
const { outline } = (this.#signatureData = data);
257266
this.#isExtracted = outline instanceof ContourDrawOutline;
258267
this.description = description;
259-
this.div.setAttribute("data-l10n-args", JSON.stringify({ description }));
260268
let drawingOptions;
261269
if (this.#isExtracted) {
262270
drawingOptions = SignatureEditor.getDefaultDrawingOptions();
@@ -428,7 +436,7 @@ class SignatureEditor extends DrawingEditor {
428436
static async deserialize(data, parent, uiManager) {
429437
const editor = await super.deserialize(data, parent, uiManager);
430438
editor.#isExtracted = data.areContours;
431-
editor.#description = data.accessibilityData?.alt || "";
439+
editor.description = data.accessibilityData?.alt || "";
432440
editor.#signatureUUID = data.uuid;
433441
return editor;
434442
}

test/integration/signature_editor_spec.mjs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ describe("Signature Editor", () => {
365365
`${editorSelector} .altText.editDescription`,
366366
el => el.title
367367
);
368+
const originalL10nParameter = await page.$eval(editorSelector, el =>
369+
el.getAttribute("data-l10n-args")
370+
);
368371

369372
await copy(page);
370373
await paste(page);
@@ -376,13 +379,19 @@ describe("Signature Editor", () => {
376379
`${pastedEditorSelector} .altText.editDescription`,
377380
el => el.title
378381
);
382+
const pastedL10nParameter = await page.$eval(pastedEditorSelector, el =>
383+
el.getAttribute("data-l10n-args")
384+
);
379385

380386
expect(pastedRect)
381387
.withContext(`In ${browserName}`)
382388
.not.toEqual(originalRect);
383389
expect(pastedDescription)
384390
.withContext(`In ${browserName}`)
385391
.toEqual(originalDescription);
392+
expect(pastedL10nParameter)
393+
.withContext(`In ${browserName}`)
394+
.toEqual(originalL10nParameter);
386395
}
387396
});
388397
});

0 commit comments

Comments
 (0)