> For the complete documentation index, see [llms.txt](https://docs.apryse.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apryse.com/web/changelogs/version-11/v11-11/v11-11-0.md).

# Version 11.11.0 Changelog (2026-02-18)

View the changelog for our 11.11.0 release of the Apryse WebViewer SDK.

## WebViewer Core

### New

#### General

* Improved styling behavior for both iframe and WebComponent integrations by shipping styles as standard CSS stylesheets.

#### Office Editor

* Added `column` APIs for building layout to `OfficeEditorDocument`.

#### Spreadsheet Editor

* Added support for custom HTTP headers when loading spreadsheet documents, enabling authentication and special header requirements.

#### Tools

* Added `setMeasurementLabelsHandler` API to `ArcMeasurementCreateTool`, allowing users to customize labels that are applied to newly created Arc Annotations.

### Fixes

#### Annotations

* Fixed line endings to better match the Core SDK and Adobe.
* Fixed an issue where Perimeter Measurement annotations could have a NaN angle in the Measurement Details.
* Fixed an issue where `AnnotationChangedSources` was not exposed correctly.
* Fixed an issue where Arc Measurement annotations only had English labels in the comment panel.
* Fixed an issue where dragging annotations across pages with replies with different authors would set the author as the current user.

#### Arrow Key Page Navigation

* Fixed an issue where page navigation with arrow keys would take precedence over input box cursor navigation.

#### Copy and Paste

* Fixed an issue where when copying text with certain RTL characters and pasting text would paste the wrong text.

#### Date Picker

* Fixed an issue where date tokens in date formats were interpreted incorrectly with the date picker widget.

#### Form Fields

* Fixed an issue where font sizes in form field create tool preview elements were not updating when the zoom level changed in `FormBuilder` mode.
* Fixed an issue where programmatically setting tool mode would be overridden when tools with lifecycle methods triggered additional tool changes during `switchIn`, ensuring tool mode changes are properly preserved and not overwritten by subsequent lifecycle callbacks.

#### Measurement

* Fixed cloudy measurement annotations missing an appearance, which made captions disappear.

#### Office Editor

* Fixed an issue where text highlight was rendered incorrectly after zooming.
* Fixed an issue where `getSelectedText` returned an empty string in Office Editor.
* Fixed issues caused by default query parameters when loading office editor worker.
* Fixed an issue with Korean IMEs where arrow keys could cause characters to be duplicated or deleted.

#### Page Navigation

* Fixed an issue where arrow keys would trigger page navigation if enabled while editing annotations.

#### RTL

* Fixed an issue where changing the display mode of an RTL document would not render the pages in the right order.

#### Tools

* Fixed an issue where the text selection toggle flag was on all tool instance classes. They are now instance methods on instances of `TextTool`, and won't be static to all tools.

## WebViewer UI

### New

#### Customize UI

* Simplified Modular UI configs by using the object key as the `dataElement` identifier, removing the need for redundant `dataElement` properties in component definitions.

#### General

* Custom modal data elements are automatically whitelisted in View Only mode when registered.
* Exposed a new `enableMultiSelect()` API for Notes Panel.

#### Modular UI

* Added new preset buttons: `rotateClockwiseButton`, `rotateCounterClockwiseButton`, `toggleMultiViewerModeButton`, `continuousPageTransitionButton`, `defaultPageTransitionButton`, `readerPageTransitionButton`, `singleLayoutButton`, `doubleLayoutButton`, and `coverLayoutButton`.

#### Multi-Tab

* Added new API `TabManager.updateTab` to update the `src` or `options` of an existing tab.

#### MultiViewer

* Added APIs: `getActiveDocumentViewerKey()` and `setActiveDocumentViewerKey(key)` for querying and updating the active document viewer in Multi-Viewer Mode.
* Introduced a new event, `instance.UI.Events.ACTIVE_DOCUMENT_VIEWER_CHANGED`, which fires whenever the active document viewer key changes. The event provides both the previous and new keys in its detail payload.
* **FilePicker** now loads files in the active `DocumentViewer`.

#### Search

* Improved search and replace button tooltips to provide clearer, more descriptive labels for better user experience.

#### Spreadsheet Editor

* Updated the default naming convention for new sheets from "Blank Sheet" to "Sheet" with numeric suffixes for a cleaner, more concise user experience.

### Fixes

#### Attachments

* Fixed an issue where the UI would lock up attempting to download a large attachment annotation.

#### Bookmarks Panel

* Fixed an issue where using the Command+B shortcut to add a new bookmark does not open the bookmarks panel.

#### ContentEdit

* Fixed an issue where transferring focus to different editable text disabled text styling buttons.

#### File Picker

* Fixed an issue where the file picker would not allow selecting the same file multiple times.

#### Focus

* Fixed an issue where elements outside of WebViewer were unselectable.

#### Fonts

* Updated Open Sans and Great Vibes fonts for improved compatibility in Firefox.

#### General

* Fixed an issue where the Open File Modal did not open encrypted documents.
* Fixed an issue where checkboxes continued to appear for notes with multi-select after disabling multi-select.
* Fixed an issue where `RibbonItem` tooltips prioritized label property even with defined title property.
* Fixed an issue where custom CSS loaded twice when WebViewer initialized with `WebComponent`.
* Fixed an issue where the boolean value of the `aria-pressed` property of UI buttons did not update properly when the button was pressed on or off.
* Fixed an issue where `setLanguage` threw a warning for custom languages.
* Fixed an issue where users were able to specify pages with a period even though it represented an invalid page label.
* Fixed an issue in the Notes Panel where the cursor jumped when selecting all text and then typing.
* Fixed an issue with Search Panel where the spinner would disappear when closing and reopening the panel.

#### Localization

* Fixed translations for Hebrew and Arabic.

#### Mobile

* Fixed an issue where panels were difficult to close or swipe down on mobile devices due to browser pull-to-refresh interfering with swipe gestures.

#### Modular UI

* Fixed the `ViewControls` component to use the passed `dataElement` prop rather than a fixed `dataElement`.
* Fixed `ViewControlsFlyout` to save customizations done via the UI Flyout APIs.

#### Multi-Tab

* Fixed an issue where closing the password modal and switching tabs would cause the viewer to freeze.
* Fixed an issue where save data would leak across different instances of WebViewer if they were both using `MultiTab`.

#### Outlines Panel

* Fixed issues with the Outlines Panel that were causing errors to be thrown.

#### Page Manipulation

* Fixed an issue where multiple images could not be inserted using the Insert Page Modal.
* Fixed an issue where multiple file uploads were disabled on the page manipulation modals.

#### Scale Overlay

* Fixed an issue where the scale overlay could not be dragged to the right edge of the viewer when the left panel was open.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.apryse.com/web/changelogs/version-11/v11-11/v11-11-0.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
