diff options
author | Tom Sepez <tsepez@chromium.org> | 2015-10-06 11:10:52 -0700 |
---|---|---|
committer | Tom Sepez <tsepez@chromium.org> | 2015-10-06 11:10:52 -0700 |
commit | f0a5b2803c09f3605dcd606e764ef604f0d2a8ea (patch) | |
tree | c70b0fd99702afbeb7474b7c168d13dc5d6831a3 /fpdfsdk/src/javascript/JS_EventHandler.cpp | |
parent | 4ea721cb7954898a9722c389dae86c62957352d0 (diff) | |
download | pdfium-f0a5b2803c09f3605dcd606e764ef604f0d2a8ea.tar.xz |
Store object definition ID in each js_class.
Avoids doing a lookup via FXJS_V8 for something already
known in CJS layer.
Also:
Consolidate repeated code in JS macros.
Remove knowledge that Document is global from FXJS layer
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1382263002 .
Diffstat (limited to 'fpdfsdk/src/javascript/JS_EventHandler.cpp')
-rw-r--r-- | fpdfsdk/src/javascript/JS_EventHandler.cpp | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/fpdfsdk/src/javascript/JS_EventHandler.cpp b/fpdfsdk/src/javascript/JS_EventHandler.cpp index 42d61f4c1e..dd5c4427ce 100644 --- a/fpdfsdk/src/javascript/JS_EventHandler.cpp +++ b/fpdfsdk/src/javascript/JS_EventHandler.cpp @@ -613,13 +613,12 @@ FX_BOOL CJS_EventHandler::Shift() { Field* CJS_EventHandler::Source() { CJS_Runtime* pRuntime = m_pJSContext->GetJSRuntime(); v8::Local<v8::Object> pDocObj = FXJS_NewFxDynamicObj( - pRuntime->GetIsolate(), m_pJSContext, - FXJS_GetObjDefnID(pRuntime->GetIsolate(), L"Document")); - ASSERT(pDocObj.IsEmpty() == FALSE); - v8::Local<v8::Object> pFieldObj = - FXJS_NewFxDynamicObj(pRuntime->GetIsolate(), m_pJSContext, - FXJS_GetObjDefnID(pRuntime->GetIsolate(), L"Field")); - ASSERT(pFieldObj.IsEmpty() == FALSE); + pRuntime->GetIsolate(), m_pJSContext, CJS_Document::g_nObjDefnID); + ASSERT(!pDocObj.IsEmpty()); + + v8::Local<v8::Object> pFieldObj = FXJS_NewFxDynamicObj( + pRuntime->GetIsolate(), m_pJSContext, CJS_Field::g_nObjDefnID); + ASSERT(!pFieldObj.IsEmpty()); CJS_Document* pJSDocument = (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pDocObj); @@ -637,13 +636,12 @@ Field* CJS_EventHandler::Source() { Field* CJS_EventHandler::Target_Field() { CJS_Runtime* pRuntime = m_pJSContext->GetJSRuntime(); v8::Local<v8::Object> pDocObj = FXJS_NewFxDynamicObj( - pRuntime->GetIsolate(), m_pJSContext, - FXJS_GetObjDefnID(pRuntime->GetIsolate(), L"Document")); - ASSERT(pDocObj.IsEmpty() == FALSE); - v8::Local<v8::Object> pFieldObj = - FXJS_NewFxDynamicObj(pRuntime->GetIsolate(), m_pJSContext, - FXJS_GetObjDefnID(pRuntime->GetIsolate(), L"Field")); - ASSERT(pFieldObj.IsEmpty() == FALSE); + pRuntime->GetIsolate(), m_pJSContext, CJS_Document::g_nObjDefnID); + ASSERT(!pDocObj.IsEmpty()); + + v8::Local<v8::Object> pFieldObj = FXJS_NewFxDynamicObj( + pRuntime->GetIsolate(), m_pJSContext, CJS_Field::g_nObjDefnID); + ASSERT(!pFieldObj.IsEmpty()); CJS_Document* pJSDocument = (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pDocObj); |