Convert XFA Doc Types to be more precise

The existing types are PDF, Dynamic & Static, which are poorly named
since they don't really convey the fundamental differences between the
types. "PDF" is confusing because PDFium only handles PDFs, and
"Dynamic" & "Static" describe what a form may do, not how it is
specified or some other fundamental difference. The terms "Dynamic"
and "Static" were especially confusing, since XFAF documents must be
static by definition, whereas full XFA documents can be either
dynamic or static, depending on whether or not they change their
layout.

The types have been renamed to be clear that they are talking about
the type of PDF document being described. "PDF" becomes "None", since
this is used to indicate that there are no XFA forms in the
document. "Dynamic" becomes "Full", since this indicates that the
entire XFA spec is being used for the forms, specifically display
layout is in the XML. "Static" has become "ForegroundOnly", since the
form is specified using the XFAF (XFA Foreground) subset of the spec.

The terms Full & Foreground come from the XFA spec. I would have
preferred XFAF to have a different name, since it is the
display/foreground layer that isn't XFA when using it.

BUG=pdfium:917

Change-Id: I4335958c4a11d77d3bbe63b93602dd5bc14acb57
Reviewed-on: https://pdfium-review.googlesource.com/16010
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
diff --git a/fpdfsdk/cpdfsdk_pageview.cpp b/fpdfsdk/cpdfsdk_pageview.cpp
index f46c74f..516b0eb 100644
--- a/fpdfsdk/cpdfsdk_pageview.cpp
+++ b/fpdfsdk/cpdfsdk_pageview.cpp
@@ -88,7 +88,7 @@
   if (!pPage)
     return;
 
