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/common/system/tray/tray_utils.h" | 5 #include "ash/common/system/tray/tray_utils.h" |
6 | 6 |
7 #include "ash/common/ash_constants.h" | 7 #include "ash/common/ash_constants.h" |
8 #include "ash/common/material_design/material_design_controller.h" | 8 #include "ash/common/material_design/material_design_controller.h" |
9 #include "ash/common/session/session_state_delegate.h" | 9 #include "ash/common/session/session_state_delegate.h" |
10 #include "ash/common/shelf/wm_shelf_util.h" | 10 #include "ash/common/shelf/wm_shelf_util.h" |
(...skipping 18 matching lines...) Expand all Loading... |
29 public: | 29 public: |
30 BorderlessLabelButton(views::ButtonListener* listener, | 30 BorderlessLabelButton(views::ButtonListener* listener, |
31 const base::string16& text) | 31 const base::string16& text) |
32 : LabelButton(listener, text) { | 32 : LabelButton(listener, text) { |
33 if (MaterialDesignController::IsSystemTrayMenuMaterial()) { | 33 if (MaterialDesignController::IsSystemTrayMenuMaterial()) { |
34 SetInkDropMode(views::InkDropHostView::InkDropMode::ON); | 34 SetInkDropMode(views::InkDropHostView::InkDropMode::ON); |
35 set_has_ink_drop_action_on_click(true); | 35 set_has_ink_drop_action_on_click(true); |
36 set_ink_drop_base_color(kTrayPopupInkDropBaseColor); | 36 set_ink_drop_base_color(kTrayPopupInkDropBaseColor); |
37 set_ink_drop_visible_opacity(kTrayPopupInkDropRippleOpacity); | 37 set_ink_drop_visible_opacity(kTrayPopupInkDropRippleOpacity); |
38 const int kHorizontalPadding = 20; | 38 const int kHorizontalPadding = 20; |
39 SetBorder( | 39 SetBorder(views::CreateEmptyBorder(gfx::Insets(0, kHorizontalPadding))); |
40 views::Border::CreateEmptyBorder(gfx::Insets(0, kHorizontalPadding))); | |
41 // TODO(tdanderson): Update focus rect for material design. See | 40 // TODO(tdanderson): Update focus rect for material design. See |
42 // crbug.com/615892 | 41 // crbug.com/615892 |
43 } else { | 42 } else { |
44 SetBorder(std::unique_ptr<views::Border>(new TrayPopupLabelButtonBorder)); | 43 SetBorder(std::unique_ptr<views::Border>(new TrayPopupLabelButtonBorder)); |
45 SetFocusPainter(views::Painter::CreateSolidFocusPainter( | 44 SetFocusPainter(views::Painter::CreateSolidFocusPainter( |
46 kFocusBorderColor, gfx::Insets(1, 1, 2, 2))); | 45 kFocusBorderColor, gfx::Insets(1, 1, 2, 2))); |
47 set_animate_on_state_change(false); | 46 set_animate_on_state_change(false); |
48 } | 47 } |
49 SetHorizontalAlignment(gfx::ALIGN_CENTER); | 48 SetHorizontalAlignment(gfx::ALIGN_CENTER); |
50 SetFocusForPlatform(); | 49 SetFocusForPlatform(); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 label->SetBackgroundColor(SkColorSetARGB(0, 255, 255, 255)); | 99 label->SetBackgroundColor(SkColorSetARGB(0, 255, 255, 255)); |
101 } | 100 } |
102 } | 101 } |
103 | 102 |
104 void SetTrayImageItemBorder(views::View* tray_view, ShelfAlignment alignment) { | 103 void SetTrayImageItemBorder(views::View* tray_view, ShelfAlignment alignment) { |
105 if (MaterialDesignController::IsShelfMaterial()) | 104 if (MaterialDesignController::IsShelfMaterial()) |
106 return; | 105 return; |
107 | 106 |
108 const int tray_image_item_padding = GetTrayConstant(TRAY_IMAGE_ITEM_PADDING); | 107 const int tray_image_item_padding = GetTrayConstant(TRAY_IMAGE_ITEM_PADDING); |
109 if (IsHorizontalAlignment(alignment)) { | 108 if (IsHorizontalAlignment(alignment)) { |
110 tray_view->SetBorder(views::Border::CreateEmptyBorder( | 109 tray_view->SetBorder(views::CreateEmptyBorder(0, tray_image_item_padding, 0, |
111 0, tray_image_item_padding, 0, tray_image_item_padding)); | 110 tray_image_item_padding)); |
112 } else { | 111 } else { |
113 tray_view->SetBorder(views::Border::CreateEmptyBorder( | 112 tray_view->SetBorder(views::CreateEmptyBorder( |
114 tray_image_item_padding, | 113 tray_image_item_padding, |
115 kTrayImageItemHorizontalPaddingVerticalAlignment, | 114 kTrayImageItemHorizontalPaddingVerticalAlignment, |
116 tray_image_item_padding, | 115 tray_image_item_padding, |
117 kTrayImageItemHorizontalPaddingVerticalAlignment)); | 116 kTrayImageItemHorizontalPaddingVerticalAlignment)); |
118 } | 117 } |
119 } | 118 } |
120 | 119 |
121 void SetTrayLabelItemBorder(TrayItemView* tray_view, ShelfAlignment alignment) { | 120 void SetTrayLabelItemBorder(TrayItemView* tray_view, ShelfAlignment alignment) { |
122 if (MaterialDesignController::IsShelfMaterial()) | 121 if (MaterialDesignController::IsShelfMaterial()) |
123 return; | 122 return; |
124 | 123 |
125 if (IsHorizontalAlignment(alignment)) { | 124 if (IsHorizontalAlignment(alignment)) { |
126 tray_view->SetBorder(views::Border::CreateEmptyBorder( | 125 tray_view->SetBorder(views::CreateEmptyBorder( |
127 0, kTrayLabelItemHorizontalPaddingBottomAlignment, 0, | 126 0, kTrayLabelItemHorizontalPaddingBottomAlignment, 0, |
128 kTrayLabelItemHorizontalPaddingBottomAlignment)); | 127 kTrayLabelItemHorizontalPaddingBottomAlignment)); |
129 } else { | 128 } else { |
130 // Center the label for vertical launcher alignment. | 129 // Center the label for vertical launcher alignment. |
131 int horizontal_padding = | 130 int horizontal_padding = |
132 std::max(0, (tray_view->GetPreferredSize().width() - | 131 std::max(0, (tray_view->GetPreferredSize().width() - |
133 tray_view->label()->GetPreferredSize().width()) / | 132 tray_view->label()->GetPreferredSize().width()) / |
134 2); | 133 2); |
135 tray_view->SetBorder(views::Border::CreateEmptyBorder( | 134 tray_view->SetBorder(views::CreateEmptyBorder( |
136 kTrayLabelItemVerticalPaddingVerticalAlignment, horizontal_padding, | 135 kTrayLabelItemVerticalPaddingVerticalAlignment, horizontal_padding, |
137 kTrayLabelItemVerticalPaddingVerticalAlignment, horizontal_padding)); | 136 kTrayLabelItemVerticalPaddingVerticalAlignment, horizontal_padding)); |
138 } | 137 } |
139 } | 138 } |
140 | 139 |
141 void GetAccessibleLabelFromDescendantViews( | 140 void GetAccessibleLabelFromDescendantViews( |
142 views::View* view, | 141 views::View* view, |
143 std::vector<base::string16>& out_labels) { | 142 std::vector<base::string16>& out_labels) { |
144 ui::AXNodeData temp_node_data; | 143 ui::AXNodeData temp_node_data; |
145 view->GetAccessibleNodeData(&temp_node_data); | 144 view->GetAccessibleNodeData(&temp_node_data); |
(...skipping 20 matching lines...) Expand all Loading... |
166 | 165 |
167 views::Separator* CreateVerticalSeparator() { | 166 views::Separator* CreateVerticalSeparator() { |
168 views::Separator* separator = | 167 views::Separator* separator = |
169 new views::Separator(views::Separator::HORIZONTAL); | 168 new views::Separator(views::Separator::HORIZONTAL); |
170 separator->SetPreferredSize(kHorizontalSeparatorHeight); | 169 separator->SetPreferredSize(kHorizontalSeparatorHeight); |
171 separator->SetColor(kHorizontalSeparatorColor); | 170 separator->SetColor(kHorizontalSeparatorColor); |
172 return separator; | 171 return separator; |
173 } | 172 } |
174 | 173 |
175 } // namespace ash | 174 } // namespace ash |
OLD | NEW |