Version 7.0.1 Changelog (August 20, 2019)

Version: 7.0.1.72223

Release Date: August 20, 2019

New features

  • Digital signature tool now comes with certificate picker, signing flow is updated for better user experience

Apryse Docs Image
  • Digital signature info dialog has been updated to include more information

Apryse Docs Image

List box

Combo box

Apryse Docs Image
Apryse Docs Image
  • Measurement tools now comes with magnifying glasses for more precision, see guide here: Measurement
  • The following annotation types now support real time editing: ink, free text, sticky note, sound, attachment, form widget and link
  • UI improvements in various areas:

Search

Text selection

Apryse Docs Image
Apryse Docs Image

Thumbnail slider

Page number indicator

Apryse Docs Image
Apryse Docs Image

Dependency changes

  • com.madgag.spongycastle is now removed from the PDFViewCtrlTools library project and all samples
  • com.squareup.picasso:picasso is now added to the PDFViewCtrlTools library project and all samples

Fixed

  • Fixed issue where PdfViewCtrlTabHostFragment cannot be used together with com.google.android.material:material library
  • Fixed unexpected behaviour when selecting annotation group with multi-select tool
  • Fixed issue where link annotation cannot be followed when it is part of an annotation group
  • Fixed issue where annotation rotation handle renders incorrectly on pre-lollipop devices
  • Fixed potential out of memory issue with saved signature dialog
  • Fixed potential missing stroke issue in create signature dialog
  • Fixed issue where undo/redo menu shows up when in read only mode
  • Fixed incorrect undo/redo button state when rotating device in EditToolbar
  • Fixed issue where free highlighter renders without blend mode in Adobe reader

APIs

Apryse package

ComboBoxWidget

new method: String[] getOptions()

new method: removeOption(String)

new method: replaceOptions(String[])

ListBoxWidget

new method: String[] getOptions()

new method: removeOption(String)

new method: replaceOptions(String[])

PDFViewCtrlTools package

SavedSignatureAdapter

new method: void add(File)

new method: void dispose()

new method: void insert(File, int)

new method: boolean remove(File)

removed method: void add(Bitmap)

removed method: File getFileItem(int)

removed method: void insert(Bitmap, int)

removed method: boolean remove(Bitmap)

removed method: void setBitmaps(Bitmap[])

modified class: SavedSignatureAdapter

Declaration

From:

public class SavedSignatureAdapter extends SimpleRecyclerViewAdapter<Bitmap, ViewHolder>

To:

public class SavedSignatureAdapter extends SimpleRecyclerViewAdapter<File, ViewHolder>

ViewerConfig.Builder

new method: Builder showFormToolbarOption(boolean)

AnnotationToolbar

new static final field: int START_MODE_FORM_TOOLBAR

new method: boolean isInFormMode()

new method: void onFormToolbarWillClose()

new method: void showFormToolbar(ToolMode)

modified class: AnnotationToolbar

Declaration

From:

public class AnnotationToolbar extends InsectHandlerToolbar implements ToolChangedListener,OnEditToolbarListener,OnEditToolbarListener

To:

public class AnnotationToolbar extends BaseToolbar implements ToolChangedListener,OnEditToolbarListener,OnEditToolbarListener,FormToolbarListener

BaseToolbar

new abstract class: BaseToolbar

new constructor: BaseToolbar(Context)

new constructor: BaseToolbar(Context, AttributeSet)

new constructor: BaseToolbar(Context, AttributeSet, int)

new constructor: BaseToolbar(Context, AttributeSet, int, int)

new method: boolean isShowing()

new abstract method: void selectTool(View, int)

CustomFragmentTabLayout

new method: void addOnTabSelectedListener(BaseOnTabSelectedListener)

new method: void removeOnTabSelectedListener(BaseOnTabSelectedListener)

removed method: void addOnTabSelectedListener(OnTabSelectedListener)

removed method: void removeOnTabSelectedListener(OnTabSelectedListener)

modified class: CustomFragmentTabLayout

Declaration

From:

public class CustomFragmentTabLayout extends TabLayout implements OnTabSelectedListener

To:

public class CustomFragmentTabLayout extends TabLayout implements BaseOnTabSelectedListener

EditToolbarImpl

new method: void onOrientationChanged()

modified class: EditToolbarImpl

Declaration

From:

public class EditToolbarImpl implements OnToolbarStateUpdateListener,OnToolSelectedListener