-  if (pPage->GetContext()->GetDocType() == XFA_DocType::Dynamic) {
+  if (pPage->GetContext()->GetDocType() == XFA_DocType::kFull) {
     CFX_RectF rectClip(
         static_cast<float>(pClip.left), static_cast<float>(pClip.top),
         static_cast<float>(pClip.Width()), static_cast<float>(pClip.Height()));
@@ -176,8 +176,9 @@
     return false;
 
   CPDFXFA_Page* pPage = pAnnot->GetPDFXFAPage();
-  if (!pPage || (pPage->GetContext()->GetDocType() != XFA_DocType::Static &&
-                 pPage->GetContext()->GetDocType() != XFA_DocType::Dynamic)) {
+  if (!pPage ||
+      (pPage->GetContext()->GetDocType() != XFA_DocType::kForegroundOnly &&
+       pPage->GetContext()->GetDocType() != XFA_DocType::kFull)) {
     return false;
   }
 
@@ -428,7 +429,7 @@
 
 #ifdef PDF_ENABLE_XFA
   RetainPtr<CPDFXFA_Page> protector(m_page);
-  if (m_pFormFillEnv->GetXFAContext()->GetDocType() == XFA_DocType::Dynamic) {
+  if (m_pFormFillEnv->GetXFAContext()->GetDocType() == XFA_DocType::kFull) {
     CXFA_FFPageView* pageView = m_page->GetXFAPageView();
     std::unique_ptr<IXFA_WidgetIterator> pWidgetHandler(
         pageView->CreateWidgetIterator(
@@ -486,12 +487,12 @@
 
 #ifdef PDF_ENABLE_XFA
   switch (m_page->GetContext()->GetDocType()) {
-    case XFA_DocType::Dynamic: {
+    case XFA_DocType::kFull: {
       CXFA_FFPageView* pPageView = m_page->GetXFAPageView();
       return pPageView ? pPageView->GetPageIndex() : -1;
     }
-    case XFA_DocType::Static:
-    case XFA_DocType::PDF:
+    case XFA_DocType::kForegroundOnly:
+    case XFA_DocType::kNone:
       return GetPageIndexForStaticPDF();
     default:
       return -1;
diff --git a/fpdfsdk/cpdfsdk_widget.cpp b/fpdfsdk/cpdfsdk_widget.cpp
index c8bd4ea..0e121e8 100644
--- a/fpdfsdk/cpdfsdk_widget.cpp
+++ b/fpdfsdk/cpdfsdk_widget.cpp
@@ -72,7 +72,7 @@
 #ifdef PDF_ENABLE_XFA
 CXFA_FFWidget* CPDFSDK_Widget::GetMixXFAWidget() const {
   CPDFXFA_Context* pContext = m_pPageView->GetFormFillEnv()->GetXFAContext();
-  if (pContext->GetDocType() == XFA_DocType::Static) {
+  if (pContext->GetDocType() == XFA_DocType::kForegroundOnly) {
     if (!m_hMixXFAWidget) {
       if (CXFA_FFDocView* pDocView = pContext->GetXFADocView()) {
         WideString sName;
@@ -95,7 +95,7 @@
 
 CXFA_FFWidget* CPDFSDK_Widget::GetGroupMixXFAWidget() {
   CPDFXFA_Context* pContext = m_pPageView->GetFormFillEnv()->GetXFAContext();
-  if (pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return nullptr;
 
   CXFA_FFDocView* pDocView = pContext->GetXFADocView();
@@ -108,7 +108,7 @@
 
 CXFA_FFWidgetHandler* CPDFSDK_Widget::GetXFAWidgetHandler() const {
   CPDFXFA_Context* pContext = m_pPageView->GetFormFillEnv()->GetXFAContext();
-  if (pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return nullptr;
 
   if (!m_pWidgetHandler) {
@@ -507,7 +507,8 @@
 #ifdef PDF_ENABLE_XFA
   CPDFXFA_Context* pContext = m_pPageView->GetFormFillEnv()->GetXFAContext();
   XFA_DocType nDocType = pContext->GetDocType();
-  if (nDocType != XFA_DocType::PDF && nDocType != XFA_DocType::Static)
+  if (nDocType != XFA_DocType::kNone &&
+      nDocType != XFA_DocType::kForegroundOnly)
     return true;
 #endif  // PDF_ENABLE_XFA
   return CPDFSDK_BAAnnot::IsAppearanceValid();
diff --git a/fpdfsdk/cpdfsdk_widgethandler.cpp b/fpdfsdk/cpdfsdk_widgethandler.cpp
index ab37141..44c1c66 100644
--- a/fpdfsdk/cpdfsdk_widgethandler.cpp
+++ b/fpdfsdk/cpdfsdk_widgethandler.cpp
@@ -242,7 +242,7 @@
 #ifdef PDF_ENABLE_XFA
   CPDFSDK_PageView* pPageView = pAnnot->GetPageView();
   CPDFXFA_Context* pContext = pPageView->GetFormFillEnv()->GetXFAContext();
-  if (pContext->GetDocType() == XFA_DocType::Static) {
+  if (pContext->GetDocType() == XFA_DocType::kForegroundOnly) {
     if (!pWidget->IsAppearanceValid() && !pWidget->GetValue().IsEmpty())
       pWidget->ResetAppearance(false);
   }
diff --git a/fpdfsdk/fpdfformfill.cpp b/fpdfsdk/fpdfformfill.cpp
index e789df4..9e8b69e 100644
--- a/fpdfsdk/fpdfformfill.cpp
+++ b/fpdfsdk/fpdfformfill.cpp
@@ -33,11 +33,12 @@
 #include "xfa/fxfa/cxfa_ffpageview.h"
 #include "xfa/fxfa/cxfa_ffwidget.h"
 
-static_assert(static_cast<int>(XFA_DocType::PDF) == DOCTYPE_PDF,
+static_assert(static_cast<int>(XFA_DocType::kNone) == XFADOCTYPE_NONE,
               "PDF doctype must match");
-static_assert(static_cast<int>(XFA_DocType::Dynamic) == DOCTYPE_DYNAMIC_XFA,
+static_assert(static_cast<int>(XFA_DocType::kFull) == XFADOCTYPE_FULL,
               "Dynamic XFA doctype must match");
-static_assert(static_cast<int>(XFA_DocType::Static) == DOCTYPE_STATIC_XFA,
+static_assert(static_cast<int>(XFA_DocType::kForegroundOnly) ==
+                  XFADOCTYPE_FOREGROUNDONLY,
               "Static XFA doctype must match");
 #endif  // PDF_ENABLE_XFA
 
@@ -456,8 +457,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static) {
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly) {
     return;
   }
 
@@ -470,8 +471,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   static_cast<CXFA_FFWidget*>(hWidget)->Redo();
@@ -483,8 +484,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   static_cast<CXFA_FFWidget*>(hWidget)->SelectAll();
@@ -498,8 +499,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   WideString wsCpText;
@@ -530,8 +531,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   WideString wsCpText;
@@ -562,8 +563,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   WideString wstr = WideString::FromUTF16LE(wsText, size);
@@ -580,8 +581,8 @@
     return;
 
   CPDFXFA_Context* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   CFX_PointF ptPopup;
@@ -601,8 +602,8 @@
     return;
 
   auto* pContext = static_cast<CPDFXFA_Context*>(document);
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   CFX_PointF ptPopup;
diff --git a/fpdfsdk/fpdfsave.cpp b/fpdfsdk/fpdfsave.cpp
index 13475f6..783a913 100644
--- a/fpdfsdk/fpdfsave.cpp
+++ b/fpdfsdk/fpdfsave.cpp
@@ -48,8 +48,8 @@
   if (!pContext)
     return false;
 
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static) {
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly) {
     return true;
   }
 
@@ -192,8 +192,8 @@
   if (!pContext)
     return false;
 
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return true;
 
   CXFA_FFDocView* pXFADocView = pContext->GetXFADocView();
@@ -215,8 +215,8 @@
 
 bool SendPreSaveToXFADoc(CPDFXFA_Context* pContext,
                          std::vector<RetainPtr<IFX_SeekableStream>>* fileList) {
-  if (pContext->GetDocType() != XFA_DocType::Dynamic &&
-      pContext->GetDocType() != XFA_DocType::Static)
+  if (pContext->GetDocType() != XFA_DocType::kFull &&
+      pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return true;
 
   CXFA_FFDocView* pXFADocView = pContext->GetXFADocView();
diff --git a/fpdfsdk/fpdfview.cpp b/fpdfsdk/fpdfview.cpp
index 47a92f1..9a8e8eb 100644
--- a/fpdfsdk/fpdfview.cpp
+++ b/fpdfsdk/fpdfview.cpp
@@ -587,7 +587,7 @@
     return false;
 
   bool bDynamicXFA = pRoot->GetBooleanFor("NeedsRendering", false);
-  *docType = bDynamicXFA ? DOCTYPE_DYNAMIC_XFA : DOCTYPE_STATIC_XFA;
+  *docType = bDynamicXFA ? XFADOCTYPE_FULL : XFADOCTYPE_FOREGROUNDONLY;
   return true;
 }
 
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
index a67ac01..692306a 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp
@@ -36,7 +36,7 @@
 #endif
 
 CPDFXFA_Context::CPDFXFA_Context(std::unique_ptr<CPDF_Document> pPDFDoc)
-    : m_iDocType(XFA_DocType::PDF),
+    : m_iDocType(XFA_DocType::kNone),
       m_pPDFDoc(std::move(pPDFDoc)),
       m_pFormFillEnv(nullptr),
       m_pXFADocView(nullptr),
@@ -117,10 +117,10 @@
   m_pXFADoc->StopLoad();
   m_pXFADoc->GetXFADoc()->InitScriptContext(GetJSERuntime());
 
-  if (m_pXFADoc->GetDocType() == XFA_DocType::Dynamic)
-    m_iDocType = XFA_DocType::Dynamic;
+  if (m_pXFADoc->GetDocType() == XFA_DocType::kFull)
+    m_iDocType = XFA_DocType::kFull;
   else
-    m_iDocType = XFA_DocType::Static;
+    m_iDocType = XFA_DocType::kForegroundOnly;
 
   m_pXFADocView = m_pXFADoc->CreateDocView();
   if (m_pXFADocView->StartLayout() < 0) {
@@ -141,11 +141,11 @@
     return 0;
 
   switch (m_iDocType) {
-    case XFA_DocType::PDF:
-    case XFA_DocType::Static:
+    case XFA_DocType::kNone:
+    case XFA_DocType::kForegroundOnly:
       if (m_pPDFDoc)
         return m_pPDFDoc->GetPageCount();
-    case XFA_DocType::Dynamic:
+    case XFA_DocType::kFull:
       if (m_pXFADoc)
         return m_pXFADocView->CountPageViews();
     default:
@@ -183,7 +183,7 @@
   if (!m_pXFADoc)
     return nullptr;
 
-  if (m_iDocType != XFA_DocType::Dynamic)
+  if (m_iDocType != XFA_DocType::kFull)
     return nullptr;
 
   for (auto& pTempPage : m_XFAPageList) {
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
index 4dcdcac..91322ee 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
@@ -55,7 +55,7 @@
   if (!m_pContext->GetXFADoc() || !m_pContext->GetFormFillEnv())
     return;
 
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull)
     return;
 
   RetainPtr<CPDFXFA_Page> pPage = m_pContext->GetXFAPage(pPageView);
@@ -76,7 +76,7 @@
       !m_pContext->GetFormFillEnv() || !m_pContext->GetXFADocView())
     return;
 
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull)
     return;
 
   CXFA_FFWidgetHandler* pWidgetHandler =
@@ -289,7 +289,7 @@
 
 void CPDFXFA_DocEnvironment::WidgetPostAdd(CXFA_FFWidget* hWidget,
                                            CXFA_WidgetAcc* pWidgetData) {
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic || !hWidget)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull || !hWidget)
     return;
 
   CXFA_FFPageView* pPageView = hWidget->GetPageView();
@@ -307,7 +307,7 @@
 
 void CPDFXFA_DocEnvironment::WidgetPreRemove(CXFA_FFWidget* hWidget,
                                              CXFA_WidgetAcc* pWidgetData) {
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic || !hWidget)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull || !hWidget)
     return;
 
   CXFA_FFPageView* pPageView = hWidget->GetPageView();
@@ -334,7 +334,7 @@
 int32_t CPDFXFA_DocEnvironment::GetCurrentPage(CXFA_FFDoc* hDoc) {
   if (hDoc != m_pContext->GetXFADoc() || !m_pContext->GetFormFillEnv())
     return -1;
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull)
     return -1;
 
   CPDFSDK_FormFillEnvironment* pFormFillEnv = m_pContext->GetFormFillEnv();
@@ -347,7 +347,7 @@
 void CPDFXFA_DocEnvironment::SetCurrentPage(CXFA_FFDoc* hDoc,
                                             int32_t iCurPage) {
   if (hDoc != m_pContext->GetXFADoc() || !m_pContext->GetFormFillEnv() ||
-      m_pContext->GetDocType() != XFA_DocType::Dynamic || iCurPage < 0 ||
+      m_pContext->GetDocType() != XFA_DocType::kFull || iCurPage < 0 ||
       iCurPage >= m_pContext->GetFormFillEnv()->GetPageCount()) {
     return;
   }
@@ -407,8 +407,8 @@
   if (hDoc != m_pContext->GetXFADoc())
     return;
 
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic &&
-      m_pContext->GetDocType() != XFA_DocType::Static) {
+  if (m_pContext->GetDocType() != XFA_DocType::kFull &&
+      m_pContext->GetDocType() != XFA_DocType::kForegroundOnly) {
     return;
   }
 
@@ -506,7 +506,7 @@
   if (hDoc != m_pContext->GetXFADoc())
     return;
 
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull)
     return;
 
   CPDFSDK_FormFillEnvironment* pFormFillEnv = m_pContext->GetFormFillEnv();
@@ -606,8 +606,8 @@
 }
 
 bool CPDFXFA_DocEnvironment::OnBeforeNotifySubmit() {
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic &&
-      m_pContext->GetDocType() != XFA_DocType::Static) {
+  if (m_pContext->GetDocType() != XFA_DocType::kFull &&
+      m_pContext->GetDocType() != XFA_DocType::kForegroundOnly) {
     return true;
   }
 
@@ -658,8 +658,8 @@
 }
 
 void CPDFXFA_DocEnvironment::OnAfterNotifySubmit() {
-  if (m_pContext->GetDocType() != XFA_DocType::Dynamic &&
-      m_pContext->GetDocType() != XFA_DocType::Static)
+  if (m_pContext->GetDocType() != XFA_DocType::kFull &&
+      m_pContext->GetDocType() != XFA_DocType::kForegroundOnly)
     return;
 
   if (!m_pContext->GetXFADocView())
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_page.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_page.cpp
index 87e003e..fa10a92 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_page.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_page.cpp
@@ -65,10 +65,10 @@
     return false;
 
   switch (m_pContext->GetDocType()) {
-    case XFA_DocType::PDF:
-    case XFA_DocType::Static:
+    case XFA_DocType::kNone:
+    case XFA_DocType::kForegroundOnly:
       return LoadPDFPage();
-    case XFA_DocType::Dynamic:
+    case XFA_DocType::kFull:
       return LoadXFAPageView();
     default:
       return false;
@@ -90,13 +90,13 @@
     return 0.0f;
 
   switch (m_pContext->GetDocType()) {
-    case XFA_DocType::Dynamic: {
+    case XFA_DocType::kFull: {
       if (m_pXFAPageView)
         return m_pXFAPageView->GetPageViewRect().width;
       break;
     }
-    case XFA_DocType::Static:
-    case XFA_DocType::PDF: {
+    case XFA_DocType::kForegroundOnly:
+    case XFA_DocType::kNone: {
       if (m_pPDFPage)
         return m_pPDFPage->GetPageWidth();
       break;
@@ -113,13 +113,13 @@
     return 0.0f;
 
   switch (m_pContext->GetDocType()) {
-    case XFA_DocType::PDF:
-    case XFA_DocType::Static: {
+    case XFA_DocType::kNone:
+    case XFA_DocType::kForegroundOnly: {
       if (m_pPDFPage)
         return m_pPDFPage->GetPageHeight();
       break;
     }
-    case XFA_DocType::Dynamic: {
+    case XFA_DocType::kFull: {
       if (m_pXFAPageView)
         return m_pXFAPageView->GetPageViewRect().height;
       break;
@@ -183,15 +183,15 @@
     return CFX_Matrix();
 
   switch (m_pContext->GetDocType()) {
-    case XFA_DocType::Dynamic: {
+    case XFA_DocType::kFull: {
       if (m_pXFAPageView) {
         return m_pXFAPageView->GetDisplayMatrix(
             CFX_Rect(xPos, yPos, xSize, ySize), iRotate);
       }
       break;
     }
-    case XFA_DocType::PDF:
-    case XFA_DocType::Static: {
+    case XFA_DocType::kNone:
+    case XFA_DocType::kForegroundOnly: {
       if (m_pPDFPage)
         return m_pPDFPage->GetDisplayMatrix(xPos, yPos, xSize, ySize, iRotate);
       break;
diff --git a/fpdfsdk/javascript/app.cpp b/fpdfsdk/javascript/app.cpp
index 3c0f9af..f29a098 100644
--- a/fpdfsdk/javascript/app.cpp
+++ b/fpdfsdk/javascript/app.cpp
@@ -282,8 +282,8 @@
     return false;
 #ifdef PDF_ENABLE_XFA
   CPDFXFA_Context* pXFAContext = pRuntime->GetFormFillEnv()->GetXFAContext();
-  if (pXFAContext->GetDocType() == XFA_DocType::Dynamic ||
-      pXFAContext->GetDocType() == XFA_DocType::Static) {
+  if (pXFAContext->GetDocType() == XFA_DocType::kFull ||
+      pXFAContext->GetDocType() == XFA_DocType::kForegroundOnly) {
     vp << JS_NUM_VIEWERVERSION_XFA;
     return true;
   }
diff --git a/public/fpdf_formfill.h b/public/fpdf_formfill.h
index e4194fed..1e0d305 100644
--- a/public/fpdf_formfill.h
+++ b/public/fpdf_formfill.h
@@ -12,9 +12,10 @@
 
 typedef void* FPDF_FORMHANDLE;
 
-#define DOCTYPE_PDF 0          // Normal pdf Document
-#define DOCTYPE_DYNAMIC_XFA 1  // Dynamic XFA Document Type
-#define DOCTYPE_STATIC_XFA 2   // Static XFA Document Type
+#define XFADOCTYPE_NONE 0  // Document contains no XFA forms
+#define XFADOCTYPE_FULL 1  // XFA forms are specified using the entire XFA spec
+#define XFADOCTYPE_FOREGROUNDONLY \
+  2  // XFA forms are specified using the XFAF subset
 
 // Exported Functions
 #ifdef __cplusplus
@@ -1613,7 +1614,7 @@
  *                      document                -       Handle to document.
  *Returned by FPDF_LoadDocument function.
  *                      docType                 -       Document type defined as
- *DOCTYPE_xxx.
+ *XFADOCTYPE_xxx.
  * Return Value:
  *                      TRUE indicates that the input document has XFA fields,
  *otherwise FALSE.
diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc
index 0c002a8..a638fd0 100644
--- a/samples/pdfium_test.cc
+++ b/samples/pdfium_test.cc
@@ -1430,8 +1430,8 @@
   form_callbacks.form_handle = form.get();
 
 #ifdef PDF_ENABLE_XFA
-  int doc_type = DOCTYPE_PDF;
-  if (FPDF_HasXFAField(doc.get(), &doc_type) && doc_type != DOCTYPE_PDF &&
+  int doc_type = XFADOCTYPE_NONE;
+  if (FPDF_HasXFAField(doc.get(), &doc_type) && doc_type != XFADOCTYPE_NONE &&
       !FPDF_LoadXFA(doc.get())) {
     fprintf(stderr, "LoadXFA unsuccessful, continuing anyway.\n");
   }
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp
index dab06af..41be0c0 100644
--- a/testing/embedder_test.cpp
+++ b/testing/embedder_test.cpp
@@ -205,9 +205,9 @@
   }
   *form_handle = SetupFormFillEnvironment(*document);
 #ifdef PDF_ENABLE_XFA
-  int docType = DOCTYPE_PDF;
+  int docType = XFADOCTYPE_NONE;
   if (FPDF_HasXFAField(*document, &docType)) {
-    if (docType != DOCTYPE_PDF)
+    if (docType != XFADOCTYPE_NONE)
       (void)FPDF_LoadXFA(*document);
   }
 #endif  // PDF_ENABLE_XFA
diff --git a/xfa/fxfa/cxfa_ffdoc.cpp b/xfa/fxfa/cxfa_ffdoc.cpp
index ee31a46..23b3df6 100644
--- a/xfa/fxfa/cxfa_ffdoc.cpp
+++ b/xfa/fxfa/cxfa_ffdoc.cpp
@@ -160,7 +160,7 @@
       m_pApp(pApp),
       m_pNotify(nullptr),
       m_pPDFDoc(nullptr),
-      m_dwDocType(XFA_DocType::Static) {}
+      m_dwDocType(XFA_DocType::kForegroundOnly) {}
 
 CXFA_FFDoc::~CXFA_FFDoc() {
   CloseDoc();
@@ -244,7 +244,7 @@
   m_pPDFFontMgr = pdfium::MakeUnique<CFGAS_PDFFontMgr>(
       GetPDFDoc(), GetApp()->GetFDEFontMgr());
 
-  m_dwDocType = XFA_DocType::Static;
+  m_dwDocType = XFA_DocType::kForegroundOnly;
   CXFA_Node* pConfig = ToNode(
       m_pDocumentParser->GetDocument()->GetXFAObject(XFA_HASHCODE_Config));
   if (!pConfig)
@@ -265,7 +265,7 @@
 
   WideString wsType;
   if (pDynamicRender->TryContent(wsType) && wsType == L"required")
-    m_dwDocType = XFA_DocType::Dynamic;
+    m_dwDocType = XFA_DocType::kFull;
 }
 
 CXFA_FFDocView* CXFA_FFDoc::CreateDocView() {
diff --git a/xfa/fxfa/cxfa_ffdocview.cpp b/xfa/fxfa/cxfa_ffdocview.cpp
index 56dfeed..0e895b6 100644
--- a/xfa/fxfa/cxfa_ffdocview.cpp
+++ b/xfa/fxfa/cxfa_ffdocview.cpp
@@ -622,7 +622,7 @@
 }
 
 bool CXFA_FFDocView::IsStaticNotify() {
-  return m_pDoc->GetDocType() == XFA_DocType::Static;
+  return m_pDoc->GetDocType() == XFA_DocType::kForegroundOnly;
 }
 
 void CXFA_FFDocView::AddCalculateWidgetAcc(CXFA_WidgetAcc* pWidgetAcc) {
diff --git a/xfa/fxfa/fxfa.h b/xfa/fxfa/fxfa.h
index 929594f..9f5432e 100644
--- a/xfa/fxfa/fxfa.h
+++ b/xfa/fxfa/fxfa.h
@@ -40,8 +40,8 @@
 #define XFA_IDNo 3
 #define XFA_IDYes 4
 
-// Note, values match fpdf_formfill.h DOCTYPE_* flags.
-enum class XFA_DocType { PDF = 0, Dynamic = 1, Static = 2 };
+// Note, values match fpdf_formfill.h XFADOCTYPE_* flags.
+enum class XFA_DocType { kNone = 0, kFull = 1, kForegroundOnly = 2 };
 
 #define XFA_PARSESTATUS_StatusErr -3
 #define XFA_PARSESTATUS_StreamErr -2