Index: chrome/browser/ui/views/find_bar_view.cc |
diff --git a/chrome/browser/ui/views/find_bar_view.cc b/chrome/browser/ui/views/find_bar_view.cc |
index 28bb7ddb812558444627fc738b38f66dd92be2c8..8e3e6836f9d2df52947a61da9e3b049274062b9a 100644 |
--- a/chrome/browser/ui/views/find_bar_view.cc |
+++ b/chrome/browser/ui/views/find_bar_view.cc |
@@ -498,15 +498,27 @@ bool FindBarView::FocusForwarderView::OnMousePressed( |
return true; |
} |
-FindBarView::SearchTextfieldView::SearchTextfieldView() {} |
+FindBarView::SearchTextfieldView::SearchTextfieldView() |
+ : select_all_on_focus_(true) {} |
FindBarView::SearchTextfieldView::~SearchTextfieldView() {} |
-void FindBarView::SearchTextfieldView::RequestFocus() { |
- if (HasFocus()) |
- return; |
- views::View::RequestFocus(); |
- SelectAll(true); |
+bool FindBarView::SearchTextfieldView::OnMousePressed( |
+ const ui::MouseEvent& event) { |
+ select_all_on_focus_ = false; |
Ben Goodger (Google)
2013/04/18 19:38:51
can you explain in more detail why this is needed?
msw
2013/04/18 20:07:25
Oh, no. It's only needed for when the view is gain
|
+ return views::Textfield::OnMousePressed(event); |
+} |
+ |
+void FindBarView::SearchTextfieldView::OnMouseReleased( |
+ const ui::MouseEvent& event) { |
+ views::Textfield::OnMouseReleased(event); |
+ select_all_on_focus_ = true; |
+} |
+ |
+void FindBarView::SearchTextfieldView::OnFocus() { |
+ views::Textfield::OnFocus(); |
+ if (select_all_on_focus_) |
+ SelectAll(true); |
} |
FindBarHost* FindBarView::find_bar_host() const { |