To:

public class EditToolbarImpl implements OnToolbarStateUpdateListener,OnToolSelectedListener,OnEditToolbarChangedListener

FavoriteColorDialogFragment

modified class: FavoriteColorDialogFragment

Declaration

From:

public class FavoriteColorDialogFragment extends DialogFragment implements OnPageChangeListener,OnTabSelectedListener

To:

public class FavoriteColorDialogFragment extends DialogFragment implements OnPageChangeListener,BaseOnTabSelectedListener

FormToolbar

new class: FormToolbar

new constructor: FormToolbar(Context)

new constructor: FormToolbar(Context, AttributeSet)

new constructor: FormToolbar(Context, AttributeSet, int)

new constructor: FormToolbar(Context, AttributeSet, int, int)

new method: void close()

new method: void closePopups()

new method: boolean handleKeyUp(int, KeyEvent)

new method: void selectTool(View, int)

new method: void setButtonStayDown(boolean)

new method: void setFormToolbarListener(FormToolbarListener)

new method: void setup(ToolManager)

new method: void show(ToolMode)

new method: void toolChanged(Tool, Tool)

new method: void updateButtonsVisibility()

FormToolbarListener

new interface: FormToolbarListener

new method: void onFormToolbarWillClose()

PdfViewCtrlTabHostFragment

modified class: PdfViewCtrlTabHostFragment

Declaration

From:

public class PdfViewCtrlTabHostFragment extends Fragment implements TabListener,AnnotationToolbarListener,QuickMenuListener,OnTabSelectedListener,SearchResultsListener,ViewModePickerDialogFragmentListener,BookmarksDialogListener,BookmarksTabsListener,UserCropSelectionDialogFragmentListener,OnUserCropDialogDismissListener,AutoCropTaskListener,OnThumbnailsViewDialogDismissListener,OnThumbnailsEditAttemptWhileReadOnlyListener,OnExportThumbnailsListener,OnLayoutChangeListener,OnSystemUiVisibilityChangeListener

To:

public class PdfViewCtrlTabHostFragment extends Fragment implements TabListener,AnnotationToolbarListener,QuickMenuListener,BaseOnTabSelectedListener,SearchResultsListener,ViewModePickerDialogFragmentListener,BookmarksDialogListener,BookmarksTabsListener,UserCropSelectionDialogFragmentListener,OnUserCropDialogDismissListener,AutoCropTaskListener,OnThumbnailsViewDialogDismissListener,OnThumbnailsEditAttemptWhileReadOnlyListener,OnExportThumbnailsListener,OnLayoutChangeListener,OnSystemUiVisibilityChangeListener

BookmarksDialogFragment

modified class: BookmarksDialogFragment

Declaration

From:

public class BookmarksDialogFragment extends DialogFragment implements OnTabSelectedListener

To:

public class BookmarksDialogFragment extends DialogFragment implements BaseOnTabSelectedListener

DialogSignatureInfo

new class: DialogSignatureInfo

new constructor: DialogSignatureInfo(Context)

new method: void setContactInfo(String)

new method: void setDocumentPermission(String)

new method: void setLocation(String)

new method: void setName(String)

new method: void setReason(String)

new method: void setSigningTime(String)

DigitalSignatureDialogFragment

new class: DigitalSignatureDialogFragment

new constructor: DigitalSignatureDialogFragment()

new method: void onActivityResult(int, int, Intent)

new method: void onCreate(Bundle)

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

new method: void onSignatureCreated(String)

new method: void onSignatureFromImage(PointF, int, Long)

new method: void onSignatureSelected(String)

new method: void setOnKeystoreUpdatedListener(OnKeystoreUpdatedListener)

DigitalSignatureUserInputFragment

new class: DigitalSignatureUserInputFragment

new constructor: DigitalSignatureUserInputFragment()

new method: void onCreate(Bundle)

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

new method: void onViewCreated(View, Bundle)

DigitalSignatureViewModel

new class: DigitalSignatureViewModel

new constructor: DigitalSignatureViewModel()

new method: void setKeystoreFileUri(Uri)

SignatureInfoView

new class: SignatureInfoView

new constructor: SignatureInfoView(Context)

new constructor: SignatureInfoView(Context, AttributeSet)

new constructor: SignatureInfoView(Context, AttributeSet, int)

new method: void setDetails(String)

