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 #ifndef CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 5 #ifndef CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
6 #define CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 6 #define CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 14 matching lines...) Expand all Loading... |
25 #include "third_party/WebKit/public/web/WebTextDirection.h" | 25 #include "third_party/WebKit/public/web/WebTextDirection.h" |
26 #include "ui/accessibility/ax_node_data.h" | 26 #include "ui/accessibility/ax_node_data.h" |
27 | 27 |
28 class GURL; | 28 class GURL; |
29 struct AccessibilityHostMsg_EventParams; | 29 struct AccessibilityHostMsg_EventParams; |
30 struct AccessibilityHostMsg_LocationChangeParams; | 30 struct AccessibilityHostMsg_LocationChangeParams; |
31 struct FrameHostMsg_DidFailProvisionalLoadWithError_Params; | 31 struct FrameHostMsg_DidFailProvisionalLoadWithError_Params; |
32 struct FrameHostMsg_OpenURL_Params; | 32 struct FrameHostMsg_OpenURL_Params; |
33 struct FrameHostMsg_BeginNavigation_Params; | 33 struct FrameHostMsg_BeginNavigation_Params; |
34 struct FrameMsg_Navigate_Params; | 34 struct FrameMsg_Navigate_Params; |
| 35 #if defined(OS_MACOSX) || defined(OS_ANDROID) |
| 36 struct FrameHostMsg_ShowPopup_Params; |
| 37 #endif |
35 | 38 |
36 namespace base { | 39 namespace base { |
37 class FilePath; | 40 class FilePath; |
38 class ListValue; | 41 class ListValue; |
39 } | 42 } |
40 | 43 |
41 namespace content { | 44 namespace content { |
42 | 45 |
43 class CrossProcessFrameConnector; | 46 class CrossProcessFrameConnector; |
44 class CrossSiteTransferringRequest; | 47 class CrossSiteTransferringRequest; |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 | 268 |
266 // If accessibility is enabled, get the BrowserAccessibilityManager for | 269 // If accessibility is enabled, get the BrowserAccessibilityManager for |
267 // this frame, or create one if it doesn't exist yet, otherwise return | 270 // this frame, or create one if it doesn't exist yet, otherwise return |
268 // NULL. | 271 // NULL. |
269 BrowserAccessibilityManager* GetOrCreateBrowserAccessibilityManager(); | 272 BrowserAccessibilityManager* GetOrCreateBrowserAccessibilityManager(); |
270 | 273 |
271 #if defined(OS_WIN) | 274 #if defined(OS_WIN) |
272 void SetParentNativeViewAccessible( | 275 void SetParentNativeViewAccessible( |
273 gfx::NativeViewAccessible accessible_parent); | 276 gfx::NativeViewAccessible accessible_parent); |
274 gfx::NativeViewAccessible GetParentNativeViewAccessible() const; | 277 gfx::NativeViewAccessible GetParentNativeViewAccessible() const; |
| 278 #elif defined(OS_MACOSX) |
| 279 // Select popup menu related methods (for external popup menus). |
| 280 void DidSelectPopupMenuItem(int selected_index); |
| 281 void DidCancelPopupMenu(); |
| 282 #elif defined(OS_ANDROID) |
| 283 void DidSelectPopupMenuItems(const std::vector<int>& selected_indices); |
| 284 void DidCancelPopupMenu(); |
275 #endif | 285 #endif |
276 | 286 |
277 protected: | 287 protected: |
278 friend class RenderFrameHostFactory; | 288 friend class RenderFrameHostFactory; |
279 | 289 |
280 // TODO(nasko): Remove dependency on RenderViewHost here. RenderProcessHost | 290 // TODO(nasko): Remove dependency on RenderViewHost here. RenderProcessHost |
281 // should be the abstraction needed here, but we need RenderViewHost to pass | 291 // should be the abstraction needed here, but we need RenderViewHost to pass |
282 // into WebContentsObserver::FrameDetached for now. | 292 // into WebContentsObserver::FrameDetached for now. |
283 RenderFrameHostImpl(RenderViewHostImpl* render_view_host, | 293 RenderFrameHostImpl(RenderViewHostImpl* render_view_host, |
284 RenderFrameHostDelegate* delegate, | 294 RenderFrameHostDelegate* delegate, |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
343 const base::string16& title, | 353 const base::string16& title, |
344 blink::WebTextDirection title_direction); | 354 blink::WebTextDirection title_direction); |
345 void OnUpdateEncoding(const std::string& encoding); | 355 void OnUpdateEncoding(const std::string& encoding); |
346 void OnBeginNavigation( | 356 void OnBeginNavigation( |
347 const FrameHostMsg_BeginNavigation_Params& params); | 357 const FrameHostMsg_BeginNavigation_Params& params); |
348 void OnAccessibilityEvents( | 358 void OnAccessibilityEvents( |
349 const std::vector<AccessibilityHostMsg_EventParams>& params); | 359 const std::vector<AccessibilityHostMsg_EventParams>& params); |
350 void OnAccessibilityLocationChanges( | 360 void OnAccessibilityLocationChanges( |
351 const std::vector<AccessibilityHostMsg_LocationChangeParams>& params); | 361 const std::vector<AccessibilityHostMsg_LocationChangeParams>& params); |
352 | 362 |
| 363 #if defined(OS_MACOSX) || defined(OS_ANDROID) |
| 364 void OnShowPopup(const FrameHostMsg_ShowPopup_Params& params); |
| 365 void OnHidePopup(); |
| 366 #endif |
| 367 |
353 // Returns whether the given URL is allowed to commit in the current process. | 368 // Returns whether the given URL is allowed to commit in the current process. |
354 // This is a more conservative check than RenderProcessHost::FilterURL, since | 369 // This is a more conservative check than RenderProcessHost::FilterURL, since |
355 // it will be used to kill processes that commit unauthorized URLs. | 370 // it will be used to kill processes that commit unauthorized URLs. |
356 bool CanCommitURL(const GURL& url); | 371 bool CanCommitURL(const GURL& url); |
357 | 372 |
358 void PlatformNotificationPermissionRequestDone( | 373 void PlatformNotificationPermissionRequestDone( |
359 int request_id, blink::WebNotificationPermission permission); | 374 int request_id, blink::WebNotificationPermission permission); |
360 | 375 |
361 // For now, RenderFrameHosts indirectly keep RenderViewHosts alive via a | 376 // For now, RenderFrameHosts indirectly keep RenderViewHosts alive via a |
362 // refcount that calls Shutdown when it reaches zero. This allows each | 377 // refcount that calls Shutdown when it reaches zero. This allows each |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
431 base::Callback<void(ui::AXEvent, int)> accessibility_testing_callback_; | 446 base::Callback<void(ui::AXEvent, int)> accessibility_testing_callback_; |
432 // The most recently received accessibility tree - for testing only. | 447 // The most recently received accessibility tree - for testing only. |
433 scoped_ptr<ui::AXTree> ax_tree_for_testing_; | 448 scoped_ptr<ui::AXTree> ax_tree_for_testing_; |
434 | 449 |
435 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); | 450 DISALLOW_COPY_AND_ASSIGN(RenderFrameHostImpl); |
436 }; | 451 }; |
437 | 452 |
438 } // namespace content | 453 } // namespace content |
439 | 454 |
440 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ | 455 #endif // CONTENT_BROWSER_FRAME_HOST_RENDER_FRAME_HOST_IMPL_H_ |
OLD | NEW |