Version 11.9.0 Changelog (2025-11-26)

WebViewer Core

New

General

  • Added support for moving pages while a linearized PDF document is downloading.

DOCX Editor

  • Added formatted tracked changes.
  • Added Ctrl/Cmd+A keyboard shortcut functionality to select all text.
  • Enhanced image pasting functionality.
  • Added the ability to add line breaks using Shift+Enter key.

Rich Text

  • Added a getMajorityTextColors API to the Free Text annotation Rich Text editor to get the majority colors.

Text Selection

  • Added support for text selection in mixed content documents.
  • Added new APIs to adjust text selection sensitivity.

Annotations

  • Signature Widget annotations now respond to keyboard events for signing actions.

Form Builder

  • The 'Download', 'Save As' and 'Open File' buttons are no longer greyed out in Form Builder mode.

Fixes

General

  • Fixed rendering of PDF files with Usage Application Dictionaries between view and print.
  • Fixed an issue that would cause requirePage to never resolve when using the single threaded worker.
  • Fixed an issue with PDFNet.Convert.office2PDF, which would hang when run with PDFNet.runWithCleanup().
  • Fixed an issue where unmounting WebViewer could still cause it to be detected as mounted.
  • Fixed an issue where displayAdditionalSearchResults would only display the most recent search results.
  • Fixed an issue where diagonal swipes could navigate to the wrong page in both swipe orientation mode.
  • Fixed an issue with the rendering of PDF files with Usage Application Dictionaries between view and print.

Annotations

  • Fixed an issue where a Free Text annotation with pure white text color would disappear after performing a text search.
  • Fixed an issue with XFDF not being formatted correctly in some cases.
  • Fixed an issue where snap indicators were not shown while resizing measurement annotations.
  • Fixed an issue where measurement annotations couldn't be resized beyond the snap area.
  • Fixed an issue where Rectangle Area measurement annotations couldn't be resized using the top-right control handle.
  • Fixed an issue where toggling off auto font size resets edits.
  • Fixed an issue where when there were nested text replies, they would not always show in the notes panel.
  • Fixed an issue where pressing Backspace/Delete while editing a FreeText annotation in a nested Shadow DOM removed the whole annotation.
  • Fixed an issue with incorrect typing when instantiating TextWidget Annotations.
  • Fixed an issue where an autosized Free Text annotation shifted when creating it on a rotated page.
  • Fixed an issue where importing annotations would fail when the contents contained invalid unicode characters.
  • Fixed an issue where a new line would reset the style while editing a Free Text annotation with Rich Text support.
  • Fixed an issue where annotations flickered (disappeared/reappeared) during zoom or window resize when WebViewer was rendered inside a nested Shadow DOM.
  • Fixed an issue with Callout annotations not automatically resizing based on AutoSizeType.
  • Fixed an issue with Free Text and Callout annotations wrapping early instead of using maximum available width when autosizing.
  • Fixed an issue with Free Text and Callout text being vertically misaligned with textbox when rotated by 180 degrees.
  • Fixed jumpToAnnotation API to allow number input and correctly parsed string input.
  • Fixed an issue where changing a Widget annotation's field’s flag or size did not trigger the annotationChanged event.
  • Fixed an issue with the padding of multiline text widgets.
  • Fixed an issue where line annotations were not toggling visibility even if they were bound to a layer.

Signature Tool

  • Fixed an issue where SignatureCreateTool.getPreview didn't get the preview of a signature correctly.
  • Fixed an issue where using trust lists in the Web Component could prevent digital signature validation.
  • Fixed an issue where users could use the delete key to remove Signature Appearances.

Callout Tool

  • Fixed an issue where holding the shift key would not lock path point to a multiple of 45 degrees.
  • Fixed an issue where setting the Callout Tool line count greater than 2 would prevent the creation of Callout annotations.

Redaction

  • Fixed an inconsistency where redaction overlay text on text-based redactions would rotate during preview but remain horizontal after applying; preview now matches the final applied state with horizontal text regardless of page rotation.

