| Index: ui/app_list/views/search_box_view.cc
|
| diff --git a/ui/app_list/views/search_box_view.cc b/ui/app_list/views/search_box_view.cc
|
| index 7acba845febcd0d4e5a8ece9eb0d896d608d78c4..56c0e38760881a1a10d6da6d4606ff4dacf88890 100644
|
| --- a/ui/app_list/views/search_box_view.cc
|
| +++ b/ui/app_list/views/search_box_view.cc
|
| @@ -10,12 +10,14 @@
|
| #include "base/memory/ptr_util.h"
|
| #include "build/build_config.h"
|
| #include "ui/app_list/app_list_constants.h"
|
| +#include "ui/app_list/app_list_features.h"
|
| #include "ui/app_list/app_list_model.h"
|
| #include "ui/app_list/app_list_switches.h"
|
| #include "ui/app_list/app_list_view_delegate.h"
|
| #include "ui/app_list/resources/grit/app_list_resources.h"
|
| #include "ui/app_list/search_box_model.h"
|
| #include "ui/app_list/speech_ui_model.h"
|
| +#include "ui/app_list/views/app_list_view.h"
|
| #include "ui/app_list/views/contents_view.h"
|
| #include "ui/app_list/views/search_box_view_delegate.h"
|
| #include "ui/base/ime/text_input_flags.h"
|
| @@ -33,6 +35,7 @@
|
| #include "ui/views/layout/box_layout.h"
|
| #include "ui/views/layout/fill_layout.h"
|
| #include "ui/views/shadow_border.h"
|
| +#include "ui/views/widget/widget.h"
|
|
|
| namespace app_list {
|
|
|
| @@ -41,11 +44,13 @@ namespace {
|
| const int kPadding = 16;
|
| const int kInnerPadding = 24;
|
| const int kPreferredWidth = 360;
|
| +const int kPreferredWidthFullscreen = 544;
|
| const int kPreferredHeight = 48;
|
|
|
| const SkColor kHintTextColor = SkColorSetRGB(0xA0, 0xA0, 0xA0);
|
|
|
| const int kBackgroundBorderCornerRadius = 2;
|
| +const int kBackgroundBorderCornerRadiusFullscreen = 20;
|
|
|
| // A background that paints a solid white rounded rect with a thin grey border.
|
| class SearchBoxBackground : public views::Background {
|
| @@ -61,7 +66,11 @@ class SearchBoxBackground : public views::Background {
|
| cc::PaintFlags flags;
|
| flags.setAntiAlias(true);
|
| flags.setColor(kSearchBoxBackground);
|
| - canvas->DrawRoundRect(bounds, kBackgroundBorderCornerRadius, flags);
|
| + canvas->DrawRoundRect(bounds,
|
| + features::IsFullscreenAppListEnabled()
|
| + ? kBackgroundBorderCornerRadiusFullscreen
|
| + : kBackgroundBorderCornerRadius,
|
| + flags);
|
| }
|
|
|
| DISALLOW_COPY_AND_ASSIGN(SearchBoxBackground);
|
| @@ -122,6 +131,7 @@ SearchBoxView::SearchBoxView(SearchBoxViewDelegate* delegate,
|
| speech_button_(NULL),
|
| search_box_(new views::Textfield),
|
| contents_view_(NULL),
|
| + app_list_view_(NULL),
|
| focused_view_(FOCUS_SEARCH_BOX) {
|
| SetLayoutManager(new views::FillLayout);
|
| AddChildView(content_container_);
|
| @@ -157,6 +167,7 @@ SearchBoxView::SearchBoxView(SearchBoxViewDelegate* delegate,
|
|
|
| view_delegate_->GetSpeechUI()->AddObserver(this);
|
| ModelChanged();
|
| + is_fullscreen_enabled_ = features::IsFullscreenAppListEnabled();
|
| }
|
|
|
| SearchBoxView::~SearchBoxView() {
|
| @@ -188,6 +199,10 @@ void SearchBoxView::ClearSearch() {
|
| NotifyQueryChanged();
|
| }
|
|
|
| +void SearchBoxView::SetAppListView(AppListView* app_list_view) {
|
| + app_list_view_ = app_list_view;
|
| +}
|
| +
|
| void SearchBoxView::SetShadow(const gfx::ShadowValue& shadow) {
|
| SetBorder(base::MakeUnique<views::ShadowBorder>(shadow));
|
| Layout();
|
| @@ -287,7 +302,9 @@ void SearchBoxView::SetBackButtonLabel(bool folder) {
|
| }
|
|
|
| gfx::Size SearchBoxView::GetPreferredSize() const {
|
| - return gfx::Size(kPreferredWidth, kPreferredHeight);
|
| + return gfx::Size(
|
| + is_fullscreen_enabled_ ? kPreferredWidthFullscreen : kPreferredWidth,
|
| + kPreferredHeight);
|
| }
|
|
|
| bool SearchBoxView::OnMouseWheel(const ui::MouseWheelEvent& event) {
|
| @@ -325,6 +342,11 @@ void SearchBoxView::ContentsChanged(views::Textfield* sender,
|
| UpdateModel();
|
| view_delegate_->AutoLaunchCanceled();
|
| NotifyQueryChanged();
|
| +
|
| + if (is_fullscreen_enabled_ && !app_list_view_->IsFullscreen()) {
|
| + // If the app list is in the peeking state, switch it to fullscreen.
|
| + app_list_view_->ToFullscreen();
|
| + }
|
| }
|
|
|
| bool SearchBoxView::HandleKeyEvent(views::Textfield* sender,
|
|
|