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/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 2137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2148 // If the view is gone, then this RenderViewHost died while it was hidden. | 2148 // If the view is gone, then this RenderViewHost died while it was hidden. |
2149 // We ignored the RenderProcessGone call at the time, so we should send it | 2149 // We ignored the RenderProcessGone call at the time, so we should send it |
2150 // now to make sure the sad tab shows up, etc. | 2150 // now to make sure the sad tab shows up, etc. |
2151 DCHECK(!render_frame_host_->IsRenderFrameLive()); | 2151 DCHECK(!render_frame_host_->IsRenderFrameLive()); |
2152 DCHECK(!render_frame_host_->render_view_host()->IsRenderViewLive()); | 2152 DCHECK(!render_frame_host_->render_view_host()->IsRenderViewLive()); |
2153 render_frame_host_->ResetLoadingState(); | 2153 render_frame_host_->ResetLoadingState(); |
2154 delegate_->RenderProcessGoneFromRenderManager( | 2154 delegate_->RenderProcessGoneFromRenderManager( |
2155 render_frame_host_->render_view_host()); | 2155 render_frame_host_->render_view_host()); |
2156 } | 2156 } |
2157 | 2157 |
2158 // For top-level frames, also hide the old RenderViewHost's view. | |
2159 // TODO(creis): As long as show/hide are on RVH, we don't want to hide on | |
2160 // subframe navigations or we will interfere with the top-level frame. | |
2161 if (is_main_frame && | |
2162 old_render_frame_host->render_view_host()->GetWidget()->GetView()) { | |
2163 old_render_frame_host->render_view_host()->GetWidget()->GetView()->Hide(); | |
2164 } | |
2165 | |
2166 // Make sure the size is up to date. (Fix for bug 1079768.) | 2158 // Make sure the size is up to date. (Fix for bug 1079768.) |
2167 delegate_->UpdateRenderViewSizeForRenderManager(); | 2159 delegate_->UpdateRenderViewSizeForRenderManager(); |
2168 | 2160 |
2169 if (will_focus_location_bar) { | 2161 if (will_focus_location_bar) { |
2170 delegate_->SetFocusToLocationBar(false); | 2162 delegate_->SetFocusToLocationBar(false); |
2171 } else if (focus_render_view && render_frame_host_->GetView()) { | 2163 } else if (focus_render_view && render_frame_host_->GetView()) { |
2172 if (is_main_frame) { | 2164 if (is_main_frame) { |
2173 render_frame_host_->GetView()->Focus(); | 2165 render_frame_host_->GetView()->Focus(); |
2174 } else { | 2166 } else { |
2175 // The main frame's view is already focused, but we need to set | 2167 // The main frame's view is already focused, but we need to set |
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2709 resolved_url)) { | 2701 resolved_url)) { |
2710 DCHECK(!dest_instance || | 2702 DCHECK(!dest_instance || |
2711 dest_instance == render_frame_host_->GetSiteInstance()); | 2703 dest_instance == render_frame_host_->GetSiteInstance()); |
2712 return false; | 2704 return false; |
2713 } | 2705 } |
2714 | 2706 |
2715 return true; | 2707 return true; |
2716 } | 2708 } |
2717 | 2709 |
2718 } // namespace content | 2710 } // namespace content |
OLD | NEW |