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

Side by Side Diff: content/browser/frame_host/frame_tree_node.cc

Issue 1307013004: Propagate scrolling/marginwidth/marginheight property values to child frame. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: content_unittests compile fix 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium 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 #include "content/browser/frame_host/frame_tree_node.h" 5 #include "content/browser/frame_host/frame_tree_node.h"
6 6
7 #include <queue> 7 #include <queue>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/profiler/scoped_tracker.h" 10 #include "base/profiler/scoped_tracker.h"
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 int FrameTreeNode::next_frame_tree_node_id_ = 1; 60 int FrameTreeNode::next_frame_tree_node_id_ = 1;
61 61
62 // static 62 // static
63 FrameTreeNode* FrameTreeNode::GloballyFindByID(int frame_tree_node_id) { 63 FrameTreeNode* FrameTreeNode::GloballyFindByID(int frame_tree_node_id) {
64 DCHECK_CURRENTLY_ON(BrowserThread::UI); 64 DCHECK_CURRENTLY_ON(BrowserThread::UI);
65 FrameTreeNodeIDMap* nodes = g_frame_tree_node_id_map.Pointer(); 65 FrameTreeNodeIDMap* nodes = g_frame_tree_node_id_map.Pointer();
66 FrameTreeNodeIDMap::iterator it = nodes->find(frame_tree_node_id); 66 FrameTreeNodeIDMap::iterator it = nodes->find(frame_tree_node_id);
67 return it == nodes->end() ? nullptr : it->second; 67 return it == nodes->end() ? nullptr : it->second;
68 } 68 }
69 69
70 FrameTreeNode::FrameTreeNode(FrameTree* frame_tree, 70 FrameTreeNode::FrameTreeNode(
71 Navigator* navigator, 71 FrameTree* frame_tree,
72 RenderFrameHostDelegate* render_frame_delegate, 72 Navigator* navigator,
73 RenderViewHostDelegate* render_view_delegate, 73 RenderFrameHostDelegate* render_frame_delegate,
74 RenderWidgetHostDelegate* render_widget_delegate, 74 RenderViewHostDelegate* render_view_delegate,
75 RenderFrameHostManager::Delegate* manager_delegate, 75 RenderWidgetHostDelegate* render_widget_delegate,
76 blink::WebTreeScopeType scope, 76 RenderFrameHostManager::Delegate* manager_delegate,
77 const std::string& name, 77 blink::WebTreeScopeType scope,
78 blink::WebSandboxFlags sandbox_flags) 78 const std::string& name,
79 blink::WebSandboxFlags sandbox_flags,
80 const blink::WebFrameOwnerProperties& frame_owner_properties)
79 : frame_tree_(frame_tree), 81 : frame_tree_(frame_tree),
80 navigator_(navigator), 82 navigator_(navigator),
81 render_manager_(this, 83 render_manager_(this,
82 render_frame_delegate, 84 render_frame_delegate,
83 render_view_delegate, 85 render_view_delegate,
84 render_widget_delegate, 86 render_widget_delegate,
85 manager_delegate), 87 manager_delegate),
86 frame_tree_node_id_(next_frame_tree_node_id_++), 88 frame_tree_node_id_(next_frame_tree_node_id_++),
87 parent_(NULL), 89 parent_(NULL),
88 opener_(nullptr), 90 opener_(nullptr),
89 opener_observer_(nullptr), 91 opener_observer_(nullptr),
90 has_committed_real_load_(false), 92 has_committed_real_load_(false),
91 replication_state_(scope, name, sandbox_flags), 93 replication_state_(scope, name, sandbox_flags),
92 // Effective sandbox flags also need to be set, since initial sandbox 94 // Effective sandbox flags also need to be set, since initial sandbox
93 // flags should apply to the initial empty document in the frame. 95 // flags should apply to the initial empty document in the frame.
94 effective_sandbox_flags_(sandbox_flags), 96 effective_sandbox_flags_(sandbox_flags),
97 frame_owner_properties_(frame_owner_properties),
95 loading_progress_(kLoadingProgressNotStarted) { 98 loading_progress_(kLoadingProgressNotStarted) {
96 std::pair<FrameTreeNodeIDMap::iterator, bool> result = 99 std::pair<FrameTreeNodeIDMap::iterator, bool> result =
97 g_frame_tree_node_id_map.Get().insert( 100 g_frame_tree_node_id_map.Get().insert(
98 std::make_pair(frame_tree_node_id_, this)); 101 std::make_pair(frame_tree_node_id_, this));
99 CHECK(result.second); 102 CHECK(result.second);
100 } 103 }
101 104
102 FrameTreeNode::~FrameTreeNode() { 105 FrameTreeNode::~FrameTreeNode() {
103 frame_tree_->FrameRemoved(this); 106 frame_tree_->FrameRemoved(this);
104 FOR_EACH_OBSERVER(Observer, observers_, OnFrameTreeNodeDestroyed(this)); 107 FOR_EACH_OBSERVER(Observer, observers_, OnFrameTreeNodeDestroyed(this));
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 // TODO(nasko): see if child frames should send IPCs in site-per-process 380 // TODO(nasko): see if child frames should send IPCs in site-per-process
378 // mode. 381 // mode.
379 if (!IsMainFrame()) 382 if (!IsMainFrame())
380 return true; 383 return true;
381 384
382 render_manager_.Stop(); 385 render_manager_.Stop();
383 return true; 386 return true;
384 } 387 }
385 388
386 } // namespace content 389 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/frame_tree_node.h ('k') | content/browser/frame_host/frame_tree_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698