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

Side by Side Diff: ui/chromeos/ime/candidate_view.cc

Issue 2480813003: Reduce views::Border creation verbosity by promoting factory functions (Closed)
Patch Set: fix bad merge Created 4 years, 1 month 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
OLDNEW
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 "base/macros.h" 5 #include "base/macros.h"
6 #include "base/strings/utf_string_conversions.h" 6 #include "base/strings/utf_string_conversions.h"
7 #include "ui/base/ime/candidate_window.h" 7 #include "ui/base/ime/candidate_window.h"
8 #include "ui/chromeos/ime/candidate_view.h" 8 #include "ui/chromeos/ime/candidate_view.h"
9 #include "ui/chromeos/ime/candidate_window_constants.h" 9 #include "ui/chromeos/ime/candidate_window_constants.h"
10 #include "ui/gfx/color_utils.h" 10 #include "ui/gfx/color_utils.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 shortcut_label->SetDisabledColor(theme.GetSystemColor( 67 shortcut_label->SetDisabledColor(theme.GetSystemColor(
68 ui::NativeTheme::kColorId_LabelDisabledColor)); 68 ui::NativeTheme::kColorId_LabelDisabledColor));
69 69
70 // Setup paddings. 70 // Setup paddings.
71 const gfx::Insets kVerticalShortcutLabelInsets(1, 6, 1, 6); 71 const gfx::Insets kVerticalShortcutLabelInsets(1, 6, 1, 6);
72 const gfx::Insets kHorizontalShortcutLabelInsets(1, 3, 1, 0); 72 const gfx::Insets kHorizontalShortcutLabelInsets(1, 3, 1, 0);
73 const gfx::Insets insets = 73 const gfx::Insets insets =
74 (orientation == ui::CandidateWindow::VERTICAL ? 74 (orientation == ui::CandidateWindow::VERTICAL ?
75 kVerticalShortcutLabelInsets : 75 kVerticalShortcutLabelInsets :
76 kHorizontalShortcutLabelInsets); 76 kHorizontalShortcutLabelInsets);
77 shortcut_label->SetBorder(views::Border::CreateEmptyBorder( 77 shortcut_label->SetBorder(views::CreateEmptyBorder(
78 insets.top(), insets.left(), insets.bottom(), insets.right())); 78 insets.top(), insets.left(), insets.bottom(), insets.right()));
79 79
80 // Add decoration based on the orientation. 80 // Add decoration based on the orientation.
81 if (orientation == ui::CandidateWindow::VERTICAL) { 81 if (orientation == ui::CandidateWindow::VERTICAL) {
82 // Set the background color. 82 // Set the background color.
83 SkColor blackish = color_utils::AlphaBlend( 83 SkColor blackish = color_utils::AlphaBlend(
84 SK_ColorBLACK, 84 SK_ColorBLACK,
85 theme.GetSystemColor(ui::NativeTheme::kColorId_WindowBackground), 85 theme.GetSystemColor(ui::NativeTheme::kColorId_WindowBackground),
86 0x40); 86 0x40);
87 SkColor transparent_blakish = color_utils::AlphaBlend( 87 SkColor transparent_blakish = color_utils::AlphaBlend(
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 ui::CandidateWindow::Orientation orientation) 143 ui::CandidateWindow::Orientation orientation)
144 : views::CustomButton(listener), 144 : views::CustomButton(listener),
145 orientation_(orientation), 145 orientation_(orientation),
146 shortcut_label_(NULL), 146 shortcut_label_(NULL),
147 candidate_label_(NULL), 147 candidate_label_(NULL),
148 annotation_label_(NULL), 148 annotation_label_(NULL),
149 infolist_icon_(NULL), 149 infolist_icon_(NULL),
150 shortcut_width_(0), 150 shortcut_width_(0),
151 candidate_width_(0), 151 candidate_width_(0),
152 highlighted_(false) { 152 highlighted_(false) {
153 SetBorder(views::Border::CreateEmptyBorder(1, 1, 1, 1)); 153 SetBorder(views::CreateEmptyBorder(1, 1, 1, 1));
154 154
155 const ui::NativeTheme& theme = *GetNativeTheme(); 155 const ui::NativeTheme& theme = *GetNativeTheme();
156 shortcut_label_ = CreateShortcutLabel(orientation, theme); 156 shortcut_label_ = CreateShortcutLabel(orientation, theme);
157 candidate_label_ = CreateCandidateLabel(orientation); 157 candidate_label_ = CreateCandidateLabel(orientation);
158 annotation_label_ = CreateAnnotationLabel(orientation, theme); 158 annotation_label_ = CreateAnnotationLabel(orientation, theme);
159 159
160 AddChildView(shortcut_label_); 160 AddChildView(shortcut_label_);
161 AddChildView(candidate_label_); 161 AddChildView(candidate_label_);
162 AddChildView(annotation_label_); 162 AddChildView(annotation_label_);
163 163
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 void CandidateView::SetHighlighted(bool highlighted) { 200 void CandidateView::SetHighlighted(bool highlighted) {
201 if (highlighted_ == highlighted) 201 if (highlighted_ == highlighted)
202 return; 202 return;
203 203
204 highlighted_ = highlighted; 204 highlighted_ = highlighted;
205 if (highlighted) { 205 if (highlighted) {
206 ui::NativeTheme* theme = GetNativeTheme(); 206 ui::NativeTheme* theme = GetNativeTheme();
207 set_background( 207 set_background(
208 views::Background::CreateSolidBackground(theme->GetSystemColor( 208 views::Background::CreateSolidBackground(theme->GetSystemColor(
209 ui::NativeTheme::kColorId_TextfieldSelectionBackgroundFocused))); 209 ui::NativeTheme::kColorId_TextfieldSelectionBackgroundFocused)));
210 SetBorder(views::Border::CreateSolidBorder( 210 SetBorder(views::CreateSolidBorder(
211 1, 211 1,
212 theme->GetSystemColor(ui::NativeTheme::kColorId_FocusedBorderColor))); 212 theme->GetSystemColor(ui::NativeTheme::kColorId_FocusedBorderColor)));
213 213
214 // Cancel currently focused one. 214 // Cancel currently focused one.
215 for (int i = 0; i < parent()->child_count(); ++i) { 215 for (int i = 0; i < parent()->child_count(); ++i) {
216 CandidateView* view = 216 CandidateView* view =
217 static_cast<CandidateView*>((parent()->child_at(i))); 217 static_cast<CandidateView*>((parent()->child_at(i)));
218 if (view != this) 218 if (view != this)
219 view->SetHighlighted(false); 219 view->SetHighlighted(false);
220 } 220 }
221 } else { 221 } else {
222 set_background(NULL); 222 set_background(NULL);
223 SetBorder(views::Border::CreateEmptyBorder(1, 1, 1, 1)); 223 SetBorder(views::CreateEmptyBorder(1, 1, 1, 1));
224 } 224 }
225 SchedulePaint(); 225 SchedulePaint();
226 } 226 }
227 227
228 void CandidateView::StateChanged() { 228 void CandidateView::StateChanged() {
229 shortcut_label_->SetEnabled(state() != STATE_DISABLED); 229 shortcut_label_->SetEnabled(state() != STATE_DISABLED);
230 if (state() == STATE_PRESSED) 230 if (state() == STATE_PRESSED)
231 SetHighlighted(true); 231 SetHighlighted(true);
232 } 232 }
233 233
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
302 } 302 }
303 303
304 // Reserves the margin for infolist_icon even if it's not visible. 304 // Reserves the margin for infolist_icon even if it's not visible.
305 size.Enlarge( 305 size.Enlarge(
306 kInfolistIndicatorIconWidth + kInfolistIndicatorIconPadding * 2, 0); 306 kInfolistIndicatorIconWidth + kInfolistIndicatorIconPadding * 2, 0);
307 return size; 307 return size;
308 } 308 }
309 309
310 } // namespace ime 310 } // namespace ime
311 } // namespace ui 311 } // namespace ui
OLDNEW
« no previous file with comments | « ui/arc/notification/arc_custom_notification_view.cc ('k') | ui/chromeos/ime/candidate_window_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698