| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/app_list/views/search_result_page_view.h" | 5 #include "ui/app_list/views/search_result_page_view.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 | 10 |
| 11 #include "base/memory/ptr_util.h" |
| 11 #include "ui/app_list/app_list_constants.h" | 12 #include "ui/app_list/app_list_constants.h" |
| 12 #include "ui/app_list/app_list_switches.h" | 13 #include "ui/app_list/app_list_switches.h" |
| 13 #include "ui/app_list/app_list_view_delegate.h" | 14 #include "ui/app_list/app_list_view_delegate.h" |
| 14 #include "ui/app_list/views/app_list_main_view.h" | 15 #include "ui/app_list/views/app_list_main_view.h" |
| 15 #include "ui/app_list/views/search_box_view.h" | 16 #include "ui/app_list/views/search_box_view.h" |
| 16 #include "ui/app_list/views/search_result_list_view.h" | 17 #include "ui/app_list/views/search_result_list_view.h" |
| 17 #include "ui/app_list/views/search_result_tile_item_list_view.h" | 18 #include "ui/app_list/views/search_result_tile_item_list_view.h" |
| 18 #include "ui/gfx/shadow_value.h" | 19 #include "ui/gfx/shadow_value.h" |
| 19 #include "ui/views/background.h" | 20 #include "ui/views/background.h" |
| 20 #include "ui/views/layout/box_layout.h" | 21 #include "ui/views/layout/box_layout.h" |
| 21 #include "ui/views/layout/fill_layout.h" | 22 #include "ui/views/layout/fill_layout.h" |
| 22 #include "ui/views/shadow_border.h" | 23 #include "ui/views/shadow_border.h" |
| 23 | 24 |
| 24 namespace app_list { | 25 namespace app_list { |
| 25 | 26 |
| 26 namespace { | 27 namespace { |
| 27 | 28 |
| 28 const int kGroupSpacing = 6; | 29 const int kGroupSpacing = 6; |
| 29 const int kTopPadding = 8; | 30 const int kTopPadding = 8; |
| 30 | 31 |
| 31 // The z-height of the search box and cards in this view. | 32 // The z-height of the search box and cards in this view. |
| 32 const int kSearchResultZHeight = 1; | 33 const int kSearchResultZHeight = 1; |
| 33 | 34 |
| 34 // A container view that ensures the card background and the shadow are painted | 35 // A container view that ensures the card background and the shadow are painted |
| 35 // in the correct order. | 36 // in the correct order. |
| 36 class SearchCardView : public views::View { | 37 class SearchCardView : public views::View { |
| 37 public: | 38 public: |
| 38 explicit SearchCardView(views::View* content_view) { | 39 explicit SearchCardView(views::View* content_view) { |
| 39 SetBorder(make_scoped_ptr( | 40 SetBorder(base::WrapUnique( |
| 40 new views::ShadowBorder(GetShadowForZHeight(kSearchResultZHeight)))); | 41 new views::ShadowBorder(GetShadowForZHeight(kSearchResultZHeight)))); |
| 41 SetLayoutManager(new views::FillLayout()); | 42 SetLayoutManager(new views::FillLayout()); |
| 42 content_view->set_background( | 43 content_view->set_background( |
| 43 views::Background::CreateSolidBackground(kCardBackgroundColor)); | 44 views::Background::CreateSolidBackground(kCardBackgroundColor)); |
| 44 AddChildView(content_view); | 45 AddChildView(content_view); |
| 45 } | 46 } |
| 46 | 47 |
| 47 ~SearchCardView() override {} | 48 ~SearchCardView() override {} |
| 48 }; | 49 }; |
| 49 | 50 |
| 50 } // namespace | 51 } // namespace |
| 51 | 52 |
| 52 SearchResultPageView::SearchResultPageView() : selected_index_(0) { | 53 SearchResultPageView::SearchResultPageView() : selected_index_(0) { |
| 53 if (switches::IsExperimentalAppListEnabled()) { | 54 if (switches::IsExperimentalAppListEnabled()) { |
| 54 gfx::ShadowValue shadow = GetShadowForZHeight(kSearchResultZHeight); | 55 gfx::ShadowValue shadow = GetShadowForZHeight(kSearchResultZHeight); |
| 55 scoped_ptr<views::Border> border(new views::ShadowBorder(shadow)); | 56 std::unique_ptr<views::Border> border(new views::ShadowBorder(shadow)); |
| 56 | 57 |
| 57 gfx::Insets insets = gfx::Insets(kTopPadding, kExperimentalSearchBoxPadding, | 58 gfx::Insets insets = gfx::Insets(kTopPadding, kExperimentalSearchBoxPadding, |
| 58 0, kExperimentalSearchBoxPadding); | 59 0, kExperimentalSearchBoxPadding); |
| 59 insets += -border->GetInsets(); | 60 insets += -border->GetInsets(); |
| 60 | 61 |
| 61 views::BoxLayout* layout = | 62 views::BoxLayout* layout = |
| 62 new views::BoxLayout(views::BoxLayout::kVertical, 0, 0, kGroupSpacing); | 63 new views::BoxLayout(views::BoxLayout::kVertical, 0, 0, kGroupSpacing); |
| 63 layout->set_inside_border_insets(insets); | 64 layout->set_inside_border_insets(insets); |
| 64 | 65 |
| 65 SetLayoutManager(layout); | 66 SetLayoutManager(layout); |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 return switches::IsExperimentalAppListEnabled() | 247 return switches::IsExperimentalAppListEnabled() |
| 247 ? kSearchResultZHeight | 248 ? kSearchResultZHeight |
| 248 : AppListPage::GetSearchBoxZHeight(); | 249 : AppListPage::GetSearchBoxZHeight(); |
| 249 } | 250 } |
| 250 | 251 |
| 251 void SearchResultPageView::OnHidden() { | 252 void SearchResultPageView::OnHidden() { |
| 252 ClearSelectedIndex(); | 253 ClearSelectedIndex(); |
| 253 } | 254 } |
| 254 | 255 |
| 255 } // namespace app_list | 256 } // namespace app_list |
| OLD | NEW |