Convert CPDFSDK_InterForm to take a CPDFSDK_FormFillEnvironment

This CL removes CPDFSDK_Document from CPDFSDK_InterForm and has it work with
a CPDFSDK_FormFillEnvironment.

Review-Url: https://codereview.chromium.org/2397723005
diff --git a/fpdfsdk/javascript/Field.cpp b/fpdfsdk/javascript/Field.cpp
index fa2ac70..14e0692 100644
--- a/fpdfsdk/javascript/Field.cpp
+++ b/fpdfsdk/javascript/Field.cpp
@@ -295,9 +295,14 @@
     std::vector<CPDFSDK_Widget*> widgets;
     pInterForm->GetWidgets(pFormField, &widgets);
 
+    // TODO(dsinclair): Determine if all widgets share the same
+    // CPDFSDK_InterForm. If that's the case, we can move the code to
+    // |GetSDKDocument| out of the loop.
     for (CPDFSDK_Widget* pWidget : widgets) {
-      CPDFSDK_Document* pDoc = pWidget->GetInterForm()->GetDocument();
-      pDoc->UpdateAllViews(nullptr, pWidget);
+      pWidget->GetInterForm()
+          ->GetFormFillEnv()
+          ->GetSDKDocument()
+          ->UpdateAllViews(nullptr, pWidget);
     }
   }
 
@@ -330,8 +335,8 @@
 
     if (bRefresh) {
       CPDFSDK_InterForm* pInterForm = pWidget->GetInterForm();
-      CPDFSDK_Document* pDoc = pInterForm->GetDocument();
-      pDoc->UpdateAllViews(nullptr, pWidget);
+      pInterForm->GetFormFillEnv()->GetSDKDocument()->UpdateAllViews(nullptr,
+                                                                     pWidget);
     }
   }