Index: chrome/browser/ui/views/speech_recognition_bubble_views.cc |
diff --git a/chrome/browser/ui/views/speech_recognition_bubble_views.cc b/chrome/browser/ui/views/speech_recognition_bubble_views.cc |
index f7a122c5f24f4c1251d2bcceca1dac7bee0eb3c2..f3c827f866de51da402261eb097554b25c1f56b7 100644 |
--- a/chrome/browser/ui/views/speech_recognition_bubble_views.cc |
+++ b/chrome/browser/ui/views/speech_recognition_bubble_views.cc |
@@ -64,6 +64,7 @@ class SpeechRecognitionBubbleView : public views::BubbleDelegateView, |
virtual void LinkClicked(views::Link* source, int event_flags) OVERRIDE; |
// views::View overrides. |
+ virtual bool AcceleratorPressed(const ui::Accelerator& accelerator) OVERRIDE; |
virtual gfx::Size GetPreferredSize() OVERRIDE; |
virtual void Layout() OVERRIDE; |
@@ -225,6 +226,17 @@ void SpeechRecognitionBubbleView::LinkClicked(views::Link* source, |
content::SpeechRecognitionManager::GetInstance()->ShowAudioInputSettings(); |
} |
+bool SpeechRecognitionBubbleView::AcceleratorPressed( |
+ const ui::Accelerator& accelerator) { |
+ // The accelerator is added by BubbleDelegateView. |
+ if (accelerator.key_code() == ui::VKEY_ESCAPE) { |
+ delegate_->InfoBubbleButtonClicked(SpeechRecognitionBubble::BUTTON_CANCEL); |
+ return true; |
+ } |
+ |
+ return false; |
msw
2014/02/20 21:57:24
This should be: return BubbleDelegateView::Acceler
|
+} |
+ |
gfx::Size SpeechRecognitionBubbleView::GetPreferredSize() { |
int width = heading_->GetPreferredSize().width(); |
int control_width = cancel_->GetPreferredSize().width(); |