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

Side by Side Diff: fpdfsdk/cpdfsdk_formfillenvironment.h

Issue 2489663002: Fix CPDFSDK_FormFillEnvironment destruction order (Closed)
Patch Set: Created 4 years, 1 month 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 | « no previous file | fpdfsdk/cpdfsdk_formfillenvironment.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 PDFium Authors. All rights reserved. 1 // Copyright 2016 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #ifndef FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_ 7 #ifndef FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_
8 #define FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_ 8 #define FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_
9 9
10 #include <memory> 10 #include <memory>
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 } 105 }
106 106
107 #ifdef PDF_ENABLE_XFA 107 #ifdef PDF_ENABLE_XFA
108 CPDF_Document* GetPDFDocument() const { 108 CPDF_Document* GetPDFDocument() const {
109 return m_pUnderlyingDoc ? m_pUnderlyingDoc->GetPDFDoc() : nullptr; 109 return m_pUnderlyingDoc ? m_pUnderlyingDoc->GetPDFDoc() : nullptr;
110 } 110 }
111 111
112 CPDFXFA_Context* GetXFAContext() const { return m_pUnderlyingDoc; } 112 CPDFXFA_Context* GetXFAContext() const { return m_pUnderlyingDoc; }
113 void ResetXFADocument() { m_pUnderlyingDoc = nullptr; } 113 void ResetXFADocument() { m_pUnderlyingDoc = nullptr; }
114 114
115 int GetPageViewCount() const { return m_pageMap.size(); } 115 int GetPageViewCount() const { return m_PageMap.size(); }
116 116
117 void DisplayCaret(FPDF_PAGE page, 117 void DisplayCaret(FPDF_PAGE page,
118 FPDF_BOOL bVisible, 118 FPDF_BOOL bVisible,
119 double left, 119 double left,
120 double top, 120 double top,
121 double right, 121 double right,
122 double bottom); 122 double bottom);
123 int GetCurrentPageIndex(FPDF_DOCUMENT document); 123 int GetCurrentPageIndex(FPDF_DOCUMENT document);
124 void SetCurrentPage(FPDF_DOCUMENT document, int iCurPage); 124 void SetCurrentPage(FPDF_DOCUMENT document, int iCurPage);
125 125
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 CPDFSDK_AnnotHandlerMgr* GetAnnotHandlerMgr(); // Creates if not present. 206 CPDFSDK_AnnotHandlerMgr* GetAnnotHandlerMgr(); // Creates if not present.
207 IJS_Runtime* GetJSRuntime(); // Creates if not present. 207 IJS_Runtime* GetJSRuntime(); // Creates if not present.
208 CPDFSDK_ActionHandler* GetActionHander(); // Creates if not present. 208 CPDFSDK_ActionHandler* GetActionHander(); // Creates if not present.
209 CPDFSDK_InterForm* GetInterForm(); // Creates if not present. 209 CPDFSDK_InterForm* GetInterForm(); // Creates if not present.
210 210
211 private: 211 private:
212 std::unique_ptr<CPDFSDK_AnnotHandlerMgr> m_pAnnotHandlerMgr; 212 std::unique_ptr<CPDFSDK_AnnotHandlerMgr> m_pAnnotHandlerMgr;
213 std::unique_ptr<CPDFSDK_ActionHandler> m_pActionHandler; 213 std::unique_ptr<CPDFSDK_ActionHandler> m_pActionHandler;
214 std::unique_ptr<IJS_Runtime> m_pJSRuntime; 214 std::unique_ptr<IJS_Runtime> m_pJSRuntime;
215 FPDF_FORMFILLINFO* const m_pInfo; 215 FPDF_FORMFILLINFO* const m_pInfo;
216 std::map<UnderlyingPageType*, std::unique_ptr<CPDFSDK_PageView>> m_pageMap; 216 std::map<UnderlyingPageType*, std::unique_ptr<CPDFSDK_PageView>> m_PageMap;
217 std::unique_ptr<CPDFSDK_InterForm> m_pInterForm; 217 std::unique_ptr<CPDFSDK_InterForm> m_pInterForm;
218 CPDFSDK_Annot::ObservedPtr m_pFocusAnnot; 218 CPDFSDK_Annot::ObservedPtr m_pFocusAnnot;
219 UnderlyingDocumentType* m_pUnderlyingDoc; 219 UnderlyingDocumentType* m_pUnderlyingDoc;
220 std::unique_ptr<CFFL_InteractiveFormFiller> m_pFormFiller; 220 std::unique_ptr<CFFL_InteractiveFormFiller> m_pFormFiller;
221 std::unique_ptr<CFX_SystemHandler> m_pSysHandler; 221 std::unique_ptr<CFX_SystemHandler> m_pSysHandler;
222 bool m_bChangeMask; 222 bool m_bChangeMask;
223 bool m_bBeingDestroyed; 223 bool m_bBeingDestroyed;
224 }; 224 };
225 225
226 #endif // FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_ 226 #endif // FPDFSDK_CPDFSDK_FORMFILLENVIRONMENT_H_
OLDNEW
« no previous file with comments | « no previous file | fpdfsdk/cpdfsdk_formfillenvironment.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698