| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "content/renderer/frame_blame_context.h" |
| |
| #include "base/trace_event/trace_event_argument.h" |
| #include "content/renderer/render_frame_impl.h" |
| #include "content/renderer/top_level_blame_context.h" |
| #include "third_party/WebKit/public/platform/Platform.h" |
| #include "third_party/WebKit/public/web/WebLocalFrame.h" |
| |
| namespace content { |
| namespace { |
| |
| base::trace_event::BlameContext* GetParentBlameContext( |
| RenderFrameImpl* parent_frame) { |
| if (parent_frame) |
| return parent_frame->frameBlameContext(); |
| return blink::Platform::current()->topLevelBlameContext(); |
| } |
| |
| } // namespace |
| |
| const char kFrameBlameContextCategory[] = "blink"; |
| const char kFrameBlameContextName[] = "FrameBlameContext"; |
| const char kFrameBlameContextType[] = "RenderFrame"; |
| const char kFrameBlameContextScope[] = "RenderFrame"; |
| |
| FrameBlameContext::FrameBlameContext(RenderFrameImpl* render_frame, |
| RenderFrameImpl* parent_frame) |
| : base::trace_event::BlameContext(kFrameBlameContextCategory, |
| kFrameBlameContextName, |
| kFrameBlameContextType, |
| kFrameBlameContextScope, |
| render_frame->GetRoutingID(), |
| GetParentBlameContext(parent_frame)) {} |
| |
| FrameBlameContext::~FrameBlameContext() {} |
| |
| } // namespace content |