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 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_SYNC_GLUE_SYNCED_WINDOW_DELEGATE_ANDROID_H_ 6 #define CHROME_BROWSER_SYNC_GLUE_SYNCED_WINDOW_DELEGATE_ANDROID_H_ 7 8 #include "base/compiler_specific.h" 9 #include "chrome/browser/sync/glue/synced_window_delegate.h" 10 #include "components/sessions/session_id.h" 11 12 class TabModel; 13 14 namespace browser_sync { 15 16 class SyncedTabDelegate; 17 18 class SyncedWindowDelegateAndroid : public browser_sync::SyncedWindowDelegate { 19 public: 20 explicit SyncedWindowDelegateAndroid(TabModel* tab_model); 21 virtual ~SyncedWindowDelegateAndroid(); 22 23 // browser_sync::SyncedWindowDelegate implementation. 24 25 virtual bool HasWindow() const OVERRIDE; 26 virtual SessionID::id_type GetSessionId() const OVERRIDE; 27 virtual int GetTabCount() const OVERRIDE; 28 virtual int GetActiveIndex() const OVERRIDE; 29 virtual bool IsApp() const OVERRIDE; 30 virtual bool IsTypeTabbed() const OVERRIDE; 31 virtual bool IsTypePopup() const OVERRIDE; 32 virtual bool IsTabPinned(const SyncedTabDelegate* tab) const OVERRIDE; 33 virtual SyncedTabDelegate* GetTabAt(int index) const OVERRIDE; 34 virtual SessionID::id_type GetTabIdAt(int index) const OVERRIDE; 35 virtual bool IsSessionRestoreInProgress() const OVERRIDE; 36 37 private: 38 TabModel* tab_model_; 39 40 DISALLOW_COPY_AND_ASSIGN(SyncedWindowDelegateAndroid); 41 }; 42 43 } // namespace browser_sync 44 45 #endif // CHROME_BROWSER_SYNC_GLUE_SYNCED_WINDOW_DELEGATE_ANDROID_H_ 46