Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(951)

Side by Side Diff: xfa/src/fwl/core/fwl_appimp.cpp

Issue 1803723002: Move xfa/src up to xfa/. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Rebase to master Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « xfa/src/fwl/core/fwl_appimp.h ('k') | xfa/src/fwl/core/fwl_contentimp.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #include "xfa/src/fwl/core/fwl_appimp.h"
8
9 #include "xfa/include/fwl/adapter/fwl_adapterwidgetmgr.h"
10 #include "xfa/include/fwl/core/fwl_app.h"
11 #include "xfa/include/fwl/core/fwl_widget.h"
12 #include "xfa/src/fwl/core/fwl_noteimp.h"
13 #include "xfa/src/fwl/core/fwl_targetimp.h"
14 #include "xfa/src/fwl/core/fwl_threadimp.h"
15 #include "xfa/src/fwl/core/fwl_widgetmgrimp.h"
16
17 IFWL_App* IFWL_App::Create(IFWL_AdapterNative* pAdapter) {
18 IFWL_App* pApp = new IFWL_App;
19 pApp->SetImpl(new CFWL_AppImp(pApp, pAdapter));
20 return pApp;
21 }
22 FWL_ERR IFWL_App::Initialize() {
23 return static_cast<CFWL_AppImp*>(GetImpl())->Initialize();
24 }
25 FWL_ERR IFWL_App::Finalize() {
26 return static_cast<CFWL_AppImp*>(GetImpl())->Finalize();
27 }
28 IFWL_AdapterNative* IFWL_App::GetAdapterNative() {
29 return static_cast<CFWL_AppImp*>(GetImpl())->GetAdapterNative();
30 }
31 IFWL_WidgetMgr* IFWL_App::GetWidgetMgr() {
32 return static_cast<CFWL_AppImp*>(GetImpl())->GetWidgetMgr();
33 }
34 IFWL_ThemeProvider* IFWL_App::GetThemeProvider() {
35 return static_cast<CFWL_AppImp*>(GetImpl())->GetThemeProvider();
36 }
37 FWL_ERR IFWL_App::SetThemeProvider(IFWL_ThemeProvider* pThemeProvider) {
38 return static_cast<CFWL_AppImp*>(GetImpl())->SetThemeProvider(pThemeProvider);
39 }
40 FWL_ERR IFWL_App::Exit(int32_t iExitCode) {
41 return static_cast<CFWL_AppImp*>(GetImpl())->Exit(iExitCode);
42 }
43
44 CFWL_AppImp::CFWL_AppImp(IFWL_App* pIface, IFWL_AdapterNative* pAdapter)
45 : CFWL_NoteThreadImp(pIface),
46 m_pAdapterNative(pAdapter),
47 m_pThemeProvider(nullptr) {}
48
49 CFWL_AppImp::~CFWL_AppImp() {
50 CFWL_ToolTipContainer::DeleteInstance();
51 }
52
53 FWL_ERR CFWL_AppImp::Initialize() {
54 if (!m_pWidgetMgr) {
55 m_pWidgetMgr.reset(new CFWL_WidgetMgr(m_pAdapterNative));
56 }
57 return FWL_ERR_Succeeded;
58 }
59 FWL_ERR CFWL_AppImp::Finalize() {
60 m_pWidgetMgr.reset();
61 return FWL_ERR_Succeeded;
62 }
63 IFWL_AdapterNative* CFWL_AppImp::GetAdapterNative() const {
64 return m_pAdapterNative;
65 }
66 IFWL_AdapterWidgetMgr* FWL_GetAdapterWidgetMgr() {
67 return static_cast<CFWL_WidgetMgr*>(FWL_GetWidgetMgr())
68 ->GetAdapterWidgetMgr();
69 }
70 IFWL_WidgetMgr* CFWL_AppImp::GetWidgetMgr() const {
71 return m_pWidgetMgr.get();
72 }
73 FWL_ERR CFWL_AppImp::SetThemeProvider(IFWL_ThemeProvider* pThemeProvider) {
74 m_pThemeProvider = pThemeProvider;
75 return FWL_ERR_Succeeded;
76 }
77 FWL_ERR CFWL_AppImp::Exit(int32_t iExitCode) {
78 while (m_pNoteDriver->PopNoteLoop()) {
79 continue;
80 }
81 return m_pWidgetMgr->GetAdapterWidgetMgr()->Exit(0);
82 }
83 IFWL_ThemeProvider* CFWL_AppImp::GetThemeProvider() const {
84 return m_pThemeProvider;
85 }
86 IFWL_AdapterNative* FWL_GetAdapterNative() {
87 IFWL_App* pApp = FWL_GetApp();
88 if (!pApp)
89 return NULL;
90 return pApp->GetAdapterNative();
91 }
92 IFWL_ThemeProvider* FWL_GetThemeProvider() {
93 return NULL;
94 }
95 static IFWL_App* _theApp = NULL;
96 IFWL_App* FWL_GetApp() {
97 return _theApp;
98 }
99 void FWL_SetApp(IFWL_App* pApp) {
100 _theApp = pApp;
101 }
102 FWL_ERR FWL_SetFullScreen(IFWL_Widget* pWidget, FX_BOOL bFullScreen) {
103 if (!pWidget)
104 return FWL_ERR_Succeeded;
105 IFWL_NoteThread* pNoteTread = pWidget->GetOwnerThread();
106 if (!pNoteTread)
107 return FWL_ERR_Succeeded;
108 CFWL_NoteDriver* pNoteDriver =
109 static_cast<CFWL_NoteDriver*>(pNoteTread->GetNoteDriver());
110 if (!pNoteTread)
111 return FWL_ERR_Succeeded;
112 pNoteDriver->NotifyFullScreenMode(pWidget, bFullScreen);
113 return FWL_GetAdapterWidgetMgr()->SetFullScreen(pWidget, bFullScreen);
114 }
OLDNEW
« no previous file with comments | « xfa/src/fwl/core/fwl_appimp.h ('k') | xfa/src/fwl/core/fwl_contentimp.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698