fake_base_tab_strip_controller.cc revision 424c4d7b64af9d0d8fd9624f381f469654d5e3d2
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/ui/views/tabs/fake_base_tab_strip_controller.h" 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 75d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "chrome/browser/ui/views/tabs/tab_renderer_data.h" 858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "chrome/browser/ui/views/tabs/tab_strip.h" 958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) 105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)FakeBaseTabStripController::FakeBaseTabStripController() 117dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch : tab_strip_(NULL), 1290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) num_tabs_(0), 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_index_(-1) { 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 15effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 16effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochFakeBaseTabStripController::~FakeBaseTabStripController() { 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::AddTab(int index, bool is_active) { 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) num_tabs_++; 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tab_strip_->AddTabAt(index, TabRendererData(), is_active); 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if (is_active) 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) active_index_ = index; 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void FakeBaseTabStripController::RemoveTab(int index) { 274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) num_tabs_--; 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tab_strip_->RemoveTabAt(index); 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) if (active_index_ == index) 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) active_index_ = -1; 31f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)} 32f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)const ui::ListSelectionModel& FakeBaseTabStripController::GetSelectionModel() { 34f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) return selection_model_; 355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 36f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int FakeBaseTabStripController::GetCount() const { 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return num_tabs_; 395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 40a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bool FakeBaseTabStripController::IsValidIndex(int index) const { 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return index >= 0 && index < num_tabs_; 43868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)} 44c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 4558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)bool FakeBaseTabStripController::IsActiveTab(int index) const { 46f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) if (!IsValidIndex(index)) 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return false; 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return active_index_ == index; 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int FakeBaseTabStripController::GetActiveIndex() const { 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return active_index_; 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bool FakeBaseTabStripController::IsTabSelected(int index) const { 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return false; 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)bool FakeBaseTabStripController::IsTabPinned(int index) const { 6058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) return false; 615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 63f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)bool FakeBaseTabStripController::IsNewTabPage(int index) const { 64a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) return false; 652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 6658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) 67f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)void FakeBaseTabStripController::SelectTab(int index) { 685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)void FakeBaseTabStripController::ExtendSelectionTo(int index) { 715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)} 725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::ToggleSelected(int index) { 745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::AddSelectionFromAnchorTo(int index) { 775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::CloseTab(int index, CloseTabSource source) { 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::ShowContextMenuForTab( 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) Tab* tab, 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const gfx::Point& p, 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ui::MenuSourceType source_type) { 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::UpdateLoadingAnimations() { 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int FakeBaseTabStripController::HasAvailableDragActions() const { 925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return 0; 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::OnDropIndexUpdate(int index, 965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool drop_before) { 975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::PerformDrop(bool drop_before, 100c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) int index, 101c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) const GURL& url) { 1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool FakeBaseTabStripController::IsCompatibleWith(TabStrip* other) const { 1055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) return false; 1064e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} 1074e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::CreateNewTab() { 1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 11190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)bool FakeBaseTabStripController::IsIncognito() { 11290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) return false; 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::LayoutTypeMaybeChanged() { 1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bool FakeBaseTabStripController::IsTabShowingWebViewModalDialog(int index) { 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return false; 1202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 12168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 12268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)void FakeBaseTabStripController::OnStartedDraggingTabs() { 1232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 12468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeBaseTabStripController::OnStoppedDraggingTabs() { 1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)