Version 9.1.1 Changelog (October 14, 2021)

Version: 9.1.1.78619

Release Date: October 14, 2021

New features

  • Adds support for nested OCG layers

Normal state

Disabled state

Apryse Docs Image
Apryse Docs Image
Apryse Docs Image
  • Cropping dialog UX updates
Apryse Docs Image
  • Viewer scrollbar UX updates
  • Adds ability to allow users enter password to remote PDF documents
  • Adds ability to scroll with 1 finger when in sticky note, free text, sound and file attachment tool creation mode
  • Adds ability to collapse all nodes in outline UI
  • Outline UI now respects bold/italic flags on each node
  • New API to specify edit modes and undo modes for collaboration viewer
  • New API to reload user bookmarks list after importing bookmarks JSON

Fixed

  • Fixed issue where links clicked in reflow mode would not go through the intercept callback
  • Fixed issue where user bookmark events trigger after lifecycle events in certain situations
  • Fixed issue where long press on read-only fields would not show long press menu
  • Fixed issue where saving identical copy would not work with non-PDF documents
  • Fixed issue where internal link jumping behaves strangely in vertical reflow mode
  • Fixed issue where free text custom fonts would not appear correctly on remote client in collaboration mode
  • Fixed issue where empty rich text still gets created
  • Fixed issue where adding images through long press menu would not work in certain situations
  • Fixed issue where undo button would show up twice in certain situations
  • Fixed incorrect layout and theme in signature related UI

APIs

PDFViewCtrlTools package

ToolManagerBuilder

new method: ToolManagerBuilder setMoveAnnotationBetweenPages(boolean)

AnnotationsAdapter

new class: AnnotationsAdapter

new constructor: AnnotationsAdapter(ArrayList<AnnotationInfo>, boolean, RecyclerView, PDFViewCtrl, AnalyticsEventListener)

new method: void addAll(List<AnnotationInfo>)

new method: void clear()

new method: AnnotationInfo getItem(int)

new method: int getItemCount()

new method: ArrayList<AnnotationInfo> getItems()

new method: ArrayList<AnnotationInfo> getItemsOnPage(int)

new method: void onBindViewHolder(ViewHolder, int)

new method: ViewHolder onCreateViewHolder(ViewGroup, int)

new method: boolean remove(AnnotationInfo)

new method: void removeAll(List<AnnotationInfo>)

new method: void replaceAll(List<AnnotationInfo>)

AnnotationsAdapter.ViewHolder

new class: ViewHolder

new constructor: ViewHolder(AnnotationsAdapter, View)

new field: ImageView icon

new field: TextView line1

new field: TextView line2

new field: TextView separator

new method: void onCreateContextMenu(ContextMenu, View, ContextMenuInfo)

OutlineDialogFragment

modified class: OutlineDialogFragment

Declaration

From:

public class OutlineDialogFragment extends NavigationListDialogFragment implements OnQueryTextListener,BookmarkNodeClickListener,OnTreeNodeListener,EditOutlineMoveClickListener

To:

public class OutlineDialogFragment extends NavigationListDialogFragment implements OnQueryTextListener,BookmarkNodeClickListener,OnBookmarkTreeNodeListener,EditOutlineMoveClickListener

PdfViewCtrlTabBaseFragment

new static final field: String BUNDLE_TAB_ANNOTATION_MANAGER_EDIT_MODE

new static final field: String BUNDLE_TAB_ANNOTATION_MANAGER_UNDO_MODE

new method: void showBackAndForwardButtons()

removed static final field: String BUNDLE_TAB_ANNOTATION_MANAGER_MODE

PdfViewCtrlTabFragment2

removed method: void startSeekBarTimer()

removed method: void stopSeekBarTimer()

PdfViewCtrlTabHostBaseFragment

new method: void reloadUserBookmarks()

new method: void showUserCropDialog(PDFViewCtrl)

ReflowControl

new method: void setReflowUrlLoadedListener(ReflowUrlLoadedListener)

ReflowUrlLoadedListener

new interface: ReflowUrlLoadedListener

new method: boolean onReflowExternalUrlLoaded(WebView, String)

new method: boolean onReflowInternalUrlLoaded(WebView, String)

ReflowPagerAdapter

new method: void setReflowUrlLoadedListener(ReflowUrlLoadedListener)

UserBookmarkDialogFragment

new method: void loadBookmarks()

UserCropApplyDialogFragment

new class: UserCropApplyDialogFragment

new constructor: UserCropApplyDialogFragment()

new static final field: String BUNDLE_IS_EVEN

new static final field: Integer OPTION_ALL_PAGES

new static final field: Integer OPTION_EDITED_PAGE

new static final field: Integer OPTION_ODD_OR_EVEN_PAGES

new static method: UserCropApplyDialogFragment newInstance(boolean)

new method: Dialog onCreateDialog(Bundle)

new method: void setUserCropApplyDialogListener(UserCropApplyDialogListener)

UserCropApplyDialogListener

new interface: UserCropApplyDialogListener

new method: void onApplyCropOption(int)

UserCropDialogFragment

new method: void onViewCreated(View, Bundle)

removed static method: UserCropDialogFragment newInstance(boolean, boolean)

removed method: void setImageToCropBitmap(Bitmap)

BookmarksDialogFragment

