summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/fpdfapi/font/cfx_cttgsubtable.h1
-rw-r--r--core/fpdfapi/page/cpdf_image.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_devicebuffer.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_dibsource.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_dibsource.h2
-rw-r--r--core/fpdfapi/render/cpdf_imagecacheentry.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_rendercontext.cpp1
-rw-r--r--core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp2
-rw-r--r--core/fpdfdoc/cpdf_variabletext.h1
-rw-r--r--core/fxge/android/cfx_androidfontinfo.h1
-rw-r--r--core/fxge/apple/fx_quartz_device.cpp1
-rw-r--r--core/fxge/cfx_folderfontinfo.h1
-rw-r--r--core/fxge/cfx_gemodule.h2
-rw-r--r--core/fxge/cfx_renderdevice.h3
-rw-r--r--core/fxge/cfx_unicodeencoding.h2
-rw-r--r--core/fxge/cfx_unicodeencodingex.h1
-rw-r--r--core/fxge/fx_ge_text.cpp1
-rw-r--r--core/fxge/ifx_renderdevicedriver.cpp2
-rw-r--r--core/fxge/ifx_systemfontinfo.h1
-rw-r--r--core/fxge/skia/fx_skia_device.cpp4
-rw-r--r--core/fxge/skia/fx_skia_device.h2
-rw-r--r--core/fxge/win32/cfx_windowsdib.h3
-rw-r--r--fpdfsdk/cpdfsdk_interform.cpp1
-rw-r--r--fpdfsdk/pwl/cpwl_edit_impl.h1
-rw-r--r--fpdfsdk/pwl/cpwl_font_map.h1
-rw-r--r--xfa/fgas/font/cfgas_fontmgr.h4
-rw-r--r--xfa/fgas/font/cfgas_gefont.h1
-rw-r--r--xfa/fgas/layout/cfx_break.cpp1
-rw-r--r--xfa/fgas/layout/cfx_break.h3
-rw-r--r--xfa/fgas/layout/cfx_rtfbreak.cpp1
-rw-r--r--xfa/fgas/layout/cfx_rtfbreak.h2
-rw-r--r--xfa/fwl/cfwl_themebackground.h1
-rw-r--r--xfa/fwl/cfwl_widget.h2
-rw-r--r--xfa/fwl/ifwl_themeprovider.h3
-rw-r--r--xfa/fwl/theme/cfwl_widgettp.cpp8
-rw-r--r--xfa/fwl/theme/cfwl_widgettp.h7
-rw-r--r--xfa/fxfa/cxfa_ffapp.h9
-rw-r--r--xfa/fxfa/cxfa_textlayout.cpp1
-rw-r--r--xfa/fxfa/cxfa_textlayout.h9
-rw-r--r--xfa/fxfa/cxfa_textparser.h2
-rw-r--r--xfa/fxfa/cxfa_textpiece.cpp1
-rw-r--r--xfa/fxfa/cxfa_textpiece.h2
42 files changed, 56 insertions, 39 deletions
diff --git a/core/fpdfapi/font/cfx_cttgsubtable.h b/core/fpdfapi/font/cfx_cttgsubtable.h
index 8722bf665c..fc1caf5ef2 100644
--- a/core/fpdfapi/font/cfx_cttgsubtable.h
+++ b/core/fpdfapi/font/cfx_cttgsubtable.h
@@ -13,7 +13,6 @@
#include <set>
#include <vector>
-#include "core/fxge/fx_font.h"
#include "core/fxge/fx_freetype.h"
class CFX_CTTGSUBTable {
diff --git a/core/fpdfapi/page/cpdf_image.cpp b/core/fpdfapi/page/cpdf_image.cpp
index 5221fd73be..65ca78e08e 100644
--- a/core/fpdfapi/page/cpdf_image.cpp
+++ b/core/fpdfapi/page/cpdf_image.cpp
@@ -26,6 +26,7 @@
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fxcodec/codec/ccodec_jpegmodule.h"
#include "core/fxcrt/fx_stream.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_dib.h"
#include "third_party/base/numerics/safe_conversions.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fpdfapi/render/cpdf_devicebuffer.cpp b/core/fpdfapi/render/cpdf_devicebuffer.cpp
index 90301b2e56..b96d00208e 100644
--- a/core/fpdfapi/render/cpdf_devicebuffer.cpp
+++ b/core/fpdfapi/render/cpdf_devicebuffer.cpp
@@ -11,6 +11,7 @@
#include "core/fpdfapi/render/cpdf_renderoptions.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_dib.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fpdfapi/render/cpdf_dibsource.cpp b/core/fpdfapi/render/cpdf_dibsource.cpp
index d8ddc767ba..c1b96073d9 100644
--- a/core/fpdfapi/render/cpdf_dibsource.cpp
+++ b/core/fpdfapi/render/cpdf_dibsource.cpp
@@ -30,6 +30,7 @@
#include "core/fxcodec/fx_codec.h"
#include "core/fxcrt/cfx_fixedbufgrow.h"
#include "core/fxcrt/fx_safe_types.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "third_party/base/ptr_util.h"
namespace {
diff --git a/core/fpdfapi/render/cpdf_dibsource.h b/core/fpdfapi/render/cpdf_dibsource.h
index 0971eb3887..d3f65156c3 100644
--- a/core/fpdfapi/render/cpdf_dibsource.h
+++ b/core/fpdfapi/render/cpdf_dibsource.h
@@ -21,7 +21,7 @@
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
-#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibsource.h"
class CCodec_Jbig2Context;
class CCodec_ScanlineDecoder;
diff --git a/core/fpdfapi/render/cpdf_imagecacheentry.cpp b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
index 666839b0f2..f69bfdae68 100644
--- a/core/fpdfapi/render/cpdf_imagecacheentry.cpp
+++ b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
@@ -17,6 +17,7 @@
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include "core/fpdfapi/render/cpdf_rendercontext.h"
#include "core/fpdfapi/render/cpdf_renderstatus.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
CPDF_ImageCacheEntry::CPDF_ImageCacheEntry(CPDF_Document* pDoc,
const RetainPtr<CPDF_Image>& pImage)
diff --git a/core/fpdfapi/render/cpdf_rendercontext.cpp b/core/fpdfapi/render/cpdf_rendercontext.cpp
index ef6d9b3d4d..0656edda22 100644
--- a/core/fpdfapi/render/cpdf_rendercontext.cpp
+++ b/core/fpdfapi/render/cpdf_rendercontext.cpp
@@ -17,6 +17,7 @@
#include "core/fpdfapi/render/cpdf_renderstatus.h"
#include "core/fpdfapi/render/cpdf_textrenderer.h"
#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_dib.h"
CPDF_RenderContext::CPDF_RenderContext(CPDF_Page* pPage)
diff --git a/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp b/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp
index 82970e5e60..2d86024787 100644
--- a/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp
+++ b/core/fpdfapi/render/cpdf_scaledrenderbuffer.cpp
@@ -9,7 +9,7 @@
#include "core/fpdfapi/render/cpdf_rendercontext.h"
#include "core/fpdfapi/render/cpdf_renderoptions.h"
#include "core/fxge/cfx_defaultrenderdevice.h"
-#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "third_party/base/ptr_util.h"
#define _FPDFAPI_IMAGESIZE_LIMIT_ (30 * 1024 * 1024)
diff --git a/core/fpdfdoc/cpdf_variabletext.h b/core/fpdfdoc/cpdf_variabletext.h
index a37aa871d5..a939dcb0e1 100644
--- a/core/fpdfdoc/cpdf_variabletext.h
+++ b/core/fpdfdoc/cpdf_variabletext.h
@@ -18,7 +18,6 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxcrt/fx_system.h"
-#include "core/fxge/fx_font.h"
class CPVT_Word;
class CSection;
diff --git a/core/fxge/android/cfx_androidfontinfo.h b/core/fxge/android/cfx_androidfontinfo.h
index bf5fae59df..e49b1617de 100644
--- a/core/fxge/android/cfx_androidfontinfo.h
+++ b/core/fxge/android/cfx_androidfontinfo.h
@@ -10,7 +10,6 @@
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/unowned_ptr.h"
#include "core/fxge/cfx_fontmapper.h"
-#include "core/fxge/fx_font.h"
#include "core/fxge/ifx_systemfontinfo.h"
class CFPF_SkiaFontMgr;
diff --git a/core/fxge/apple/fx_quartz_device.cpp b/core/fxge/apple/fx_quartz_device.cpp
index 4ab6620485..709f201f8a 100644
--- a/core/fxge/apple/fx_quartz_device.cpp
+++ b/core/fxge/apple/fx_quartz_device.cpp
@@ -14,6 +14,7 @@
#include "core/fxge/cfx_graphstatedata.h"
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#include "core/fxge/fx_freetype.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fxge/cfx_folderfontinfo.h b/core/fxge/cfx_folderfontinfo.h
index 79faa01838..397b386066 100644
--- a/core/fxge/cfx_folderfontinfo.h
+++ b/core/fxge/cfx_folderfontinfo.h
@@ -13,7 +13,6 @@
#include "core/fxcrt/unowned_ptr.h"
#include "core/fxge/cfx_fontmapper.h"
-#include "core/fxge/fx_font.h"
#include "core/fxge/ifx_systemfontinfo.h"
class CFX_FolderFontInfo : public IFX_SystemFontInfo {
diff --git a/core/fxge/cfx_gemodule.h b/core/fxge/cfx_gemodule.h
index 7849937f8f..f48d065561 100644
--- a/core/fxge/cfx_gemodule.h
+++ b/core/fxge/cfx_gemodule.h
@@ -9,8 +9,6 @@
#include <memory>
-#include "core/fxge/fx_font.h"
-
class CFX_FontCache;
class CFX_FontMgr;
diff --git a/core/fxge/cfx_renderdevice.h b/core/fxge/cfx_renderdevice.h
index 5b18b2293a..d8cb9a6952 100644
--- a/core/fxge/cfx_renderdevice.h
+++ b/core/fxge/cfx_renderdevice.h
@@ -12,11 +12,12 @@
#include "core/fxcrt/unowned_ptr.h"
#include "core/fxge/cfx_color.h"
#include "core/fxge/fx_dib.h"
-#include "core/fxge/fx_font.h"
+class CFX_DIBitmap;
class CFX_Font;
class CFX_GraphStateData;
class CFX_ImageRenderer;
+class IFX_PauseIndicator;
class IFX_RenderDeviceDriver;
#define FXDC_DEVICE_CLASS 1
diff --git a/core/fxge/cfx_unicodeencoding.h b/core/fxge/cfx_unicodeencoding.h
index 40562e7c4a..f8bcff391f 100644
--- a/core/fxge/cfx_unicodeencoding.h
+++ b/core/fxge/cfx_unicodeencoding.h
@@ -7,7 +7,7 @@
#ifndef CORE_FXGE_CFX_UNICODEENCODING_H_
#define CORE_FXGE_CFX_UNICODEENCODING_H_
-#include "core/fxge/fx_font.h"
+#include <stdint.h>
#ifdef PDF_ENABLE_XFA
#define FXFM_ENC_TAG(a, b, c, d) \
diff --git a/core/fxge/cfx_unicodeencodingex.h b/core/fxge/cfx_unicodeencodingex.h
index e62410a122..5632d9665d 100644
--- a/core/fxge/cfx_unicodeencodingex.h
+++ b/core/fxge/cfx_unicodeencodingex.h
@@ -14,7 +14,6 @@
#include "core/fxcrt/fx_system.h"
#include "core/fxge/cfx_unicodeencoding.h"
#include "core/fxge/fx_dib.h"
-#include "core/fxge/fx_freetype.h"
class CFX_UnicodeEncodingEx : public CFX_UnicodeEncoding {
public:
diff --git a/core/fxge/fx_ge_text.cpp b/core/fxge/fx_ge_text.cpp
index a04e6d0e85..147e712e57 100644
--- a/core/fxge/fx_ge_text.cpp
+++ b/core/fxge/fx_ge_text.cpp
@@ -10,6 +10,7 @@
#include "core/fxcrt/fx_safe_types.h"
#include "core/fxge/cfx_pathdata.h"
+#include "core/fxge/fx_font.h"
#include "core/fxge/fx_freetype.h"
#include "core/fxge/ifx_renderdevicedriver.h"
diff --git a/core/fxge/ifx_renderdevicedriver.cpp b/core/fxge/ifx_renderdevicedriver.cpp
index 669aadf0d8..eae773d75c 100644
--- a/core/fxge/ifx_renderdevicedriver.cpp
+++ b/core/fxge/ifx_renderdevicedriver.cpp
@@ -8,7 +8,7 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxge/cfx_pathdata.h"
-#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
IFX_RenderDeviceDriver::~IFX_RenderDeviceDriver() {}
diff --git a/core/fxge/ifx_systemfontinfo.h b/core/fxge/ifx_systemfontinfo.h
index 391baa2cdd..1ae097b9f9 100644
--- a/core/fxge/ifx_systemfontinfo.h
+++ b/core/fxge/ifx_systemfontinfo.h
@@ -10,7 +10,6 @@
#include <memory>
#include "core/fxge/cfx_fontmapper.h"
-#include "core/fxge/fx_font.h"
const uint32_t kTableNAME = FXDWORD_GET_MSBFIRST("name");
const uint32_t kTableTTCF = FXDWORD_GET_MSBFIRST("ttcf");
diff --git a/core/fxge/skia/fx_skia_device.cpp b/core/fxge/skia/fx_skia_device.cpp
index 6e27ea1775..ab8efff72c 100644
--- a/core/fxge/skia/fx_skia_device.cpp
+++ b/core/fxge/skia/fx_skia_device.cpp
@@ -1548,6 +1548,10 @@ void CFX_SkiaDeviceDriver::Flush() {
m_pCache->Flush();
}
+void CFX_SkiaDeviceDriver::PreMultiply() {
+ m_pBitmap->PreMultiply();
+}
+
bool CFX_SkiaDeviceDriver::DrawDeviceText(int nChars,
const FXTEXT_CHARPOS* pCharPos,
CFX_Font* pFont,
diff --git a/core/fxge/skia/fx_skia_device.h b/core/fxge/skia/fx_skia_device.h
index 4423081251..7dfdef4de8 100644
--- a/core/fxge/skia/fx_skia_device.h
+++ b/core/fxge/skia/fx_skia_device.h
@@ -150,7 +150,7 @@ class CFX_SkiaDeviceDriver : public IFX_RenderDeviceDriver {
void Clear(uint32_t color);
void Flush() override;
SkPictureRecorder* GetRecorder() const { return m_pRecorder; }
- void PreMultiply() { m_pBitmap->PreMultiply(); }
+ void PreMultiply();
static void PreMultiply(const RetainPtr<CFX_DIBitmap>& pDIBitmap);
SkCanvas* SkiaCanvas() { return m_pCanvas; }
void DebugVerifyBitmapIsPreMultiplied() const;
diff --git a/core/fxge/win32/cfx_windowsdib.h b/core/fxge/win32/cfx_windowsdib.h
index cc2305001e..7c2447ded2 100644
--- a/core/fxge/win32/cfx_windowsdib.h
+++ b/core/fxge/win32/cfx_windowsdib.h
@@ -11,7 +11,8 @@
#include <windows.h>
#endif
-#include "core/fxge/fx_dib.h"
+#include "core/fxcrt/bytestring.h"
+#include "core/fxge/dib/cfx_dibitmap.h"
#define WINDIB_OPEN_MEMORY 0x1
#define WINDIB_OPEN_PATHNAME 0x2
diff --git a/fpdfsdk/cpdfsdk_interform.cpp b/fpdfsdk/cpdfsdk_interform.cpp
index 1aa1174b9f..e19d47bb55 100644
--- a/fpdfsdk/cpdfsdk_interform.cpp
+++ b/fpdfsdk/cpdfsdk_interform.cpp
@@ -21,7 +21,6 @@
#include "core/fpdfdoc/cpdf_interform.h"
#include "core/fxge/cfx_graphstatedata.h"
#include "core/fxge/cfx_pathdata.h"
-#include "core/fxge/cfx_renderdevice.h"
#include "fpdfsdk/cba_annotiterator.h"
#include "fpdfsdk/cpdfsdk_annot.h"
#include "fpdfsdk/cpdfsdk_formfillenvironment.h"
diff --git a/fpdfsdk/pwl/cpwl_edit_impl.h b/fpdfsdk/pwl/cpwl_edit_impl.h
index e0d8324a4c..38477db427 100644
--- a/fpdfsdk/pwl/cpwl_edit_impl.h
+++ b/fpdfsdk/pwl/cpwl_edit_impl.h
@@ -14,6 +14,7 @@
#include "core/fpdfdoc/cpdf_variabletext.h"
#include "core/fpdfdoc/cpvt_wordrange.h"
#include "core/fxcrt/unowned_ptr.h"
+#include "core/fxge/fx_dib.h"
#define FX_EDIT_ISLATINWORD(u) \
(u == 0x2D || (u <= 0x005A && u >= 0x0041) || \
diff --git a/fpdfsdk/pwl/cpwl_font_map.h b/fpdfsdk/pwl/cpwl_font_map.h
index 0712bf1240..592c3fafed 100644
--- a/fpdfsdk/pwl/cpwl_font_map.h
+++ b/fpdfsdk/pwl/cpwl_font_map.h
@@ -12,7 +12,6 @@
#include "core/fpdfdoc/ipvt_fontmap.h"
#include "core/fxcrt/fx_codepage.h"
-#include "core/fxge/fx_font.h"
#include "public/fpdf_sysfontinfo.h"
class CPDF_Document;
diff --git a/xfa/fgas/font/cfgas_fontmgr.h b/xfa/fgas/font/cfgas_fontmgr.h
index 94e446c077..445b318a26 100644
--- a/xfa/fgas/font/cfgas_fontmgr.h
+++ b/xfa/fgas/font/cfgas_fontmgr.h
@@ -18,13 +18,13 @@
#include "core/fxcrt/fx_extension.h"
#include "core/fxcrt/observable.h"
#include "core/fxcrt/retain_ptr.h"
-#include "core/fxge/cfx_fontmapper.h"
#include "core/fxge/fx_freetype.h"
#include "core/fxge/ifx_systemfontinfo.h"
#include "xfa/fgas/font/cfgas_pdffontmgr.h"
-class CFX_FontSourceEnum_File;
class CFGAS_GEFont;
+class CFX_FontMapper;
+class CFX_FontSourceEnum_File;
#if _FX_PLATFORM_ == _FX_PLATFORM_WINDOWS_
struct FX_FONTMATCHPARAMS {
diff --git a/xfa/fgas/font/cfgas_gefont.h b/xfa/fgas/font/cfgas_gefont.h
index d14554758b..646562d9ee 100644
--- a/xfa/fgas/font/cfgas_gefont.h
+++ b/xfa/fgas/font/cfgas_gefont.h
@@ -18,7 +18,6 @@
#include "xfa/fgas/font/cfgas_fontmgr.h"
#include "xfa/fgas/font/cfgas_pdffontmgr.h"
-class CFGAS_FontMgr;
class CFX_UnicodeEncoding;
class CFGAS_GEFont : public Retainable {
diff --git a/xfa/fgas/layout/cfx_break.cpp b/xfa/fgas/layout/cfx_break.cpp
index 6e1103cf65..0f52a2d274 100644
--- a/xfa/fgas/layout/cfx_break.cpp
+++ b/xfa/fgas/layout/cfx_break.cpp
@@ -10,6 +10,7 @@
#include <vector>
#include "third_party/base/stl_util.h"
+#include "xfa/fgas/font/cfgas_gefont.h"
namespace {
diff --git a/xfa/fgas/layout/cfx_break.h b/xfa/fgas/layout/cfx_break.h
index 322fa2be8e..789220d9da 100644
--- a/xfa/fgas/layout/cfx_break.h
+++ b/xfa/fgas/layout/cfx_break.h
@@ -10,9 +10,10 @@
#include <stdint.h>
#include "core/fxcrt/retain_ptr.h"
-#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fgas/layout/cfx_breakline.h"
+class CFGAS_GEFont;
+
struct FX_TPO {
bool operator<(const FX_TPO& that) const { return pos < that.pos; }
diff --git a/xfa/fgas/layout/cfx_rtfbreak.cpp b/xfa/fgas/layout/cfx_rtfbreak.cpp
index 761bd2fc03..3ef0ef2624 100644
--- a/xfa/fgas/layout/cfx_rtfbreak.cpp
+++ b/xfa/fgas/layout/cfx_rtfbreak.cpp
@@ -10,6 +10,7 @@
#include "core/fxcrt/fx_arabic.h"
#include "core/fxcrt/fx_bidi.h"
+#include "core/fxge/cfx_renderdevice.h"
#include "third_party/base/stl_util.h"
#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fgas/layout/cfx_linebreak.h"
diff --git a/xfa/fgas/layout/cfx_rtfbreak.h b/xfa/fgas/layout/cfx_rtfbreak.h
index 5a3f4313b5..67052d23ad 100644
--- a/xfa/fgas/layout/cfx_rtfbreak.h
+++ b/xfa/fgas/layout/cfx_rtfbreak.h
@@ -13,11 +13,11 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_unicode.h"
#include "core/fxcrt/retain_ptr.h"
-#include "core/fxge/cfx_renderdevice.h"
#include "xfa/fgas/layout/cfx_break.h"
#include "xfa/fxfa/cxfa_textuserdata.h"
class CFGAS_GEFont;
+class FXTEXT_CHARPOS;
enum class CFX_RTFLineAlignment {
Left = 0,
diff --git a/xfa/fwl/cfwl_themebackground.h b/xfa/fwl/cfwl_themebackground.h
index 33a0e857f2..85435aa524 100644
--- a/xfa/fwl/cfwl_themebackground.h
+++ b/xfa/fwl/cfwl_themebackground.h
@@ -7,7 +7,6 @@
#ifndef XFA_FWL_CFWL_THEMEBACKGROUND_H_
#define XFA_FWL_CFWL_THEMEBACKGROUND_H_
-#include "core/fxge/fx_dib.h"
#include "xfa/fwl/cfwl_themepart.h"
class CXFA_Graphics;
diff --git a/xfa/fwl/cfwl_widget.h b/xfa/fwl/cfwl_widget.h
index f4ff63ea29..27cb458b9e 100644
--- a/xfa/fwl/cfwl_widget.h
+++ b/xfa/fwl/cfwl_widget.h
@@ -12,7 +12,7 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/unowned_ptr.h"
-#include "xfa/fde/cfde_textout.h"
+#include "xfa/fde/cfde_data.h"
#include "xfa/fwl/cfwl_event.h"
#include "xfa/fwl/cfwl_themepart.h"
#include "xfa/fwl/cfwl_widgetmgr.h"
diff --git a/xfa/fwl/ifwl_themeprovider.h b/xfa/fwl/ifwl_themeprovider.h
index 32dc901377..eba308597c 100644
--- a/xfa/fwl/ifwl_themeprovider.h
+++ b/xfa/fwl/ifwl_themeprovider.h
@@ -9,8 +9,9 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/retain_ptr.h"
-#include "xfa/fgas/font/cfgas_gefont.h"
+#include "core/fxge/fx_dib.h"
+class CFGAS_GEFont;
class CFWL_ThemeBackground;
class CFWL_ThemePart;
class CFWL_ThemeText;
diff --git a/xfa/fwl/theme/cfwl_widgettp.cpp b/xfa/fwl/theme/cfwl_widgettp.cpp
index 8a2754b4ad..3113d24546 100644
--- a/xfa/fwl/theme/cfwl_widgettp.cpp
+++ b/xfa/fwl/theme/cfwl_widgettp.cpp
@@ -57,6 +57,10 @@ void CFWL_WidgetTP::DrawText(CFWL_ThemeText* pParams) {
pParams->m_rtPart);
}
+const RetainPtr<CFGAS_GEFont>& CFWL_WidgetTP::GetFont() const {
+ return m_pFDEFont;
+}
+
void CFWL_WidgetTP::InitializeArrowColorData() {
if (m_pColorData)
return;
@@ -286,6 +290,10 @@ bool CFWL_FontData::LoadFont(const WideStringView& wsFontFamily,
return !!m_pFont;
}
+RetainPtr<CFGAS_GEFont> CFWL_FontData::GetFont() const {
+ return m_pFont;
+}
+
CFWL_FontManager* CFWL_FontManager::s_FontManager = nullptr;
CFWL_FontManager* CFWL_FontManager::GetInstance() {
if (!s_FontManager)
diff --git a/xfa/fwl/theme/cfwl_widgettp.h b/xfa/fwl/theme/cfwl_widgettp.h
index 5f143fe7d9..7813c0825c 100644
--- a/xfa/fwl/theme/cfwl_widgettp.h
+++ b/xfa/fwl/theme/cfwl_widgettp.h
@@ -13,16 +13,15 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/retain_ptr.h"
-#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fwl/theme/cfwl_utils.h"
#include "xfa/fxgraphics/cxfa_graphics.h"
class CFDE_TextOut;
+class CFGAS_FontMgr;
class CFGAS_GEFont;
class CFWL_ThemeBackground;
class CFWL_ThemePart;
class CFWL_ThemeText;
-class CFGAS_FontMgr;
class CFWL_Widget;
#if _FX_PLATFORM_ != _FX_PLATFORM_WINDOWS_
@@ -39,7 +38,7 @@ class CFWL_WidgetTP {
virtual void DrawBackground(CFWL_ThemeBackground* pParams);
virtual void DrawText(CFWL_ThemeText* pParams);
- const RetainPtr<CFGAS_GEFont>& GetFont() const { return m_pFDEFont; }
+ const RetainPtr<CFGAS_GEFont>& GetFont() const;
protected:
struct CColorData {
@@ -112,7 +111,7 @@ class CFWL_FontData {
bool LoadFont(const WideStringView& wsFontFamily,
uint32_t dwFontStyles,
uint16_t wCodePage);
- RetainPtr<CFGAS_GEFont> GetFont() const { return m_pFont; }
+ RetainPtr<CFGAS_GEFont> GetFont() const;
protected:
WideString m_wsFamily;
diff --git a/xfa/fxfa/cxfa_ffapp.h b/xfa/fxfa/cxfa_ffapp.h
index f4bd9eb7a8..8ffd657897 100644
--- a/xfa/fxfa/cxfa_ffapp.h
+++ b/xfa/fxfa/cxfa_ffapp.h
@@ -14,16 +14,17 @@
#include "core/fpdfapi/parser/cpdf_stream_acc.h"
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
-#include "xfa/fgas/font/cfgas_fontmgr.h"
#include "xfa/fwl/cfwl_app.h"
#include "xfa/fxfa/fxfa.h"
-class CFWL_WidgetMgr;
class CFGAS_DefaultFontManager;
-class CXFA_FWLAdapterWidgetMgr;
-class CXFA_FWLTheme;
+class CFGAS_FontMgr;
+class CFWL_WidgetMgr;
+class CPDF_Document;
class CXFA_FFDocHandler;
class CXFA_FontMgr;
+class CXFA_FWLAdapterWidgetMgr;
+class CXFA_FWLTheme;
class IFWL_AdapterTimerMgr;
class CXFA_FFApp {
diff --git a/xfa/fxfa/cxfa_textlayout.cpp b/xfa/fxfa/cxfa_textlayout.cpp
index 9565bb3970..ebb9e8aa2c 100644
--- a/xfa/fxfa/cxfa_textlayout.cpp
+++ b/xfa/fxfa/cxfa_textlayout.cpp
@@ -20,6 +20,7 @@
#include "third_party/base/ptr_util.h"
#include "third_party/base/stl_util.h"
#include "xfa/fde/cfde_textout.h"
+#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fxfa/cxfa_linkuserdata.h"
#include "xfa/fxfa/cxfa_loadercontext.h"
#include "xfa/fxfa/cxfa_pieceline.h"
diff --git a/xfa/fxfa/cxfa_textlayout.h b/xfa/fxfa/cxfa_textlayout.h
index 73aee36eef..40b64a7ca0 100644
--- a/xfa/fxfa/cxfa_textlayout.h
+++ b/xfa/fxfa/cxfa_textlayout.h
@@ -16,17 +16,18 @@
#include "xfa/fgas/layout/cfx_rtfbreak.h"
#include "xfa/fxfa/cxfa_textparser.h"
-class CFX_CSSComputedStyle;
class CFDE_RenderDevice;
-class CFX_XMLNode;
+class CFX_CSSComputedStyle;
+class CFX_RenderDevice;
class CFX_RTFBreak;
-class CXFA_LoaderContext;
+class CFX_XMLNode;
class CXFA_LinkUserData;
+class CXFA_LoaderContext;
class CXFA_Node;
class CXFA_PieceLine;
+class CXFA_TextPiece;
class CXFA_TextProvider;
class CXFA_TextTabstopsContext;
-class CXFA_TextPiece;
class CXFA_TextLayout {
public:
diff --git a/xfa/fxfa/cxfa_textparser.h b/xfa/fxfa/cxfa_textparser.h
index 336e227221..cd2856e6df 100644
--- a/xfa/fxfa/cxfa_textparser.h
+++ b/xfa/fxfa/cxfa_textparser.h
@@ -14,9 +14,9 @@
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/retain_ptr.h"
#include "core/fxge/fx_dib.h"
-#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fxfa/fxfa_basic.h"
+class CFGAS_GEFont;
class CFX_CSSComputedStyle;
class CFX_CSSStyleSelector;
class CFX_CSSStyleSheet;
diff --git a/xfa/fxfa/cxfa_textpiece.cpp b/xfa/fxfa/cxfa_textpiece.cpp
index 87a5e3fff2..d6a8d3abaf 100644
--- a/xfa/fxfa/cxfa_textpiece.cpp
+++ b/xfa/fxfa/cxfa_textpiece.cpp
@@ -6,6 +6,7 @@
#include "xfa/fxfa/cxfa_textpiece.h"
+#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fxfa/cxfa_linkuserdata.h"
CXFA_TextPiece::CXFA_TextPiece() {}
diff --git a/xfa/fxfa/cxfa_textpiece.h b/xfa/fxfa/cxfa_textpiece.h
index b4453b0f36..f3812f8e1e 100644
--- a/xfa/fxfa/cxfa_textpiece.h
+++ b/xfa/fxfa/cxfa_textpiece.h
@@ -12,9 +12,9 @@
#include "core/fxcrt/fx_coordinates.h"
#include "core/fxcrt/fx_string.h"
#include "core/fxge/fx_dib.h"
-#include "xfa/fgas/font/cfgas_gefont.h"
#include "xfa/fxfa/fxfa_basic.h"
+class CFGAS_GEFont;
class CXFA_LinkUserData;
class CXFA_TextPiece {