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

Unified Diff: chrome/browser/ui/browser_tabrestore.cc

Issue 15055003: Do not submit: high level overview patch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix build. Created 7 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/browser_tabrestore.cc
diff --git a/chrome/browser/ui/browser_tabrestore.cc b/chrome/browser/ui/browser_tabrestore.cc
index 9bb737a4d97ea4e407d2d7c44a843ea1ec5aa9d9..b6f6eeff60841670bcd0d1ce6cb97815d54b3f92 100644
--- a/chrome/browser/ui/browser_tabrestore.cc
+++ b/chrome/browser/ui/browser_tabrestore.cc
@@ -8,6 +8,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/sessions/session_service.h"
#include "chrome/browser/sessions/session_service_factory.h"
+#include "chrome/browser/sessions/session_tab_helper.h"
#include "chrome/browser/tab_contents/tab_util.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_window.h"
@@ -43,7 +44,8 @@ WebContents* CreateRestoredTab(
const std::string& extension_app_id,
bool from_last_session,
content::SessionStorageNamespace* session_storage_namespace,
- const std::string& user_agent_override) {
+ const std::string& user_agent_override,
+ const int64 sync_id) {
GURL restore_url = navigations.at(selected_navigation).virtual_url();
// TODO(ajwong): Remove the temporary session_storage_namespace_map when
// we teach session restore to understand that one tab can have multiple
@@ -65,11 +67,13 @@ WebContents* CreateRestoredTab(
create_params,
session_storage_namespace_map);
extensions::TabHelper::CreateForWebContents(web_contents);
- extensions::TabHelper::FromWebContents(web_contents)->
- SetExtensionAppById(extension_app_id);
+ SessionTabHelper::CreateForWebContents(web_contents);
+ SessionTabHelper::FromWebContents(web_contents)->SetSessionSyncId(sync_id);
+ extensions::TabHelper::FromWebContents(web_contents)
+ ->SetExtensionAppById(extension_app_id);
std::vector<NavigationEntry*> entries =
- SerializedNavigationEntry::ToNavigationEntries(
- navigations, browser->profile());
+ SerializedNavigationEntry::ToNavigationEntries(navigations,
+ browser->profile());
web_contents->SetUserAgentOverride(user_agent_override);
web_contents->GetController().Restore(
selected_navigation, GetRestoreType(browser, from_last_session),
@@ -91,14 +95,16 @@ content::WebContents* AddRestoredTab(
bool pin,
bool from_last_session,
content::SessionStorageNamespace* session_storage_namespace,
- const std::string& user_agent_override) {
+ const std::string& user_agent_override,
+ const int64& sync_id) {
WebContents* web_contents = CreateRestoredTab(browser,
navigations,
selected_navigation,
extension_app_id,
from_last_session,
session_storage_namespace,
- user_agent_override);
+ user_agent_override,
+ sync_id);
int add_types = select ? TabStripModel::ADD_ACTIVE
: TabStripModel::ADD_NONE;
@@ -137,14 +143,16 @@ void ReplaceRestoredTab(
bool from_last_session,
const std::string& extension_app_id,
content::SessionStorageNamespace* session_storage_namespace,
- const std::string& user_agent_override) {
+ const std::string& user_agent_override,
+ const int64& sync_id) {
WebContents* web_contents = CreateRestoredTab(browser,
navigations,
selected_navigation,
extension_app_id,
from_last_session,
session_storage_namespace,
- user_agent_override);
+ user_agent_override,
+ sync_id);
// ReplaceWebContentsAt won't animate in the restoration, so manually do the
// equivalent of ReplaceWebContentsAt.

Powered by Google App Engine
This is Rietveld 408576698