Commit 1fa7cc2e authored by David Black's avatar David Black Committed by Commit Bot

Focus on correct view.

Which view we should focus on depends on which UI mode we are in.

Bug: b:112443502
Change-Id: I2ba63f401f0f8a900971b9c2cef7ce22cff67e4f
Reviewed-on: https://chromium-review.googlesource.com/1171142Reviewed-by: default avatarXiaohui Chen <xiaohuic@chromium.org>
Commit-Queue: David Black <dmblack@google.com>
Cr-Commit-Position: refs/heads/master@{#582310}
parent feed35d8
...@@ -187,8 +187,23 @@ void AssistantContainerView::Init() { ...@@ -187,8 +187,23 @@ void AssistantContainerView::Init() {
} }
void AssistantContainerView::RequestFocus() { void AssistantContainerView::RequestFocus() {
if (assistant_main_view_) if (!GetWidget() || !GetWidget()->IsActive())
assistant_main_view_->RequestFocus(); return;
switch (assistant_controller_->ui_controller()->model()->ui_mode()) {
case AssistantUiMode::kMiniUi:
if (assistant_mini_view_)
assistant_mini_view_->RequestFocus();
break;
case AssistantUiMode::kMainUi:
if (assistant_main_view_)
assistant_main_view_->RequestFocus();
break;
case AssistantUiMode::kWebUi:
if (assistant_web_view_)
assistant_web_view_->RequestFocus();
break;
}
} }
// TODO(dmblack): Handle dynamic re-anchoring due to shelf repositioning, etc. // TODO(dmblack): Handle dynamic re-anchoring due to shelf repositioning, etc.
...@@ -216,8 +231,6 @@ void AssistantContainerView::OnUiModeChanged(AssistantUiMode ui_mode) { ...@@ -216,8 +231,6 @@ void AssistantContainerView::OnUiModeChanged(AssistantUiMode ui_mode) {
break; break;
case AssistantUiMode::kMainUi: case AssistantUiMode::kMainUi:
assistant_main_view_->SetVisible(true); assistant_main_view_->SetVisible(true);
if (GetWidget() && GetWidget()->IsActive())
RequestFocus();
break; break;
case AssistantUiMode::kWebUi: case AssistantUiMode::kWebUi:
assistant_web_view_->SetVisible(true); assistant_web_view_->SetVisible(true);
...@@ -225,6 +238,7 @@ void AssistantContainerView::OnUiModeChanged(AssistantUiMode ui_mode) { ...@@ -225,6 +238,7 @@ void AssistantContainerView::OnUiModeChanged(AssistantUiMode ui_mode) {
} }
PreferredSizeChanged(); PreferredSizeChanged();
RequestFocus();
} }
} // namespace ash } // namespace ash
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment