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

Side by Side Diff: chrome/browser/speech/speech_input_bubble.cc

Issue 6115001: Listen for tab close notifications and cancel active speech sessions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 9 years, 11 months 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "app/resource_bundle.h" 5 #include "app/resource_bundle.h"
6 #include "chrome/browser/tab_contents/tab_contents.h" 6 #include "chrome/browser/tab_contents/tab_contents.h"
7 #include "chrome/browser/speech/speech_input_bubble.h" 7 #include "chrome/browser/speech/speech_input_bubble.h"
8 #include "gfx/canvas_skia.h" 8 #include "gfx/canvas_skia.h"
9 #include "gfx/rect.h" 9 #include "gfx/rect.h"
10 #include "grit/generated_resources.h" 10 #include "grit/generated_resources.h"
(...skipping 14 matching lines...) Expand all
25 if (factory_) 25 if (factory_)
26 return (*factory_)(tab_contents, delegate, element_rect); 26 return (*factory_)(tab_contents, delegate, element_rect);
27 27
28 // Has the tab already closed before bubble create request was processed? 28 // Has the tab already closed before bubble create request was processed?
29 if (!tab_contents) 29 if (!tab_contents)
30 return NULL; 30 return NULL;
31 31
32 return CreateNativeBubble(tab_contents, delegate, element_rect); 32 return CreateNativeBubble(tab_contents, delegate, element_rect);
33 } 33 }
34 34
35 SpeechInputBubbleBase::SpeechInputBubbleBase() 35 SpeechInputBubbleBase::SpeechInputBubbleBase(TabContents* tab_contents)
36 : ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)), 36 : ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)),
37 display_mode_(DISPLAY_MODE_RECORDING) { 37 display_mode_(DISPLAY_MODE_RECORDING),
38 tab_contents_(tab_contents) {
38 if (!mic_empty_) { // Static variables. 39 if (!mic_empty_) { // Static variables.
39 mic_empty_ = ResourceBundle::GetSharedInstance().GetBitmapNamed( 40 mic_empty_ = ResourceBundle::GetSharedInstance().GetBitmapNamed(
40 IDR_SPEECH_INPUT_MIC_EMPTY); 41 IDR_SPEECH_INPUT_MIC_EMPTY);
41 mic_full_ = ResourceBundle::GetSharedInstance().GetBitmapNamed( 42 mic_full_ = ResourceBundle::GetSharedInstance().GetBitmapNamed(
42 IDR_SPEECH_INPUT_MIC_FULL); 43 IDR_SPEECH_INPUT_MIC_FULL);
43 mic_mask_ = ResourceBundle::GetSharedInstance().GetBitmapNamed( 44 mic_mask_ = ResourceBundle::GetSharedInstance().GetBitmapNamed(
44 IDR_SPEECH_INPUT_MIC_MASK); 45 IDR_SPEECH_INPUT_MIC_MASK);
45 spinner_ = ResourceBundle::GetSharedInstance().GetBitmapNamed( 46 spinner_ = ResourceBundle::GetSharedInstance().GetBitmapNamed(
46 IDR_SPEECH_INPUT_SPINNER); 47 IDR_SPEECH_INPUT_SPINNER);
47 } 48 }
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 SkPaint multiply_paint; 142 SkPaint multiply_paint;
142 multiply_paint.setXfermode(SkXfermode::Create(SkXfermode::kMultiply_Mode)); 143 multiply_paint.setXfermode(SkXfermode::Create(SkXfermode::kMultiply_Mode));
143 buffer_canvas.drawBitmap(*mic_mask_, 0, clip_top, &multiply_paint); 144 buffer_canvas.drawBitmap(*mic_mask_, 0, clip_top, &multiply_paint);
144 145
145 // Draw the empty volume image first and the current volume image on top. 146 // Draw the empty volume image first and the current volume image on top.
146 canvas.drawBitmap(*mic_empty_, 0, 0); 147 canvas.drawBitmap(*mic_empty_, 0, 0);
147 canvas.drawBitmap(*buffer_image_.get(), 0, 0); 148 canvas.drawBitmap(*buffer_image_.get(), 0, 0);
148 149
149 SetImage(*mic_image_.get()); 150 SetImage(*mic_image_.get());
150 } 151 }
OLDNEW
« no previous file with comments | « chrome/browser/speech/speech_input_bubble.h ('k') | chrome/browser/speech/speech_input_bubble_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698