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 12class TabModel; 13 14namespace browser_sync { 15 16class SyncedTabDelegate; 17 18class 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