Index: Source/bindings/core/v8/ScriptController.cpp |
diff --git a/Source/bindings/core/v8/ScriptController.cpp b/Source/bindings/core/v8/ScriptController.cpp |
index ef014a04a86078131552d7de3a07a432ce0afbab..26f81df5fff5417f873c861135f85347b878354e 100644 |
--- a/Source/bindings/core/v8/ScriptController.cpp |
+++ b/Source/bindings/core/v8/ScriptController.cpp |
@@ -46,7 +46,7 @@ |
#include "bindings/core/v8/V8PerContextData.h" |
#include "bindings/core/v8/V8ScriptRunner.h" |
#include "bindings/core/v8/V8Window.h" |
-#include "bindings/core/v8/V8WindowShell.h" |
+#include "bindings/core/v8/WindowProxy.h" |
#include "bindings/core/v8/npruntime_impl.h" |
#include "bindings/core/v8/npruntime_priv.h" |
#include "core/dom/Document.h" |
@@ -94,15 +94,15 @@ ScriptController::ScriptController(LocalFrame* frame) |
: m_frame(frame) |
, m_sourceURL(0) |
, m_isolate(v8::Isolate::GetCurrent()) |
- , m_windowShell(V8WindowShell::create(frame, DOMWrapperWorld::mainWorld(), m_isolate)) |
+ , m_windowProxy(WindowProxy::create(frame, DOMWrapperWorld::mainWorld(), m_isolate)) |
, m_windowScriptNPObject(0) |
{ |
} |
ScriptController::~ScriptController() |
{ |
- // V8WindowShell::clearForClose() must be invoked before destruction starts. |
- ASSERT(!m_windowShell->isContextInitialized()); |
+ // WindowProxy::clearForClose() must be invoked before destruction starts. |
+ ASSERT(!m_windowProxy->isContextInitialized()); |
} |
void ScriptController::clearScriptObjects() |
@@ -128,7 +128,7 @@ void ScriptController::clearScriptObjects() |
void ScriptController::clearForClose() |
{ |
double start = currentTime(); |
- m_windowShell->clearForClose(); |
+ m_windowProxy->clearForClose(); |
for (IsolatedWorldMap::iterator iter = m_isolatedWorlds.begin(); iter != m_isolatedWorlds.end(); ++iter) |
iter->value->clearForClose(); |
blink::Platform::current()->histogramCustomCounts("WebCore.ScriptController.clearForClose", (currentTime() - start) * 1000, 0, 10000, 50); |
@@ -136,7 +136,7 @@ void ScriptController::clearForClose() |
void ScriptController::updateSecurityOrigin(SecurityOrigin* origin) |
{ |
- m_windowShell->updateSecurityOrigin(origin); |
+ m_windowProxy->updateSecurityOrigin(origin); |
} |
v8::Local<v8::Value> ScriptController::callFunction(v8::Handle<v8::Function> function, v8::Handle<v8::Value> receiver, int argc, v8::Handle<v8::Value> info[]) |
@@ -202,15 +202,15 @@ v8::Local<v8::Value> ScriptController::executeScriptAndReturnValue(v8::Handle<v8 |
bool ScriptController::initializeMainWorld() |
{ |
- if (m_windowShell->isContextInitialized()) |
+ if (m_windowProxy->isContextInitialized()) |
return false; |
- return windowShell(DOMWrapperWorld::mainWorld())->isContextInitialized(); |
+ return windowProxy(DOMWrapperWorld::mainWorld())->isContextInitialized(); |
} |
-V8WindowShell* ScriptController::existingWindowShell(DOMWrapperWorld& world) |
+WindowProxy* ScriptController::existingWindowProxy(DOMWrapperWorld& world) |
{ |
if (world.isMainWorld()) |
- return m_windowShell->isContextInitialized() ? m_windowShell.get() : 0; |
+ return m_windowProxy->isContextInitialized() ? m_windowProxy.get() : 0; |
IsolatedWorldMap::iterator iter = m_isolatedWorlds.find(world.worldId()); |
if (iter == m_isolatedWorlds.end()) |
@@ -218,24 +218,24 @@ V8WindowShell* ScriptController::existingWindowShell(DOMWrapperWorld& world) |
return iter->value->isContextInitialized() ? iter->value.get() : 0; |
} |
-V8WindowShell* ScriptController::windowShell(DOMWrapperWorld& world) |
+WindowProxy* ScriptController::windowProxy(DOMWrapperWorld& world) |
{ |
- V8WindowShell* shell = 0; |
+ WindowProxy* windowProxy = 0; |
if (world.isMainWorld()) { |
- shell = m_windowShell.get(); |
+ windowProxy = m_windowProxy.get(); |
} else { |
IsolatedWorldMap::iterator iter = m_isolatedWorlds.find(world.worldId()); |
if (iter != m_isolatedWorlds.end()) { |
- shell = iter->value.get(); |
+ windowProxy = iter->value.get(); |
} else { |
- OwnPtr<V8WindowShell> isolatedWorldShell = V8WindowShell::create(m_frame, world, m_isolate); |
- shell = isolatedWorldShell.get(); |
- m_isolatedWorlds.set(world.worldId(), isolatedWorldShell.release()); |
+ OwnPtr<WindowProxy> isolatedWorldWindowProxy = WindowProxy::create(m_frame, world, m_isolate); |
+ windowProxy = isolatedWorldWindowProxy.get(); |
+ m_isolatedWorlds.set(world.worldId(), isolatedWorldWindowProxy.release()); |
} |
} |
- if (!shell->isContextInitialized() && shell->initializeIfNeeded() && world.isMainWorld()) |
+ if (!windowProxy->isContextInitialized() && windowProxy->initializeIfNeeded() && world.isMainWorld()) |
m_frame->loader().dispatchDidClearWindowObjectInMainWorld(); |
- return shell; |
+ return windowProxy; |
} |
bool ScriptController::shouldBypassMainWorldCSP() |
@@ -271,18 +271,18 @@ void ScriptController::bindToWindowObject(LocalFrame* frame, const String& key, |
void ScriptController::enableEval() |
{ |
- if (!m_windowShell->isContextInitialized()) |
+ if (!m_windowProxy->isContextInitialized()) |
return; |
v8::HandleScope handleScope(m_isolate); |
- m_windowShell->context()->AllowCodeGenerationFromStrings(true); |
+ m_windowProxy->context()->AllowCodeGenerationFromStrings(true); |
} |
void ScriptController::disableEval(const String& errorMessage) |
{ |
- if (!m_windowShell->isContextInitialized()) |
+ if (!m_windowProxy->isContextInitialized()) |
return; |
v8::HandleScope handleScope(m_isolate); |
- v8::Local<v8::Context> v8Context = m_windowShell->context(); |
+ v8::Local<v8::Context> v8Context = m_windowProxy->context(); |
v8Context->AllowCodeGenerationFromStrings(false); |
v8Context->SetErrorMessageForCodeGenerationFromStrings(v8String(m_isolate, errorMessage)); |
} |
@@ -416,19 +416,19 @@ NPObject* ScriptController::createScriptObjectForPluginElement(HTMLPlugInElement |
return npCreateV8ScriptObject(0, v8::Handle<v8::Object>::Cast(v8plugin), window, scriptState->isolate()); |
} |
-void ScriptController::clearWindowShell() |
+void ScriptController::clearWindowProxy() |
{ |
double start = currentTime(); |
- // V8 binding expects ScriptController::clearWindowShell only be called |
+ // V8 binding expects ScriptController::clearWindowProxy only be called |
// when a frame is loading a new page. This creates a new context for the new page. |
// The V8 context must be available for |clearScriptObjects()|. |
// The below call must be before |clearForNavigation()| which disposes the V8 context. |
clearScriptObjects(); |
- m_windowShell->clearForNavigation(); |
+ m_windowProxy->clearForNavigation(); |
for (IsolatedWorldMap::iterator iter = m_isolatedWorlds.begin(); iter != m_isolatedWorlds.end(); ++iter) |
iter->value->clearForNavigation(); |
- blink::Platform::current()->histogramCustomCounts("WebCore.ScriptController.clearWindowShell", (currentTime() - start) * 1000, 0, 10000, 50); |
+ blink::Platform::current()->histogramCustomCounts("WebCore.ScriptController.clearWindowProxy", (currentTime() - start) * 1000, 0, 10000, 50); |
} |
void ScriptController::setCaptureCallStackForUncaughtExceptions(bool value) |
@@ -439,13 +439,13 @@ void ScriptController::setCaptureCallStackForUncaughtExceptions(bool value) |
void ScriptController::collectIsolatedContexts(Vector<std::pair<ScriptState*, SecurityOrigin*> >& result) |
{ |
for (IsolatedWorldMap::iterator it = m_isolatedWorlds.begin(); it != m_isolatedWorlds.end(); ++it) { |
- V8WindowShell* isolatedWorldShell = it->value.get(); |
- SecurityOrigin* origin = isolatedWorldShell->world().isolatedWorldSecurityOrigin(); |
+ WindowProxy* isolatedWorldWindowProxy = it->value.get(); |
+ SecurityOrigin* origin = isolatedWorldWindowProxy->world().isolatedWorldSecurityOrigin(); |
if (!origin) |
continue; |
- if (!isolatedWorldShell->isContextInitialized()) |
+ if (!isolatedWorldWindowProxy->isContextInitialized()) |
continue; |
- result.append(std::pair<ScriptState*, SecurityOrigin*>(isolatedWorldShell->scriptState(), origin)); |
+ result.append(std::pair<ScriptState*, SecurityOrigin*>(isolatedWorldWindowProxy->scriptState(), origin)); |
} |
} |
@@ -453,40 +453,40 @@ void ScriptController::setWorldDebugId(int worldId, int debuggerId) |
{ |
ASSERT(debuggerId > 0); |
bool isMainWorld = worldId == MainWorldId; |
- V8WindowShell* shell = 0; |
+ WindowProxy* windowProxy = 0; |
if (isMainWorld) { |
- shell = m_windowShell.get(); |
+ windowProxy = m_windowProxy.get(); |
} else { |
IsolatedWorldMap::iterator iter = m_isolatedWorlds.find(worldId); |
if (iter != m_isolatedWorlds.end()) |
- shell = iter->value.get(); |
+ windowProxy = iter->value.get(); |
} |
- if (!shell || !shell->isContextInitialized()) |
+ if (!windowProxy || !windowProxy->isContextInitialized()) |
return; |
v8::HandleScope scope(m_isolate); |
- v8::Local<v8::Context> context = shell->context(); |
+ v8::Local<v8::Context> context = windowProxy->context(); |
const char* worldName = isMainWorld ? "page" : "injected"; |
V8PerContextDebugData::setContextDebugData(context, worldName, debuggerId); |
} |
void ScriptController::updateDocument() |
{ |
- // For an uninitialized main window shell, do not incur the cost of context initialization. |
- if (!m_windowShell->isGlobalInitialized()) |
+ // For an uninitialized main window windowProxy, do not incur the cost of context initialization. |
+ if (!m_windowProxy->isGlobalInitialized()) |
return; |
if (!initializeMainWorld()) |
- windowShell(DOMWrapperWorld::mainWorld())->updateDocument(); |
+ windowProxy(DOMWrapperWorld::mainWorld())->updateDocument(); |
} |
void ScriptController::namedItemAdded(HTMLDocument* doc, const AtomicString& name) |
{ |
- windowShell(DOMWrapperWorld::mainWorld())->namedItemAdded(doc, name); |
+ windowProxy(DOMWrapperWorld::mainWorld())->namedItemAdded(doc, name); |
} |
void ScriptController::namedItemRemoved(HTMLDocument* doc, const AtomicString& name) |
{ |
- windowShell(DOMWrapperWorld::mainWorld())->namedItemRemoved(doc, name); |
+ windowProxy(DOMWrapperWorld::mainWorld())->namedItemRemoved(doc, name); |
} |
static bool isInPrivateScriptIsolateWorld(v8::Isolate* isolate) |
@@ -622,11 +622,11 @@ void ScriptController::executeScriptInIsolatedWorld(int worldID, const Vector<Sc |
ASSERT(worldID > 0); |
RefPtr<DOMWrapperWorld> world = DOMWrapperWorld::ensureIsolatedWorld(worldID, extensionGroup); |
- V8WindowShell* isolatedWorldShell = windowShell(*world); |
- if (!isolatedWorldShell->isContextInitialized()) |
+ WindowProxy* isolatedWorldWindowProxy = windowProxy(*world); |
+ if (!isolatedWorldWindowProxy->isContextInitialized()) |
return; |
- ScriptState* scriptState = isolatedWorldShell->scriptState(); |
+ ScriptState* scriptState = isolatedWorldWindowProxy->scriptState(); |
v8::EscapableHandleScope handleScope(scriptState->isolate()); |
ScriptState::Scope scope(scriptState); |
v8::Local<v8::Array> resultArray = v8::Array::New(m_isolate, sources.size()); |