summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sessions
diff options
context:
space:
mode:
authortim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 21:30:23 +0000
committertim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 21:30:23 +0000
commit95484099a0e8b4be4074d6a39b4a4a0eba3f01d6 (patch)
treeab0f91e0da60f31ec73a6057df20fcbc0714a03a /chrome/browser/sessions
parentf2c9df50f8acaa7818758f4fdb0b95ab41ee2706 (diff)
downloadchromium_src-95484099a0e8b4be4074d6a39b4a4a0eba3f01d6.zip
chromium_src-95484099a0e8b4be4074d6a39b4a4a0eba3f01d6.tar.gz
chromium_src-95484099a0e8b4be4074d6a39b4a4a0eba3f01d6.tar.bz2
Revert 56423 - Added classes to enable session sync functionality.
TEST=ProfileSyncServiceSessionTest BUG=30519 Original patch by jerrica@chromium.org Original review: http://codereview.chromium.org/3168009 Review URL: http://codereview.chromium.org/3184004 TBR=tim@chromium.org Review URL: http://codereview.chromium.org/3127017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56426 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sessions')
-rw-r--r--chrome/browser/sessions/session_restore.cc37
-rw-r--r--chrome/browser/sessions/session_restore.h6
-rw-r--r--chrome/browser/sessions/session_types.cc10
-rw-r--r--chrome/browser/sessions/session_types.h14
-rw-r--r--chrome/browser/sessions/tab_restore_service.h9
5 files changed, 6 insertions, 70 deletions
diff --git a/chrome/browser/sessions/session_restore.cc b/chrome/browser/sessions/session_restore.cc
index 9a20e65..a75f7de 100644
--- a/chrome/browser/sessions/session_restore.cc
+++ b/chrome/browser/sessions/session_restore.cc
@@ -298,33 +298,6 @@ class SessionRestoreImpl : public NotificationObserver {
}
}
- void RestoreForeignSession(std::vector<SessionWindow*>* windows) {
- tab_loader_.reset(new TabLoader());
- // Create a browser instance to put the restored tabs in.
- bool has_tabbed_browser = false;
- for (std::vector<SessionWindow*>::iterator i = (*windows).begin();
- i != (*windows).end(); ++i) {
- Browser* browser = NULL;
- if (!has_tabbed_browser && (*i)->type == Browser::TYPE_NORMAL)
- has_tabbed_browser = true;
- browser = new Browser(static_cast<Browser::Type>((*i)->type),
- profile_);
- browser->set_override_bounds((*i)->bounds);
- browser->set_maximized_state((*i)->is_maximized ?
- Browser::MAXIMIZED_STATE_MAXIMIZED :
- Browser::MAXIMIZED_STATE_UNMAXIMIZED);
- browser->CreateBrowserWindow();
-
- // Restore and show the browser.
- const int initial_tab_count = browser->tab_count();
- RestoreTabsToBrowser(*(*i), browser);
- ShowBrowser(browser, initial_tab_count,
- (*i)->selected_tab_index);
- NotifySessionServiceOfRestoredTabs(browser, initial_tab_count);
- FinishedTabCreation(true, has_tabbed_browser);
- }
- }
-
~SessionRestoreImpl() {
STLDeleteElements(&windows_);
restoring = false;
@@ -641,16 +614,6 @@ void SessionRestore::RestoreSession(Profile* profile,
}
// static
-void SessionRestore::RestoreForeignSessionWindows(Profile* profile,
- std::vector<SessionWindow*>* windows) {
- // Create a SessionRestore object to eventually restore the tabs.
- std::vector<GURL> gurls;
- SessionRestoreImpl restorer(profile,
- static_cast<Browser*>(NULL), true, false, true, gurls);
- restorer.RestoreForeignSession(windows);
-}
-
-// static
void SessionRestore::RestoreSessionSynchronously(
Profile* profile,
const std::vector<GURL>& urls_to_open) {
diff --git a/chrome/browser/sessions/session_restore.h b/chrome/browser/sessions/session_restore.h
index bb08868..8ce01d2f 100644
--- a/chrome/browser/sessions/session_restore.h
+++ b/chrome/browser/sessions/session_restore.h
@@ -9,7 +9,6 @@
#include <vector>
#include "chrome/browser/history/history.h"
-#include "chrome/browser/sessions/session_types.h"
#include "base/basictypes.h"
class Browser;
@@ -36,11 +35,6 @@ class SessionRestore {
bool always_create_tabbed_browser,
const std::vector<GURL>& urls_to_open);
- // Specifically used in the restoration of a foreign session. This method
- // restores the given session windows to a browser.
- static void RestoreForeignSessionWindows(Profile* profile,
- std::vector<SessionWindow*>* windows);
-
// Synchronously restores the last session. At least one tabbed browser is
// created, even if there is an error in restoring.
//
diff --git a/chrome/browser/sessions/session_types.cc b/chrome/browser/sessions/session_types.cc
index cdf77f6..6cf193c 100644
--- a/chrome/browser/sessions/session_types.cc
+++ b/chrome/browser/sessions/session_types.cc
@@ -51,13 +51,3 @@ SessionWindow::SessionWindow()
SessionWindow::~SessionWindow() {
STLDeleteElements(&tabs);
}
-
-// ForeignSession --------------------------------------------------------------
-
-ForeignSession::ForeignSession() : foreign_tession_tag("invalid") {
-}
-
-ForeignSession::~ForeignSession() {
- STLDeleteElements(&windows);
-}
-
diff --git a/chrome/browser/sessions/session_types.h b/chrome/browser/sessions/session_types.h
index 07dbae4..2ea0757 100644
--- a/chrome/browser/sessions/session_types.h
+++ b/chrome/browser/sessions/session_types.h
@@ -88,7 +88,7 @@ class TabNavigation {
// This is used when determining the selected TabNavigation and only useful
// by BaseSessionService and SessionService.
void set_index(int index) { index_ = index; }
- int index() const { return index_; }
+ int index() { return index_; }
private:
friend class BaseSessionService;
@@ -189,16 +189,4 @@ struct SessionWindow {
DISALLOW_COPY_AND_ASSIGN(SessionWindow);
};
-// Defines a foreign session for session sync. A foreign session is a session
-// on a remote chrome instance.
-struct ForeignSession {
- ForeignSession();
- ~ForeignSession();
-
- // Unique tag for each session.
- std::string foreign_tession_tag;
- std::vector<SessionWindow*> windows;
-};
-
#endif // CHROME_BROWSER_SESSIONS_SESSION_TYPES_H_
-
diff --git a/chrome/browser/sessions/tab_restore_service.h b/chrome/browser/sessions/tab_restore_service.h
index e12b9d1..31f22e4 100644
--- a/chrome/browser/sessions/tab_restore_service.h
+++ b/chrome/browser/sessions/tab_restore_service.h
@@ -175,10 +175,6 @@ class TabRestoreService : public BaseSessionService {
// Max number of entries we'll keep around.
static const size_t kMaxEntries;
- // Creates and add entries to |entries| for each of the windows in |windows|.
- void CreateEntriesFromWindows(std::vector<SessionWindow*>* windows,
- std::vector<Entry*>* entries);
-
protected:
virtual void Save();
@@ -295,6 +291,11 @@ class TabRestoreService : public BaseSessionService {
void OnGotPreviousSession(Handle handle,
std::vector<SessionWindow*>* windows);
+ // Creates and add entries to |entries| for each of the windows in |windows|.
+ void CreateEntriesFromWindows(
+ std::vector<SessionWindow*>* windows,
+ std::vector<Entry*>* entries);
+
// Converts a SessionWindow into a Window, returning true on success. We use 0
// as the timestamp here since we do not know when the window/tab was closed.
bool ConvertSessionWindowToWindow(