OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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_STATUS_BUBBLE_GTK_H_ | 5 #ifndef CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ |
6 #define CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ | 6 #define CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <gtk/gtk.h> | 9 #include <gtk/gtk.h> |
10 | 10 |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 | 98 |
99 // Returns true if the status bubble is in the expand-state (i.e., is | 99 // Returns true if the status bubble is in the expand-state (i.e., is |
100 // currently expanded or in the process of expanding). | 100 // currently expanded or in the process of expanding). |
101 bool expanded() { | 101 bool expanded() { |
102 return expand_animation_.get(); | 102 return expand_animation_.get(); |
103 } | 103 } |
104 | 104 |
105 CHROMEGTK_CALLBACK_1(StatusBubbleGtk, gboolean, HandleMotionNotify, | 105 CHROMEGTK_CALLBACK_1(StatusBubbleGtk, gboolean, HandleMotionNotify, |
106 GdkEventMotion*); | 106 GdkEventMotion*); |
107 | 107 |
| 108 CHROMEGTK_CALLBACK_1(StatusBubbleGtk, gboolean, HandleEnterNotify, |
| 109 GdkEventCrossing*); |
| 110 |
108 NotificationRegistrar registrar_; | 111 NotificationRegistrar registrar_; |
109 | 112 |
110 // Provides colors. | 113 // Provides colors. |
111 GtkThemeProvider* theme_provider_; | 114 GtkThemeProvider* theme_provider_; |
112 | 115 |
113 // The toplevel event box. | 116 // The toplevel event box. |
114 OwnedWidgetGtk container_; | 117 OwnedWidgetGtk container_; |
115 | 118 |
116 // The GtkAlignment holding |label_|. | 119 // The GtkAlignment holding |label_|. |
117 GtkWidget* padding_; | 120 GtkWidget* padding_; |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 int y_offset_; | 157 int y_offset_; |
155 | 158 |
156 // If the download shelf is visible, do not obscure it. | 159 // If the download shelf is visible, do not obscure it. |
157 bool download_shelf_is_visible_; | 160 bool download_shelf_is_visible_; |
158 | 161 |
159 // 'location' and 'left_content' values from the last invocation of | 162 // 'location' and 'left_content' values from the last invocation of |
160 // MouseMoved(). We hang onto these so we can move the bubble if necessary | 163 // MouseMoved(). We hang onto these so we can move the bubble if necessary |
161 // when its text changes, triggering a size change. | 164 // when its text changes, triggering a size change. |
162 gfx::Point last_mouse_location_; | 165 gfx::Point last_mouse_location_; |
163 bool last_mouse_left_content_; | 166 bool last_mouse_left_content_; |
| 167 |
| 168 // Shortly after the cursor enters the status bubble, we'll get a message |
| 169 // that the cursor left the content area. This lets us ignore that. |
| 170 bool ignore_next_left_content_; |
164 }; | 171 }; |
165 | 172 |
166 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ | 173 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ |
OLD | NEW |