Index: ash/system/audio/audio_detailed_view.cc |
diff --git a/ash/system/audio/audio_detailed_view.cc b/ash/system/audio/audio_detailed_view.cc |
index 2bcfc8b00f17f867832598513a239a629c96dd79..bf378b6d688b132be5c6fe21cadc9bfbfb08dd19 100644 |
--- a/ash/system/audio/audio_detailed_view.cc |
+++ b/ash/system/audio/audio_detailed_view.cc |
@@ -13,10 +13,7 @@ |
#include "chromeos/audio/cras_audio_handler.h" |
#include "ui/base/l10n/l10n_util.h" |
#include "ui/gfx/color_palette.h" |
-#include "ui/gfx/paint_vector_icon.h" |
-#include "ui/native_theme/native_theme.h" |
#include "ui/views/controls/image_view.h" |
-#include "ui/views/controls/label.h" |
#include "ui/views/controls/scroll_view.h" |
#include "ui/views/controls/separator.h" |
@@ -73,47 +70,10 @@ void AudioDetailedView::Update() { |
Layout(); |
} |
-void AudioDetailedView::AddInputHeader() { |
- AddScrollListInfoItem(IDS_ASH_STATUS_TRAY_AUDIO_INPUT, |
- kSystemMenuAudioInputIcon); |
-} |
- |
-void AudioDetailedView::AddOutputHeader() { |
- AddScrollListInfoItem(IDS_ASH_STATUS_TRAY_AUDIO_OUTPUT, |
- kSystemMenuAudioOutputIcon); |
-} |
- |
-void AudioDetailedView::AddScrollListInfoItem(int text_id, |
- const gfx::VectorIcon& icon) { |
- TriView* header = TrayPopupUtils::CreateDefaultRowView(); |
- TrayPopupUtils::ConfigureAsStickyHeader(header); |
- views::ImageView* image_view = TrayPopupUtils::CreateMainImageView(); |
- image_view->SetImage(gfx::CreateVectorIcon( |
- icon, GetNativeTheme()->GetSystemColor( |
- ui::NativeTheme::kColorId_ProminentButtonColor))); |
- header->AddView(TriView::Container::START, image_view); |
- |
- views::Label* label = TrayPopupUtils::CreateDefaultLabel(); |
- label->SetText(l10n_util::GetStringUTF16(text_id)); |
- TrayPopupItemStyle style(TrayPopupItemStyle::FontStyle::SUB_HEADER); |
- style.SetupLabel(label); |
- header->AddView(TriView::Container::CENTER, label); |
- |
+void AudioDetailedView::AddAudioSubHeader(const gfx::VectorIcon& icon, |
+ int text_id) { |
+ TriView* header = AddScrollListSubHeader(icon, text_id); |
header->SetContainerVisible(TriView::Container::END, false); |
- scroll_content()->AddChildView(header); |
-} |
- |
-HoverHighlightView* AudioDetailedView::AddScrollListItem( |
- const base::string16& text, |
- bool highlight, |
- bool checked) { |
- HoverHighlightView* container = new HoverHighlightView(this); |
- |
- container->AddLabelRow(text); |
- TrayPopupUtils::InitializeAsCheckableRow(container, checked); |
- |
- scroll_content()->AddChildView(container); |
- return container; |
} |
void AudioDetailedView::CreateItems() { |
@@ -129,21 +89,20 @@ void AudioDetailedView::UpdateAudioDevices() { |
audio_handler->GetAudioDevices(&devices); |
bool has_dual_internal_mic = audio_handler->HasDualInternalMic(); |
bool is_front_or_rear_mic_active = false; |
- for (size_t i = 0; i < devices.size(); ++i) { |
+ for (const auto& device : devices) { |
// Don't display keyboard mic or aokr type. |
- if (!devices[i].is_for_simple_usage()) |
+ if (!device.is_for_simple_usage()) |
continue; |
- if (devices[i].is_input) { |
+ if (device.is_input) { |
// Do not expose the internal front and rear mic to UI. |
- if (has_dual_internal_mic && |
- audio_handler->IsFrontOrRearMic(devices[i])) { |
- if (devices[i].active) |
+ if (has_dual_internal_mic && audio_handler->IsFrontOrRearMic(device)) { |
+ if (device.active) |
is_front_or_rear_mic_active = true; |
continue; |
} |
- input_devices_.push_back(devices[i]); |
+ input_devices_.push_back(device); |
} else { |
- output_devices_.push_back(devices[i]); |
+ output_devices_.push_back(device); |
} |
} |
@@ -168,14 +127,15 @@ void AudioDetailedView::UpdateScrollableList() { |
// Add audio output devices. |
const bool has_output_devices = output_devices_.size() > 0; |
- if (has_output_devices) |
- AddOutputHeader(); |
- |
- for (size_t i = 0; i < output_devices_.size(); ++i) { |
- HoverHighlightView* container = AddScrollListItem( |
- GetAudioDeviceName(output_devices_[i]), false /* highlight */, |
- output_devices_[i].active); /* checkmark if active */ |
- device_map_[container] = output_devices_[i]; |
+ if (has_output_devices) { |
+ AddAudioSubHeader(kSystemMenuAudioOutputIcon, |
+ IDS_ASH_STATUS_TRAY_AUDIO_OUTPUT); |
+ } |
+ |
+ for (const auto& device : output_devices_) { |
+ HoverHighlightView* container = |
+ AddScrollListCheckableItem(GetAudioDeviceName(device), device.active); |
+ device_map_[container] = device; |
} |
if (has_output_devices) { |
@@ -185,14 +145,15 @@ void AudioDetailedView::UpdateScrollableList() { |
// Add audio input devices. |
const bool has_input_devices = input_devices_.size() > 0; |
- if (has_input_devices) |
- AddInputHeader(); |
- |
- for (size_t i = 0; i < input_devices_.size(); ++i) { |
- HoverHighlightView* container = AddScrollListItem( |
- GetAudioDeviceName(input_devices_[i]), false /* highlight */, |
- input_devices_[i].active); /* checkmark if active */ |
- device_map_[container] = input_devices_[i]; |
+ if (has_input_devices) { |
+ AddAudioSubHeader(kSystemMenuAudioInputIcon, |
+ IDS_ASH_STATUS_TRAY_AUDIO_INPUT); |
+ } |
+ |
+ for (const auto& device : input_devices_) { |
+ HoverHighlightView* container = |
+ AddScrollListCheckableItem(GetAudioDeviceName(device), device.active); |
+ device_map_[container] = device; |
} |
scroll_content()->SizeToPreferredSize(); |