| Index: chrome/browser/extensions/api/tabs/tabs_api.h
|
| ===================================================================
|
| --- chrome/browser/extensions/api/tabs/tabs_api.h (revision 176052)
|
| +++ chrome/browser/extensions/api/tabs/tabs_api.h (working copy)
|
| @@ -1,290 +0,0 @@
|
| -// Copyright (c) 2012 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_API_TABS_TABS_API_H_
|
| -#define CHROME_BROWSER_EXTENSIONS_API_TABS_TABS_API_H_
|
| -
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/compiler_specific.h"
|
| -#include "chrome/browser/extensions/extension_function.h"
|
| -#include "chrome/common/extensions/extension_resource.h"
|
| -#include "chrome/common/extensions/user_script.h"
|
| -#include "content/public/browser/notification_observer.h"
|
| -#include "content/public/browser/notification_registrar.h"
|
| -#include "googleurl/src/gurl.h"
|
| -
|
| -class BackingStore;
|
| -class GURL;
|
| -class PrefServiceSyncable;
|
| -class SkBitmap;
|
| -
|
| -namespace base {
|
| -class DictionaryValue;
|
| -}
|
| -
|
| -namespace content {
|
| -class WebContents;
|
| -}
|
| -
|
| -namespace extensions {
|
| -namespace api {
|
| -namespace tabs {
|
| -struct InjectDetails;
|
| -} // namespace tabs
|
| -} // namespace api
|
| -} // namespace extensions
|
| -
|
| -namespace skia {
|
| -class PlatformBitmap;
|
| -}
|
| -
|
| -// Windows
|
| -class WindowsGetFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsGetFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.get")
|
| -};
|
| -class WindowsGetCurrentFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsGetCurrentFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.getCurrent")
|
| -};
|
| -class WindowsGetLastFocusedFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsGetLastFocusedFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.getLastFocused")
|
| -};
|
| -class WindowsGetAllFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsGetAllFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.getAll")
|
| -};
|
| -class WindowsCreateFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsCreateFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - // Returns whether the window should be created in incognito mode.
|
| - // |urls| is the list of urls to open. If we are creating an incognito window,
|
| - // the function will remove these urls which may not be opened in incognito
|
| - // mode. If window creation leads the browser into an erroneous state,
|
| - // |is_error| is set to true (also, error_ member variable is assigned
|
| - // the proper error message).
|
| - bool ShouldOpenIncognitoWindow(const base::DictionaryValue* args,
|
| - std::vector<GURL>* urls,
|
| - bool* is_error);
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.create")
|
| -};
|
| -class WindowsUpdateFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsUpdateFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.update")
|
| -};
|
| -class WindowsRemoveFunction : public SyncExtensionFunction {
|
| - virtual ~WindowsRemoveFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("windows.remove")
|
| -};
|
| -
|
| -// Tabs
|
| -class TabsGetFunction : public SyncExtensionFunction {
|
| - virtual ~TabsGetFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.get")
|
| -};
|
| -class TabsGetCurrentFunction : public SyncExtensionFunction {
|
| - virtual ~TabsGetCurrentFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.getCurrent")
|
| -};
|
| -class TabsGetSelectedFunction : public SyncExtensionFunction {
|
| - virtual ~TabsGetSelectedFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.getSelected")
|
| -};
|
| -class TabsGetAllInWindowFunction : public SyncExtensionFunction {
|
| - virtual ~TabsGetAllInWindowFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.getAllInWindow")
|
| -};
|
| -class TabsQueryFunction : public SyncExtensionFunction {
|
| - virtual ~TabsQueryFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.query")
|
| -};
|
| -class TabsCreateFunction : public SyncExtensionFunction {
|
| - virtual ~TabsCreateFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.create")
|
| -};
|
| -class TabsDuplicateFunction : public SyncExtensionFunction {
|
| - virtual ~TabsDuplicateFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.duplicate")
|
| -};
|
| -class TabsHighlightFunction : public SyncExtensionFunction {
|
| - virtual ~TabsHighlightFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.highlight")
|
| -};
|
| -class TabsUpdateFunction : public AsyncExtensionFunction {
|
| - public:
|
| - TabsUpdateFunction();
|
| -
|
| - protected:
|
| - virtual ~TabsUpdateFunction() {}
|
| - virtual bool UpdateURLIfPresent(base::DictionaryValue* update_props,
|
| - int tab_id,
|
| - bool* is_async);
|
| - virtual void PopulateResult();
|
| -
|
| - content::WebContents* web_contents_;
|
| -
|
| - private:
|
| - virtual bool RunImpl() OVERRIDE;
|
| - void OnExecuteCodeFinished(const std::string& error,
|
| - int32 on_page_id,
|
| - const GURL& on_url,
|
| - const ListValue& script_result);
|
| -
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.update")
|
| -};
|
| -class TabsMoveFunction : public SyncExtensionFunction {
|
| - virtual ~TabsMoveFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.move")
|
| -};
|
| -class TabsReloadFunction : public SyncExtensionFunction {
|
| - virtual ~TabsReloadFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.reload")
|
| -};
|
| -class TabsRemoveFunction : public SyncExtensionFunction {
|
| - virtual ~TabsRemoveFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.remove")
|
| -};
|
| -class TabsDetectLanguageFunction : public AsyncExtensionFunction,
|
| - public content::NotificationObserver {
|
| - private:
|
| - virtual ~TabsDetectLanguageFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| -
|
| - virtual void Observe(int type,
|
| - const content::NotificationSource& source,
|
| - const content::NotificationDetails& details) OVERRIDE;
|
| - void GotLanguage(const std::string& language);
|
| - content::NotificationRegistrar registrar_;
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.detectLanguage")
|
| -};
|
| -class TabsCaptureVisibleTabFunction : public AsyncExtensionFunction,
|
| - public content::NotificationObserver {
|
| - public:
|
| - static void RegisterUserPrefs(PrefServiceSyncable* service);
|
| -
|
| - protected:
|
| - enum ImageFormat {
|
| - FORMAT_JPEG,
|
| - FORMAT_PNG
|
| - };
|
| -
|
| - // The default quality setting used when encoding jpegs.
|
| - static const int kDefaultQuality;
|
| -
|
| - virtual ~TabsCaptureVisibleTabFunction() {}
|
| - virtual bool RunImpl() OVERRIDE;
|
| - virtual bool GetTabToCapture(content::WebContents** web_contents);
|
| - virtual void Observe(int type,
|
| - const content::NotificationSource& source,
|
| - const content::NotificationDetails& details) OVERRIDE;
|
| - void SendResultFromBitmap(const SkBitmap& screen_capture);
|
| -
|
| - private:
|
| - void CopyFromBackingStoreComplete(skia::PlatformBitmap* bitmap,
|
| - bool succeeded);
|
| -
|
| - content::NotificationRegistrar registrar_;
|
| -
|
| - // The format (JPEG vs PNG) of the resulting image. Set in RunImpl().
|
| - ImageFormat image_format_;
|
| -
|
| - // Quality setting to use when encoding jpegs. Set in RunImpl().
|
| - int image_quality_;
|
| -
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.captureVisibleTab")
|
| -};
|
| -
|
| -// Implement API call tabs.executeScript and tabs.insertCSS.
|
| -class ExecuteCodeInTabFunction : public AsyncExtensionFunction {
|
| - public:
|
| - ExecuteCodeInTabFunction();
|
| -
|
| - protected:
|
| - virtual ~ExecuteCodeInTabFunction();
|
| -
|
| - // ExtensionFunction:
|
| - virtual bool HasPermission() OVERRIDE;
|
| - virtual bool RunImpl() OVERRIDE;
|
| -
|
| - // Message handler.
|
| - virtual void OnExecuteCodeFinished(const std::string& error,
|
| - int32 on_page_id,
|
| - const GURL& on_url,
|
| - const ListValue& script_result);
|
| -
|
| - private:
|
| - // Initialize the |execute_tab_id_| and |details_| if they haven't already
|
| - // been. Returns whether initialization was successful.
|
| - bool Init();
|
| -
|
| - // Called when contents from the file whose path is specified in JSON
|
| - // arguments has been loaded.
|
| - void DidLoadFile(bool success, const std::string& data);
|
| -
|
| - // Runs on FILE thread. Loads message bundles for the extension and
|
| - // localizes the CSS data. Calls back DidLoadAndLocalizeFile on the UI thread.
|
| - void LocalizeCSS(
|
| - const std::string& data,
|
| - const std::string& extension_id,
|
| - const FilePath& extension_path,
|
| - const std::string& extension_default_locale);
|
| -
|
| - // Called when contents from the loaded file have been localized.
|
| - void DidLoadAndLocalizeFile(bool success, const std::string& data);
|
| -
|
| - // Run in UI thread. Code string contains the code to be executed. Returns
|
| - // true on success. If true is returned, this does an AddRef.
|
| - bool Execute(const std::string& code_string);
|
| -
|
| - // Id of tab which executes code.
|
| - int execute_tab_id_;
|
| -
|
| - // The injection details.
|
| - scoped_ptr<extensions::api::tabs::InjectDetails> details_;
|
| -
|
| - // Contains extension resource built from path of file which is
|
| - // specified in JSON arguments.
|
| - ExtensionResource resource_;
|
| -};
|
| -
|
| -class TabsExecuteScriptFunction : public ExecuteCodeInTabFunction {
|
| - private:
|
| - virtual ~TabsExecuteScriptFunction() {}
|
| -
|
| - virtual void OnExecuteCodeFinished(const std::string& error,
|
| - int32 on_page_id,
|
| - const GURL& on_url,
|
| - const ListValue& script_result) OVERRIDE;
|
| -
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.executeScript")
|
| -};
|
| -
|
| -class TabsInsertCSSFunction : public ExecuteCodeInTabFunction {
|
| - private:
|
| - virtual ~TabsInsertCSSFunction() {}
|
| -
|
| - DECLARE_EXTENSION_FUNCTION_NAME("tabs.insertCSS")
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_EXTENSIONS_API_TABS_TABS_API_H_
|
|
|