Chromium Code Reviews| Index: chrome/browser/ui/views/omnibox/omnibox_view_views.cc |
| diff --git a/chrome/browser/ui/views/omnibox/omnibox_view_views.cc b/chrome/browser/ui/views/omnibox/omnibox_view_views.cc |
| index f6212641d21c8a69135c2e723696fee42ff51a16..34349bf533b89ea981c7ccf6f77acf112595d3e6 100644 |
| --- a/chrome/browser/ui/views/omnibox/omnibox_view_views.cc |
| +++ b/chrome/browser/ui/views/omnibox/omnibox_view_views.cc |
| @@ -28,6 +28,7 @@ |
| #include "ui/gfx/render_text.h" |
| #include "views/border.h" |
| #include "views/controls/textfield/textfield.h" |
| +#include "views/events/event.h" |
| #include "views/layout/fill_layout.h" |
| #if defined(TOUCH_UI) |
| @@ -79,6 +80,10 @@ class AutocompleteTextfield : public views::Textfield { |
| return views::View::IsFocusable(); |
| } |
| + virtual bool OnMousePressed(const views::MouseEvent& event) OVERRIDE { |
| + return omnibox_view_->HandleMousePressEvent(event); |
| + } |
| + |
| private: |
| OmniboxViewViews* omnibox_view_; |
| @@ -266,6 +271,16 @@ bool OmniboxViewViews::HandleKeyReleaseEvent(const views::KeyEvent& event) { |
| return false; |
| } |
| +bool OmniboxViewViews::HandleMousePressEvent(const views::MouseEvent& event) { |
| + if (!textfield_->HasFocus() && !textfield_->HasSelection()) { |
|
oshima
2011/11/14 19:31:09
We may need to check if the textfield has IME comp
jennyz
2011/11/14 19:50:14
Done. Will do.
|
| + textfield_->SelectAll(); |
| + textfield_->RequestFocus(); |
| + return true; |
| + } |
| + |
| + return false; |
| +} |
| + |
| void OmniboxViewViews::HandleFocusIn() { |
| // TODO(oshima): Get control key state. |
| model_->OnSetFocus(false); |