OLD | NEW |
1 // Copyright (c) 2010 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_VIEWS_BROWSER_BUBBLE_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_BROWSER_BUBBLE_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_BROWSER_BUBBLE_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_BROWSER_BUBBLE_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "views/view.h" | 9 #include "views/view.h" |
10 #include "views/widget/widget.h" | 10 #include "views/widget/widget.h" |
11 | 11 |
(...skipping 21 matching lines...) Expand all Loading... |
33 | 33 |
34 // Called when the bubble became inactive / lost focus. | 34 // Called when the bubble became inactive / lost focus. |
35 // |lost_focus_to_child| is true when a child window became active. | 35 // |lost_focus_to_child| is true when a child window became active. |
36 virtual void BubbleLostFocus(BrowserBubble* bubble, | 36 virtual void BubbleLostFocus(BrowserBubble* bubble, |
37 bool lost_focus_to_child) {} | 37 bool lost_focus_to_child) {} |
38 }; | 38 }; |
39 | 39 |
40 // Note that the bubble will size itself to the preferred size of |view|. | 40 // Note that the bubble will size itself to the preferred size of |view|. |
41 // |view| is the embedded view, |frame| is widget that the bubble is being | 41 // |view| is the embedded view, |frame| is widget that the bubble is being |
42 // positioned relative to, |origin| is the location that the bubble will | 42 // positioned relative to, |origin| is the location that the bubble will |
43 // be positioned relative to |frame|. Pass true through |drop_shadow| to | 43 // be positioned relative to |frame|. |
44 // surround the bubble widget with a drop-shadow. | |
45 BrowserBubble(views::View* view, views::Widget* frame, | 44 BrowserBubble(views::View* view, views::Widget* frame, |
46 const gfx::Point& origin, bool drop_shadow); | 45 const gfx::Point& origin); |
47 virtual ~BrowserBubble(); | 46 virtual ~BrowserBubble(); |
48 | 47 |
49 // Call manually if you need to detach the bubble from tracking the browser's | 48 // Call manually if you need to detach the bubble from tracking the browser's |
50 // position. Note that you must call this manually before deleting this | 49 // position. Note that you must call this manually before deleting this |
51 // object since it can't be safely called from the destructor. | 50 // object since it can't be safely called from the destructor. |
52 void DetachFromBrowser(); | 51 void DetachFromBrowser(); |
53 | 52 |
54 // Normally called automatically during construction, but if DetachFromBrowser | 53 // Normally called automatically during construction, but if DetachFromBrowser |
55 // has been called manually, then this call will reattach. | 54 // has been called manually, then this call will reattach. |
56 void AttachToBrowser(); | 55 void AttachToBrowser(); |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 | 111 |
113 // Current visibility. | 112 // Current visibility. |
114 bool visible_; | 113 bool visible_; |
115 | 114 |
116 // The delegate isn't owned by the bubble. | 115 // The delegate isn't owned by the bubble. |
117 Delegate* delegate_; | 116 Delegate* delegate_; |
118 | 117 |
119 // Is the bubble attached to a Browser window. | 118 // Is the bubble attached to a Browser window. |
120 bool attached_; | 119 bool attached_; |
121 | 120 |
122 // Does the bubble have a drop-shadow. | |
123 bool drop_shadow_enabled_; | |
124 | |
125 // Non-owning pointer to the host of this bubble. | 121 // Non-owning pointer to the host of this bubble. |
126 BrowserBubbleHost* bubble_host_; | 122 BrowserBubbleHost* bubble_host_; |
127 | 123 |
128 DISALLOW_COPY_AND_ASSIGN(BrowserBubble); | 124 DISALLOW_COPY_AND_ASSIGN(BrowserBubble); |
129 }; | 125 }; |
130 | 126 |
131 #endif // CHROME_BROWSER_UI_VIEWS_BROWSER_BUBBLE_H_ | 127 #endif // CHROME_BROWSER_UI_VIEWS_BROWSER_BUBBLE_H_ |
OLD | NEW |