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

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

Issue 1309363007: [sessions] Remove most knowledge of //chrome from core tab restore code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@tab_restore_service_client
Patch Set: Make OnTabRestored() optional Created 5 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
Index: chrome/browser/sessions/tab_restore_service_helper.cc
diff --git a/chrome/browser/sessions/tab_restore_service_helper.cc b/chrome/browser/sessions/tab_restore_service_helper.cc
index 766335bb73e05c6ec7b885d7969a19795be6a657..a66fbe667a9a8568e91d4429aa4f00cd8d940ec2 100644
--- a/chrome/browser/sessions/tab_restore_service_helper.cc
+++ b/chrome/browser/sessions/tab_restore_service_helper.cc
@@ -10,11 +10,10 @@
#include "base/logging.h"
#include "base/metrics/histogram.h"
#include "base/stl_util.h"
-#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/sessions/tab_restore_service_delegate.h"
#include "chrome/browser/sessions/tab_restore_service_observer.h"
-#include "chrome/common/url_constants.h"
#include "components/sessions/content/content_serialized_navigation_builder.h"
+#include "components/sessions/core/tab_restore_service_client.h"
#include "components/sessions/session_types.h"
#include "content/public/browser/navigation_controller.h"
#include "content/public/browser/navigation_entry.h"
@@ -23,36 +22,12 @@
#if defined(ENABLE_EXTENSIONS)
#include "chrome/browser/extensions/tab_helper.h"
-#include "chrome/common/extensions/extension_constants.h"
-#include "chrome/common/extensions/extension_metrics.h"
-#include "extensions/browser/extension_registry.h"
-#include "extensions/common/extension.h"
-#include "extensions/common/extension_set.h"
#endif
using content::NavigationController;
using content::NavigationEntry;
using content::WebContents;
-namespace {
-
-void RecordAppLaunch(Profile* profile, const TabRestoreService::Tab& tab) {
-#if defined(ENABLE_EXTENSIONS)
- GURL url = tab.navigations.at(tab.current_navigation_index).virtual_url();
- const extensions::Extension* extension =
- extensions::ExtensionRegistry::Get(profile)
- ->enabled_extensions().GetAppByURL(url);
- if (!extension)
- return;
-
- extensions::RecordAppLaunchType(
- extension_misc::APP_LAUNCH_NTP_RECENTLY_CLOSED,
- extension->GetType());
-#endif // defined(ENABLE_EXTENSIONS)
-}
-
-} // namespace
-
// TabRestoreServiceHelper::Observer -------------------------------------------
TabRestoreServiceHelper::Observer::~Observer() {}
@@ -72,10 +47,12 @@ TabRestoreServiceHelper::TabRestoreServiceHelper(
TabRestoreService* tab_restore_service,
Observer* observer,
Profile* profile,
+ sessions::TabRestoreServiceClient* client,
TabRestoreService::TimeFactory* time_factory)
: tab_restore_service_(tab_restore_service),
observer_(observer),
profile_(profile),
+ client_(client),
restoring_(false),
time_factory_(time_factory) {
DCHECK(tab_restore_service_);
@@ -257,7 +234,8 @@ std::vector<content::WebContents*> TabRestoreServiceHelper::RestoreEntryById(
tab.user_agent_override);
if (restored_tab) {
restored_tab->GetController().LoadIfNecessary();
- RecordAppLaunch(profile_, tab);
+ client_->OnTabRestored(
+ tab.navigations.at(tab.current_navigation_index).virtual_url());
web_contents.push_back(restored_tab);
}
}
@@ -503,7 +481,8 @@ TabRestoreServiceDelegate* TabRestoreServiceHelper::RestoreTab(
tab.user_agent_override);
web_contents->GetController().LoadIfNecessary();
}
- RecordAppLaunch(profile_, tab);
+ client_->OnTabRestored(
+ tab.navigations.at(tab.current_navigation_index).virtual_url());
if (contents)
*contents = web_contents;
@@ -556,8 +535,7 @@ bool TabRestoreServiceHelper::IsTabInteresting(const Tab* tab) {
return true;
return tab->pinned ||
- tab->navigations.at(0).virtual_url() !=
- GURL(chrome::kChromeUINewTabURL);
+ tab->navigations.at(0).virtual_url() != client_->GetNewTabURL();
}
bool TabRestoreServiceHelper::IsWindowInteresting(const Window* window) {
« no previous file with comments | « chrome/browser/sessions/tab_restore_service_helper.h ('k') | components/sessions/core/tab_restore_service_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698