new method: void setLabel(String)

DialogSignatureInfo

removed class: DialogSignatureInfo

removed constructor: DialogSignatureInfo(Context)

removed method: void setLocation(String)

removed method: void setName(String)

removed method: void setReason(String)

SignatureDialogFragment

new method: void onEditModeChanged(boolean)

SignatureDialogFragmentBuilder

new static final field: String BUNDLE_HAS_DEFAULT_KEYSTORE

new static final field: boolean HAS_DEFAULT_KEYSTORE

new method: SignatureDialogFragmentBuilder usingDefaultKeystore(boolean)

removed method: SignatureDialogFragmentBuilder usingDigitalSignature(boolean)

EditListAdapter

new abstract class: EditListAdapter<T>

new constructor: EditListAdapter()

new constructor: EditListAdapter(ViewHolderBindListener)

new method: void onBindViewHolder(ViewHolder, int)

new method: void onBindViewHolder(EditListViewHolder, int)

new method: ViewHolder onCreateViewHolder(ViewGroup, int)

new method: void setEditing(boolean)

new method: void setSelectedIndex(int)

EditListItemTouchHelperCallback

new class: EditListItemTouchHelperCallback

new constructor: EditListItemTouchHelperCallback(ItemTouchHelperAdapter, boolean, int)

new method: void clearView(RecyclerView, ViewHolder)

new method: int getMovementFlags(RecyclerView, ViewHolder)

new method: void onChildDraw(Canvas, RecyclerView, ViewHolder, float, float, int, boolean)

new method: void setDragging(boolean)

EditListViewHolder

new class: EditListViewHolder

new constructor: EditListViewHolder(View)

new final field: ImageButton confirmButton

new final field: ImageButton contextButton

new final field: EditText editText

new final field: TextView textView

ChoiceDialogFragment

new class: ChoiceDialogFragment

new constructor: ChoiceDialogFragment()

new static final field: String EXISTING_OPTIONS

new static final field: String FIELD_TYPE

new static final field: String SELECTION_TYPE

new static final field: String TAG

new static final field: String WIDGET

new static final field: String WIDGET_PAGE

new static method: ChoiceDialogFragment newInstance(long, int, boolean, boolean)

new static method: ChoiceDialogFragment newInstance(long, int, boolean, boolean, String[])

new method: void onCreate(Bundle)

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

new method: void onDismiss(DialogInterface)

ChoiceResult

new class: ChoiceResult

new constructor: ChoiceResult(long, int, boolean, String[])

new method: String[] getOptions()

new method: int getPage()

new method: long getWidget()

new method: boolean isSingleChoice()

ChoiceViewModel

new class: ChoiceViewModel

new constructor: ChoiceViewModel()

OnKeystoreUpdatedListener

new interface: OnKeystoreUpdatedListener

new method: void onKeystoreFileUpdated(Uri)

new method: void onKeystorePasswordUpdated(String)

OnSavedSignatureListener

new method: void onEditModeChanged(boolean)

AreaMeasureCreate

new method: void onDraw(Canvas, Matrix)

new method: boolean onMove(MotionEvent, MotionEvent, float, float)

new method: boolean onUp(MotionEvent, PriorEventMode)

BaseTool

new abstract class: BaseTool

new constructor: BaseTool(PDFViewCtrl)

new static final field: int LOUPE_RADIUS

new static final field: int LOUPE_SIZE

new method: void onClose()

new method: boolean onDown(MotionEvent)

new method: void onDraw(Canvas, Matrix)

new method: boolean onMove(MotionEvent, MotionEvent, float, float)

ChoiceFieldCreate

new abstract class: ChoiceFieldCreate

new constructor: ChoiceFieldCreate(PDFViewCtrl)

ComboBoxFieldCreate

new class: ComboBoxFieldCreate

new constructor: ComboBoxFieldCreate(PDFViewCtrl)

new method: int getCreateAnnotType()

new method: ToolModeBase getToolMode()

DigitalSignature

new static method: String createSignatureImageFile(Context, Page)

new method: boolean onLongPress(MotionEvent)

new method: boolean onUp(MotionEvent, PriorEventMode)

FreehandCreate

new static method: PointF convPagePtToDrawingPt(PDFViewCtrl, float, float, int, PointF)

new static method: ArrayList<ArrayList<PointF>> createDrawingStrokesFromPageStrokes(PDFViewCtrl, ArrayList<ArrayList<PointF>>, boolean, int, PointF)

