Options
All
  • Public
  • Public/Protected
  • All
Menu

Upgrade considerations for viewer integrations

Relativity Review introduces changes to the technology used by the HTML viewer and the DOM structure used in it. At the same time, many of the existing workflows and programming entities that you may have used for viewer customizations remain the same.

Review the following sections on this page for information about features of the Review Interface that may require upgrading your existing custom integrations.

This page contains the following information:

See these related pages:

Viewer technology and DOM changes

Relativity Review uses the Outside In Viewer Technology to render native files, images, and productions. This implementation differs from the HTML viewer that currently uses this technology for rendering only native files, and PDFTron technology for rendering productions and images.

Due to this change in the underlying technology, you may need to upgrade your existing integrations as explained in the following sections:

Updated DOM structure

When Relativity Review is enabled, the entire DOM structure inside the image and production viewer iframes differs from the previous versions of the HTML viewer.

If your existing integrations use the DOM structure inside these iframes, you need to update them for Relativity Review. See the following guidelines:

  • To detect whether Relativity Review is currently being used for images and productions, see Accessing the Relativity Review API.
  • Verify whether the changes to the DOM in the the Review Interface require updates to existing code, such as the entities listed in the Viewer integration guidelines. You may need to update how you access these APIs, depending on which iframe your code is being executed from.
  • Test your custom viewer integrations even if the DOM structure outside of the image and production viewer iframes isn’t affected by the new functionality in Relativity Review.

Unavailable PDFTron JavaScript APIs

When Relativity Review is enabled, the PDFTron JavaScript APIs won’t be available for the image and production viewer iframes. Relativity Review exposes its own public JavaScript API, which supports the integration of this technology in the HTML viewer.

Note: You can’t access the kBars.webViewer API in the image viewer iframe when Relativity Review is enabled. This API is part of the PDFTron JavaScript APIs.

For more information, see Using the Relativity Review API.

Viewer integration guidelines

Use the guidelines in this section when upgrading existing integrations with the Review Interface or implementing new ones.

Many of the programming features and workflows remain the same as in previous Relativity versions. However, their functionality may change in future releases of Relativity Review.

Note: If you enable Relativity Review, verify that calls from event handlers, custom pages, and custom context menus don’t attempt to access the PDFTron JavaScript APIs. These APIs are now unavailable, so the calls won’t work properly even though the functionality of event handlers, custom pages, and custom context menus hasn’t changed. See Unavailable PDFTron JavaScript APIs.

  • Page Interaction event handlers – use these event handlers available through the Relativity platform to write custom Review Interface integrations. See Page Interaction event handlers on the Relativity Developers site.
  • Custom panes – create custom panes in the Review Interface by using the Pane table. See Create custom panes in the core reviewer interface on the Relativity Developers site.
  • Custom context menus - add custom viewer context menus using the ViewerContextMenuItem table. See Add items to the viewer context menu on the Relativity Developers site.
  • Compatible existing JavaScript APIs – The following list highlights key existing JavaScript APIs that are compatible with the current Relativity Review release. These APIs will continue to function properly whether Relativity Review is enabled or disabled.

    ⚠️ The following APIs currently function with the Relativity Review image and production viewers enabled. In a future release, they will be deprecated and replaced with the new Relativity Review API.

    Navigation
    • navigateNext()
    • navigatePrevious()
    • navigateFirst()
    • navigateLast()
    • navigateToNewPageByIndex(index)
    • SetDocumentViewer(viewer, win)
    Undocked and standalone viewers
    • toggleDocked()
    • launchDocumentViewerForCurrentDocument(canSync)
    Coding pane
    • ForceProfileEditMode()
    • ListAvailableDocumentProfileControls()
    • GetDocumentProfileControlValue(control, data)
    • SetDocumentProfileControlValue(control, data)
    • SetFocusDocumentProfileControl(control, forceWindowFocus)
    State
    • GetCurrentViewer()
    User Interface
    • toggleDocumentList()
    • scrollActiveRecordIntoViewForTableView()
    • toggleSwapped()
    • showHideTabs()
    • toggleMaximized()
    Text selection (native and long text viewers only)
    • getTextByCharacterPositions(start, end)
    • GetSelectedText()
    • getSelectionAnchors()
    • setCustomHighlight(start, end)
    • clearCustomHighlight(start, end)
    ActiveX
    • isActiveXSupported()
    • UseLegacyViewer()
  • DocumentViewer JavaScript API – use the methods exposed on window.documentViewer API for navigation and other purposes. For example, you can use the documentViewer.PageDown() and documentViewer.PageUp() methods to navigate between pages of a document across all viewer modes.

    ⚠️ This API is compatible with the current release of Relativity Review, but this API will be removed in a future version of Relativity Review.

  • kBars JavaScript API - use the kBars toolbar API for customizations with all viewer types.

    ⚠️ This API is compatible with the current release of Relativity Review, but this API will be removed in a future version of Relativity Review.