Move the definition of FS_QUADPOINTSF to fpdfview.h.

FS_QUADPOINTSF currently resides in public/fpdf_doc.h, but it is
generally useful in public APIs across multiple headers. Instead of
headers depending on each other in a spaghetti pattern, move
FS_QUADPOINTSF to fpdfview.h, alongside FS_RECTF, FS_SIZEF, and
FS_POINTF.

As part of this CL, remove a now unnecessary include in fpdf_annot.h,
and do IWYU to fix the build for files that depended on this removed
transitive dependency.

Change-Id: I4b9be0053885e8ef2499b7ce7e46b5628274e24b
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/94410
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/fpdfsdk/fpdf_dataavail_embeddertest.cpp b/fpdfsdk/fpdf_dataavail_embeddertest.cpp
index a5b9c47..4f1fa85 100644
--- a/fpdfsdk/fpdf_dataavail_embeddertest.cpp
+++ b/fpdfsdk/fpdf_dataavail_embeddertest.cpp
@@ -9,6 +9,7 @@
 #include <vector>
 
 #include "core/fxcrt/bytestring.h"
+#include "public/fpdf_doc.h"
 #include "public/fpdfview.h"
 #include "testing/embedder_test.h"
 #include "testing/fx_string_testhelpers.h"
diff --git a/fpdfsdk/fpdf_text_embeddertest.cpp b/fpdfsdk/fpdf_text_embeddertest.cpp
index 4ba0ebb..54e5d26 100644
--- a/fpdfsdk/fpdf_text_embeddertest.cpp
+++ b/fpdfsdk/fpdf_text_embeddertest.cpp
@@ -9,6 +9,7 @@
 #include "build/build_config.h"
 #include "core/fxge/fx_font.h"
 #include "public/cpp/fpdf_scopers.h"
+#include "public/fpdf_doc.h"
 #include "public/fpdf_text.h"
 #include "public/fpdf_transformpage.h"
 #include "public/fpdfview.h"
diff --git a/public/fpdf_annot.h b/public/fpdf_annot.h
index dfddaeb..ccfbb0f 100644
--- a/public/fpdf_annot.h
+++ b/public/fpdf_annot.h
@@ -11,8 +11,6 @@
 #include "fpdfview.h"
 
 // NOLINTNEXTLINE(build/include)
-#include "fpdf_doc.h"
-// NOLINTNEXTLINE(build/include)
 #include "fpdf_formfill.h"
 
 #ifdef __cplusplus
diff --git a/public/fpdf_doc.h b/public/fpdf_doc.h
index 977e1c9..8a7caa3 100644
--- a/public/fpdf_doc.h
+++ b/public/fpdf_doc.h
@@ -45,17 +45,6 @@
   FILEIDTYPE_CHANGING = 1
 } FPDF_FILEIDTYPE;
 
-typedef struct _FS_QUADPOINTSF {
-  FS_FLOAT x1;
-  FS_FLOAT y1;
-  FS_FLOAT x2;
-  FS_FLOAT y2;
-  FS_FLOAT x3;
-  FS_FLOAT y3;
-  FS_FLOAT x4;
-  FS_FLOAT y4;
-} FS_QUADPOINTSF;
-
 // Get the first child of |bookmark|, or the first top-level bookmark item.
 //
 //   document - handle to the document.
diff --git a/public/fpdfview.h b/public/fpdfview.h
index 19cf916..8f3bd3c 100644
--- a/public/fpdfview.h
+++ b/public/fpdfview.h
@@ -173,6 +173,17 @@
 // Const Pointer to FS_POINTF structure.
 typedef const FS_POINTF* FS_LPCPOINTF;
 
+typedef struct _FS_QUADPOINTSF {
+  FS_FLOAT x1;
+  FS_FLOAT y1;
+  FS_FLOAT x2;
+  FS_FLOAT y2;
+  FS_FLOAT x3;
+  FS_FLOAT y3;
+  FS_FLOAT x4;
+  FS_FLOAT y4;
+} FS_QUADPOINTSF;
+
 // Annotation enums.
 typedef int FPDF_ANNOTATION_SUBTYPE;
 typedef int FPDF_ANNOT_APPEARANCEMODE;
diff --git a/samples/pdfium_test_dump_helper.cc b/samples/pdfium_test_dump_helper.cc
index 221eb81..18760b8 100644
--- a/samples/pdfium_test_dump_helper.cc
+++ b/samples/pdfium_test_dump_helper.cc
@@ -14,6 +14,7 @@
 #include <utility>
 
 #include "public/cpp/fpdf_scopers.h"
+#include "public/fpdf_doc.h"
 #include "public/fpdf_transformpage.h"
 #include "testing/fx_string_testhelpers.h"