OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "ash/launcher/launcher_view.h" | 5 #include "ash/launcher/launcher_view.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "ash/ash_constants.h" | 9 #include "ash/ash_constants.h" |
10 #include "ash/ash_switches.h" | 10 #include "ash/ash_switches.h" |
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
413 AddChildView(overflow_button_); | 413 AddChildView(overflow_button_); |
414 UpdateFirstButtonPadding(); | 414 UpdateFirstButtonPadding(); |
415 | 415 |
416 // We'll layout when our bounds change. | 416 // We'll layout when our bounds change. |
417 } | 417 } |
418 | 418 |
419 void LauncherView::OnShelfAlignmentChanged() { | 419 void LauncherView::OnShelfAlignmentChanged() { |
420 UpdateFirstButtonPadding(); | 420 UpdateFirstButtonPadding(); |
421 overflow_button_->OnShelfAlignmentChanged(); | 421 overflow_button_->OnShelfAlignmentChanged(); |
422 LayoutToIdealBounds(); | 422 LayoutToIdealBounds(); |
423 for (int i=0; i < view_model_->view_size(); ++i) { | 423 for (int i = 0; i < view_model_->view_size(); ++i) { |
424 // TODO: remove when AppIcon is a Launcher Button. | |
425 if (TYPE_APP_LIST == model_->items()[i].type) { | |
426 ShelfLayoutManager* shelf = tooltip_->shelf_layout_manager(); | |
427 static_cast<AppListButton*>(view_model_->view_at(i))->SetImageAlignment( | |
428 shelf->SelectValueForShelfAlignment( | |
429 views::ImageButton::ALIGN_CENTER, | |
430 views::ImageButton::ALIGN_LEFT, | |
431 views::ImageButton::ALIGN_RIGHT, | |
432 views::ImageButton::ALIGN_CENTER), | |
433 shelf->SelectValueForShelfAlignment( | |
434 views::ImageButton::ALIGN_TOP, | |
435 views::ImageButton::ALIGN_MIDDLE, | |
436 views::ImageButton::ALIGN_MIDDLE, | |
437 views::ImageButton::ALIGN_BOTTOM)); | |
438 } | |
439 if (i >= first_visible_index_ && i <= last_visible_index_) | 424 if (i >= first_visible_index_ && i <= last_visible_index_) |
440 view_model_->view_at(i)->Layout(); | 425 view_model_->view_at(i)->Layout(); |
441 } | 426 } |
442 tooltip_->UpdateArrow(); | 427 tooltip_->UpdateArrow(); |
443 if (overflow_bubble_) | 428 if (overflow_bubble_) |
444 overflow_bubble_->Hide(); | 429 overflow_bubble_->Hide(); |
445 } | 430 } |
446 | 431 |
447 gfx::Rect LauncherView::GetIdealBoundsOfItemIcon(LauncherID id) { | 432 gfx::Rect LauncherView::GetIdealBoundsOfItemIcon(LauncherID id) { |
448 int index = model_->ItemIndexByID(id); | 433 int index = model_->ItemIndexByID(id); |
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
756 this, this, tooltip_->shelf_layout_manager()); | 741 this, this, tooltip_->shelf_layout_manager()); |
757 button->SetImage(item.image); | 742 button->SetImage(item.image); |
758 ReflectItemStatus(item, button); | 743 ReflectItemStatus(item, button); |
759 view = button; | 744 view = button; |
760 break; | 745 break; |
761 } | 746 } |
762 | 747 |
763 case TYPE_APP_LIST: { | 748 case TYPE_APP_LIST: { |
764 // TODO(dave): turn this into a LauncherButton too. | 749 // TODO(dave): turn this into a LauncherButton too. |
765 AppListButton* button = new AppListButton(this, this); | 750 AppListButton* button = new AppListButton(this, this); |
766 ShelfLayoutManager* shelf = tooltip_->shelf_layout_manager(); | |
767 button->SetImageAlignment( | |
768 shelf->SelectValueForShelfAlignment( | |
769 views::ImageButton::ALIGN_CENTER, | |
770 views::ImageButton::ALIGN_LEFT, | |
771 views::ImageButton::ALIGN_RIGHT, | |
772 views::ImageButton::ALIGN_CENTER), | |
773 shelf->SelectValueForShelfAlignment( | |
774 views::ImageButton::ALIGN_TOP, | |
775 views::ImageButton::ALIGN_MIDDLE, | |
776 views::ImageButton::ALIGN_MIDDLE, | |
777 views::ImageButton::ALIGN_BOTTOM)); | |
778 view = button; | 751 view = button; |
779 break; | 752 break; |
780 } | 753 } |
781 | 754 |
782 case TYPE_BROWSER_SHORTCUT: { | 755 case TYPE_BROWSER_SHORTCUT: { |
783 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); | 756 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
784 LauncherButton* button = LauncherButton::Create( | 757 LauncherButton* button = LauncherButton::Create( |
785 this, this, tooltip_->shelf_layout_manager()); | 758 this, this, tooltip_->shelf_layout_manager()); |
786 int image_id = delegate_ ? | 759 int image_id = delegate_ ? |
787 delegate_->GetBrowserShortcutResourceId() : | 760 delegate_->GetBrowserShortcutResourceId() : |
(...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1522 bool LauncherView::ShouldShowTooltipForView(const views::View* view) const { | 1495 bool LauncherView::ShouldShowTooltipForView(const views::View* view) const { |
1523 if (view == GetAppListButtonView() && | 1496 if (view == GetAppListButtonView() && |
1524 Shell::GetInstance()->GetAppListWindow()) | 1497 Shell::GetInstance()->GetAppListWindow()) |
1525 return false; | 1498 return false; |
1526 const LauncherItem* item = LauncherItemForView(view); | 1499 const LauncherItem* item = LauncherItemForView(view); |
1527 return (!item || delegate_->ShouldShowTooltip(*item)); | 1500 return (!item || delegate_->ShouldShowTooltip(*item)); |
1528 } | 1501 } |
1529 | 1502 |
1530 } // namespace internal | 1503 } // namespace internal |
1531 } // namespace ash | 1504 } // namespace ash |
OLD | NEW |