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#include "chrome/browser/ui/views/tabs/fake_base_tab_strip_controller.h"
6
7#include "chrome/browser/ui/views/tabs/tab_renderer_data.h"
8#include "chrome/browser/ui/views/tabs/tab_strip.h"
9
10FakeBaseTabStripController::FakeBaseTabStripController()
11    : tab_strip_(NULL),
12      num_tabs_(0),
13      active_index_(-1) {
14}
15
16FakeBaseTabStripController::~FakeBaseTabStripController() {
17}
18
19void FakeBaseTabStripController::AddTab(int index, bool is_active) {
20  num_tabs_++;
21  tab_strip_->AddTabAt(index, TabRendererData(), is_active);
22  if (is_active)
23    active_index_ = index;
24}
25
26void FakeBaseTabStripController::RemoveTab(int index) {
27  num_tabs_--;
28  tab_strip_->RemoveTabAt(index);
29  if (active_index_ == index)
30    active_index_ = -1;
31}
32
33const ui::ListSelectionModel& FakeBaseTabStripController::GetSelectionModel() {
34  return selection_model_;
35}
36
37int FakeBaseTabStripController::GetCount() const {
38  return num_tabs_;
39}
40
41bool FakeBaseTabStripController::IsValidIndex(int index) const {
42  return index >= 0 && index < num_tabs_;
43}
44
45bool FakeBaseTabStripController::IsActiveTab(int index) const {
46  if (!IsValidIndex(index))
47    return false;
48  return active_index_ == index;
49}
50
51int FakeBaseTabStripController::GetActiveIndex() const {
52  return active_index_;
53}
54
55bool FakeBaseTabStripController::IsTabSelected(int index) const {
56  return false;
57}
58
59bool FakeBaseTabStripController::IsTabPinned(int index) const {
60  return false;
61}
62
63bool FakeBaseTabStripController::IsNewTabPage(int index) const {
64  return false;
65}
66
67void FakeBaseTabStripController::SelectTab(int index) {
68}
69
70void FakeBaseTabStripController::ExtendSelectionTo(int index) {
71}
72
73void FakeBaseTabStripController::ToggleSelected(int index) {
74}
75
76void FakeBaseTabStripController::AddSelectionFromAnchorTo(int index) {
77}
78
79void FakeBaseTabStripController::CloseTab(int index, CloseTabSource source) {
80}
81
82void FakeBaseTabStripController::ToggleTabAudioMute(int index) {
83}
84
85void FakeBaseTabStripController::ShowContextMenuForTab(
86    Tab* tab,
87    const gfx::Point& p,
88    ui::MenuSourceType source_type) {
89}
90
91void FakeBaseTabStripController::UpdateLoadingAnimations() {
92}
93
94int FakeBaseTabStripController::HasAvailableDragActions() const {
95  return 0;
96}
97
98void FakeBaseTabStripController::OnDropIndexUpdate(int index,
99                                                   bool drop_before) {
100}
101
102void FakeBaseTabStripController::PerformDrop(bool drop_before,
103                                             int index,
104                                             const GURL& url) {
105}
106
107bool FakeBaseTabStripController::IsCompatibleWith(TabStrip* other) const {
108  return false;
109}
110
111void FakeBaseTabStripController::CreateNewTab() {
112}
113
114void FakeBaseTabStripController::CreateNewTabWithLocation(
115    const base::string16& location) {
116}
117
118bool FakeBaseTabStripController::IsIncognito() {
119  return false;
120}
121
122void FakeBaseTabStripController::StackedLayoutMaybeChanged() {
123}
124
125void FakeBaseTabStripController::OnStartedDraggingTabs() {
126}
127
128void FakeBaseTabStripController::OnStoppedDraggingTabs() {
129}
130
131void FakeBaseTabStripController::CheckFileSupported(const GURL& url) {
132  tab_strip_->FileSupported(url, true);
133}
134