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

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

Issue 1801783003: Remove the CREATE_RF_SWAPPED_OUT flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 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 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/render_frame_host_manager.h" 5 #include "content/browser/frame_host/render_frame_host_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <utility> 10 #include <utility>
(...skipping 1492 matching lines...) Expand 10 before | Expand all | Expand 10 after
1503 1503
1504 scoped_ptr<RenderFrameHostImpl> RenderFrameHostManager::CreateRenderFrameHost( 1504 scoped_ptr<RenderFrameHostImpl> RenderFrameHostManager::CreateRenderFrameHost(
1505 SiteInstance* site_instance, 1505 SiteInstance* site_instance,
1506 int32_t view_routing_id, 1506 int32_t view_routing_id,
1507 int32_t frame_routing_id, 1507 int32_t frame_routing_id,
1508 int32_t widget_routing_id, 1508 int32_t widget_routing_id,
1509 int flags) { 1509 int flags) {
1510 if (frame_routing_id == MSG_ROUTING_NONE) 1510 if (frame_routing_id == MSG_ROUTING_NONE)
1511 frame_routing_id = site_instance->GetProcess()->GetNextRoutingID(); 1511 frame_routing_id = site_instance->GetProcess()->GetNextRoutingID();
1512 1512
1513 bool swapped_out = !!(flags & CREATE_RF_SWAPPED_OUT);
1514 bool hidden = !!(flags & CREATE_RF_HIDDEN); 1513 bool hidden = !!(flags & CREATE_RF_HIDDEN);
1515 1514
1516 // Create a RVH for main frames, or find the existing one for subframes. 1515 // Create a RVH for main frames, or find the existing one for subframes.
1517 FrameTree* frame_tree = frame_tree_node_->frame_tree(); 1516 FrameTree* frame_tree = frame_tree_node_->frame_tree();
1518 RenderViewHostImpl* render_view_host = nullptr; 1517 RenderViewHostImpl* render_view_host = nullptr;
1519 if (frame_tree_node_->IsMainFrame()) { 1518 if (frame_tree_node_->IsMainFrame()) {
1520 render_view_host = frame_tree->CreateRenderViewHost( 1519 render_view_host = frame_tree->CreateRenderViewHost(
1521 site_instance, view_routing_id, frame_routing_id, swapped_out, hidden); 1520 site_instance, view_routing_id, frame_routing_id, false, hidden);
1522 // TODO(avi): It's a bit bizarre that this logic lives here instead of in 1521 // TODO(avi): It's a bit bizarre that this logic lives here instead of in
1523 // CreateRenderFrame(). It turns out that FrameTree::CreateRenderViewHost 1522 // CreateRenderFrame(). It turns out that FrameTree::CreateRenderViewHost
1524 // doesn't /always/ create a new RenderViewHost. It first tries to find an 1523 // doesn't /always/ create a new RenderViewHost. It first tries to find an
1525 // already existing one to reuse by a SiteInstance lookup. If it finds one, 1524 // already existing one to reuse by a SiteInstance lookup. If it finds one,
1526 // then the supplied routing IDs are completely ignored. 1525 // then the supplied routing IDs are completely ignored.
1527 // CreateRenderFrame() could do this lookup too, but it seems redundant to 1526 // CreateRenderFrame() could do this lookup too, but it seems redundant to
1528 // do this lookup in two places. This is a good yak shave to clean up, or, 1527 // do this lookup in two places. This is a good yak shave to clean up, or,
1529 // if just ignored, should be an easy cleanup once RenderViewHostImpl has-a 1528 // if just ignored, should be an easy cleanup once RenderViewHostImpl has-a
1530 // RenderWidgetHostImpl. https://crbug.com/545684 1529 // RenderWidgetHostImpl. https://crbug.com/545684
1531 if (view_routing_id == MSG_ROUTING_NONE) { 1530 if (view_routing_id == MSG_ROUTING_NONE) {
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1566 speculative_render_frame_host_ = 1565 speculative_render_frame_host_ =
1567 CreateRenderFrame(new_instance, create_render_frame_flags, nullptr); 1566 CreateRenderFrame(new_instance, create_render_frame_flags, nullptr);
1568 1567
1569 return !!speculative_render_frame_host_; 1568 return !!speculative_render_frame_host_;
1570 } 1569 }
1571 1570
1572 scoped_ptr<RenderFrameHostImpl> RenderFrameHostManager::CreateRenderFrame( 1571 scoped_ptr<RenderFrameHostImpl> RenderFrameHostManager::CreateRenderFrame(
1573 SiteInstance* instance, 1572 SiteInstance* instance,
1574 int flags, 1573 int flags,
1575 int* view_routing_id_ptr) { 1574 int* view_routing_id_ptr) {
1576 bool swapped_out = !!(flags & CREATE_RF_SWAPPED_OUT);
1577 int32_t widget_routing_id = MSG_ROUTING_NONE; 1575 int32_t widget_routing_id = MSG_ROUTING_NONE;
1578 RenderFrameProxyHost* proxy = GetRenderFrameProxyHost(instance); 1576 RenderFrameProxyHost* proxy = GetRenderFrameProxyHost(instance);
1579 1577
1580 CHECK(instance); 1578 CHECK(instance);
1581 CHECK(!swapped_out);
1582 CHECK(SiteIsolationPolicy::AreCrossProcessFramesPossible() || 1579 CHECK(SiteIsolationPolicy::AreCrossProcessFramesPossible() ||
1583 frame_tree_node_->IsMainFrame()); 1580 frame_tree_node_->IsMainFrame());
1584 1581
1585 // Swapped out views should always be hidden. 1582 // Swapped out views should always be hidden.
1586 DCHECK(!swapped_out || (flags & CREATE_RF_HIDDEN)); 1583 DCHECK(!(flags & CREATE_RF_HIDDEN));
alexmos 2016/03/14 16:57:20 Is this correct? Previously it basically had DCHE
nasko 2016/03/14 17:27:39 Done.
1587 1584
1588 scoped_ptr<RenderFrameHostImpl> new_render_frame_host; 1585 scoped_ptr<RenderFrameHostImpl> new_render_frame_host;
1589 bool success = true; 1586 bool success = true;
1590 if (view_routing_id_ptr) 1587 if (view_routing_id_ptr)
1591 *view_routing_id_ptr = MSG_ROUTING_NONE; 1588 *view_routing_id_ptr = MSG_ROUTING_NONE;
1592 1589
1593 // We are creating a pending, speculative or swapped out RFH here. We should 1590 // We are creating a pending, speculative or swapped out RFH here. We should
1594 // never create it in the same SiteInstance as our current RFH. 1591 // never create it in the same SiteInstance as our current RFH.
1595 CHECK_NE(render_frame_host_->GetSiteInstance(), instance); 1592 CHECK_NE(render_frame_host_->GetSiteInstance(), instance);
1596 1593
(...skipping 835 matching lines...) Expand 10 before | Expand all | Expand 10 after
2432 } else if (pending_render_frame_host_) { 2429 } else if (pending_render_frame_host_) {
2433 send_msg(pending_render_frame_host_.get(), 2430 send_msg(pending_render_frame_host_.get(),
2434 pending_render_frame_host_->GetRoutingID(), msg); 2431 pending_render_frame_host_->GetRoutingID(), msg);
2435 } 2432 }
2436 2433
2437 msg->set_routing_id(render_frame_host_->GetRoutingID()); 2434 msg->set_routing_id(render_frame_host_->GetRoutingID());
2438 render_frame_host_->Send(msg); 2435 render_frame_host_->Send(msg);
2439 } 2436 }
2440 2437
2441 } // namespace content 2438 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698