summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sessions
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-06 15:27:14 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-06 15:27:14 +0000
commit03838e231df0acc3dbcbb4d97198f5b82d13713b (patch)
tree5f2afb72886b3c6f8f161ec6d60225a36082faa8 /chrome/browser/sessions
parent277c7b7879f17c1d830e456ea46648f9b07337b4 (diff)
downloadchromium_src-03838e231df0acc3dbcbb4d97198f5b82d13713b.zip
chromium_src-03838e231df0acc3dbcbb4d97198f5b82d13713b.tar.gz
chromium_src-03838e231df0acc3dbcbb4d97198f5b82d13713b.tar.bz2
Moves some of the session dependencies from content to chrome.
BUG=none TEST=none R=brettw@chromium.org Review URL: http://codereview.chromium.org/7112023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87985 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sessions')
-rw-r--r--chrome/browser/sessions/session_types.cc12
-rw-r--r--chrome/browser/sessions/session_types.h7
2 files changed, 19 insertions, 0 deletions
diff --git a/chrome/browser/sessions/session_types.cc b/chrome/browser/sessions/session_types.cc
index 27488c9..eae3ba2 100644
--- a/chrome/browser/sessions/session_types.cc
+++ b/chrome/browser/sessions/session_types.cc
@@ -84,6 +84,18 @@ void TabNavigation::SetFromNavigationEntry(const NavigationEntry& entry) {
type_mask_ = entry.has_post_data() ? TabNavigation::HAS_POST_DATA : 0;
}
+// static
+void TabNavigation::CreateNavigationEntriesFromTabNavigations(
+ Profile* profile,
+ const std::vector<TabNavigation>& navigations,
+ std::vector<NavigationEntry*>* entries) {
+ int page_id = 0;
+ for (std::vector<TabNavigation>::const_iterator i =
+ navigations.begin(); i != navigations.end(); ++i, ++page_id) {
+ entries->push_back(i->ToNavigationEntry(page_id, profile));
+ }
+}
+
// SessionTab -----------------------------------------------------------------
SessionTab::SessionTab()
diff --git a/chrome/browser/sessions/session_types.h b/chrome/browser/sessions/session_types.h
index c76f291..dfef3cc 100644
--- a/chrome/browser/sessions/session_types.h
+++ b/chrome/browser/sessions/session_types.h
@@ -82,6 +82,13 @@ class TabNavigation {
void set_index(int index) { index_ = index; }
int index() const { return index_; }
+ // Converts a set of TabNavigations into a set of NavigationEntrys. The
+ // caller owns the NavigationEntrys.
+ static void CreateNavigationEntriesFromTabNavigations(
+ Profile* profile,
+ const std::vector<TabNavigation>& navigations,
+ std::vector<NavigationEntry*>* entries);
+
private:
friend class BaseSessionService;