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

Side by Side Diff: fpdfsdk/src/javascript/global.cpp

Issue 1435493002: Merge to XFA: Remove FXJS_GetRuntime (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@xfa
Patch Set: Created 5 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 | « fpdfsdk/src/javascript/JS_Object.cpp ('k') | fpdfsdk/src/jsapi/fxjs_v8.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 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 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 #include "global.h" 7 #include "global.h"
8 8
9 #include "../../../core/include/fxcrt/fx_ext.h" 9 #include "../../../core/include/fxcrt/fx_ext.h"
10 #include "../../include/javascript/IJavaScript.h" 10 #include "../../include/javascript/IJavaScript.h"
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
252 break; 252 break;
253 case JS_GLOBALDATA_TYPE_STRING: 253 case JS_GLOBALDATA_TYPE_STRING:
254 SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_STRING, 0, 254 SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_STRING, 0,
255 false, pData->data.sData, v8::Local<v8::Object>(), 255 false, pData->data.sData, v8::Local<v8::Object>(),
256 pData->bPersistent == 1); 256 pData->bPersistent == 1);
257 FXJS_PutObjectString(NULL, m_pJSObject->ToV8Object(), 257 FXJS_PutObjectString(NULL, m_pJSObject->ToV8Object(),
258 pData->data.sKey.UTF8Decode().c_str(), 258 pData->data.sKey.UTF8Decode().c_str(),
259 pData->data.sData.UTF8Decode().c_str()); 259 pData->data.sData.UTF8Decode().c_str());
260 break; 260 break;
261 case JS_GLOBALDATA_TYPE_OBJECT: { 261 case JS_GLOBALDATA_TYPE_OBJECT: {
262 v8::Isolate* pRuntime = FXJS_GetRuntime(m_pJSObject->ToV8Object()); 262 v8::Isolate* pRuntime = m_pJSObject->ToV8Object()->GetIsolate();
263 v8::Local<v8::Object> pObj = FXJS_NewFxDynamicObj(pRuntime, NULL, -1); 263 v8::Local<v8::Object> pObj = FXJS_NewFxDynamicObj(pRuntime, NULL, -1);
264 264
265 PutObjectProperty(pObj, &pData->data); 265 PutObjectProperty(pObj, &pData->data);
266 266
267 SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_OBJECT, 0, 267 SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_OBJECT, 0,
268 false, "", pObj, pData->bPersistent == 1); 268 false, "", pObj, pData->bPersistent == 1);
269 FXJS_PutObjectObject(NULL, m_pJSObject->ToV8Object(), 269 FXJS_PutObjectObject(NULL, m_pJSObject->ToV8Object(),
270 pData->data.sKey.UTF8Decode().c_str(), pObj); 270 pData->data.sKey.UTF8Decode().c_str(), pObj);
271 271
272 } break; 272 } break;
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 m_pGlobalData->SetGlobalVariablePersistent(name, pData->bPersistent); 317 m_pGlobalData->SetGlobalVariablePersistent(name, pData->bPersistent);
318 break; 318 break;
319 } 319 }
320 } 320 }
321 } 321 }
322 } 322 }
323 323
324 void JSGlobalAlternate::ObjectToArray(IJS_Context* cc, 324 void JSGlobalAlternate::ObjectToArray(IJS_Context* cc,
325 v8::Local<v8::Object> pObj, 325 v8::Local<v8::Object> pObj,
326 CJS_GlobalVariableArray& array) { 326 CJS_GlobalVariableArray& array) {
327 v8::Local<v8::Context> context = pObj->CreationContext(); 327 v8::Isolate* isolate = pObj->GetIsolate();
328 v8::Isolate* isolate = context->GetIsolate();
329 CJS_Runtime* pRuntime = CJS_Runtime::FromContext(cc); 328 CJS_Runtime* pRuntime = CJS_Runtime::FromContext(cc);
330 329
331 v8::Local<v8::Array> pKeyList = FXJS_GetObjectElementNames(isolate, pObj); 330 v8::Local<v8::Array> pKeyList = FXJS_GetObjectElementNames(isolate, pObj);
332 int nObjElements = pKeyList->Length(); 331 int nObjElements = pKeyList->Length();
333 for (int i = 0; i < nObjElements; i++) { 332 for (int i = 0; i < nObjElements; i++) {
334 CFX_WideString ws = 333 CFX_WideString ws =
335 FXJS_ToString(isolate, FXJS_GetArrayElement(isolate, pKeyList, i)); 334 FXJS_ToString(isolate, FXJS_GetArrayElement(isolate, pKeyList, i));
336 CFX_ByteString sKey = ws.UTF8Encode(); 335 CFX_ByteString sKey = ws.UTF8Encode();
337 336
338 v8::Local<v8::Value> v = FXJS_GetObjectElement(isolate, pObj, ws.c_str()); 337 v8::Local<v8::Value> v = FXJS_GetObjectElement(isolate, pObj, ws.c_str());
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
394 break; 393 break;
395 case JS_GLOBALDATA_TYPE_BOOLEAN: 394 case JS_GLOBALDATA_TYPE_BOOLEAN:
396 FXJS_PutObjectBoolean(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(), 395 FXJS_PutObjectBoolean(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(),
397 pObjData->bData == 1); 396 pObjData->bData == 1);
398 break; 397 break;
399 case JS_GLOBALDATA_TYPE_STRING: 398 case JS_GLOBALDATA_TYPE_STRING:
400 FXJS_PutObjectString(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(), 399 FXJS_PutObjectString(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(),
401 pObjData->sData.UTF8Decode().c_str()); 400 pObjData->sData.UTF8Decode().c_str());
402 break; 401 break;
403 case JS_GLOBALDATA_TYPE_OBJECT: { 402 case JS_GLOBALDATA_TYPE_OBJECT: {
404 v8::Isolate* pRuntime = FXJS_GetRuntime(m_pJSObject->ToV8Object()); 403 v8::Isolate* pRuntime = m_pJSObject->ToV8Object()->GetIsolate();
405 v8::Local<v8::Object> pNewObj = 404 v8::Local<v8::Object> pNewObj =
406 FXJS_NewFxDynamicObj(pRuntime, NULL, -1); 405 FXJS_NewFxDynamicObj(pRuntime, NULL, -1);
407 PutObjectProperty(pNewObj, pObjData); 406 PutObjectProperty(pNewObj, pObjData);
408 FXJS_PutObjectObject(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(), 407 FXJS_PutObjectObject(NULL, pObj, pObjData->sKey.UTF8Decode().c_str(),
409 pNewObj); 408 pNewObj);
410 } break; 409 } break;
411 case JS_GLOBALDATA_TYPE_NULL: 410 case JS_GLOBALDATA_TYPE_NULL:
412 FXJS_PutObjectNull(NULL, pObj, pObjData->sKey.UTF8Decode().c_str()); 411 FXJS_PutObjectNull(NULL, pObj, pObjData->sKey.UTF8Decode().c_str());
413 break; 412 break;
414 } 413 }
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
447 case JS_GLOBALDATA_TYPE_NUMBER: { 446 case JS_GLOBALDATA_TYPE_NUMBER: {
448 pTemp->dData = dData; 447 pTemp->dData = dData;
449 } break; 448 } break;
450 case JS_GLOBALDATA_TYPE_BOOLEAN: { 449 case JS_GLOBALDATA_TYPE_BOOLEAN: {
451 pTemp->bData = bData; 450 pTemp->bData = bData;
452 } break; 451 } break;
453 case JS_GLOBALDATA_TYPE_STRING: { 452 case JS_GLOBALDATA_TYPE_STRING: {
454 pTemp->sData = sData; 453 pTemp->sData = sData;
455 } break; 454 } break;
456 case JS_GLOBALDATA_TYPE_OBJECT: { 455 case JS_GLOBALDATA_TYPE_OBJECT: {
457 pTemp->pData.Reset(FXJS_GetRuntime(pData), pData); 456 pTemp->pData.Reset(pData->GetIsolate(), pData);
458 } break; 457 } break;
459 case JS_GLOBALDATA_TYPE_NULL: 458 case JS_GLOBALDATA_TYPE_NULL:
460 break; 459 break;
461 default: 460 default:
462 return FALSE; 461 return FALSE;
463 } 462 }
464 return TRUE; 463 return TRUE;
465 } 464 }
466 465
467 JSGlobalData* pNewData = NULL; 466 JSGlobalData* pNewData = NULL;
(...skipping 13 matching lines...) Expand all
481 } break; 480 } break;
482 case JS_GLOBALDATA_TYPE_STRING: { 481 case JS_GLOBALDATA_TYPE_STRING: {
483 pNewData = new JSGlobalData; 482 pNewData = new JSGlobalData;
484 pNewData->nType = JS_GLOBALDATA_TYPE_STRING; 483 pNewData->nType = JS_GLOBALDATA_TYPE_STRING;
485 pNewData->sData = sData; 484 pNewData->sData = sData;
486 pNewData->bPersistent = bDefaultPersistent; 485 pNewData->bPersistent = bDefaultPersistent;
487 } break; 486 } break;
488 case JS_GLOBALDATA_TYPE_OBJECT: { 487 case JS_GLOBALDATA_TYPE_OBJECT: {
489 pNewData = new JSGlobalData; 488 pNewData = new JSGlobalData;
490 pNewData->nType = JS_GLOBALDATA_TYPE_OBJECT; 489 pNewData->nType = JS_GLOBALDATA_TYPE_OBJECT;
491 pNewData->pData.Reset(FXJS_GetRuntime(pData), pData); 490 pNewData->pData.Reset(pData->GetIsolate(), pData);
492 pNewData->bPersistent = bDefaultPersistent; 491 pNewData->bPersistent = bDefaultPersistent;
493 } break; 492 } break;
494 case JS_GLOBALDATA_TYPE_NULL: { 493 case JS_GLOBALDATA_TYPE_NULL: {
495 pNewData = new JSGlobalData; 494 pNewData = new JSGlobalData;
496 pNewData->nType = JS_GLOBALDATA_TYPE_NULL; 495 pNewData->nType = JS_GLOBALDATA_TYPE_NULL;
497 pNewData->bPersistent = bDefaultPersistent; 496 pNewData->bPersistent = bDefaultPersistent;
498 } break; 497 } break;
499 default: 498 default:
500 return FALSE; 499 return FALSE;
501 } 500 }
(...skipping 17 matching lines...) Expand all
519 return CJS_Value::VT_boolean; 518 return CJS_Value::VT_boolean;
520 if (nHash == JSCONST_nDateHash) 519 if (nHash == JSCONST_nDateHash)
521 return CJS_Value::VT_date; 520 return CJS_Value::VT_date;
522 if (nHash == JSCONST_nObjectHash) 521 if (nHash == JSCONST_nObjectHash)
523 return CJS_Value::VT_object; 522 return CJS_Value::VT_object;
524 if (nHash == JSCONST_nFXobjHash) 523 if (nHash == JSCONST_nFXobjHash)
525 return CJS_Value::VT_fxobject; 524 return CJS_Value::VT_fxobject;
526 525
527 return CJS_Value::VT_unknown; 526 return CJS_Value::VT_unknown;
528 } 527 }
OLDNEW
« no previous file with comments | « fpdfsdk/src/javascript/JS_Object.cpp ('k') | fpdfsdk/src/jsapi/fxjs_v8.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698