summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sessions/restore_tab_helper.h
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-14 22:15:00 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-14 22:15:00 +0000
commit81898992dcbade4de1c6e6ca8953e7fdf0669599 (patch)
tree6c58bf4ce15c75cf4f45331a2bf2fa73ecfbb0eb /chrome/browser/sessions/restore_tab_helper.h
parente87b8b518d43c0342367c0f710299a5dc9ef2e4b (diff)
downloadchromium_src-81898992dcbade4de1c6e6ca8953e7fdf0669599.zip
chromium_src-81898992dcbade4de1c6e6ca8953e7fdf0669599.tar.gz
chromium_src-81898992dcbade4de1c6e6ca8953e7fdf0669599.tar.bz2
Moves NavigationController::session_id into RestoreTabHelper.
BUG=none TEST=none R=nick@chromium.org,mpcomplete@chromium.org,jam@chromium.org Review URL: http://codereview.chromium.org/7104064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89083 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sessions/restore_tab_helper.h')
-rw-r--r--chrome/browser/sessions/restore_tab_helper.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/chrome/browser/sessions/restore_tab_helper.h b/chrome/browser/sessions/restore_tab_helper.h
new file mode 100644
index 0000000..63aee3b
--- /dev/null
+++ b/chrome/browser/sessions/restore_tab_helper.h
@@ -0,0 +1,44 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_SESSIONS_RESTORE_TAB_HELPER_H_
+#define CHROME_BROWSER_SESSIONS_RESTORE_TAB_HELPER_H_
+#pragma once
+
+#include "base/basictypes.h"
+#include "chrome/browser/sessions/session_id.h"
+#include "content/browser/tab_contents/tab_contents_observer.h"
+
+class TabContentsWrapper;
+
+class RestoreTabHelper : public TabContentsObserver {
+ public:
+ explicit RestoreTabHelper(TabContentsWrapper* tab);
+ ~RestoreTabHelper();
+
+ // Returns the identifier used by session restore for this tab.
+ const SessionID& session_id() const { return session_id_; }
+
+ // Identifier of the window the tab is in.
+ void SetWindowID(const SessionID& id);
+ const SessionID& window_id() const { return window_id_; }
+
+ // TabContentsObserver:
+ virtual void RenderViewCreated(RenderViewHost* render_view_host) OVERRIDE;
+
+ private:
+ TabContentsWrapper* tab_;
+
+ // Unique identifier of the tab for session restore. This id is only unique
+ // within the current session, and is not guaranteed to be unique across
+ // sessions.
+ const SessionID session_id_;
+
+ // Unique identifier of the window the tab is in.
+ SessionID window_id_;
+
+ DISALLOW_COPY_AND_ASSIGN(RestoreTabHelper);
+};
+
+#endif // CHROME_BROWSER_SESSIONS_RESTORE_TAB_HELPER_H_