| Index: content/browser/renderer_host/render_widget_host_impl.h
|
| diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
|
| index a26f6099e0a60f05add77f4f033d67a52dfb08e7..6f884b66f6761d088d1a6cfdbf31b2521ef66dd2 100644
|
| --- a/content/browser/renderer_host/render_widget_host_impl.h
|
| +++ b/content/browser/renderer_host/render_widget_host_impl.h
|
| @@ -24,6 +24,7 @@
|
| #include "base/timer/timer.h"
|
| #include "build/build_config.h"
|
| #include "cc/resources/shared_bitmap.h"
|
| +#include "content/browser/accessibility/browser_accessibility_manager.h"
|
| #include "content/browser/renderer_host/event_with_latency_info.h"
|
| #include "content/browser/renderer_host/input/input_ack_handler.h"
|
| #include "content/browser/renderer_host/input/input_router_client.h"
|
| @@ -77,7 +78,6 @@
|
| #endif
|
|
|
| namespace content {
|
| -class BrowserAccessibilityManager;
|
| class InputRouter;
|
| class MockRenderWidgetHost;
|
| class RenderWidgetHostDelegate;
|
| @@ -95,7 +95,8 @@
|
| public InputRouterClient,
|
| public InputAckHandler,
|
| public TouchEmulatorClient,
|
| - public IPC::Listener {
|
| + public IPC::Listener,
|
| + public BrowserAccessibilityDelegate {
|
| public:
|
| // routing_id can be MSG_ROUTING_NONE, in which case the next available
|
| // routing id is taken from the RenderProcessHost.
|
| @@ -140,6 +141,10 @@
|
| virtual void LockBackingStore() OVERRIDE;
|
| virtual void UnlockBackingStore() OVERRIDE;
|
| #endif
|
| + virtual void EnableFullAccessibilityMode() OVERRIDE;
|
| + virtual bool IsFullAccessibilityModeForTesting() OVERRIDE;
|
| + virtual void EnableTreeOnlyAccessibilityMode() OVERRIDE;
|
| + virtual bool IsTreeOnlyAccessibilityModeForTesting() OVERRIDE;
|
| virtual void ForwardMouseEvent(
|
| const blink::WebMouseEvent& mouse_event) OVERRIDE;
|
| virtual void ForwardWheelEvent(
|
| @@ -169,6 +174,23 @@
|
|
|
| virtual SkColorType PreferredReadbackFormat() OVERRIDE;
|
|
|
| + // BrowserAccessibilityDelegate
|
| + virtual void AccessibilitySetFocus(int acc_obj_id) OVERRIDE;
|
| + virtual void AccessibilityDoDefaultAction(int acc_obj_id) OVERRIDE;
|
| + virtual void AccessibilityShowMenu(int acc_obj_id) OVERRIDE;
|
| + virtual void AccessibilityScrollToMakeVisible(
|
| + int acc_obj_id, gfx::Rect subfocus) OVERRIDE;
|
| + virtual void AccessibilityScrollToPoint(
|
| + int acc_obj_id, gfx::Point point) OVERRIDE;
|
| + virtual void AccessibilitySetTextSelection(
|
| + int acc_obj_id, int start_offset, int end_offset) OVERRIDE;
|
| + virtual bool AccessibilityViewHasFocus() const OVERRIDE;
|
| + virtual gfx::Rect AccessibilityGetViewBounds() const OVERRIDE;
|
| + virtual gfx::Point AccessibilityOriginInScreen(const gfx::Rect& bounds)
|
| + const OVERRIDE;
|
| + virtual void AccessibilityHitTest(const gfx::Point& point) OVERRIDE;
|
| + virtual void AccessibilityFatalError() OVERRIDE;
|
| +
|
| // Forces redraw in the renderer and when the update reaches the browser
|
| // grabs snapshot from the compositor. Returns PNG-encoded snapshot.
|
| void GetSnapshotFromBrowser(
|
| @@ -373,6 +395,30 @@
|
| void SetEditCommandsForNextKeyEvent(
|
| const std::vector<EditCommand>& commands);
|
|
|
| + // Gets the accessibility mode.
|
| + AccessibilityMode accessibility_mode() const {
|
| + return accessibility_mode_;
|
| + }
|
| +
|
| + // Adds the given accessibility mode to the current accessibility mode bitmap.
|
| + void AddAccessibilityMode(AccessibilityMode mode);
|
| +
|
| + // Removes the given accessibility mode from the current accessibility mode
|
| + // bitmap, managing the bits that are shared with other modes such that a
|
| + // bit will only be turned off when all modes that depend on it have been
|
| + // removed.
|
| + void RemoveAccessibilityMode(AccessibilityMode mode);
|
| +
|
| + // Resets the accessibility mode to the default setting in
|
| + // BrowserStateAccessibilityImpl.
|
| + void ResetAccessibilityMode();
|
| +
|
| +#if defined(OS_WIN)
|
| + void SetParentNativeViewAccessible(
|
| + gfx::NativeViewAccessible accessible_parent);
|
| + gfx::NativeViewAccessible GetParentNativeViewAccessible() const;
|
| +#endif
|
| +
|
| // Executes the edit command on the RenderView.
|
| void ExecuteEditCommand(const std::string& command,
|
| const std::string& value);
|
| @@ -473,17 +519,6 @@
|
| void AddLatencyInfoComponentIds(ui::LatencyInfo* latency_info);
|
|
|
| InputRouter* input_router() { return input_router_.get(); }
|
| -
|
| - // Get the BrowserAccessibilityManager for the root of the frame tree,
|
| - BrowserAccessibilityManager* GetRootBrowserAccessibilityManager();
|
| -
|
| - // Get the BrowserAccessibilityManager for the root of the frame tree,
|
| - // or create it if it doesn't already exist.
|
| - BrowserAccessibilityManager* GetOrCreateRootBrowserAccessibilityManager();
|
| -
|
| -#if defined(OS_WIN)
|
| - gfx::NativeViewAccessible GetParentNativeViewAccessible();
|
| -#endif
|
|
|
| protected:
|
| virtual RenderWidgetHostImpl* AsRenderWidgetHostImpl() OVERRIDE;
|
| @@ -674,6 +709,9 @@
|
| int snapshot_id,
|
| scoped_refptr<base::RefCountedBytes> png_data);
|
|
|
| + // Send a message to the renderer process to change the accessibility mode.
|
| + void SetAccessibilityMode(AccessibilityMode AccessibilityMode);
|
| +
|
| // Our delegate, which wants to know mainly about keyboard events.
|
| // It will remain non-NULL until DetachDelegate() is called.
|
| RenderWidgetHostDelegate* delegate_;
|
| @@ -744,6 +782,8 @@
|
| bool waiting_for_screen_rects_ack_;
|
| gfx::Rect last_view_screen_rect_;
|
| gfx::Rect last_window_screen_rect_;
|
| +
|
| + AccessibilityMode accessibility_mode_;
|
|
|
| // Keyboard event listeners.
|
| std::vector<KeyPressEventCallback> key_press_event_callbacks_;
|
|
|