| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ | 5 #ifndef CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ |
| 6 #define CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ | 6 #define CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <gtk/gtk.h> | 9 #include <gtk/gtk.h> |
| 10 #include <vector> | 10 #include <vector> |
| 11 | 11 |
| 12 #include "base/basictypes.h" | 12 #include "base/basictypes.h" |
| 13 #include "base/compiler_specific.h" |
| 13 #include "base/memory/weak_ptr.h" | 14 #include "base/memory/weak_ptr.h" |
| 14 #include "base/message_loop.h" | 15 #include "base/message_loop.h" |
| 15 #include "base/task.h" | 16 #include "base/task.h" |
| 16 #include "chrome/browser/tabs/tab_strip_model.h" | 17 #include "chrome/browser/tabs/tab_strip_model.h" |
| 17 #include "chrome/browser/ui/gtk/tabs/tab_gtk.h" | 18 #include "chrome/browser/ui/gtk/tabs/tab_gtk.h" |
| 18 #include "chrome/browser/ui/gtk/tabstrip_origin_provider.h" | 19 #include "chrome/browser/ui/gtk/tabstrip_origin_provider.h" |
| 19 #include "chrome/browser/ui/gtk/view_id_util.h" | 20 #include "chrome/browser/ui/gtk/view_id_util.h" |
| 20 #include "chrome/browser/ui/tabs/hover_tab_selector.h" | 21 #include "chrome/browser/ui/tabs/hover_tab_selector.h" |
| 21 #include "content/public/browser/notification_observer.h" | 22 #include "content/public/browser/notification_observer.h" |
| 22 #include "content/public/browser/notification_registrar.h" | 23 #include "content/public/browser/notification_registrar.h" |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 | 92 |
| 92 // Retrieve the ideal bounds for the Tab at the specified index. | 93 // Retrieve the ideal bounds for the Tab at the specified index. |
| 93 gfx::Rect GetIdealBounds(int index); | 94 gfx::Rect GetIdealBounds(int index); |
| 94 | 95 |
| 95 // Sets the vertical offset that each tab will use to offset against the | 96 // Sets the vertical offset that each tab will use to offset against the |
| 96 // background image. Passed in from the titlebar and based on the size of the | 97 // background image. Passed in from the titlebar and based on the size of the |
| 97 // alignment that sits above the tabstrip. | 98 // alignment that sits above the tabstrip. |
| 98 void SetVerticalOffset(int offset); | 99 void SetVerticalOffset(int offset); |
| 99 | 100 |
| 100 // TabstripOriginProvider implementation ------------------------------------- | 101 // TabstripOriginProvider implementation ------------------------------------- |
| 101 virtual gfx::Point GetTabStripOriginForWidget(GtkWidget* widget); | 102 virtual gfx::Point GetTabStripOriginForWidget(GtkWidget* widget) OVERRIDE; |
| 102 | 103 |
| 103 // ViewIDUtil::Delegate implementation --------------------------------------- | 104 // ViewIDUtil::Delegate implementation --------------------------------------- |
| 104 virtual GtkWidget* GetWidgetForViewID(ViewID id); | 105 virtual GtkWidget* GetWidgetForViewID(ViewID id) OVERRIDE; |
| 105 | 106 |
| 106 protected: | 107 protected: |
| 107 // TabStripModelObserver implementation: | 108 // TabStripModelObserver implementation: |
| 108 virtual void TabInsertedAt(TabContentsWrapper* contents, | 109 virtual void TabInsertedAt(TabContentsWrapper* contents, |
| 109 int index, | 110 int index, |
| 110 bool foreground); | 111 bool foreground) OVERRIDE; |
| 111 virtual void TabDetachedAt(TabContentsWrapper* contents, int index); | 112 virtual void TabDetachedAt(TabContentsWrapper* contents, int index) OVERRIDE; |
| 112 virtual void TabMoved(TabContentsWrapper* contents, | 113 virtual void TabMoved(TabContentsWrapper* contents, |
| 113 int from_index, | 114 int from_index, |
| 114 int to_index); | 115 int to_index) OVERRIDE; |
| 115 virtual void ActiveTabChanged(TabContentsWrapper* old_contents, | 116 virtual void ActiveTabChanged(TabContentsWrapper* old_contents, |
| 116 TabContentsWrapper* new_contents, | 117 TabContentsWrapper* new_contents, |
| 117 int index, | 118 int index, |
| 118 bool user_gesture); | 119 bool user_gesture) OVERRIDE; |
| 119 virtual void TabSelectionChanged(TabStripModel* tab_strip_model, | 120 virtual void TabSelectionChanged( |
| 120 const TabStripSelectionModel& old_model); | 121 TabStripModel* tab_strip_model, |
| 122 const TabStripSelectionModel& old_model) OVERRIDE; |
| 121 virtual void TabChangedAt(TabContentsWrapper* contents, int index, | 123 virtual void TabChangedAt(TabContentsWrapper* contents, int index, |
| 122 TabChangeType change_type); | 124 TabChangeType change_type) OVERRIDE; |
| 123 virtual void TabReplacedAt(TabStripModel* tab_strip_model, | 125 virtual void TabReplacedAt(TabStripModel* tab_strip_model, |
| 124 TabContentsWrapper* old_contents, | 126 TabContentsWrapper* old_contents, |
| 125 TabContentsWrapper* new_contents, | 127 TabContentsWrapper* new_contents, |
| 126 int index); | 128 int index) OVERRIDE; |
| 127 virtual void TabMiniStateChanged(TabContentsWrapper* contents, int index); | 129 virtual void TabMiniStateChanged(TabContentsWrapper* contents, |
| 130 int index) OVERRIDE; |
| 128 virtual void TabBlockedStateChanged(TabContentsWrapper* contents, | 131 virtual void TabBlockedStateChanged(TabContentsWrapper* contents, |
| 129 int index); | 132 int index) OVERRIDE; |
| 130 | 133 |
| 131 // TabGtk::TabDelegate implementation: | 134 // TabGtk::TabDelegate implementation: |
| 132 virtual bool IsTabActive(const TabGtk* tab) const; | 135 virtual bool IsTabActive(const TabGtk* tab) const OVERRIDE; |
| 133 virtual bool IsTabSelected(const TabGtk* tab) const; | 136 virtual bool IsTabSelected(const TabGtk* tab) const OVERRIDE; |
| 134 virtual bool IsTabPinned(const TabGtk* tab) const; | 137 virtual bool IsTabPinned(const TabGtk* tab) const OVERRIDE; |
| 135 virtual bool IsTabDetached(const TabGtk* tab) const; | 138 virtual bool IsTabDetached(const TabGtk* tab) const OVERRIDE; |
| 136 virtual void ActivateTab(TabGtk* tab); | 139 virtual void ActivateTab(TabGtk* tab) OVERRIDE; |
| 137 virtual void ToggleTabSelection(TabGtk* tab); | 140 virtual void ToggleTabSelection(TabGtk* tab) OVERRIDE; |
| 138 virtual void ExtendTabSelection(TabGtk* tab); | 141 virtual void ExtendTabSelection(TabGtk* tab) OVERRIDE; |
| 139 virtual void CloseTab(TabGtk* tab); | 142 virtual void CloseTab(TabGtk* tab) OVERRIDE; |
| 140 virtual bool IsCommandEnabledForTab( | 143 virtual bool IsCommandEnabledForTab( |
| 141 TabStripModel::ContextMenuCommand command_id, const TabGtk* tab) const; | 144 TabStripModel::ContextMenuCommand command_id, |
| 145 const TabGtk* tab) const OVERRIDE; |
| 142 virtual void ExecuteCommandForTab( | 146 virtual void ExecuteCommandForTab( |
| 143 TabStripModel::ContextMenuCommand command_id, TabGtk* tab); | 147 TabStripModel::ContextMenuCommand command_id, TabGtk* tab) OVERRIDE; |
| 144 virtual void StartHighlightTabsForCommand( | 148 virtual void StartHighlightTabsForCommand( |
| 145 TabStripModel::ContextMenuCommand command_id, TabGtk* tab); | 149 TabStripModel::ContextMenuCommand command_id, TabGtk* tab) OVERRIDE; |
| 146 virtual void StopHighlightTabsForCommand( | 150 virtual void StopHighlightTabsForCommand( |
| 147 TabStripModel::ContextMenuCommand command_id, TabGtk* tab); | 151 TabStripModel::ContextMenuCommand command_id, TabGtk* tab) OVERRIDE; |
| 148 virtual void StopAllHighlighting(); | 152 virtual void StopAllHighlighting() OVERRIDE; |
| 149 virtual void MaybeStartDrag(TabGtk* tab, const gfx::Point& point); | 153 virtual void MaybeStartDrag(TabGtk* tab, const gfx::Point& point) OVERRIDE; |
| 150 virtual void ContinueDrag(GdkDragContext* context); | 154 virtual void ContinueDrag(GdkDragContext* context) OVERRIDE; |
| 151 virtual bool EndDrag(bool canceled); | 155 virtual bool EndDrag(bool canceled) OVERRIDE; |
| 152 virtual bool HasAvailableDragActions() const; | 156 virtual bool HasAvailableDragActions() const OVERRIDE; |
| 153 virtual GtkThemeService* GetThemeProvider(); | 157 virtual GtkThemeService* GetThemeProvider() OVERRIDE; |
| 154 virtual TabStripMenuController* GetTabStripMenuControllerForTab(TabGtk* tab); | 158 virtual TabStripMenuController* GetTabStripMenuControllerForTab( |
| 159 TabGtk* tab) OVERRIDE; |
| 155 | 160 |
| 156 // MessageLoop::Observer implementation: | 161 // MessageLoop::Observer implementation: |
| 157 virtual void WillProcessEvent(GdkEvent* event) OVERRIDE; | 162 virtual void WillProcessEvent(GdkEvent* event) OVERRIDE; |
| 158 virtual void DidProcessEvent(GdkEvent* event) OVERRIDE; | 163 virtual void DidProcessEvent(GdkEvent* event) OVERRIDE; |
| 159 | 164 |
| 160 // Overridden from content::NotificationObserver: | 165 // Overridden from content::NotificationObserver: |
| 161 virtual void Observe(int type, | 166 virtual void Observe(int type, |
| 162 const content::NotificationSource& source, | 167 const content::NotificationSource& source, |
| 163 const content::NotificationDetails& details) OVERRIDE; | 168 const content::NotificationDetails& details) OVERRIDE; |
| 164 | 169 |
| (...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 491 | 496 |
| 492 // Helper for performing tab selection as a result of dragging over a tab. | 497 // Helper for performing tab selection as a result of dragging over a tab. |
| 493 HoverTabSelector hover_tab_selector_; | 498 HoverTabSelector hover_tab_selector_; |
| 494 | 499 |
| 495 content::NotificationRegistrar registrar_; | 500 content::NotificationRegistrar registrar_; |
| 496 | 501 |
| 497 DISALLOW_COPY_AND_ASSIGN(TabStripGtk); | 502 DISALLOW_COPY_AND_ASSIGN(TabStripGtk); |
| 498 }; | 503 }; |
| 499 | 504 |
| 500 #endif // CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ | 505 #endif // CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_GTK_H_ |
| OLD | NEW |