OLD | NEW |
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.h" | 5 #include "content/browser/frame_host/frame_tree.h" |
6 | 6 |
7 #include <queue> | 7 #include <queue> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 // Create the swapped out RVH for the new SiteInstance. This will create | 237 // Create the swapped out RVH for the new SiteInstance. This will create |
238 // a top-level swapped out RFH as well, which will then be wrapped by a | 238 // a top-level swapped out RFH as well, which will then be wrapped by a |
239 // RenderFrameProxyHost. | 239 // RenderFrameProxyHost. |
240 if (!source || !source->IsMainFrame()) { | 240 if (!source || !source->IsMainFrame()) { |
241 RenderViewHostImpl* render_view_host = GetRenderViewHost(site_instance); | 241 RenderViewHostImpl* render_view_host = GetRenderViewHost(site_instance); |
242 if (!render_view_host) { | 242 if (!render_view_host) { |
243 if (SiteIsolationPolicy::IsSwappedOutStateForbidden()) { | 243 if (SiteIsolationPolicy::IsSwappedOutStateForbidden()) { |
244 root()->render_manager()->CreateRenderFrameProxy(site_instance); | 244 root()->render_manager()->CreateRenderFrameProxy(site_instance); |
245 } else { | 245 } else { |
246 root()->render_manager()->CreateRenderFrame( | 246 root()->render_manager()->CreateRenderFrame( |
247 site_instance, CREATE_RF_SWAPPED_OUT | CREATE_RF_HIDDEN, nullptr); | 247 site_instance, nullptr, CREATE_RF_SWAPPED_OUT | CREATE_RF_HIDDEN, |
| 248 nullptr); |
248 } | 249 } |
249 } else { | 250 } else { |
250 root()->render_manager()->EnsureRenderViewInitialized(render_view_host, | 251 root()->render_manager()->EnsureRenderViewInitialized(render_view_host, |
251 site_instance); | 252 site_instance); |
252 } | 253 } |
253 } | 254 } |
254 | 255 |
255 scoped_refptr<SiteInstance> instance(site_instance); | 256 scoped_refptr<SiteInstance> instance(site_instance); |
256 | 257 |
257 // Proxies are created in the FrameTree in response to a node navigating to a | 258 // Proxies are created in the FrameTree in response to a node navigating to a |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
440 // This is only used to set page-level focus in cross-process subframes, and | 441 // This is only used to set page-level focus in cross-process subframes, and |
441 // requests to set focus in main frame's SiteInstance are ignored. | 442 // requests to set focus in main frame's SiteInstance are ignored. |
442 if (instance != root_manager->current_frame_host()->GetSiteInstance()) { | 443 if (instance != root_manager->current_frame_host()->GetSiteInstance()) { |
443 RenderFrameProxyHost* proxy = | 444 RenderFrameProxyHost* proxy = |
444 root_manager->GetRenderFrameProxyHost(instance); | 445 root_manager->GetRenderFrameProxyHost(instance); |
445 proxy->Send(new InputMsg_SetFocus(proxy->GetRoutingID(), is_focused)); | 446 proxy->Send(new InputMsg_SetFocus(proxy->GetRoutingID(), is_focused)); |
446 } | 447 } |
447 } | 448 } |
448 | 449 |
449 } // namespace content | 450 } // namespace content |
OLD | NEW |