Index: athena/home/home_card_impl.cc |
diff --git a/athena/home/home_card_impl.cc b/athena/home/home_card_impl.cc |
index bd481f83ac0a03a1e3b37851ffd57ac4b2396ec0..0066cf3d3be8e000d6fe2972df30c5e20fa8b190 100644 |
--- a/athena/home/home_card_impl.cc |
+++ b/athena/home/home_card_impl.cc |
@@ -156,6 +156,11 @@ class HomeCardView : public views::WidgetDelegateView { |
void SetStateProgress(HomeCard::State from_state, |
HomeCard::State to_state, |
float progress) { |
+ // TODO(mukai): not clear the focus, but simply close the virtual keyboard. |
+ if (from_state != HomeCard::VISIBLE_CENTERED || |
+ to_state != HomeCard::VISIBLE_CENTERED) { |
+ GetFocusManager()->ClearFocus(); |
+ } |
if (from_state == HomeCard::VISIBLE_CENTERED) |
main_view_->SetLayoutState(1.0f - progress); |
else if (to_state == HomeCard::VISIBLE_CENTERED) |
@@ -178,6 +183,11 @@ class HomeCardView : public views::WidgetDelegateView { |
} |
void SetStateWithAnimation(HomeCard::State state) { |
+ if (state == HomeCard::VISIBLE_CENTERED) |
+ main_view_->RequestFocusOnSearchBox(); |
+ else |
+ GetWidget()->GetFocusManager()->ClearFocus(); |
+ |
if (state == HomeCard::VISIBLE_MINIMIZED) |
return; |