| OLD | NEW |
| 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 "ash/common/system/chromeos/audio/audio_detailed_view.h" | 5 #include "ash/common/system/chromeos/audio/audio_detailed_view.h" |
| 6 | 6 |
| 7 #include "ash/common/system/tray/fixed_sized_scroll_view.h" | 7 #include "ash/common/system/tray/fixed_sized_scroll_view.h" |
| 8 #include "ash/common/system/tray/hover_highlight_view.h" | 8 #include "ash/common/system/tray/hover_highlight_view.h" |
| 9 #include "ash/common/system/tray/tray_constants.h" | 9 #include "ash/common/system/tray/tray_constants.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 HoverHighlightView* AudioDetailedView::AddScrollListItem( | 91 HoverHighlightView* AudioDetailedView::AddScrollListItem( |
| 92 const base::string16& text, | 92 const base::string16& text, |
| 93 bool highlight, | 93 bool highlight, |
| 94 bool checked) { | 94 bool checked) { |
| 95 HoverHighlightView* container = new HoverHighlightView(this); | 95 HoverHighlightView* container = new HoverHighlightView(this); |
| 96 container->AddCheckableLabel(text, highlight, checked); | 96 container->AddCheckableLabel(text, highlight, checked); |
| 97 scroll_content()->AddChildView(container); | 97 scroll_content()->AddChildView(container); |
| 98 return container; | 98 return container; |
| 99 } | 99 } |
| 100 | 100 |
| 101 void AudioDetailedView::CreateHeaderEntry() { | |
| 102 CreateSpecialRow(IDS_ASH_STATUS_TRAY_AUDIO, this); | |
| 103 } | |
| 104 | |
| 105 void AudioDetailedView::CreateItems() { | 101 void AudioDetailedView::CreateItems() { |
| 106 CreateScrollableList(); | 102 CreateScrollableList(); |
| 107 CreateHeaderEntry(); | 103 CreateTitleRow(IDS_ASH_STATUS_TRAY_AUDIO, this); |
| 108 } | 104 } |
| 109 | 105 |
| 110 void AudioDetailedView::UpdateAudioDevices() { | 106 void AudioDetailedView::UpdateAudioDevices() { |
| 111 output_devices_.clear(); | 107 output_devices_.clear(); |
| 112 input_devices_.clear(); | 108 input_devices_.clear(); |
| 113 chromeos::AudioDeviceList devices; | 109 chromeos::AudioDeviceList devices; |
| 114 CrasAudioHandler::Get()->GetAudioDevices(&devices); | 110 CrasAudioHandler::Get()->GetAudioDevices(&devices); |
| 115 for (size_t i = 0; i < devices.size(); ++i) { | 111 for (size_t i = 0; i < devices.size(); ++i) { |
| 116 // Don't display keyboard mic or aokr type. | 112 // Don't display keyboard mic or aokr type. |
| 117 if (!devices[i].is_for_simple_usage()) | 113 if (!devices[i].is_for_simple_usage()) |
| (...skipping 29 matching lines...) Expand all Loading... |
| 147 HoverHighlightView* container = AddScrollListItem( | 143 HoverHighlightView* container = AddScrollListItem( |
| 148 GetAudioDeviceName(input_devices_[i]), false /* highlight */, | 144 GetAudioDeviceName(input_devices_[i]), false /* highlight */, |
| 149 input_devices_[i].active); /* checkmark if active */ | 145 input_devices_[i].active); /* checkmark if active */ |
| 150 device_map_[container] = input_devices_[i]; | 146 device_map_[container] = input_devices_[i]; |
| 151 } | 147 } |
| 152 | 148 |
| 153 scroll_content()->SizeToPreferredSize(); | 149 scroll_content()->SizeToPreferredSize(); |
| 154 scroller()->Layout(); | 150 scroller()->Layout(); |
| 155 } | 151 } |
| 156 | 152 |
| 157 void AudioDetailedView::OnViewClicked(views::View* sender) { | 153 void AudioDetailedView::HandleViewClicked(views::View* view) { |
| 158 if (sender == footer()->content()) { | 154 AudioDeviceMap::iterator iter = device_map_.find(view); |
| 159 TransitionToDefaultView(); | 155 if (iter == device_map_.end()) |
| 160 } else { | 156 return; |
| 161 AudioDeviceMap::iterator iter = device_map_.find(sender); | 157 chromeos::AudioDevice device = iter->second; |
| 162 if (iter == device_map_.end()) | 158 CrasAudioHandler::Get()->SwitchToDevice(device, true, |
| 163 return; | 159 CrasAudioHandler::ACTIVATE_BY_USER); |
| 164 chromeos::AudioDevice device = iter->second; | |
| 165 CrasAudioHandler::Get()->SwitchToDevice(device, true, | |
| 166 CrasAudioHandler::ACTIVATE_BY_USER); | |
| 167 } | |
| 168 } | 160 } |
| 169 | 161 |
| 170 } // namespace tray | 162 } // namespace tray |
| 171 } // namespace ash | 163 } // namespace ash |
| OLD | NEW |