diff options
author | dsinclair <dsinclair@chromium.org> | 2016-10-13 10:57:01 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-10-13 10:57:01 -0700 |
commit | b685e6471075bebd26711bc183de3128f54932e3 (patch) | |
tree | e3ddfa51c087bb7a6960f117f68a412b14b322d8 /fpdfsdk/fpdfxfa/cpdfxfa_app.h | |
parent | abefb79577b32d291d14d7e01a70f6f8cf213bd3 (diff) | |
download | pdfium-b685e6471075bebd26711bc183de3128f54932e3.tar.xz |
Revert of Make the CPDFXFA_App non-global (patchset #3 id:80001 of https://codereview.chromium.org/2416753002/ )
Reason for revert:
https://build.chromium.org/p/client.pdfium/builders/linux_xfa_asan_lsan/builds/112/steps/embeddertests/logs/stdio
msan is sad.
Original issue's description:
> Make the CPDFXFA_App non-global
>
> This CL changes CPDFXFA_App from a global object to a child of the
> CPDFXFA_Document objects.
>
> BUG=pdfium:623
>
> Committed: https://pdfium.googlesource.com/pdfium/+/abefb79577b32d291d14d7e01a70f6f8cf213bd3
TBR=tsepez@chromium.org,thestig@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=pdfium:623
Review-Url: https://codereview.chromium.org/2412903004
Diffstat (limited to 'fpdfsdk/fpdfxfa/cpdfxfa_app.h')
-rw-r--r-- | fpdfsdk/fpdfxfa/cpdfxfa_app.h | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_app.h b/fpdfsdk/fpdfxfa/cpdfxfa_app.h index ef5c3761c6..78184d1434 100644 --- a/fpdfsdk/fpdfxfa/cpdfxfa_app.h +++ b/fpdfsdk/fpdfxfa/cpdfxfa_app.h @@ -14,13 +14,21 @@ class IFXJS_Runtime; class CPDFXFA_App : public IXFA_AppProvider { public: + static CPDFXFA_App* GetInstance(); + static void ReleaseInstance(); + CPDFXFA_App(); ~CPDFXFA_App() override; + FX_BOOL Initialize(v8::Isolate* pIsolate); CXFA_FFApp* GetXFAApp() { return m_pXFAApp.get(); } - void SetFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv) { - m_pFormFillEnv = pFormFillEnv; + FX_BOOL AddFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv); + FX_BOOL RemoveFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv); + + FX_BOOL IsJavaScriptInitialized() const { return m_bJavaScriptInitialized; } + void SetJavaScriptInitialized(FX_BOOL bInitialized) { + m_bJavaScriptInitialized = bInitialized; } v8::Isolate* GetJSERuntime() const { return m_pIsolate; } @@ -54,8 +62,10 @@ class CPDFXFA_App : public IXFA_AppProvider { void LoadString(int32_t iStringID, CFX_WideString& wsString) override; IFWL_AdapterTimerMgr* GetTimerMgr() override; - private: - CPDFSDK_FormFillEnvironment* m_pFormFillEnv; // Not owned. + CFX_ArrayTemplate<CPDFSDK_FormFillEnvironment*> m_pFormFillEnvList; + + protected: + FX_BOOL m_bJavaScriptInitialized; std::unique_ptr<CXFA_FFApp> m_pXFAApp; v8::Isolate* m_pIsolate; }; |