automation_internal_api.h revision 010d83a9304c5a91596085d917d248abff47903a
1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_EXTENSIONS_API_AUTOMATION_INTERNAL_AUTOMATION_INTERNAL_API_H_ 6#define CHROME_BROWSER_EXTENSIONS_API_AUTOMATION_INTERNAL_AUTOMATION_INTERNAL_API_H_ 7 8#include "chrome/browser/extensions/chrome_extension_function.h" 9#include "content/public/browser/web_contents_observer.h" 10#include "content/public/browser/web_contents_user_data.h" 11 12namespace content { 13struct AXEventNotificationDetails; 14} // namespace content 15 16namespace ui { 17struct AXNodeData; 18} 19 20namespace extensions { 21 22// Implementation of the chrome.automation API. 23class AutomationInternalEnableCurrentTabFunction 24 : public ChromeAsyncExtensionFunction { 25 DECLARE_EXTENSION_FUNCTION("automationInternal.enableCurrentTab", 26 AUTOMATIONINTERNAL_ENABLECURRENTTAB) 27 protected: 28 virtual ~AutomationInternalEnableCurrentTabFunction() {} 29 30 virtual bool RunAsync() OVERRIDE; 31}; 32 33class AutomationInternalPerformActionFunction 34 : public ChromeAsyncExtensionFunction { 35 DECLARE_EXTENSION_FUNCTION("automationInternal.performAction", 36 AUTOMATIONINTERNAL_PERFORMACTION) 37 protected: 38 virtual ~AutomationInternalPerformActionFunction() {} 39 40 virtual bool RunAsync() OVERRIDE; 41}; 42 43class AutomationInternalEnableDesktopFunction 44 : public ChromeAsyncExtensionFunction { 45 DECLARE_EXTENSION_FUNCTION("automationInternal.enableDesktop", 46 AUTOMATIONINTERNAL_ENABLEDESKTOP) 47 protected: 48 virtual ~AutomationInternalEnableDesktopFunction() {} 49 50 virtual bool RunAsync() OVERRIDE; 51}; 52 53} // namespace extensions 54 55#endif // CHROME_BROWSER_EXTENSIONS_API_AUTOMATION_INTERNAL_AUTOMATION_INTERNAL_API_H_ 56