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

Unified Diff: Source/core/inspector/InspectorPageAgent.cpp

Issue 898593002: DevTools: use per-LocalFrame instrumenting agents instead of per-Page ones. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 11 months 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/inspector/InspectorPageAgent.cpp
diff --git a/Source/core/inspector/InspectorPageAgent.cpp b/Source/core/inspector/InspectorPageAgent.cpp
index 076da51099406fa7aa744e7abf7e9511ef5adc72..0d620d11ae9c6a6b15f8940507bc35d2b163a119 100644
--- a/Source/core/inspector/InspectorPageAgent.cpp
+++ b/Source/core/inspector/InspectorPageAgent.cpp
@@ -588,13 +588,12 @@ void InspectorPageAgent::reload(ErrorString*, const bool* const optionalIgnoreCa
{
m_pendingScriptToEvaluateOnLoadOnce = optionalScriptToEvaluateOnLoad ? *optionalScriptToEvaluateOnLoad : "";
m_pendingScriptPreprocessor = optionalScriptPreprocessor ? *optionalScriptPreprocessor : "";
- m_page->mainFrame()->reload(asBool(optionalIgnoreCache) ? EndToEndReload : NormalReload, NotClientRedirect);
+ mainFrame()->reload(asBool(optionalIgnoreCache) ? EndToEndReload : NormalReload, NotClientRedirect);
}
void InspectorPageAgent::navigate(ErrorString*, const String& url, String* outFrameId)
{
- LocalFrame* frame = m_page->deprecatedLocalMainFrame();
- *outFrameId = frameId(frame);
+ *outFrameId = frameId(mainFrame());
}
static PassRefPtr<TypeBuilder::Page::Cookie> buildObjectForCookie(const Cookie& cookie)
@@ -722,7 +721,7 @@ void InspectorPageAgent::getCookies(ErrorString*, RefPtr<TypeBuilder::Array<Type
void InspectorPageAgent::deleteCookie(ErrorString*, const String& cookieName, const String& url)
{
KURL parsedURL(ParsedURLString, url);
- for (Frame* frame = m_page->mainFrame(); frame; frame = frame->tree().traverseNext(m_page->mainFrame())) {
+ for (Frame* frame = mainFrame(); frame; frame = frame->tree().traverseNext(mainFrame())) {
if (frame->isLocalFrame())
blink::deleteCookie(toLocalFrame(frame)->document(), parsedURL, cookieName);
}
@@ -730,7 +729,7 @@ void InspectorPageAgent::deleteCookie(ErrorString*, const String& cookieName, co
void InspectorPageAgent::getResourceTree(ErrorString*, RefPtr<TypeBuilder::Page::FrameResourceTree>& object)
{
- object = buildObjectForFrameTree(m_page->deprecatedLocalMainFrame());
+ object = buildObjectForFrameTree(mainFrame());
}
void InspectorPageAgent::getResourceContentAfterResourcesContentLoaded(const String& frameId, const String& url, PassRefPtrWillBeRawPtr<GetResourceContentCallback> callback)
@@ -909,7 +908,7 @@ void InspectorPageAgent::setShowPaintRects(ErrorString*, bool show)
m_state->setBoolean(PageAgentState::pageAgentShowPaintRects, show);
m_client->setShowPaintRects(show);
- if (!show && mainFrame() && mainFrame()->view())
+ if (!show && mainFrame() && mainFrame()->isMainFrame() && mainFrame()->view())
mainFrame()->view()->invalidate();
}
@@ -999,24 +998,21 @@ void InspectorPageAgent::didClearDocumentOfWindowObject(LocalFrame* frame)
void InspectorPageAgent::domContentLoadedEventFired(LocalFrame* frame)
{
- if (!frame->isMainFrame())
+ if (frame != mainFrame())
return;
m_frontend->domContentEventFired(currentTime());
}
void InspectorPageAgent::loadEventFired(LocalFrame* frame)
{
- if (!frame->isMainFrame())
+ if (frame != mainFrame())
return;
m_frontend->loadEventFired(currentTime());
}
void InspectorPageAgent::didCommitLoad(LocalFrame*, DocumentLoader* loader)
{
- // FIXME: If "frame" is always guaranteed to be in the same Page as loader->frame()
- // then all we need to check here is loader->frame()->isMainFrame()
- // and we don't need "frame" at all.
- if (loader->frame() == m_page->mainFrame()) {
+ if (loader->frame() == mainFrame()) {
m_scriptToEvaluateOnLoadOnce = m_pendingScriptToEvaluateOnLoadOnce;
m_scriptPreprocessorSource = m_pendingScriptPreprocessor;
m_pendingScriptToEvaluateOnLoadOnce = String();
@@ -1046,6 +1042,11 @@ void InspectorPageAgent::frameDetachedFromParent(LocalFrame* frame)
}
}
+FrameHost* InspectorPageAgent::frameHost()
+{
+ return &m_page->frameHost();
+}
+
LocalFrame* InspectorPageAgent::mainFrame()
{
return m_page->deprecatedLocalMainFrame();
@@ -1088,8 +1089,7 @@ String InspectorPageAgent::loaderId(DocumentLoader* loader)
LocalFrame* InspectorPageAgent::findFrameWithSecurityOrigin(const String& originRawString)
{
- for (Frame* frame = m_page->mainFrame(); frame; frame = frame->tree().traverseNext()) {
- // FIXME: RemoteFrame security origins are not yet available.
+ for (Frame* frame = mainFrame(); frame; frame = frame->tree().traverseNext(mainFrame())) {
if (!frame->isLocalFrame())
continue;
RefPtr<SecurityOrigin> documentOrigin = toLocalFrame(frame)->document()->securityOrigin();
@@ -1217,10 +1217,10 @@ void InspectorPageAgent::didScroll()
void InspectorPageAgent::viewportChanged()
{
- if (!m_enabled || !m_deviceMetricsOverridden)
+ if (!m_enabled || !m_deviceMetricsOverridden || !mainFrame()->isMainFrame())
return;
- IntSize contentsSize = m_page->deprecatedLocalMainFrame()->view()->contentsSize();
- IntRect viewRect = m_page->deprecatedLocalMainFrame()->view()->visibleContentRect();
+ IntSize contentsSize = mainFrame()->view()->contentsSize();
+ IntRect viewRect = mainFrame()->view()->visibleContentRect();
RefPtr<TypeBuilder::Page::Viewport> viewport = TypeBuilder::Page::Viewport::create()
.setScrollX(viewRect.x())
.setScrollY(viewRect.y())
@@ -1234,6 +1234,8 @@ void InspectorPageAgent::viewportChanged()
void InspectorPageAgent::didResizeMainFrame()
{
+ if (!mainFrame()->isMainFrame())
yurys 2015/02/03 06:44:00 How can main frame be not not main frame?
pfeldman 2015/02/03 07:09:16 That is the largest controversy of this change. ma
+ return;
#if !OS(ANDROID)
if (m_enabled && m_state->getBoolean(PageAgentState::showSizeOnResize))
m_overlay->showAndHideViewSize(m_state->getBoolean(PageAgentState::showGridOnResize));
@@ -1346,6 +1348,8 @@ void InspectorPageAgent::updateViewMetrics(bool enabled, int width, int height,
{
if (enabled && !m_page->settings().acceleratedCompositingEnabled())
return;
+ if (!mainFrame()->isMainFrame())
+ return;
m_deviceMetricsOverridden = enabled;
m_emulateMobileEnabled = mobile;
@@ -1377,6 +1381,8 @@ void InspectorPageAgent::updateViewMetrics(bool enabled, int width, int height,
void InspectorPageAgent::updateTouchEventEmulationInPage(bool enabled)
{
+ if (!mainFrame()->isMainFrame())
+ return;
if (!m_touchEmulationEnabled) {
m_originalTouchEnabled = RuntimeEnabledFeatures::touchEnabled();
m_originalDeviceSupportsMouse = m_page->settings().deviceSupportsMouse();
@@ -1392,7 +1398,7 @@ void InspectorPageAgent::updateTouchEventEmulationInPage(bool enabled)
}
m_touchEmulationEnabled = enabled;
m_client->setTouchEventEmulationEnabled(enabled);
- m_page->deprecatedLocalMainFrame()->view()->layout();
+ mainFrame()->view()->layout();
}
void InspectorPageAgent::setTouchEmulationEnabled(ErrorString*, bool enabled, const String* configuration)
@@ -1406,14 +1412,14 @@ void InspectorPageAgent::setTouchEmulationEnabled(ErrorString*, bool enabled, co
void InspectorPageAgent::setEmulatedMedia(ErrorString*, const String& media)
{
+ if (!mainFrame()->isMainFrame())
+ return;
String currentMedia = m_state->getString(PageAgentState::pageAgentEmulatedMedia);
if (media == currentMedia)
return;
m_state->setString(PageAgentState::pageAgentEmulatedMedia, media);
- Document* document = 0;
- if (m_page->mainFrame())
- document = m_page->deprecatedLocalMainFrame()->document();
+ Document* document = mainFrame()->document();
if (document) {
document->mediaQueryAffectingValueChanged();
document->styleResolverChanged();
@@ -1474,12 +1480,12 @@ void InspectorPageAgent::setOverlayMessage(ErrorString*, const String* message)
void InspectorPageAgent::animationsPlaybackRate(ErrorString*, double* playbackRate)
{
- *playbackRate = toLocalFrame(m_page->mainFrame())->document()->timeline().playbackRate();
+ *playbackRate = mainFrame()->document()->timeline().playbackRate();
}
void InspectorPageAgent::setAnimationsPlaybackRate(ErrorString*, double playbackRate)
{
- for (Frame* frame = m_page->mainFrame(); frame; frame = frame->tree().traverseNext()) {
+ for (Frame* frame = mainFrame(); frame; frame = frame->tree().traverseNext(mainFrame())) {
if (frame->isLocalFrame())
toLocalFrame(frame)->document()->timeline().setPlaybackRate(playbackRate);
}

Powered by Google App Engine
This is Rietveld 408576698