mirror of
https://github.com/zen-browser/pdf.js.git
synced 2025-07-07 17:05:38 +02:00
Merge pull request #18661 from calixteman/bug1915434
[Editor] Fix few telemetry issues with the new alt text flow (bug 1915434)
This commit is contained in:
commit
a41cd38387
4 changed files with 19 additions and 6 deletions
|
@ -213,6 +213,13 @@ class AltText {
|
||||||
this.#altTextButton.disabled = !enabled;
|
this.#altTextButton.disabled = !enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
shown() {
|
||||||
|
this.#editor._reportTelemetry({
|
||||||
|
action: "pdfjs.image.alt_text.image_status_label_displayed",
|
||||||
|
data: { label: this.#label },
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
destroy() {
|
destroy() {
|
||||||
this.#altTextButton?.remove();
|
this.#altTextButton?.remove();
|
||||||
this.#altTextButton = null;
|
this.#altTextButton = null;
|
||||||
|
@ -235,10 +242,6 @@ class AltText {
|
||||||
const label = this.#label;
|
const label = this.#label;
|
||||||
// TODO: Update the l10n keys to avoid this.
|
// TODO: Update the l10n keys to avoid this.
|
||||||
const type = label === "review" ? "to-review" : label;
|
const type = label === "review" ? "to-review" : label;
|
||||||
this.#editor._reportTelemetry({
|
|
||||||
action: "pdfjs.image.alt_text.image_status_label_displayed",
|
|
||||||
data: { label },
|
|
||||||
});
|
|
||||||
button.classList.toggle("done", !!this.#altText);
|
button.classList.toggle("done", !!this.#altText);
|
||||||
AltText._l10nPromise
|
AltText._l10nPromise
|
||||||
.get(`pdfjs-editor-new-alt-text-${type}-button-label`)
|
.get(`pdfjs-editor-new-alt-text-${type}-button-label`)
|
||||||
|
|
|
@ -975,7 +975,7 @@ class AnnotationEditor {
|
||||||
this._editToolbar = new EditorToolbar(this);
|
this._editToolbar = new EditorToolbar(this);
|
||||||
this.div.append(this._editToolbar.render());
|
this.div.append(this._editToolbar.render());
|
||||||
if (this.#altText) {
|
if (this.#altText) {
|
||||||
this._editToolbar.addAltTextButton(await this.#altText.render());
|
await this._editToolbar.addAltText(this.#altText);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this._editToolbar;
|
return this._editToolbar;
|
||||||
|
|
|
@ -24,6 +24,8 @@ class EditorToolbar {
|
||||||
|
|
||||||
#buttons = null;
|
#buttons = null;
|
||||||
|
|
||||||
|
#altText = null;
|
||||||
|
|
||||||
constructor(editor) {
|
constructor(editor) {
|
||||||
this.#editor = editor;
|
this.#editor = editor;
|
||||||
}
|
}
|
||||||
|
@ -99,6 +101,7 @@ class EditorToolbar {
|
||||||
|
|
||||||
show() {
|
show() {
|
||||||
this.#toolbar.classList.remove("hidden");
|
this.#toolbar.classList.remove("hidden");
|
||||||
|
this.#altText?.shown();
|
||||||
}
|
}
|
||||||
|
|
||||||
#addDeleteButton() {
|
#addDeleteButton() {
|
||||||
|
@ -126,9 +129,11 @@ class EditorToolbar {
|
||||||
return divider;
|
return divider;
|
||||||
}
|
}
|
||||||
|
|
||||||
addAltTextButton(button) {
|
async addAltText(altText) {
|
||||||
|
const button = await altText.render();
|
||||||
this.#addListenersToElement(button);
|
this.#addListenersToElement(button);
|
||||||
this.#buttons.prepend(button, this.#divider);
|
this.#buttons.prepend(button, this.#divider);
|
||||||
|
this.#altText = altText;
|
||||||
}
|
}
|
||||||
|
|
||||||
addColorPicker(colorPicker) {
|
addColorPicker(colorPicker) {
|
||||||
|
|
|
@ -114,6 +114,11 @@ class NewAltTextManager {
|
||||||
createAutomaticallyButton.addEventListener("click", async () => {
|
createAutomaticallyButton.addEventListener("click", async () => {
|
||||||
const checked =
|
const checked =
|
||||||
createAutomaticallyButton.getAttribute("aria-pressed") !== "true";
|
createAutomaticallyButton.getAttribute("aria-pressed") !== "true";
|
||||||
|
this.#currentEditor._reportTelemetry({
|
||||||
|
action: "pdfjs.image.alt_text.ai_generation_check",
|
||||||
|
data: { status: checked },
|
||||||
|
});
|
||||||
|
|
||||||
if (this.#uiManager) {
|
if (this.#uiManager) {
|
||||||
this.#uiManager.setPreference("enableGuessAltText", checked);
|
this.#uiManager.setPreference("enableGuessAltText", checked);
|
||||||
await this.#uiManager.mlManager.toggleService("altText", checked);
|
await this.#uiManager.mlManager.toggleService("altText", checked);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue