Index: chrome/browser/chromeos/login/message_bubble.h |
diff --git a/chrome/browser/chromeos/login/message_bubble.h b/chrome/browser/chromeos/login/message_bubble.h |
index 82f9cbe15dac0bd3e81c5070a326a16472442cd1..9bc4464dbfd0b38b610858626d8a55d8fb05e69a 100644 |
--- a/chrome/browser/chromeos/login/message_bubble.h |
+++ b/chrome/browser/chromeos/login/message_bubble.h |
@@ -8,6 +8,7 @@ |
#include "chrome/browser/views/info_bubble.h" |
#include "views/controls/button/button.h" |
#include "views/view.h" |
+#include "views/widget/widget_gtk.h" |
class SkBitmap; |
@@ -31,23 +32,39 @@ class MessageBubble : public InfoBubble, |
const std::wstring& text, |
InfoBubbleDelegate* delegate); |
- // Overridden from WidgetWin |
+ // Create and show bubble which does not grab pointer. This creates |
+ // a TYPE_CHILD WidgetGtk and |position_relative_to| must be in parent's |
+ // coordinates. |
+ static MessageBubble* ShowNoGrab(views::Widget* parent, |
+ const gfx::Rect& position_relative_to, |
+ BubbleBorder::ArrowLocation arrow_location, |
+ SkBitmap* image, |
+ const std::wstring& text, |
+ InfoBubbleDelegate* delegate); |
+ |
+ // Overridden from WidgetGtk. |
virtual void Close(); |
protected: |
+ |
+ // views::ButtonListener implmenets. |
virtual void ButtonPressed(views::Button* sender, |
const views::Event& event); |
+ // Overridden from WidgetGtk. |
virtual void IsActiveChanged(); |
+ virtual void DoGrab(); |
private: |
- MessageBubble(views::Widget* parent, SkBitmap* image, |
- const std::wstring& text); |
+ MessageBubble(views::WidgetGtk::Type type, |
+ views::Widget* parent, SkBitmap* image, |
+ const std::wstring& text, bool grab_enabled); |
views::Widget* parent_; |
views::ImageView* icon_; |
views::Label* text_; |
views::ImageButton* close_button_; |
+ bool grab_enabled_; |
DISALLOW_COPY_AND_ASSIGN(MessageBubble); |
}; |