removed static method: PointF convPagePtToDrawingPt(PDFViewCtrl, float, float, int, PointF, float, float)

removed static method: ArrayList<ArrayList<PointF>> createDrawingStrokesFromPageStrokes(PDFViewCtrl, ArrayList<ArrayList<PointF>>, boolean, int, PointF, float, float)

ListBoxFieldCreate

new class: ListBoxFieldCreate

new constructor: ListBoxFieldCreate(PDFViewCtrl)

new method: int getCreateAnnotType()

new method: ToolModeBase getToolMode()

PerimeterMeasureCreate

new method: void onDraw(Canvas, Matrix)

new method: boolean onMove(MotionEvent, MotionEvent, float, float)

new method: boolean onUp(MotionEvent, PriorEventMode)

RulerCreate

new method: boolean onUp(MotionEvent, PriorEventMode)

SimpleShapeCreate

modified abstract class: SimpleShapeCreate

Declaration

From:

public abstract class SimpleShapeCreate extends Tool

To:

public abstract class SimpleShapeCreate extends BaseTool

TextHighlighter

new method: void highlightSelection()

TextMarkupCreate

modified abstract class: TextMarkupCreate

Declaration

From:

public abstract class TextMarkupCreate extends Tool

To:

public abstract class TextMarkupCreate extends BaseTool

TextSelect

modified class: TextSelect

Declaration

From:

public class TextSelect extends Tool

To:

public class TextSelect extends BaseTool

Tool

new method: boolean getSnappingEnabled()

new static method: void updateFont(PDFViewCtrl, Widget, String)

ToolManager

new method: boolean isUsingDigitalSignature()

new method: void setUsingDigitalSignature(boolean)

ToolManager.ToolMode

new static final field: ToolMode FORM_COMBO_BOX_CREATE

new static final field: ToolMode FORM_LIST_BOX_CREATE

AnnotUtils

new static method: Bitmap getAnnotationAppearance(PDFViewCtrl, Annot)

new static method: Date getLocalDate(Date)

new static method: boolean isGroupSelected(PDFViewCtrl, ArrayList<Annot>, int)

new static method: boolean isListBox(Annot)

removed static method: Bitmap getStampAppearance(PDFViewCtrl, Annot)

modified static method: Completable loadSystemFonts()

Declaration

From:

public static Completable loadSystemFonts()

To:

public static Single loadSystemFonts()

DrawingUtils

new static final field: int sRotateHandleMargin

new static method: void drawInk(PDFViewCtrl, Canvas, ArrayList<InkItem>, boolean, Matrix, PointF, boolean)

removed static method: void drawInk(PDFViewCtrl, Canvas, ArrayList<InkItem>, boolean, PointF, float, float, boolean)

MySignatureHandler

removed class: MySignatureHandler

removed constructor: MySignatureHandler(int, Resources, String)

removed constructor: MySignatureHandler(String, String)

removed method: void appendData(byte[])

removed method: byte[] createSignature()

removed method: String getName()

removed method: boolean reset()

RequestCode

new static final field: int DIGITAL_SIGNATURE_KEYSTORE

new static final field: int DIGITAL_SIGNATURE_KEYSTORE_IMAGE

StampManager

new method: File getSavedSignatureJpegFile(Context, File)

Utils

new static method: Intent createSystemPickerIntent()

new static method: Intent createSystemPickerIntent(String[])

ViewerUtils

new static method: Uri getImageUriFromIntent(Intent, Activity, Uri)

AnnotDrawingView

new method: boolean getCanDraw()

new method: void setAnnotRect(RectF)

removed method: void setAnnotRect(Rect)

AnnotView

new method: boolean getCanDraw()

new method: void invalidate()

AnnotViewImpl

new field: RectF mAnnotRectF

RotateHandleView

modified class: RotateHandleView

Declaration

From:

public class RotateHandleView extends FloatingActionButton

To:

public class RotateHandleView extends LinearLayout

SelectionLoupe

new class: SelectionLoupe

new constructor: SelectionLoupe(Context)

new constructor: SelectionLoupe(Context, AttributeSet)

new constructor: SelectionLoupe(Context, AttributeSet, int)

new method: void setup(Bitmap, float)

pdfnet-demo-utils package

MiscUtils

removed static method: Intent createSystemPickerIntent()

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales