summaryrefslogtreecommitdiff
path: root/core/fxge/android/cfpf_skiadevicemodule.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fxge/android/cfpf_skiadevicemodule.cpp')
-rw-r--r--core/fxge/android/cfpf_skiadevicemodule.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/core/fxge/android/cfpf_skiadevicemodule.cpp b/core/fxge/android/cfpf_skiadevicemodule.cpp
new file mode 100644
index 0000000000..7bdf64666f
--- /dev/null
+++ b/core/fxge/android/cfpf_skiadevicemodule.cpp
@@ -0,0 +1,41 @@
+// Copyright 2016 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
+
+#include "core/fxge/android/cfpf_skiadevicemodule.h"
+
+#include "core/fxge/android/cfpf_skiafontmgr.h"
+
+namespace {
+
+CFPF_SkiaDeviceModule* gs_pPFModule = nullptr;
+
+} // namespace
+
+CFPF_SkiaDeviceModule* CFPF_GetSkiaDeviceModule() {
+ if (!gs_pPFModule)
+ gs_pPFModule = new CFPF_SkiaDeviceModule;
+ return gs_pPFModule;
+}
+
+CFPF_SkiaDeviceModule::~CFPF_SkiaDeviceModule() {
+ delete m_pFontMgr;
+}
+
+void CFPF_SkiaDeviceModule::Destroy() {
+ delete gs_pPFModule;
+ gs_pPFModule = nullptr;
+}
+
+CFPF_SkiaFontMgr* CFPF_SkiaDeviceModule::GetFontMgr() {
+ if (!m_pFontMgr) {
+ m_pFontMgr = new CFPF_SkiaFontMgr;
+ if (!m_pFontMgr->InitFTLibrary()) {
+ delete m_pFontMgr;
+ return nullptr;
+ }
+ }
+ return m_pFontMgr;
+}