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

Unified Diff: chrome/browser/sessions/session_service.cc

Issue 10917026: Switch Extensions::TabHelper to use WebContents, WebContentsUserData. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase only Created 8 years, 3 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
« no previous file with comments | « chrome/browser/extensions/tab_helper.cc ('k') | chrome/browser/sessions/tab_restore_service.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/sessions/session_service.cc
diff --git a/chrome/browser/sessions/session_service.cc b/chrome/browser/sessions/session_service.cc
index 8e1fa889f7b31d2846e71d0cf168f9aff0769ce1..e78bebeaa3a7c517857c6ac29085cbeee63c429a 100644
--- a/chrome/browser/sessions/session_service.cc
+++ b/chrome/browser/sessions/session_service.cc
@@ -612,11 +612,14 @@ void SessionService::Observe(int type,
SessionTabHelper::FromWebContents(web_contents);
SetTabWindow(session_tab_helper->window_id(),
session_tab_helper->session_id());
- if (tab->extension_tab_helper()->extension_app()) {
+ extensions::TabHelper* extensions_tab_helper =
+ extensions::TabHelper::FromWebContents(web_contents);
+ if (extensions_tab_helper &&
+ extensions_tab_helper->extension_app()) {
SetTabExtensionAppID(
session_tab_helper->window_id(),
session_tab_helper->session_id(),
- tab->extension_tab_helper()->extension_app()->id());
+ extensions_tab_helper->extension_app()->id());
}
// Record the association between the SessionStorageNamespace and the
@@ -724,8 +727,10 @@ void SessionService::Observe(int type,
case chrome::NOTIFICATION_TAB_CONTENTS_APPLICATION_EXTENSION_CHANGED: {
extensions::TabHelper* extension_tab_helper =
content::Source<extensions::TabHelper>(source).ptr();
- if (extension_tab_helper->tab_contents()->profile() != profile())
+ if (extension_tab_helper->web_contents()->GetBrowserContext() !=
+ profile()) {
return;
+ }
if (extension_tab_helper->extension_app()) {
SessionTabHelper* session_tab_helper =
SessionTabHelper::FromWebContents(
@@ -1326,11 +1331,13 @@ void SessionService::BuildCommandsForTab(
commands->push_back(CreatePinnedStateCommand(session_id, true));
}
- if (tab->extension_tab_helper()->extension_app()) {
+ extensions::TabHelper* extensions_tab_helper =
+ extensions::TabHelper::FromWebContents(tab->web_contents());
+ if (extensions_tab_helper->extension_app()) {
commands->push_back(
CreateSetTabExtensionAppIDCommand(
kCommandSetExtensionAppID, session_id.id(),
- tab->extension_tab_helper()->extension_app()->id()));
+ extensions_tab_helper->extension_app()->id()));
}
const std::string& ua_override = tab->web_contents()->GetUserAgentOverride();
« no previous file with comments | « chrome/browser/extensions/tab_helper.cc ('k') | chrome/browser/sessions/tab_restore_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698