summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/fxge/apple/fx_apple_platform.cpp1
-rw-r--r--core/fxge/apple/fx_quartz_device.cpp1
-rw-r--r--core/fxge/cfx_facecache.cpp34
-rw-r--r--core/fxge/cfx_facecache.h4
-rw-r--r--core/fxge/cfx_font.cpp1
-rw-r--r--core/fxge/cfx_gemodule.cpp1
-rw-r--r--core/fxge/fx_font.h1
-rw-r--r--core/fxge/fx_ge_text.cpp5
-rw-r--r--core/fxge/fx_text_int.h24
-rw-r--r--core/fxge/win32/cfx_psrenderer.cpp1
-rw-r--r--core/fxge/win32/fx_win32_device.cpp1
-rw-r--r--core/fxge/win32/fx_win32_print.cpp1
12 files changed, 20 insertions, 55 deletions
diff --git a/core/fxge/apple/fx_apple_platform.cpp b/core/fxge/apple/fx_apple_platform.cpp
index 05ae70a6b7..b82e59cfd1 100644
--- a/core/fxge/apple/fx_apple_platform.cpp
+++ b/core/fxge/apple/fx_apple_platform.cpp
@@ -19,7 +19,6 @@
#include "core/fxge/cfx_gemodule.h"
#include "core/fxge/cfx_renderdevice.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#ifndef _SKIA_SUPPORT_
diff --git a/core/fxge/apple/fx_quartz_device.cpp b/core/fxge/apple/fx_quartz_device.cpp
index 1e9fddaad8..b24638c465 100644
--- a/core/fxge/apple/fx_quartz_device.cpp
+++ b/core/fxge/apple/fx_quartz_device.cpp
@@ -15,7 +15,6 @@
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/cfx_renderdevice.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "third_party/base/ptr_util.h"
#include "core/fxge/apple/apple_int.h"
diff --git a/core/fxge/cfx_facecache.cpp b/core/fxge/cfx_facecache.cpp
index 7075c1f9f5..217c41119c 100644
--- a/core/fxge/cfx_facecache.cpp
+++ b/core/fxge/cfx_facecache.cpp
@@ -17,7 +17,6 @@
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/cfx_substfont.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "third_party/base/numerics/safe_math.h"
#include "third_party/base/ptr_util.h"
@@ -330,27 +329,28 @@ const CFX_GlyphBitmap* CFX_FaceCache::LoadGlyphBitmap(const CFX_Font* pFont,
std::unique_ptr<CFX_GlyphBitmap> pGlyphBitmap;
auto it = m_SizeMap.find(FaceGlyphsKey);
if (it != m_SizeMap.end()) {
- CFX_SizeGlyphCache* pSizeCache = it->second.get();
- auto it2 = pSizeCache->m_GlyphMap.find(glyph_index);
- if (it2 != pSizeCache->m_GlyphMap.end())
+ SizeGlyphCache* pSizeCache = &(it->second);
+ auto it2 = pSizeCache->find(glyph_index);
+ if (it2 != pSizeCache->end())
return it2->second.get();
pGlyphBitmap = RenderGlyph_Nativetext(pFont, glyph_index, pMatrix,
dest_width, anti_alias);
if (pGlyphBitmap) {
CFX_GlyphBitmap* pResult = pGlyphBitmap.get();
- pSizeCache->m_GlyphMap[glyph_index] = std::move(pGlyphBitmap);
+ (*pSizeCache)[glyph_index] = std::move(pGlyphBitmap);
return pResult;
}
} else {
pGlyphBitmap = RenderGlyph_Nativetext(pFont, glyph_index, pMatrix,
dest_width, anti_alias);
if (pGlyphBitmap) {
- auto pNewCache = pdfium::MakeUnique<CFX_SizeGlyphCache>();
- CFX_SizeGlyphCache* pSizeCache = pNewCache.get();
- m_SizeMap[FaceGlyphsKey] = std::move(pNewCache);
CFX_GlyphBitmap* pResult = pGlyphBitmap.get();
- pSizeCache->m_GlyphMap[glyph_index] = std::move(pGlyphBitmap);
+
+ SizeGlyphCache cache;
+ cache[glyph_index] = std::move(pGlyphBitmap);
+
+ m_SizeMap[FaceGlyphsKey] = std::move(cache);
return pResult;
}
}
@@ -398,22 +398,22 @@ CFX_GlyphBitmap* CFX_FaceCache::LookUpGlyphBitmap(
bool bFontStyle,
int dest_width,
int anti_alias) {
- CFX_SizeGlyphCache* pSizeCache;
+ SizeGlyphCache* pSizeCache;
auto it = m_SizeMap.find(FaceGlyphsKey);
if (it == m_SizeMap.end()) {
- auto pNewCache = pdfium::MakeUnique<CFX_SizeGlyphCache>();
- pSizeCache = pNewCache.get();
- m_SizeMap[FaceGlyphsKey] = std::move(pNewCache);
+ m_SizeMap[FaceGlyphsKey] = SizeGlyphCache();
+ pSizeCache = &(m_SizeMap[FaceGlyphsKey]);
} else {
- pSizeCache = it->second.get();
+ pSizeCache = &(it->second);
}
- auto it2 = pSizeCache->m_GlyphMap.find(glyph_index);
- if (it2 != pSizeCache->m_GlyphMap.end())
+
+ auto it2 = pSizeCache->find(glyph_index);
+ if (it2 != pSizeCache->end())
return it2->second.get();
std::unique_ptr<CFX_GlyphBitmap> pGlyphBitmap = RenderGlyph(
pFont, glyph_index, bFontStyle, pMatrix, dest_width, anti_alias);
CFX_GlyphBitmap* pResult = pGlyphBitmap.get();
- pSizeCache->m_GlyphMap[glyph_index] = std::move(pGlyphBitmap);
+ (*pSizeCache)[glyph_index] = std::move(pGlyphBitmap);
return pResult;
}
diff --git a/core/fxge/cfx_facecache.h b/core/fxge/cfx_facecache.h
index 673d0a4cf9..ef5652ed20 100644
--- a/core/fxge/cfx_facecache.h
+++ b/core/fxge/cfx_facecache.h
@@ -38,6 +38,8 @@ class CFX_FaceCache {
#endif
private:
+ using SizeGlyphCache = std::map<uint32_t, std::unique_ptr<CFX_GlyphBitmap>>;
+
std::unique_ptr<CFX_GlyphBitmap> RenderGlyph(const CFX_Font* pFont,
uint32_t glyph_index,
bool bFontStyle,
@@ -61,7 +63,7 @@ class CFX_FaceCache {
void DestroyPlatform();
FXFT_Face const m_Face;
- std::map<ByteString, std::unique_ptr<CFX_SizeGlyphCache>> m_SizeMap;
+ std::map<ByteString, SizeGlyphCache> m_SizeMap;
std::map<uint32_t, std::unique_ptr<CFX_PathData>> m_PathMap;
#if defined _SKIA_SUPPORT_ || _SKIA_SUPPORT_PATHS_
sk_sp<SkTypeface> m_pTypeface;
diff --git a/core/fxge/cfx_font.cpp b/core/fxge/cfx_font.cpp
index 9e6a2cf982..6e252fc065 100644
--- a/core/fxge/cfx_font.cpp
+++ b/core/fxge/cfx_font.cpp
@@ -22,7 +22,6 @@
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/cfx_substfont.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "third_party/base/ptr_util.h"
#define EM_ADJUST(em, a) (em == 0 ? (a) : (a)*1000 / em)
diff --git a/core/fxge/cfx_gemodule.cpp b/core/fxge/cfx_gemodule.cpp
index a28a88243a..cbc66c3cac 100644
--- a/core/fxge/cfx_gemodule.cpp
+++ b/core/fxge/cfx_gemodule.cpp
@@ -9,7 +9,6 @@
#include "core/fxge/cfx_folderfontinfo.h"
#include "core/fxge/cfx_fontcache.h"
#include "core/fxge/cfx_fontmgr.h"
-#include "core/fxge/fx_text_int.h"
#include "third_party/base/ptr_util.h"
namespace {
diff --git a/core/fxge/fx_font.h b/core/fxge/fx_font.h
index 321cc4c80a..e4b085a931 100644
--- a/core/fxge/fx_font.h
+++ b/core/fxge/fx_font.h
@@ -24,7 +24,6 @@ typedef void* FXFT_Library;
class CFX_FaceCache;
class CFX_GlyphBitmap;
class CFX_PathData;
-class CFX_SizeGlyphCache;
class IFX_SeekableReadStream;
#if defined _SKIA_SUPPORT_ || defined _SKIA_SUPPORT_PATHS_
diff --git a/core/fxge/fx_ge_text.cpp b/core/fxge/fx_ge_text.cpp
index a04e43f75d..a04e6d0e85 100644
--- a/core/fxge/fx_ge_text.cpp
+++ b/core/fxge/fx_ge_text.cpp
@@ -11,7 +11,6 @@
#include "core/fxcrt/fx_safe_types.h"
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "core/fxge/ifx_renderdevicedriver.h"
namespace {
@@ -103,7 +102,3 @@ FX_RECT FXGE_GetGlyphsBBox(const std::vector<FXTEXT_GLYPHPOS>& glyphs,
}
return rect;
}
-
-CFX_SizeGlyphCache::CFX_SizeGlyphCache() {}
-
-CFX_SizeGlyphCache::~CFX_SizeGlyphCache() {}
diff --git a/core/fxge/fx_text_int.h b/core/fxge/fx_text_int.h
deleted file mode 100644
index da594443cc..0000000000
--- a/core/fxge/fx_text_int.h
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef CORE_FXGE_FX_TEXT_INT_H_
-#define CORE_FXGE_FX_TEXT_INT_H_
-
-#include <map>
-#include <memory>
-
-#include "core/fxge/fx_font.h"
-#include "core/fxge/fx_freetype.h"
-
-class CFX_SizeGlyphCache {
- public:
- CFX_SizeGlyphCache();
- ~CFX_SizeGlyphCache();
-
- std::map<uint32_t, std::unique_ptr<CFX_GlyphBitmap>> m_GlyphMap;
-};
-
-#endif // CORE_FXGE_FX_TEXT_INT_H_
diff --git a/core/fxge/win32/cfx_psrenderer.cpp b/core/fxge/win32/cfx_psrenderer.cpp
index 8a7aac0f8d..9a617da32f 100644
--- a/core/fxge/win32/cfx_psrenderer.cpp
+++ b/core/fxge/win32/cfx_psrenderer.cpp
@@ -22,7 +22,6 @@
#include "core/fxge/cfx_pathdata.h"
#include "core/fxge/cfx_renderdevice.h"
#include "core/fxge/dib/cfx_dibextractor.h"
-#include "core/fxge/fx_text_int.h"
#include "core/fxge/win32/cpsoutput.h"
#include "third_party/base/ptr_util.h"
diff --git a/core/fxge/win32/fx_win32_device.cpp b/core/fxge/win32/fx_win32_device.cpp
index d87edf7ed1..9957239089 100644
--- a/core/fxge/win32/fx_win32_device.cpp
+++ b/core/fxge/win32/fx_win32_device.cpp
@@ -22,7 +22,6 @@
#include "core/fxge/dib/cstretchengine.h"
#include "core/fxge/fx_font.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "core/fxge/ifx_systemfontinfo.h"
#include "core/fxge/win32/cfx_windowsdib.h"
#include "core/fxge/win32/dwrite_int.h"
diff --git a/core/fxge/win32/fx_win32_print.cpp b/core/fxge/win32/fx_win32_print.cpp
index 3c08acddda..2ff9fd07aa 100644
--- a/core/fxge/win32/fx_win32_print.cpp
+++ b/core/fxge/win32/fx_win32_print.cpp
@@ -16,7 +16,6 @@
#include "core/fxge/dib/cfx_imagerenderer.h"
#include "core/fxge/dib/cstretchengine.h"
#include "core/fxge/fx_freetype.h"
-#include "core/fxge/fx_text_int.h"
#include "core/fxge/win32/cpsoutput.h"
#include "core/fxge/win32/win32_int.h"
#include "third_party/base/ptr_util.h"