Index: ui/app_list/views/apps_grid_view.cc |
diff --git a/ui/app_list/views/apps_grid_view.cc b/ui/app_list/views/apps_grid_view.cc |
index 1a7270d4e3ccc5cb198e2e670065e4561f75a715..9acafda03ed81728577f8b60b4562f3a0fdf151c 100644 |
--- a/ui/app_list/views/apps_grid_view.cc |
+++ b/ui/app_list/views/apps_grid_view.cc |
@@ -62,6 +62,7 @@ const int kDragBufferPx = 20; |
// Padding space in pixels for fixed layout. |
const int kLeftRightPadding = 20; |
const int kTopPadding = 1; |
+const int kBottomPadding = 24; |
// Padding space in pixels between pages. |
const int kPagePadding = 40; |
@@ -372,8 +373,10 @@ AppsGridView::AppsGridView(AppsGridViewDelegate* delegate) |
: PaginationController::SCROLL_AXIS_HORIZONTAL; |
pagination_controller_.reset( |
new PaginationController(&pagination_model_, scroll_axis)); |
- page_switcher_view_ = new PageSwitcher(&pagination_model_); |
- AddChildView(page_switcher_view_); |
+ if (!switches::IsExperimentalAppListEnabled()) { |
+ page_switcher_view_ = new PageSwitcher(&pagination_model_); |
+ AddChildView(page_switcher_view_); |
+ } |
} |
AppsGridView::~AppsGridView() { |
@@ -622,10 +625,12 @@ void AppsGridView::UpdateDrag(Pointer pointer, const gfx::Point& point) { |
else |
StopPageFlipTimer(); |
- gfx::Point page_switcher_point(last_drag_point_); |
- views::View::ConvertPointToTarget(this, page_switcher_view_, |
- &page_switcher_point); |
- page_switcher_view_->UpdateUIForDragPoint(page_switcher_point); |
+ if (page_switcher_view_) { |
+ gfx::Point page_switcher_point(last_drag_point_); |
+ views::View::ConvertPointToTarget( |
+ this, page_switcher_view_, &page_switcher_point); |
+ page_switcher_view_->UpdateUIForDragPoint(page_switcher_point); |
+ } |
if (!EnableFolderDragDropUI()) { |
if (last_drop_target != drop_target_) |
@@ -875,8 +880,9 @@ gfx::Size AppsGridView::GetPreferredSize() const { |
const gfx::Insets insets(GetInsets()); |
const gfx::Size tile_size = gfx::Size(kPreferredTileWidth, |
kPreferredTileHeight); |
- const int page_switcher_height = |
- page_switcher_view_->GetPreferredSize().height(); |
+ int page_switcher_height = kBottomPadding; |
+ if (page_switcher_view_) |
+ page_switcher_height = page_switcher_view_->GetPreferredSize().height(); |
return gfx::Size( |
tile_size.width() * cols_ + insets.width(), |
tile_size.height() * rows_per_page_ + |
@@ -911,12 +917,14 @@ void AppsGridView::Layout() { |
} |
views::ViewModelUtils::SetViewBoundsToIdealBounds(pulsing_blocks_model_); |
- const int page_switcher_height = |
- page_switcher_view_->GetPreferredSize().height(); |
- gfx::Rect rect(GetContentsBounds()); |
- rect.set_y(rect.bottom() - page_switcher_height); |
- rect.set_height(page_switcher_height); |
- page_switcher_view_->SetBoundsRect(rect); |
+ if (page_switcher_view_) { |
+ const int page_switcher_height = |
+ page_switcher_view_->GetPreferredSize().height(); |
+ gfx::Rect rect(GetContentsBounds()); |
+ rect.set_y(rect.bottom() - page_switcher_height); |
+ rect.set_height(page_switcher_height); |
+ page_switcher_view_->SetBoundsRect(rect); |
+ } |
} |
bool AppsGridView::OnKeyPressed(const ui::KeyEvent& event) { |
@@ -1364,7 +1372,7 @@ void AppsGridView::CalculateDropTarget(const gfx::Point& drag_point, |
current_page = drag_start_page_; |
} |
- if (use_page_button_hovering && |
+ if (use_page_button_hovering && page_switcher_view_ && |
page_switcher_view_->bounds().Contains(point)) { |
gfx::Point page_switcher_point(point); |
views::View::ConvertPointToTarget(this, page_switcher_view_, |
@@ -1403,7 +1411,7 @@ void AppsGridView::CalculateDropTargetWithFolderEnabled( |
point = drag_start_grid_view_; |
} |
- if (use_page_button_hovering && |
+ if (use_page_button_hovering && page_switcher_view_ && |
page_switcher_view_->bounds().Contains(point)) { |
gfx::Point page_switcher_point(point); |
views::View::ConvertPointToTarget(this, page_switcher_view_, |
@@ -1644,7 +1652,8 @@ void AppsGridView::MaybeStartPageFlipTimer(const gfx::Point& drag_point) { |
StopPageFlipTimer(); |
int new_page_flip_target = -1; |
- if (page_switcher_view_->bounds().Contains(drag_point)) { |
+ if (page_switcher_view_ && |
+ page_switcher_view_->bounds().Contains(drag_point)) { |
gfx::Point page_switcher_point(drag_point); |
views::View::ConvertPointToTarget(this, page_switcher_view_, |
&page_switcher_point); |