diff options
Diffstat (limited to 'chrome/browser/extensions/extension_accessibility_api.h')
-rw-r--r-- | chrome/browser/extensions/extension_accessibility_api.h | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/chrome/browser/extensions/extension_accessibility_api.h b/chrome/browser/extensions/extension_accessibility_api.h deleted file mode 100644 index afae039..0000000 --- a/chrome/browser/extensions/extension_accessibility_api.h +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_ACCESSIBILITY_API_H_ -#define CHROME_BROWSER_EXTENSIONS_EXTENSION_ACCESSIBILITY_API_H_ - -#include <string> -#include <vector> - -#include "base/singleton.h" -#include "chrome/browser/extensions/extension_function.h" -#include "chrome/common/accessibility_events.h" -#include "chrome/common/notification_service.h" -#include "chrome/common/notification_registrar.h" - -// Observes the profile and routes accessibility notifications as events -// to the extension system. -class ExtensionAccessibilityEventRouter : public NotificationObserver { - public: - // Single instance of the event router. - static ExtensionAccessibilityEventRouter* GetInstance(); - - // Safe to call multiple times. - void ObserveProfile(Profile* profile); - - // Get the dict representing the last control that received an - // OnControlFocus event. - DictionaryValue* last_focused_control_dict() { - return &last_focused_control_dict_; - } - - // Accessibility support is disabled until an extension expicitly enables - // it, so that this extension api has no impact on Chrome's performance - // otherwise. These methods handle enabling, disabling, querying the - // status, and installing callbacks to execute when accessibility support - // is enabled or disabled. - void SetAccessibilityEnabled(bool enabled); - bool IsAccessibilityEnabled() const; - typedef Callback0::Type Callback; - void AddOnEnabledListener(Callback* callback); - void AddOnDisabledListener(Callback* callback); - - private: - friend struct DefaultSingletonTraits<ExtensionAccessibilityEventRouter>; - - ExtensionAccessibilityEventRouter() - : enabled_(false) {} - virtual ~ExtensionAccessibilityEventRouter() {} - - // NotificationObserver::Observe. - virtual void Observe(NotificationType type, - const NotificationSource& source, - const NotificationDetails& details); - - void OnWindowOpened(const AccessibilityWindowInfo* details); - void OnWindowClosed(const AccessibilityWindowInfo* details); - void OnControlFocused(const AccessibilityControlInfo* details); - void OnControlAction(const AccessibilityControlInfo* details); - void OnTextChanged(const AccessibilityControlInfo* details); - - void DispatchEvent(Profile* profile, - const char* event_name, - const std::string& json_args); - - // Used for tracking registrations to history service notifications. - NotificationRegistrar registrar_; - - DictionaryValue last_focused_control_dict_; - - bool enabled_; - std::vector<Callback*> on_enabled_listeners_; - std::vector<Callback*> on_disabled_listeners_; - - DISALLOW_COPY_AND_ASSIGN(ExtensionAccessibilityEventRouter); -}; - -// API function that enables or disables accessibility support. Event -// listeners are only installed when accessibility support is enabled, to -// minimize the impact. -class SetAccessibilityEnabledFunction : public SyncExtensionFunction { - virtual ~SetAccessibilityEnabledFunction() {} - virtual bool RunImpl(); - DECLARE_EXTENSION_FUNCTION_NAME( - "experimental.accessibility.setAccessibilityEnabled") -}; - -// API function that returns the most recent focused control. -class GetFocusedControlFunction : public SyncExtensionFunction { - virtual ~GetFocusedControlFunction() {} - virtual bool RunImpl(); - DECLARE_EXTENSION_FUNCTION_NAME( - "experimental.accessibility.getFocusedControl") -}; - -#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_ACCESSIBILITY_API_H_ |