OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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_GTK_TABS_TAB_RENDERER_GTK_H_ | 5 #ifndef CHROME_BROWSER_GTK_TABS_TAB_RENDERER_GTK_H_ |
6 #define CHROME_BROWSER_GTK_TABS_TAB_RENDERER_GTK_H_ | 6 #define CHROME_BROWSER_GTK_TABS_TAB_RENDERER_GTK_H_ |
7 | 7 |
8 #include <gtk/gtk.h> | 8 #include <gtk/gtk.h> |
9 | 9 |
10 #include "app/animation.h" | 10 #include "app/animation.h" |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 // should be specified. If other things change, set this flag to false to | 77 // should be specified. If other things change, set this flag to false to |
78 // update everything. | 78 // update everything. |
79 void UpdateData(TabContents* contents, bool loading_only); | 79 void UpdateData(TabContents* contents, bool loading_only); |
80 | 80 |
81 // Updates the display to reflect the contents of this TabRenderer's model. | 81 // Updates the display to reflect the contents of this TabRenderer's model. |
82 void UpdateFromModel(); | 82 void UpdateFromModel(); |
83 | 83 |
84 // Returns true if the Tab is selected, false otherwise. | 84 // Returns true if the Tab is selected, false otherwise. |
85 virtual bool IsSelected() const; | 85 virtual bool IsSelected() const; |
86 | 86 |
| 87 // Returns true if the Tab is visible, false otherwise. |
| 88 virtual bool IsVisible() const; |
| 89 |
| 90 // Sets the visibility of the Tab. |
| 91 virtual void SetVisible(bool visible) const; |
| 92 |
87 // Notifies subclasses that the close button has been resized to |bounds|. | 93 // Notifies subclasses that the close button has been resized to |bounds|. |
88 virtual void CloseButtonResized(const gfx::Rect& bounds); | 94 virtual void CloseButtonResized(const gfx::Rect& bounds); |
89 | 95 |
90 // Paints the tab into |canvas|. | 96 // Paints the tab into |canvas|. |
91 virtual void Paint(GdkEventExpose* event); | 97 virtual void Paint(GdkEventExpose* event); |
92 | 98 |
| 99 // There is no PaintNow available, so the fastest we can do is schedule a |
| 100 // paint with the windowing system. |
| 101 virtual void SchedulePaint(); |
| 102 |
93 // Advance the loading animation to the next frame, or hide the animation if | 103 // Advance the loading animation to the next frame, or hide the animation if |
94 // the tab isn't loading. | 104 // the tab isn't loading. |
95 void ValidateLoadingAnimation(AnimationState animation_state); | 105 void ValidateLoadingAnimation(AnimationState animation_state); |
96 | 106 |
97 bool IsVisible(); | |
98 | |
99 // Returns the minimum possible size of a single unselected Tab. | 107 // Returns the minimum possible size of a single unselected Tab. |
100 static gfx::Size GetMinimumUnselectedSize(); | 108 static gfx::Size GetMinimumUnselectedSize(); |
101 // Returns the minimum possible size of a selected Tab. Selected tabs must | 109 // Returns the minimum possible size of a selected Tab. Selected tabs must |
102 // always show a close button and have a larger minimum size than unselected | 110 // always show a close button and have a larger minimum size than unselected |
103 // tabs. | 111 // tabs. |
104 static gfx::Size GetMinimumSelectedSize(); | 112 static gfx::Size GetMinimumSelectedSize(); |
105 // Returns the preferred size of a single Tab, assuming space is | 113 // Returns the preferred size of a single Tab, assuming space is |
106 // available. | 114 // available. |
107 static gfx::Size GetStandardSize(); | 115 static gfx::Size GetStandardSize(); |
108 | 116 |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 LoadingAnimation loading_animation_; | 255 LoadingAnimation loading_animation_; |
248 | 256 |
249 // TODO(jhawkins): If the theme is changed after the tab is created, we'll | 257 // TODO(jhawkins): If the theme is changed after the tab is created, we'll |
250 // still render the old theme for this tab. | 258 // still render the old theme for this tab. |
251 ThemeProvider* theme_provider_; | 259 ThemeProvider* theme_provider_; |
252 | 260 |
253 DISALLOW_COPY_AND_ASSIGN(TabRendererGtk); | 261 DISALLOW_COPY_AND_ASSIGN(TabRendererGtk); |
254 }; | 262 }; |
255 | 263 |
256 #endif // CHROME_BROWSER_GTK_TABS_TAB_RENDERER_GTK_H_ | 264 #endif // CHROME_BROWSER_GTK_TABS_TAB_RENDERER_GTK_H_ |
OLD | NEW |