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 13 matching lines...) Expand all Loading... |
24 public: | 24 public: |
25 StatusBubbleGtk(); | 25 StatusBubbleGtk(); |
26 virtual ~StatusBubbleGtk(); | 26 virtual ~StatusBubbleGtk(); |
27 | 27 |
28 // StatusBubble implementation. | 28 // StatusBubble implementation. |
29 virtual void SetStatus(const std::wstring& status); | 29 virtual void SetStatus(const std::wstring& status); |
30 virtual void SetURL(const GURL& url, const std::wstring& languages); | 30 virtual void SetURL(const GURL& url, const std::wstring& languages); |
31 virtual void Hide(); | 31 virtual void Hide(); |
32 virtual void MouseMoved(); | 32 virtual void MouseMoved(); |
33 | 33 |
| 34 // Called when the download shelf becomes visible or invisible. |
| 35 // This is used by to ensure that the status bubble does not obscure |
| 36 // the download shelf, when it is visible. |
| 37 virtual void UpdateDownloadShelfVisibility(bool visible) { } |
| 38 |
34 void SetStatus(const std::string& status_utf8); | 39 void SetStatus(const std::string& status_utf8); |
35 | 40 |
36 // Notification from our parent GtkFixed about its size. |allocation| is the | 41 // Notification from our parent GtkFixed about its size. |allocation| is the |
37 // size of our |parent| GtkFixed, and we use it to position our status bubble | 42 // size of our |parent| GtkFixed, and we use it to position our status bubble |
38 // directly on top of the current render view. | 43 // directly on top of the current render view. |
39 void SetParentAllocation(GtkWidget* parent, GtkAllocation* allocation); | 44 void SetParentAllocation(GtkWidget* parent, GtkAllocation* allocation); |
40 | 45 |
41 // Top of the widget hierarchy for a StatusBubble. This top level widget is | 46 // Top of the widget hierarchy for a StatusBubble. This top level widget is |
42 // guarenteed to have its gtk_widget_name set to "status-bubble" for | 47 // guarenteed to have its gtk_widget_name set to "status-bubble" for |
43 // identification. | 48 // identification. |
(...skipping 27 matching lines...) Expand all Loading... |
71 | 76 |
72 // |parent_|'s GtkAllocation. We make sure that |container_| lives along the | 77 // |parent_|'s GtkAllocation. We make sure that |container_| lives along the |
73 // bottom of this and doesn't protrude. | 78 // bottom of this and doesn't protrude. |
74 GtkAllocation parent_allocation_; | 79 GtkAllocation parent_allocation_; |
75 | 80 |
76 // A timer that hides our window after a delay. | 81 // A timer that hides our window after a delay. |
77 ScopedRunnableMethodFactory<StatusBubbleGtk> timer_factory_; | 82 ScopedRunnableMethodFactory<StatusBubbleGtk> timer_factory_; |
78 }; | 83 }; |
79 | 84 |
80 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ | 85 #endif // CHROME_BROWSER_GTK_STATUS_BUBBLE_GTK_H_ |
OLD | NEW |