Index: content/common/font_warmup_win.h |
diff --git a/content/common/font_warmup_win.h b/content/common/font_warmup_win.h |
index 543826847bf3512f16b6e6ed0902cf4b703a438f..7a0e9b502c7e8c4c3d5c36d29532c3305d63cf8f 100644 |
--- a/content/common/font_warmup_win.h |
+++ b/content/common/font_warmup_win.h |
@@ -5,6 +5,7 @@ |
#ifndef CONTENT_COMMON_FONT_WARMUP_WIN_H_ |
#define CONTENT_COMMON_FONT_WARMUP_WIN_H_ |
+#include "base/files/file_path.h" |
#include "content/common/content_export.h" |
class SkFontMgr; |
@@ -20,6 +21,32 @@ CONTENT_EXPORT void DoPreSandboxWarmupForTypeface(SkTypeface* typeface); |
// fonts. |
CONTENT_EXPORT SkFontMgr* GetPreSandboxWarmupFontMgr(); |
+class GdiFontPatchData { |
+ public: |
+ virtual ~GdiFontPatchData() {} |
+ |
+ protected: |
+ GdiFontPatchData() {} |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(GdiFontPatchData); |
+}; |
+ |
+// Hook a module's imported GDI font functions to reimplement font enumeration |
+// and font data retrieval for DLLs which can't be easily modified. |
+CONTENT_EXPORT GdiFontPatchData* PatchGdiFontEnumeration( |
+ const base::FilePath& path); |
+ |
+// Testing method to get the number of in-flight emulated GDI handles. |
+CONTENT_EXPORT size_t GetEmulatedGdiHandleCountForTesting(); |
+ |
+// Testing method to reset the table of emulated GDI handles. |
+CONTENT_EXPORT void ResetEmulatedGdiHandlesForTesting(); |
+ |
+// Sets the pre-sandbox warmup font manager directly. This should only be used |
+// for testing the implementation. |
+CONTENT_EXPORT void SetPreSandboxWarmupFontMgrForTesting(SkFontMgr* fontmgr); |
+ |
// Warmup the direct write font manager for content processes. |
CONTENT_EXPORT void WarmupDirectWrite(); |