| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ |
| 6 #define CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ | 6 #define CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include "base/string16.h" | 9 #include "base/string16.h" |
| 10 #include "content/common/content_export.h" | 10 #include "content/common/content_export.h" |
| 11 #include "ui/gfx/rect.h" | 11 #include "ui/gfx/rect.h" |
| 12 | 12 |
| 13 namespace content { | 13 namespace content { |
| 14 | 14 |
| 15 // The context information required by clients of the SpeechRecognitionManager | 15 // The context information required by clients of the SpeechRecognitionManager |
| 16 // and its delegates for mapping the recognition session to other browser | 16 // and its delegates for mapping the recognition session to other browser |
| 17 // elements involved with it (e.g., the page element that requested the | 17 // elements involved with it (e.g., the page element that requested the |
| 18 // recognition). The SpeechRecognitionManager is not aware of the content of | 18 // recognition). The manager keeps this struct attached to the recognition |
| 19 // this struct and does NOT use it for its purposes. However the manager keeps | 19 // session during all the session lifetime, making its contents available to |
| 20 // this struct "attached" to the recognition session during all the session | 20 // clients (In this regard, see SpeechRecognitionManager::GetSessionContext and |
| 21 // lifetime, making its contents available to clients (In this regard, see | |
| 22 // SpeechRecognitionManager::GetSessionContext and | |
| 23 // SpeechRecognitionManager::LookupSessionByContext methods). | 21 // SpeechRecognitionManager::LookupSessionByContext methods). |
| 24 struct CONTENT_EXPORT SpeechRecognitionSessionContext { | 22 struct CONTENT_EXPORT SpeechRecognitionSessionContext { |
| 25 SpeechRecognitionSessionContext(); | 23 SpeechRecognitionSessionContext(); |
| 26 ~SpeechRecognitionSessionContext(); | 24 ~SpeechRecognitionSessionContext(); |
| 27 | 25 |
| 28 int render_process_id; | 26 int render_process_id; |
| 29 int render_view_id; | 27 int render_view_id; |
| 30 int render_request_id; | 28 int request_id; |
| 31 int js_handle_id; | |
| 32 | 29 |
| 33 // Determines whether recognition was requested by a page element (in which | 30 // Determines whether recognition was requested by a page element (in which |
| 34 // case its coordinates are passed in |element_rect|). | 31 // case its coordinates are passed in |element_rect|). |
| 35 bool requested_by_page_element; | 32 bool requested_by_page_element; |
| 36 | 33 |
| 37 // The coordinates of the page element for placing the bubble (valid only when | 34 // The coordinates of the page element for placing the bubble (valid only when |
| 38 // |requested_by_page_element| = true). | 35 // |requested_by_page_element| = true). |
| 39 gfx::Rect element_rect; | 36 gfx::Rect element_rect; |
| 40 | 37 |
| 41 // Determines whether this is the first time that this context (identified by | 38 // Determines whether this is the first time that this context (identified by |
| 42 // |context_name|) is requesting a recognition. | 39 // |context_name|) is requesting a recognition. |
| 43 // TODO(primiano) This is really temporary, remove after CL1.12 which will | 40 // TODO(primiano) This is really temporary, remove after CL1.12 which will |
| 44 // refactor SpeechRecognitionPreferences and move this check entirely whithin | 41 // refactor SpeechRecognitionPreferences and move this check entirely whithin |
| 45 // chrome, without involving content. | 42 // chrome, without involving content. |
| 46 bool is_first_request_for_context; | 43 bool is_first_request_for_context; |
| 47 | 44 |
| 48 // A texual description of the context (website, extension name) that is | 45 // A texual description of the context (website, extension name) that is |
| 49 // requesting recognition, for prompting security notifications to the user. | 46 // requesting recognition, for prompting security notifications to the user. |
| 50 string16 context_name; | 47 string16 context_name; |
| 51 }; | 48 }; |
| 52 | 49 |
| 53 } // namespace content | 50 } // namespace content |
| 54 | 51 |
| 55 #endif // CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ | 52 #endif // CONTENT_PUBLIC_BROWSER_SPEECH_RECOGNITION_SESSION_CONTEXT_H_ |
| OLD | NEW |