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_RENDERER_RENDER_VIEW_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 6 #define CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <map> | 9 #include <map> |
10 #include <set> | 10 #include <set> |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 class FaviconHelper; | 132 class FaviconHelper; |
133 class HistoryController; | 133 class HistoryController; |
134 class HistoryEntry; | 134 class HistoryEntry; |
135 class ImageResourceFetcher; | 135 class ImageResourceFetcher; |
136 class MouseLockDispatcher; | 136 class MouseLockDispatcher; |
137 class NavigationState; | 137 class NavigationState; |
138 class PepperPluginInstanceImpl; | 138 class PepperPluginInstanceImpl; |
139 class RenderViewImplTest; | 139 class RenderViewImplTest; |
140 class RenderViewObserver; | 140 class RenderViewObserver; |
141 class RenderViewTest; | 141 class RenderViewTest; |
| 142 class RendererAccessibility; |
142 class RendererDateTimePicker; | 143 class RendererDateTimePicker; |
143 class RendererWebColorChooserImpl; | 144 class RendererWebColorChooserImpl; |
144 class SpeechRecognitionDispatcher; | 145 class SpeechRecognitionDispatcher; |
145 class WebPluginDelegateProxy; | 146 class WebPluginDelegateProxy; |
146 struct DropData; | 147 struct DropData; |
147 struct FaviconURL; | 148 struct FaviconURL; |
148 struct FileChooserParams; | 149 struct FileChooserParams; |
149 struct RenderViewImplParams; | 150 struct RenderViewImplParams; |
150 | 151 |
151 #if defined(OS_ANDROID) | 152 #if defined(OS_ANDROID) |
(...skipping 25 matching lines...) Expand all Loading... |
177 int32 main_frame_routing_id, | 178 int32 main_frame_routing_id, |
178 int32 surface_id, | 179 int32 surface_id, |
179 int64 session_storage_namespace_id, | 180 int64 session_storage_namespace_id, |
180 const base::string16& frame_name, | 181 const base::string16& frame_name, |
181 bool is_renderer_created, | 182 bool is_renderer_created, |
182 bool swapped_out, | 183 bool swapped_out, |
183 int32 proxy_routing_id, | 184 int32 proxy_routing_id, |
184 bool hidden, | 185 bool hidden, |
185 bool never_visible, | 186 bool never_visible, |
186 int32 next_page_id, | 187 int32 next_page_id, |
187 const blink::WebScreenInfo& screen_info); | 188 const blink::WebScreenInfo& screen_info, |
| 189 AccessibilityMode accessibility_mode); |
188 | 190 |
189 // Used by content_layouttest_support to hook into the creation of | 191 // Used by content_layouttest_support to hook into the creation of |
190 // RenderViewImpls. | 192 // RenderViewImpls. |
191 static void InstallCreateHook( | 193 static void InstallCreateHook( |
192 RenderViewImpl* (*create_render_view_impl)(RenderViewImplParams*)); | 194 RenderViewImpl* (*create_render_view_impl)(RenderViewImplParams*)); |
193 | 195 |
194 // Returns the RenderViewImpl containing the given WebView. | 196 // Returns the RenderViewImpl containing the given WebView. |
195 static RenderViewImpl* FromWebView(blink::WebView* webview); | 197 static RenderViewImpl* FromWebView(blink::WebView* webview); |
196 | 198 |
197 // Returns the RenderViewImpl for the given routing ID. | 199 // Returns the RenderViewImpl for the given routing ID. |
(...skipping 13 matching lines...) Expand all Loading... |
211 const RendererPreferences& renderer_preferences() const { | 213 const RendererPreferences& renderer_preferences() const { |
212 return renderer_preferences_; | 214 return renderer_preferences_; |
213 } | 215 } |
214 | 216 |
215 void set_send_content_state_immediately(bool value) { | 217 void set_send_content_state_immediately(bool value) { |
216 send_content_state_immediately_ = value; | 218 send_content_state_immediately_ = value; |
217 } | 219 } |
218 | 220 |
219 RenderFrameImpl* main_render_frame() { return main_render_frame_.get(); } | 221 RenderFrameImpl* main_render_frame() { return main_render_frame_.get(); } |
220 | 222 |
| 223 AccessibilityMode accessibility_mode() { |
| 224 return accessibility_mode_; |
| 225 } |
| 226 |
| 227 RendererAccessibility* renderer_accessibility() { |
| 228 return renderer_accessibility_; |
| 229 } |
| 230 |
221 MouseLockDispatcher* mouse_lock_dispatcher() { | 231 MouseLockDispatcher* mouse_lock_dispatcher() { |
222 return mouse_lock_dispatcher_; | 232 return mouse_lock_dispatcher_; |
223 } | 233 } |
224 | 234 |
225 HistoryController* history_controller() { | 235 HistoryController* history_controller() { |
226 return history_controller_.get(); | 236 return history_controller_.get(); |
227 } | 237 } |
228 | 238 |
229 // Lazily initialize this view's BrowserPluginManager and return it. | 239 // Lazily initialize this view's BrowserPluginManager and return it. |
230 BrowserPluginManager* GetBrowserPluginManager(); | 240 BrowserPluginManager* GetBrowserPluginManager(); |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
556 const gfx::Point& root_layer_offset, | 566 const gfx::Point& root_layer_offset, |
557 float root_layer_scale) OVERRIDE; | 567 float root_layer_scale) OVERRIDE; |
558 | 568 |
559 // Do not delete directly. This class is reference counted. | 569 // Do not delete directly. This class is reference counted. |
560 virtual ~RenderViewImpl(); | 570 virtual ~RenderViewImpl(); |
561 | 571 |
562 private: | 572 private: |
563 // For unit tests. | 573 // For unit tests. |
564 friend class ExternalPopupMenuTest; | 574 friend class ExternalPopupMenuTest; |
565 friend class PepperDeviceTest; | 575 friend class PepperDeviceTest; |
| 576 friend class RendererAccessibilityTest; |
566 friend class RenderViewImplTest; | 577 friend class RenderViewImplTest; |
567 friend class RenderViewTest; | 578 friend class RenderViewTest; |
568 friend class RendererAccessibilityTest; | |
569 | 579 |
570 // TODO(nasko): Temporarily friend RenderFrameImpl, so we don't duplicate | 580 // TODO(nasko): Temporarily friend RenderFrameImpl, so we don't duplicate |
571 // utility functions needed in both classes, while we move frame specific | 581 // utility functions needed in both classes, while we move frame specific |
572 // code away from this class. | 582 // code away from this class. |
573 friend class RenderFrameImpl; | 583 friend class RenderFrameImpl; |
574 | 584 |
575 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuRemoveTest, RemoveOnChange); | 585 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuRemoveTest, RemoveOnChange); |
576 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuTest, NormalCase); | 586 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuTest, NormalCase); |
577 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuTest, ShowPopupThenNavigate); | 587 FRIEND_TEST_ALL_PREFIXES(ExternalPopupMenuTest, ShowPopupThenNavigate); |
578 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, DecideNavigationPolicyForWebUI); | 588 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, DecideNavigationPolicyForWebUI); |
579 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 589 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
580 DidFailProvisionalLoadWithErrorForError); | 590 DidFailProvisionalLoadWithErrorForError); |
581 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 591 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
582 DidFailProvisionalLoadWithErrorForCancellation); | 592 DidFailProvisionalLoadWithErrorForCancellation); |
583 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 593 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
584 DontIgnoreBackAfterNavEntryLimit); | 594 DontIgnoreBackAfterNavEntryLimit); |
585 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, ImeComposition); | 595 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, ImeComposition); |
586 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, InsertCharacters); | 596 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, InsertCharacters); |
587 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, JSBlockSentAfterPageLoad); | 597 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, JSBlockSentAfterPageLoad); |
588 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, LastCommittedUpdateState); | 598 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, LastCommittedUpdateState); |
589 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnHandleKeyboardEvent); | 599 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnHandleKeyboardEvent); |
590 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnImeTypeChanged); | 600 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnImeTypeChanged); |
591 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnNavStateChanged); | 601 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnNavStateChanged); |
| 602 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnSetAccessibilityMode); |
592 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnSetTextDirection); | 603 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnSetTextDirection); |
593 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnUpdateWebPreferences); | 604 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnUpdateWebPreferences); |
594 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 605 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
595 SetEditableSelectionAndComposition); | 606 SetEditableSelectionAndComposition); |
596 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, StaleNavigationsIgnored); | 607 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, StaleNavigationsIgnored); |
597 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, UpdateTargetURLWithInvalidURL); | 608 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, UpdateTargetURLWithInvalidURL); |
598 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 609 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
599 GetCompositionCharacterBoundsTest); | 610 GetCompositionCharacterBoundsTest); |
600 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnNavigationHttpPost); | 611 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, OnNavigationHttpPost); |
601 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, | 612 FRIEND_TEST_ALL_PREFIXES(RenderViewImplTest, |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
706 const std::vector<base::FilePath>& local_paths, | 717 const std::vector<base::FilePath>& local_paths, |
707 const base::FilePath& local_directory_name); | 718 const base::FilePath& local_directory_name); |
708 void OnMediaPlayerActionAt(const gfx::Point& location, | 719 void OnMediaPlayerActionAt(const gfx::Point& location, |
709 const blink::WebMediaPlayerAction& action); | 720 const blink::WebMediaPlayerAction& action); |
710 void OnPluginActionAt(const gfx::Point& location, | 721 void OnPluginActionAt(const gfx::Point& location, |
711 const blink::WebPluginAction& action); | 722 const blink::WebPluginAction& action); |
712 void OnMoveOrResizeStarted(); | 723 void OnMoveOrResizeStarted(); |
713 void OnPostMessageEvent(const ViewMsg_PostMessage_Params& params); | 724 void OnPostMessageEvent(const ViewMsg_PostMessage_Params& params); |
714 void OnReleaseDisambiguationPopupBitmap(const cc::SharedBitmapId& id); | 725 void OnReleaseDisambiguationPopupBitmap(const cc::SharedBitmapId& id); |
715 void OnResetPageEncodingToDefault(); | 726 void OnResetPageEncodingToDefault(); |
| 727 void OnSetAccessibilityMode(AccessibilityMode new_mode); |
716 void OnSetActive(bool active); | 728 void OnSetActive(bool active); |
717 void OnSetBackgroundOpaque(bool opaque); | 729 void OnSetBackgroundOpaque(bool opaque); |
718 void OnExitFullscreen(); | 730 void OnExitFullscreen(); |
719 void OnSetHistoryLengthAndPrune(int history_length, int32 minimum_page_id); | 731 void OnSetHistoryLengthAndPrune(int history_length, int32 minimum_page_id); |
720 void OnSetInitialFocus(bool reverse); | 732 void OnSetInitialFocus(bool reverse); |
721 void OnSetPageEncoding(const std::string& encoding_name); | 733 void OnSetPageEncoding(const std::string& encoding_name); |
722 void OnSetRendererPrefs(const RendererPreferences& renderer_prefs); | 734 void OnSetRendererPrefs(const RendererPreferences& renderer_prefs); |
723 void OnSetWebUIProperty(const std::string& name, const std::string& value); | 735 void OnSetWebUIProperty(const std::string& name, const std::string& value); |
724 void OnSetZoomLevelForLoadingURL(const GURL& url, double zoom_level); | 736 void OnSetZoomLevelForLoadingURL(const GURL& url, double zoom_level); |
725 void OnSetZoomLevelForView(bool uses_temporary_zoom_level, double level); | 737 void OnSetZoomLevelForView(bool uses_temporary_zoom_level, double level); |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1026 | 1038 |
1027 // The speech recognition dispatcher attached to this view, lazily | 1039 // The speech recognition dispatcher attached to this view, lazily |
1028 // initialized. | 1040 // initialized. |
1029 SpeechRecognitionDispatcher* speech_recognition_dispatcher_; | 1041 SpeechRecognitionDispatcher* speech_recognition_dispatcher_; |
1030 | 1042 |
1031 // BrowserPluginManager attached to this view; lazily initialized. | 1043 // BrowserPluginManager attached to this view; lazily initialized. |
1032 scoped_refptr<BrowserPluginManager> browser_plugin_manager_; | 1044 scoped_refptr<BrowserPluginManager> browser_plugin_manager_; |
1033 | 1045 |
1034 DevToolsAgent* devtools_agent_; | 1046 DevToolsAgent* devtools_agent_; |
1035 | 1047 |
| 1048 // The current accessibility mode. |
| 1049 AccessibilityMode accessibility_mode_; |
| 1050 |
| 1051 // Only valid if |accessibility_mode_| is anything other than |
| 1052 // AccessibilityModeOff. |
| 1053 RendererAccessibility* renderer_accessibility_; |
| 1054 |
1036 // Mouse Lock dispatcher attached to this view. | 1055 // Mouse Lock dispatcher attached to this view. |
1037 MouseLockDispatcher* mouse_lock_dispatcher_; | 1056 MouseLockDispatcher* mouse_lock_dispatcher_; |
1038 | 1057 |
1039 scoped_ptr<HistoryController> history_controller_; | 1058 scoped_ptr<HistoryController> history_controller_; |
1040 | 1059 |
1041 #if defined(OS_ANDROID) | 1060 #if defined(OS_ANDROID) |
1042 // Android Specific --------------------------------------------------------- | 1061 // Android Specific --------------------------------------------------------- |
1043 | 1062 |
1044 // Expected id of the next content intent launched. Used to prevent scheduled | 1063 // Expected id of the next content intent launched. Used to prevent scheduled |
1045 // intents to be launched if aborted. | 1064 // intents to be launched if aborted. |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1145 // use the Observer interface to filter IPC messages and receive frame change | 1164 // use the Observer interface to filter IPC messages and receive frame change |
1146 // notifications. | 1165 // notifications. |
1147 // --------------------------------------------------------------------------- | 1166 // --------------------------------------------------------------------------- |
1148 | 1167 |
1149 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); | 1168 DISALLOW_COPY_AND_ASSIGN(RenderViewImpl); |
1150 }; | 1169 }; |
1151 | 1170 |
1152 } // namespace content | 1171 } // namespace content |
1153 | 1172 |
1154 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ | 1173 #endif // CONTENT_RENDERER_RENDER_VIEW_IMPL_H_ |
OLD | NEW |