1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-22 16:18:08 +02:00

Support the password field-flag in TextWidgetAnnotation (issue 19389)

This commit is contained in:
Jonas Jenwald 2025-01-29 12:35:09 +01:00
parent 786ac2fe01
commit 6f2706fad6
5 changed files with 13 additions and 4 deletions

View file

@ -1888,6 +1888,7 @@ class WidgetAnnotation extends Annotation {
data.fieldFlags = 0;
}
data.password = this.hasFieldFlag(AnnotationFieldFlag.PASSWORD);
data.readOnly = this.hasFieldFlag(AnnotationFieldFlag.READONLY);
data.required = this.hasFieldFlag(AnnotationFieldFlag.REQUIRED);
data.hidden =
@ -2261,8 +2262,7 @@ class WidgetAnnotation extends Annotation {
}
async _getAppearance(evaluator, task, intent, annotationStorage) {
const isPassword = this.hasFieldFlag(AnnotationFieldFlag.PASSWORD);
if (isPassword) {
if (this.data.password) {
return null;
}
const storageEntry = annotationStorage?.get(this.data.id);
@ -2962,7 +2962,7 @@ class TextWidgetAnnotation extends WidgetAnnotation {
value: this.data.fieldValue,
defaultValue: this.data.defaultFieldValue || "",
multiline: this.data.multiLine,
password: this.hasFieldFlag(AnnotationFieldFlag.PASSWORD),
password: this.data.password,
charLimit: this.data.maxLen,
comb: this.data.comb,
editable: !this.data.readOnly,

View file

@ -1286,7 +1286,7 @@ class TextWidgetAnnotationElement extends WidgetAnnotationElement {
}
} else {
element = document.createElement("input");
element.type = "text";
element.type = this.data.password ? "password" : "text";
element.setAttribute("value", fieldFormattedValues ?? textContent);
if (this.data.doNotScroll) {
element.style.overflowX = "hidden";