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

Side by Side Diff: chrome/browser/ui/browser_tabrestore.cc

Issue 20924002: Try to restore window.opener when opening blocked popups (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/ui/browser_tabrestore.h" 5 #include "chrome/browser/ui/browser_tabrestore.h"
6 6
7 #include "chrome/browser/extensions/tab_helper.h" 7 #include "chrome/browser/extensions/tab_helper.h"
8 #include "chrome/browser/profiles/profile.h" 8 #include "chrome/browser/profiles/profile.h"
9 #include "chrome/browser/sessions/session_service.h" 9 #include "chrome/browser/sessions/session_service.h"
10 #include "chrome/browser/sessions/session_service_factory.h" 10 #include "chrome/browser/sessions/session_service_factory.h"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 browser->profile(), 56 browser->profile(),
57 tab_util::GetSiteInstanceForNewTab(browser->profile(), restore_url)); 57 tab_util::GetSiteInstanceForNewTab(browser->profile(), restore_url));
58 WebContents* base_web_contents = 58 WebContents* base_web_contents =
59 browser->tab_strip_model()->GetActiveWebContents(); 59 browser->tab_strip_model()->GetActiveWebContents();
60 if (base_web_contents) { 60 if (base_web_contents) {
61 create_params.initial_size = 61 create_params.initial_size =
62 base_web_contents->GetView()->GetContainerSize(); 62 base_web_contents->GetView()->GetContainerSize();
63 } 63 }
64 WebContents* web_contents = content::WebContents::CreateWithSessionStorage( 64 WebContents* web_contents = content::WebContents::CreateWithSessionStorage(
65 create_params, 65 create_params,
66 session_storage_namespace_map); 66 session_storage_namespace_map,
67 NULL);
67 extensions::TabHelper::CreateForWebContents(web_contents); 68 extensions::TabHelper::CreateForWebContents(web_contents);
68 extensions::TabHelper::FromWebContents(web_contents)-> 69 extensions::TabHelper::FromWebContents(web_contents)->
69 SetExtensionAppById(extension_app_id); 70 SetExtensionAppById(extension_app_id);
70 std::vector<NavigationEntry*> entries = 71 std::vector<NavigationEntry*> entries =
71 SerializedNavigationEntry::ToNavigationEntries( 72 SerializedNavigationEntry::ToNavigationEntries(
72 navigations, browser->profile()); 73 navigations, browser->profile());
73 web_contents->SetUserAgentOverride(user_agent_override); 74 web_contents->SetUserAgentOverride(user_agent_override);
74 web_contents->GetController().Restore( 75 web_contents->GetController().Restore(
75 selected_navigation, GetRestoreType(browser, from_last_session), 76 selected_navigation, GetRestoreType(browser, from_last_session),
76 &entries); 77 &entries);
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 TabStripModel* tab_strip = browser->tab_strip_model(); 152 TabStripModel* tab_strip = browser->tab_strip_model();
152 int insertion_index = tab_strip->active_index(); 153 int insertion_index = tab_strip->active_index();
153 tab_strip->InsertWebContentsAt(insertion_index + 1, 154 tab_strip->InsertWebContentsAt(insertion_index + 1,
154 web_contents, 155 web_contents,
155 TabStripModel::ADD_ACTIVE | 156 TabStripModel::ADD_ACTIVE |
156 TabStripModel::ADD_INHERIT_GROUP); 157 TabStripModel::ADD_INHERIT_GROUP);
157 tab_strip->CloseWebContentsAt(insertion_index, TabStripModel::CLOSE_NONE); 158 tab_strip->CloseWebContentsAt(insertion_index, TabStripModel::CLOSE_NONE);
158 } 159 }
159 160
160 } // namespace chrome 161 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698