| 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/navigator_impl.h" | 5 #include "content/browser/frame_host/navigator_impl.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/metrics/histogram.h" | 9 #include "base/metrics/histogram.h" |
| 10 #include "base/time/time.h" | 10 #include "base/time/time.h" |
| (...skipping 657 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 668 if (!GetContentClient()->browser()->ShouldAllowOpenURL( | 668 if (!GetContentClient()->browser()->ShouldAllowOpenURL( |
| 669 current_site_instance, url)) { | 669 current_site_instance, url)) { |
| 670 dest_url = GURL(url::kAboutBlankURL); | 670 dest_url = GURL(url::kAboutBlankURL); |
| 671 } | 671 } |
| 672 | 672 |
| 673 int frame_tree_node_id = -1; | 673 int frame_tree_node_id = -1; |
| 674 | 674 |
| 675 // Send the navigation to the current FrameTreeNode if it's destined for a | 675 // Send the navigation to the current FrameTreeNode if it's destined for a |
| 676 // subframe in the current tab. We'll assume it's for the main frame | 676 // subframe in the current tab. We'll assume it's for the main frame |
| 677 // (possibly of a new or different WebContents) otherwise. | 677 // (possibly of a new or different WebContents) otherwise. |
| 678 if (SiteIsolationPolicy::AreCrossProcessFramesPossible() && | 678 if (SiteIsolationPolicy::UseSubframeNavigationEntries() && |
| 679 disposition == CURRENT_TAB && render_frame_host->GetParent()) { | 679 disposition == CURRENT_TAB && render_frame_host->GetParent()) { |
| 680 frame_tree_node_id = | 680 frame_tree_node_id = |
| 681 render_frame_host->frame_tree_node()->frame_tree_node_id(); | 681 render_frame_host->frame_tree_node()->frame_tree_node_id(); |
| 682 } | 682 } |
| 683 | 683 |
| 684 OpenURLParams params(dest_url, referrer, frame_tree_node_id, disposition, | 684 OpenURLParams params(dest_url, referrer, frame_tree_node_id, disposition, |
| 685 ui::PAGE_TRANSITION_LINK, | 685 ui::PAGE_TRANSITION_LINK, |
| 686 true /* is_renderer_initiated */); | 686 true /* is_renderer_initiated */); |
| 687 params.source_site_instance = source_site_instance; | 687 params.source_site_instance = source_site_instance; |
| 688 if (redirect_chain.size() > 0) | 688 if (redirect_chain.size() > 0) |
| (...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1105 if (pending_entry != controller_->GetVisibleEntry() || | 1105 if (pending_entry != controller_->GetVisibleEntry() || |
| 1106 !should_preserve_entry) { | 1106 !should_preserve_entry) { |
| 1107 controller_->DiscardPendingEntry(true); | 1107 controller_->DiscardPendingEntry(true); |
| 1108 | 1108 |
| 1109 // Also force the UI to refresh. | 1109 // Also force the UI to refresh. |
| 1110 controller_->delegate()->NotifyNavigationStateChanged(INVALIDATE_TYPE_URL); | 1110 controller_->delegate()->NotifyNavigationStateChanged(INVALIDATE_TYPE_URL); |
| 1111 } | 1111 } |
| 1112 } | 1112 } |
| 1113 | 1113 |
| 1114 } // namespace content | 1114 } // namespace content |
| OLD | NEW |