Forms

  • Fixed an issue where auto-sized text widgets were not saving with the correct font size.
  • Fixed an issue where clicking or copying and pasting a Radio button field was generating duplicated widgets for that field.
  • Fixed an issue where signatures were duplicated across fields in some scenarios.

Text Selection

  • Fixed an issue where an extra white space was added to mixed content text segments when selected.
  • Fixed an issue where office documents would copy RTL text in reverse.
  • Improved text selection with mixed content.
  • Fixed an issue with text selection after cropping the page.

Spreadsheet Editor

  • Fixed an issue where financial data calculation with formula could reference wrong cell ranges.
  • Fixed an issue where column rendering was too narrow with some spreadsheet files.

DOCX Editor

  • Fixed an issue with Select All for tables, headers, and footers.
  • Fixed an issue where the DOCX Editor caused unintended scrolling.
  • Fixed an issue with the documentation for getMaxHeaderFooterDistance. It was incorrectly labeled as returning a Promise.

WebViewer Server

  • Fixed an issue where cookies were being unnecessarily removed.
  • Fixed an issue where using WVS wouldn't load all annotation appearances.

Security

  • Fixed a sandbox escape vulnerability where Promise constructor exposure in embedded PDF JavaScript allowed attackers to execute arbitrary code outside the sandbox.
  • Fixed an issue where unsafe class inheritance in Embedded PDF JavaScript allowed for arbitrary code execution outside of the sandbox.
  • Fixed an issue where nested Functions would bypass AST sanitation.

Workers

  • Fixed issue where workers were not reinitialized upon remounting.
  • Removed a WebViewer-specific override of the native window.Worker class.

Accessibility

  • Fixed an issue where tagged PDFs loaded using the loadDocument API with a custom docId failed to generate the correct document structure and triggered an incorrect tagging warning.
  • Fixed an issue where the Accessible Reading Order (ARO) mode's disabled status was not preserved across tabs in multi-tab environments.
  • Fixed an issue where tagged PDFs loaded in ARO mode with a custom docId triggered an error and failed to generate accessible content correctly.

WebViewer UI

New

General

  • Added the documentViewer.search API to the Search Panel UI.
  • Added support for overlays to the whitelist in View-Only mode.

Multi-Tab

  • Added a new event, TabManager.beforeTabDeleted, to allow saving the open document when deleting a tab.

Spreadsheet Editor

  • Added text wrapping options (Wrap, Overflow, Clip) to control how text displays when it exceeds cell width, accessible via a new toolbar button with a flyout menu.

Accessibility

  • Improved keyboard accessibility for Signature Widgets in the page container.

Fixes

General

  • Fixed an issue where custom page labels set via instance.UI.setPageLabels were not accepted in inputs, causing label ranges to be treated as invalid.
  • Fixed an issue where a warning was thrown when switching to a custom language.
  • Fixed an issue where users could multi-select annotations one-by-one using the CONTROL or META key and then edit other users' annotations if they had permission to edit the final annotation.
  • Fixed an issue where users were unable to use whitespace to highlight a comment.
  • Fixed a crash that would happen when the user became offline and tried to open a panel or modal.
  • Fixed an issue where lastActiveTool would ignore disableTool api call.
  • Fixed an issue where some elements had inconsistent font sizes in mobile view.
  • Fixed an issue where the Search and Notes Panel buttons were being hidden on mobile in ViewOnly mode.
  • Fixed an issue where Webpack bundle concurrency in Angular applications could break the WebViewer web component.
  • Fixed an issue where printing via WVS failed to print.
  • Fixed an issue with overlapping elements in the Search panel.
  • Fixed an issue with using embedded thumbnails on XOD documents.
  • Fixed an issue where several components were not dynamically updating when the language changed.
  • Fixed an issue with inconsistent document loading in Web Component when using blob or array-based initialDoc parameters by aligning getHashParameter behavior with the iframe implementation.
  • Fixed an issue with the Search panel that prevented the first search result from being selected by default.
  • Fixed an issue where the Warning modal displayed a secondary button from a previous Warning modal.
  • Fixed an issue where encrypted pdfs were unable to use embedded print.
  • Fixed an issue where the app would crash if the user pressed Tab after navigating away from WebViewer.
  • Fixed an issue where disabled tools still displayed their keyboard shortcuts in the Settings modal.
  • Improved focus management for the document container by moving focus target to the main container element, enhancing keyboard navigation predictability.
  • Fixed an issue when trying to save a PDF file with stamps using the 'Include Comments' option.
  • Fixed an issue where downloading via the UI with annotation author display names did not use the display names.
  • Fixed an issue where the notesInLeftPanel constructor parameter was not being saved correctly on the Legacy UI.
  • Fixed an issue where a memory leak was being created by unresolved promises, which eventually led to a crash in Mobile Safari.

