| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "ui/app_list/speech_ui_model.h" | 5 #include "ui/app_list/speech_ui_model.h" |
| 6 | 6 |
| 7 namespace app_list { | 7 namespace app_list { |
| 8 | 8 |
| 9 namespace { | 9 namespace { |
| 10 | 10 |
| 11 // The default sound level, just gotten from the developer device. | 11 // The default sound level, just gotten from the developer device. |
| 12 const int16 kDefaultSoundLevel = 200; | 12 const int16 kDefaultSoundLevel = 200; |
| 13 | 13 |
| 14 } // namespace | 14 } // namespace |
| 15 | 15 |
| 16 SpeechUIModel::SpeechUIModel() | 16 SpeechUIModel::SpeechUIModel(SpeechRecognitionState initial_state) |
| 17 : minimum_sound_level_(kDefaultSoundLevel), | 17 : state_(initial_state), |
| 18 minimum_sound_level_(kDefaultSoundLevel), |
| 18 maximum_sound_level_(kDefaultSoundLevel) {} | 19 maximum_sound_level_(kDefaultSoundLevel) {} |
| 19 | 20 |
| 20 SpeechUIModel::~SpeechUIModel() {} | 21 SpeechUIModel::~SpeechUIModel() {} |
| 21 | 22 |
| 22 void SpeechUIModel::SetSpeechResult(const base::string16& result, | 23 void SpeechUIModel::SetSpeechResult(const base::string16& result, |
| 23 bool is_final) { | 24 bool is_final) { |
| 24 if (result_ == result && is_final_ == is_final) | 25 if (result_ == result && is_final_ == is_final) |
| 25 return; | 26 return; |
| 26 | 27 |
| 27 result_ = result; | 28 result_ = result; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 67 OnSpeechSoundLevelChanged(visible_level)); | 68 OnSpeechSoundLevelChanged(visible_level)); |
| 68 } | 69 } |
| 69 | 70 |
| 70 void SpeechUIModel::SetSpeechRecognitionState( | 71 void SpeechUIModel::SetSpeechRecognitionState( |
| 71 SpeechRecognitionState new_state) { | 72 SpeechRecognitionState new_state) { |
| 72 if (state_ == new_state) | 73 if (state_ == new_state) |
| 73 return; | 74 return; |
| 74 | 75 |
| 75 state_ = new_state; | 76 state_ = new_state; |
| 76 // Revert the min/max sound level to the default. | 77 // Revert the min/max sound level to the default. |
| 77 if (state_ == SPEECH_RECOGNITION_ON) { | 78 if (state_ != SPEECH_RECOGNITION_RECOGNIZING && |
| 79 state_ != SPEECH_RECOGNITION_IN_SPEECH) { |
| 78 minimum_sound_level_ = kDefaultSoundLevel; | 80 minimum_sound_level_ = kDefaultSoundLevel; |
| 79 maximum_sound_level_ = kDefaultSoundLevel; | 81 maximum_sound_level_ = kDefaultSoundLevel; |
| 80 } | 82 } |
| 81 | 83 |
| 82 FOR_EACH_OBSERVER(SpeechUIModelObserver, | 84 FOR_EACH_OBSERVER(SpeechUIModelObserver, |
| 83 observers_, | 85 observers_, |
| 84 OnSpeechRecognitionStateChanged(new_state)); | 86 OnSpeechRecognitionStateChanged(new_state)); |
| 85 } | 87 } |
| 86 | 88 |
| 87 void SpeechUIModel::AddObserver(SpeechUIModelObserver* observer) { | 89 void SpeechUIModel::AddObserver(SpeechUIModelObserver* observer) { |
| 88 observers_.AddObserver(observer); | 90 observers_.AddObserver(observer); |
| 89 } | 91 } |
| 90 | 92 |
| 91 void SpeechUIModel::RemoveObserver(SpeechUIModelObserver* observer) { | 93 void SpeechUIModel::RemoveObserver(SpeechUIModelObserver* observer) { |
| 92 observers_.RemoveObserver(observer); | 94 observers_.RemoveObserver(observer); |
| 93 } | 95 } |
| 94 | 96 |
| 95 } // namespace app_list | 97 } // namespace app_list |
| OLD | NEW |