diff --git a/qt5/src/poppler-form.cc b/qt5/src/poppler-form.cc
index 03839bf..1ccb26c 100644
--- a/qt5/src/poppler-form.cc
+++ b/qt5/src/poppler-form.cc
@@ -160,6 +160,26 @@
   return action;
 }
 
+Link *FormField::additionalAction(AdditionalActionType type) const
+{
+  Annot::FormAdditionalActionsType actionType = Annot::actionFieldModified;
+  switch ( type )
+  {
+      case FieldModified:  actionType = Annot::actionFieldModified; break;
+      case FormatField:    actionType = Annot::actionFormatField; break;
+      case ValidateField:  actionType = Annot::actionValidateField; break;
+      case CalculateField: actionType = Annot::actionCalculateField; break;
+
+  }
+
+  Link* action = 0;
+  if (::LinkAction *act = m_formData->fm->getAdditionalAction(actionType))
+  {
+    action = PageData::convertLinkActionToLink(act, m_formData->doc, QRectF());
+  }
+  return action;
+}
+
 
 FormFieldButton::FormFieldButton(DocumentData *doc, ::Page *p, ::FormWidgetButton *w)
   : FormField(*new FormFieldData(doc, p, w))
diff --git a/qt5/src/poppler-form.h b/qt5/src/poppler-form.h
index 7996a2c..5a6b23b 100644
--- a/qt5/src/poppler-form.h
+++ b/qt5/src/poppler-form.h
@@ -116,6 +116,25 @@
 	 */
 	Link* activationAction() const;
 
+        /**
+	  * Describes the flags from the form 'AA' dictionary.
+	  *
+	  * \since 0.53
+	 */
+	enum AdditionalActionType
+	{
+	    FieldModified,   ///< A JavaScript action to be performed when the user modifies the field
+	    FormatField,     ///< A JavaScript action to be performed before the field is formatted to display its value
+	    ValidateField,   ///< A JavaScript action to be performed when the field value changes
+	    CalculateField,  ///< A JavaScript action to be performed when the field needs to be recalculated
+	};
+	/**
+	  * Returns a given form additional action
+	  *
+	  * \since 0.53
+	 */
+	Link* additionalAction(AdditionalActionType type) const;
+
     protected:
 	/// \cond PRIVATE
 	FormField(FormFieldData &dd);
