Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(784)

Side by Side Diff: ash/launcher/launcher_view.cc

Issue 22793011: ash:Shelf - Enable Alternate Shelf and Side Shelf by default. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ash/launcher/launcher_navigator_unittest.cc ('k') | ash/launcher/launcher_view_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 787 matching lines...) Expand 10 before | Expand all | Expand 10 after
798 last_visible_index_ = DetermineLastVisibleIndex( 798 last_visible_index_ = DetermineLastVisibleIndex(
799 end_position - inset - 2 * button_size); 799 end_position - inset - 2 * button_size);
800 last_hidden_index_ = DetermineFirstVisiblePanelIndex(end_position) - 1; 800 last_hidden_index_ = DetermineFirstVisiblePanelIndex(end_position) - 1;
801 bool show_overflow = 801 bool show_overflow =
802 ((ash::switches::UseAlternateShelfLayout() ? 0 : 1) + 802 ((ash::switches::UseAlternateShelfLayout() ? 0 : 1) +
803 last_visible_index_ < last_button_index || 803 last_visible_index_ < last_button_index ||
804 last_hidden_index_ >= first_panel_index); 804 last_hidden_index_ >= first_panel_index);
805 805
806 // Create Space for the overflow button 806 // Create Space for the overflow button
807 if (show_overflow && ash::switches::UseAlternateShelfLayout() && 807 if (show_overflow && ash::switches::UseAlternateShelfLayout() &&
808 last_visible_index_ > 0) 808 last_visible_index_ > 0 && last_visible_index_ < last_button_index)
809 --last_visible_index_; 809 --last_visible_index_;
810 for (int i = 0; i < view_model_->view_size(); ++i) { 810 for (int i = 0; i < view_model_->view_size(); ++i) {
811 bool visible = i <= last_visible_index_ || i > last_hidden_index_; 811 bool visible = i <= last_visible_index_ || i > last_hidden_index_;
812 // Always show the app list. 812 // Always show the app list.
813 if (!ash::switches::UseAlternateShelfLayout()) 813 if (!ash::switches::UseAlternateShelfLayout())
814 visible |= (i == last_button_index); 814 visible |= (i == last_button_index);
815 view_model_->view_at(i)->SetVisible(visible); 815 view_model_->view_at(i)->SetVisible(visible);
816 } 816 }
817 817
818 overflow_button_->SetVisible(show_overflow); 818 overflow_button_->SetVisible(show_overflow);
819 if (show_overflow) { 819 if (show_overflow) {
820 DCHECK_NE(0, view_model_->view_size()); 820 DCHECK_NE(0, view_model_->view_size());
821 if (last_visible_index_ == -1) { 821 if (last_visible_index_ == -1) {
822 x = shelf->SelectValueForShelfAlignment(inset, 0, 0, inset); 822 x = shelf->SelectValueForShelfAlignment(inset, 0, 0, inset);
823 y = shelf->SelectValueForShelfAlignment(0, inset, inset, 0); 823 y = shelf->SelectValueForShelfAlignment(0, inset, inset, 0);
824 } else if (last_visible_index_ == last_button_index) { 824 } else if (last_visible_index_ == last_button_index
825 && !ash::switches::UseAlternateShelfLayout()) {
825 x = view_model_->ideal_bounds(last_visible_index_).x(); 826 x = view_model_->ideal_bounds(last_visible_index_).x();
826 y = view_model_->ideal_bounds(last_visible_index_).y(); 827 y = view_model_->ideal_bounds(last_visible_index_).y();
827 } else { 828 } else {
828 x = shelf->PrimaryAxisValue( 829 x = shelf->PrimaryAxisValue(
829 view_model_->ideal_bounds(last_visible_index_).right(), 830 view_model_->ideal_bounds(last_visible_index_).right(),
830 view_model_->ideal_bounds(last_visible_index_).x()); 831 view_model_->ideal_bounds(last_visible_index_).x());
831 y = shelf->PrimaryAxisValue( 832 y = shelf->PrimaryAxisValue(
832 view_model_->ideal_bounds(last_visible_index_).y(), 833 view_model_->ideal_bounds(last_visible_index_).y(),
833 view_model_->ideal_bounds(last_visible_index_).bottom()); 834 view_model_->ideal_bounds(last_visible_index_).bottom());
834 } 835 }
(...skipping 1045 matching lines...) Expand 10 before | Expand all | Expand 10 after
1880 break; 1881 break;
1881 case ash::SHELF_ALIGNMENT_TOP: 1882 case ash::SHELF_ALIGNMENT_TOP:
1882 distance = coordinate.y() - bounds.bottom(); 1883 distance = coordinate.y() - bounds.bottom();
1883 break; 1884 break;
1884 } 1885 }
1885 return distance > 0 ? distance : 0; 1886 return distance > 0 ? distance : 0;
1886 } 1887 }
1887 1888
1888 } // namespace internal 1889 } // namespace internal
1889 } // namespace ash 1890 } // namespace ash
OLDNEW
« no previous file with comments | « ash/launcher/launcher_navigator_unittest.cc ('k') | ash/launcher/launcher_view_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698