| 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 | 7 |
| 8 #include <gtk/gtk.h> | 8 #include <gtk/gtk.h> |
| 9 | 9 |
| 10 #include <string> | 10 #include <string> |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 62 | 62 |
| 63 // Sets an internal timer to hide the status bubble after a delay. | 63 // Sets an internal timer to hide the status bubble after a delay. |
| 64 void HideInASecond(); | 64 void HideInASecond(); |
| 65 | 65 |
| 66 // Builds the widgets, containers, etc. | 66 // Builds the widgets, containers, etc. |
| 67 void InitWidgets(); | 67 void InitWidgets(); |
| 68 | 68 |
| 69 // Notification from the window that we should retheme ourself. | 69 // Notification from the window that we should retheme ourself. |
| 70 void UserChangedTheme(); | 70 void UserChangedTheme(); |
| 71 | 71 |
| 72 // Draws the inside border. |
| 73 static gboolean OnExpose(GtkWidget* widget, GdkEventExpose* event, |
| 74 StatusBubbleGtk* bubble); |
| 75 |
| 76 // When we have a new size, modify our widget shape. |
| 77 static void OnSizeAllocate(GtkWidget* widget, GtkAllocation* allocation, |
| 78 StatusBubbleGtk* bubble); |
| 79 |
| 72 NotificationRegistrar registrar_; | 80 NotificationRegistrar registrar_; |
| 73 | 81 |
| 74 // Provides colors. | 82 // Provides colors. |
| 75 GtkThemeProvider* theme_provider_; | 83 GtkThemeProvider* theme_provider_; |
| 76 | 84 |
| 77 // A GtkAlignment that is the child of |slide_widget_|. | 85 // The toplevel event box. |
| 78 OwnedWidgetGtk container_; | 86 OwnedWidgetGtk container_; |
| 79 | 87 |
| 80 // The GtkLabel holding the text. | 88 // The GtkLabel holding the text. |
| 81 GtkWidget* label_; | 89 GtkWidget* label_; |
| 82 | 90 |
| 83 // The background event box. We keep this so we can change its background | |
| 84 // color. | |
| 85 GtkWidget* bg_box_; | |
| 86 | |
| 87 // The status text we want to display when there are no URLs to display. | 91 // The status text we want to display when there are no URLs to display. |
| 88 std::string status_text_; | 92 std::string status_text_; |
| 89 | 93 |
| 90 // The url we want to display when there is no status text to display. | 94 // The url we want to display when there is no status text to display. |
| 91 std::string url_text_; | 95 std::string url_text_; |
| 92 | 96 |
| 97 // Color of the lighter border around the edge of the status bubble. |
| 98 GdkColor border_color_; |
| 99 |
| 93 // A timer that hides our window after a delay. | 100 // A timer that hides our window after a delay. |
| 94 ScopedRunnableMethodFactory<StatusBubbleGtk> timer_factory_; | 101 ScopedRunnableMethodFactory<StatusBubbleGtk> timer_factory_; |
| 95 }; | 102 }; |
| 96 | 103 |
| 97 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ | 104 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ |
| OLD | NEW |