Index: ui/views/focus/focus_manager.cc |
diff --git a/ui/views/focus/focus_manager.cc b/ui/views/focus/focus_manager.cc |
index b4bbd17cba9081be0fea01481b4bb9e41b0d2bdc..3a6bba730b544c482a522eaddb6a1b914a30db5d 100644 |
--- a/ui/views/focus/focus_manager.cc |
+++ b/ui/views/focus/focus_manager.cc |
@@ -313,8 +313,12 @@ View* FocusManager::GetNextFocusableView(View* original_starting_view, |
void FocusManager::SetFocusedViewWithReason( |
View* view, FocusChangeReason reason) { |
- if (focused_view_ == view) |
+ if (focused_view_ == view) { |
+ // In the case that the widget lost the focus and gained it back without |
+ // changing the focused view, we have to make the text input client focused. |
+ FocusTextInputClient(focused_view_); |
sky
2014/05/27 17:05:44
We also can end up here if View::RequestFocus() is
Yuki
2014/05/28 15:02:43
No, nothing bad happen.
If the widget is active,
|
return; |
+ } |
base::AutoReset<bool> auto_changing_focus(&is_changing_focus_, true); |
// Update the reason for the focus change (since this is checked by |