| Index: chrome/browser/views/tabs/side_tab_strip.cc
|
| diff --git a/chrome/browser/views/tabs/side_tab_strip.cc b/chrome/browser/views/tabs/side_tab_strip.cc
|
| index afcd9c482d1cf9af69bff4e1dd6f4970d67bd37d..2a973d5b383ee9a6a79dc291311725fc5097847f 100644
|
| --- a/chrome/browser/views/tabs/side_tab_strip.cc
|
| +++ b/chrome/browser/views/tabs/side_tab_strip.cc
|
| @@ -17,11 +17,12 @@ const int kTabStripInset = 3;
|
| // SideTabStrip, public:
|
|
|
| SideTabStrip::SideTabStrip(TabStripController* controller)
|
| - : BaseTabStrip(controller) {
|
| + : BaseTabStrip(controller, BaseTabStrip::VERTICAL_TAB_STRIP) {
|
| SetID(VIEW_ID_TAB_STRIP);
|
| }
|
|
|
| SideTabStrip::~SideTabStrip() {
|
| + DestroyDragController();
|
| }
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| @@ -42,10 +43,6 @@ void SideTabStrip::SetDraggedTabBounds(int tab_index,
|
| const gfx::Rect& tab_bounds) {
|
| }
|
|
|
| -bool SideTabStrip::IsDragSessionActive() const {
|
| - return false;
|
| -}
|
| -
|
| bool SideTabStrip::IsAnimating() const {
|
| return false;
|
| }
|
| @@ -64,30 +61,10 @@ BaseTabRenderer* SideTabStrip::GetBaseTabAtModelIndex(int model_index) const {
|
| return static_cast<BaseTabRenderer*>(GetChildViewAt(model_index));
|
| }
|
|
|
| -BaseTabRenderer* SideTabStrip::GetBaseTabAtTabIndex(int tab_index) const {
|
| - return static_cast<BaseTabRenderer*>(GetChildViewAt(tab_index));
|
| -}
|
| -
|
| -int SideTabStrip::GetTabCount() const {
|
| - return GetChildViewCount();
|
| -}
|
| -
|
| BaseTabRenderer* SideTabStrip::CreateTabForDragging() {
|
| return new SideTab(NULL);
|
| }
|
|
|
| -int SideTabStrip::GetModelIndexOfBaseTab(const BaseTabRenderer* tab) const {
|
| - return GetChildIndex(tab);
|
| -}
|
| -
|
| -void SideTabStrip::AddTabAt(int model_index,
|
| - bool foreground,
|
| - const TabRendererData& data) {
|
| - SideTab* tab = new SideTab(this);
|
| - AddChildView(tab);
|
| - Layout();
|
| -}
|
| -
|
| void SideTabStrip::RemoveTabAt(int index, bool initiated_close) {
|
| View* v = GetChildViewAt(index);
|
| RemoveChildView(v);
|
| @@ -99,41 +76,46 @@ void SideTabStrip::SelectTabAt(int old_model_index, int new_model_index) {
|
| GetChildViewAt(new_model_index)->SchedulePaint();
|
| }
|
|
|
| -void SideTabStrip::MoveTab(int from_model_index, int to_model_index) {
|
| -}
|
| -
|
| void SideTabStrip::TabTitleChangedNotLoading(int model_index) {
|
| }
|
|
|
| void SideTabStrip::SetTabData(int model_index, const TabRendererData& data) {
|
| + BaseTabRenderer* tab = GetBaseTabAtModelIndex(model_index);
|
| + tab->SetData(data);
|
| + tab->SchedulePaint();
|
| }
|
|
|
| -void SideTabStrip::MaybeStartDrag(BaseTabRenderer* tab,
|
| - const views::MouseEvent& event) {
|
| -}
|
| -
|
| -void SideTabStrip::ContinueDrag(const views::MouseEvent& event) {
|
| +gfx::Size SideTabStrip::GetPreferredSize() {
|
| + return gfx::Size(kTabStripWidth, 0);
|
| }
|
|
|
| -bool SideTabStrip::EndDrag(bool canceled) {
|
| - return false;
|
| +BaseTabRenderer* SideTabStrip::CreateTab() {
|
| + return new SideTab(this);
|
| }
|
|
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// SideTabStrip, views::View overrides:
|
| -
|
| -void SideTabStrip::Layout() {
|
| +void SideTabStrip::GenerateIdealBounds() {
|
| gfx::Rect layout_rect = GetLocalBounds(false);
|
| layout_rect.Inset(kTabStripInset, kTabStripInset);
|
| +
|
| int y = layout_rect.y();
|
| - for (int c = GetChildViewCount(), i = 0; i < c; ++i) {
|
| - views::View* child = GetChildViewAt(i);
|
| - child->SetBounds(layout_rect.x(), y, layout_rect.width(),
|
| - child->GetPreferredSize().height());
|
| - y = child->bounds().bottom() + kVerticalTabSpacing;
|
| + for (int i = 0; i < tab_count(); ++i) {
|
| + BaseTabRenderer* tab = base_tab_at_tab_index(i);
|
| + if (!tab->closing()) {
|
| + gfx::Rect bounds = gfx::Rect(layout_rect.x(), y, layout_rect.width(),
|
| + tab->GetPreferredSize().height());
|
| + set_ideal_bounds(i, bounds);
|
| + y = bounds.bottom() + kVerticalTabSpacing;
|
| + }
|
| }
|
| }
|
|
|
| -gfx::Size SideTabStrip::GetPreferredSize() {
|
| - return gfx::Size(kTabStripWidth, 0);
|
| +void SideTabStrip::StartInsertTabAnimation(int model_index, bool foreground) {
|
| + Layout();
|
| +}
|
| +
|
| +void SideTabStrip::StartMoveTabAnimation() {
|
| + Layout();
|
| +}
|
| +
|
| +void SideTabStrip::StopAnimating(bool layout) {
|
| }
|
|
|