new method: Fragment getCurrentFragment()

PdfLayer

new class: PdfLayer

new constructor: PdfLayer(Group, String, Boolean, boolean, int, PdfLayer)

new method: Boolean getChecked()

new method: ArrayList<PdfLayer> getChildren()

new method: Group getGroup()

new method: int getLevel()

new method: String getName()

new method: PdfLayer getParent()

new method: boolean hasChildren()

new method: Boolean isChecked()

new method: boolean isEnabled()

new method: boolean isLocked()

new method: void setChecked(Boolean)

new method: void setChildren(ArrayList<PdfLayer>)

new method: void setEnabled(boolean)

new method: void setGroup(Group)

new method: void setLocked(boolean)

new method: void setName(String)

new method: void setParent(PdfLayer)

PdfLayerDialogFragment

new class: PdfLayerDialogFragment

new constructor: PdfLayerDialogFragment()

new method: boolean isEmpty()

new static method: PdfLayerDialogFragment newInstance()

new method: boolean onClick(TreeNode<PdfLayerNode>, ViewHolder)

new method: void onCreate(Bundle)

new method: View onCreateView(LayoutInflater, ViewGroup, Bundle)

new method: void onDestroyView()

new method: void onExpandNode(TreeNode<PdfLayerNode>, int)

new method: void onNodeCheckBoxSelected(TreeNode<PdfLayerNode>, ViewHolder)

new method: void onToggle(boolean, ViewHolder)

new method: void onViewCreated(View, Bundle)

new method: PdfLayerDialogFragment setPdfViewCtrl(PDFViewCtrl)

PdfLayerUtils

modified static method: ArrayList<LayerInfo> getLayers(PDFViewCtrl, PDFDoc)

Declaration

From:

public static ArrayList getLayers(PDFViewCtrl, PDFDoc) throws PDFNetException

To:

public static ArrayList getLayers(PDFViewCtrl, PDFDoc) throws PDFNetException

LayerInfo

removed class: LayerInfo

removed field: boolean checked

removed field: Group group

PdfLayerView

new method: void setup(ArrayList<PdfLayer>)

removed method: void setup(ArrayList<LayerInfo>)

PdfLayerViewAdapter

new constructor: PdfLayerViewAdapter(ArrayList<PdfLayer>)

removed constructor: PdfLayerViewAdapter(ArrayList<LayerInfo>)

modified method: LayerInfo getItem(int)

Declaration

From:

public LayerInfo getItem(int)

To:

public PdfLayer getItem(int)

EditListAdapter

new method: void commitEditing()

FreeTextInfo

removed constructor: FreeTextInfo(int, int, String)

removed method: void setFont(Context, PDFViewCtrl)

modified static method: void setFont(PDFViewCtrl, FreeText, String)

Declaration

From:

public static void setFont(PDFViewCtrl, FreeText, String) throws JSONException, PDFNetException

To:

public static boolean setFont(PDFViewCtrl, FreeText, String) throws JSONException, PDFNetException

AnnotManager

new method: EditPermissionMode getEditMode()

new method: AnnotationManagerMode getUndoMode()

removed method: AnnotationManagerMode getMode()

AnnotManager.EditPermissionMode

new final class: EditPermissionMode

new static final field: EditPermissionMode EDIT_OTHERS

new static final field: EditPermissionMode EDIT_OWN

new static method: EditPermissionMode valueOf(String)

new static method: EditPermissionMode[] values()

ToolManager

new method: void enableAnnotManager(String, String, AnnotationManagerMode, EditPermissionMode, AnnotationSyncingListener)

new method: boolean isMoveAnnotationBetweenPages()

new method: void setMoveAnnotationBetweenPages(boolean)

removed method: void enableAnnotManager(String, String, AnnotationManagerMode, AnnotationSyncingListener)

PdfViewCtrlSettingsManager

removed static method: boolean getShowScrollbarOption(Context)

removed static method: void setShowScrollbarOption(Context, boolean)

UserCropUtilities

new static method: void removeUserCrop(PDFDoc)

new static method: Completable removeUserCropAsync(PDFDoc)

ButtonId

new static final field: ButtonId MORE

BookmarkNode

new method: int getFontStyle()

PdfLayerNode

new class: PdfLayerNode

new constructor: PdfLayerNode(PdfLayer)

new static final field: String PLACEHOLDER_TAG

new field: boolean mIsOpen

new field: boolean mIsSelected

new method: int getLayoutId()

new method: PdfLayer getPdfLayer()

new method: String getTitle()

new method: boolean isOpen()

new method: PdfLayerNode setOpen(boolean)

PdfLayerNodeBinder

new class: PdfLayerNodeBinder

new constructor: PdfLayerNodeBinder(PdfLayerNodeClickListener)

new method: void bindView(ViewHolder, int, TreeNode)

new method: void bindView(ViewHolder, int, TreeNode)

new method: int getLayoutId()

new method: ViewHolder provideViewHolder(View)

pdftron-collab package

CollabViewerBuilder2

new method: CollabViewerBuilder2 usingAnnotationManagerEditMode(EditPermissionMode)

new method: CollabViewerBuilder2 usingAnnotationManagerUndoMode(AnnotationManagerMode)

removed method: CollabViewerBuilder2 usingAnnotationManagerMode(AnnotationManagerMode)

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales