OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ | 5 #ifndef COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ |
6 #define COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ | 6 #define COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "components/sessions/core/serialized_navigation_entry.h" | 11 #include "components/sessions/core/serialized_navigation_entry.h" |
12 #include "components/sessions/core/session_id.h" | 12 #include "components/sessions/core/session_id.h" |
13 #include "ui/base/page_transition_types.h" | 13 #include "ui/base/page_transition_types.h" |
14 #include "url/gurl.h" | 14 #include "url/gurl.h" |
15 | 15 |
16 class Profile; | 16 class Profile; |
17 | 17 |
18 namespace sync_sessions { | 18 namespace sync_sessions { |
19 class SyncSessionsClient; | 19 class SyncSessionsClient; |
20 } | 20 } |
21 | 21 |
22 namespace browser_sync { | 22 namespace sync_sessions { |
23 | 23 |
24 // A SyncedTabDelegate is used to insulate the sync code from depending | 24 // A SyncedTabDelegate is used to insulate the sync code from depending |
25 // directly on WebContents, NavigationController, and the extensions TabHelper. | 25 // directly on WebContents, NavigationController, and the extensions TabHelper. |
26 class SyncedTabDelegate { | 26 class SyncedTabDelegate { |
27 public: | 27 public: |
28 virtual ~SyncedTabDelegate(); | 28 virtual ~SyncedTabDelegate(); |
29 | 29 |
30 // Methods from TabContents. | 30 // Methods from TabContents. |
31 virtual SessionID::id_type GetWindowId() const = 0; | 31 virtual SessionID::id_type GetWindowId() const = 0; |
32 virtual SessionID::id_type GetSessionId() const = 0; | 32 virtual SessionID::id_type GetSessionId() const = 0; |
(...skipping 14 matching lines...) Expand all Loading... |
47 sessions::SerializedNavigationEntry* serialized_entry) const = 0; | 47 sessions::SerializedNavigationEntry* serialized_entry) const = 0; |
48 | 48 |
49 // Supervised user related methods. | 49 // Supervised user related methods. |
50 virtual bool ProfileIsSupervised() const = 0; | 50 virtual bool ProfileIsSupervised() const = 0; |
51 virtual const std::vector<const sessions::SerializedNavigationEntry*>* | 51 virtual const std::vector<const sessions::SerializedNavigationEntry*>* |
52 GetBlockedNavigations() const = 0; | 52 GetBlockedNavigations() const = 0; |
53 | 53 |
54 // Session sync related methods. | 54 // Session sync related methods. |
55 virtual int GetSyncId() const = 0; | 55 virtual int GetSyncId() const = 0; |
56 virtual void SetSyncId(int sync_id) = 0; | 56 virtual void SetSyncId(int sync_id) = 0; |
57 virtual bool ShouldSync( | 57 virtual bool ShouldSync(SyncSessionsClient* sessions_client) = 0; |
58 sync_sessions::SyncSessionsClient* sessions_client) = 0; | |
59 | 58 |
60 // Whether this tab is a placeholder tab. On some platforms, tabs can be | 59 // Whether this tab is a placeholder tab. On some platforms, tabs can be |
61 // restored without bringing all their state into memory, and are just | 60 // restored without bringing all their state into memory, and are just |
62 // restored as a placeholder. In that case, the previous synced data from that | 61 // restored as a placeholder. In that case, the previous synced data from that |
63 // tab should be preserved. | 62 // tab should be preserved. |
64 virtual bool IsPlaceholderTab() const = 0; | 63 virtual bool IsPlaceholderTab() const = 0; |
65 | 64 |
66 protected: | 65 protected: |
67 SyncedTabDelegate(); | 66 SyncedTabDelegate(); |
68 }; | 67 }; |
69 | 68 |
70 } // namespace browser_sync | 69 } // namespace sync_sessions |
71 | 70 |
72 #endif // COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ | 71 #endif // COMPONENTS_SYNC_SESSIONS_SYNCED_TAB_DELEGATE_H__ |
OLD | NEW |