Modular UI

  • Fixed an issue where changing tool style with sliders (e.g., stroke/opacity) on mobile didn’t persist to new annotations.
  • Fixed an issue where a crash could occur when disabling elements and resizing the window.
  • Fixed an issue where custom colors did not persist after a page reload.
  • Fixed an issue where modular configuration files included an unused isActive property.

Annotations

  • Fixed an issue where Free Text annotations with dynamic font sizing did not retain their font size after download.
  • Fixed an issue with Annotation Connector Line drawing incorrectly when multi-selecting annotations.
  • Fixed an issue where you could have duplicate options in ListWidgetAnnotations and ChoiceWidgetAnnotations.
  • Fixed an issue with compare annotations being regenerated when calling DocumentViewer.startSemanticDiff and opening the compare panel.
  • Fixed ComparePanel styling in Dark Mode.

Spreadsheet Editor

  • Fixed an issue where the downloadPdf API was not working for Spreadsheet Editor documents.
  • Fixed an issue where enabling a RTL language in Spreadsheet Editor caused broken rendering after scrolling.
  • Fixed an issue where hidden sheets were incorrectly displayed in the spreadsheet switcher when loading Excel files with hidden sheets.

Customize UI

  • External UI configurations are now checked against configorigin.txt whitelist.
  • Fixed an issue where the annotation style popup would close prematurely when adding or deleting a custom color.
  • Fixed an issue where the Context Menu Popup could open in the wrong position when a top offset was present in Web Component mode.
  • Fixed an issue with annotation popups that allowed users to change the link or alignment of annotations without permission.
  • Fixed an issue with the Style panel that allowed users to style annotations without permission.

Content Edit

  • Fixed an issue where the content edit box appeared on the wrong page when interacting within a Web Component.

Search

  • Fixed an issue where the search input was being incorrectly set.
  • Fixed an issue where WebViewer could crash when clicking the search button with no document loaded.
  • Fixed an issue where search result items did not have ARIA labels.

Stamps

  • Fixed an issue where parts of the "Timestamp Text" section were removed unexpectedly when toggling the checkboxes.
  • Fixed an issue where the delete button for custom stamps did not have a dataElement. It can now be disabled with the customStampDeleteButton dataElement.

ViewOnly

  • Fixed an issue where ReadOnly was coupled with ViewOnly.
  • Fixed an issue where the Snipping tool and Crop tool would be unable to clear their own annotations in ViewOnly Mode and ReadOnly Mode.
  • Fixed an issue with the whitelist not being updated until you interacted with the UI.

Outlines

  • Fixed an issue where files with many nested outlines would cause the UI to freeze temporarily.
  • Fixed an issue where the previous outlines of another document would get loaded into the panel.
  • Fixed an issue where outlines selection was expanding incorrectly due to a prefix match issue.

Multi-Tab

  • Fixed an issue with the getActiveTab API throwing an error.
  • Fixed a freezing issue when loading large files via the File Modal and switching tabs immediately.
  • Improved tab switching speed, especially if no changes had been made to the document or annotations.

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales