| Index: chrome/common/automation_message_types.h
|
| ===================================================================
|
| --- chrome/common/automation_message_types.h (revision 0)
|
| +++ chrome/common/automation_message_types.h (revision 0)
|
| @@ -0,0 +1,358 @@
|
| +// Copyright (c) 2011 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_COMMON_AUTOMATION_MESSAGE_TYPES_H_
|
| +#define CHROME_COMMON_AUTOMATION_MESSAGE_TYPES_H_
|
| +
|
| +#include <string>
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "chrome/common/automation_constants.h"
|
| +#include "chrome/common/content_settings.h"
|
| +#include "chrome/common/security_style.h"
|
| +#include "content/common/common_param_traits.h"
|
| +#include "content/common/page_type.h"
|
| +#include "ipc/ipc_param_traits.h"
|
| +#include "net/base/host_port_pair.h"
|
| +#include "net/base/upload_data.h"
|
| +#include "ui/gfx/rect.h"
|
| +
|
| +struct AutomationMsg_Find_Params {
|
| + // Unused value, which exists only for backwards compat.
|
| + int unused;
|
| +
|
| + // The word(s) to find on the page.
|
| + string16 search_string;
|
| +
|
| + // Whether to search forward or backward within the page.
|
| + bool forward;
|
| +
|
| + // Whether search should be Case sensitive.
|
| + bool match_case;
|
| +
|
| + // Whether this operation is first request (Find) or a follow-up (FindNext).
|
| + bool find_next;
|
| +};
|
| +
|
| +struct AutomationURLResponse {
|
| + AutomationURLResponse();
|
| + AutomationURLResponse(const std::string& mime_type,
|
| + const std::string& headers,
|
| + int64 content_length,
|
| + const base::Time& last_modified,
|
| + const std::string& redirect_url,
|
| + int redirect_status,
|
| + const net::HostPortPair& host_socket_address);
|
| + ~AutomationURLResponse();
|
| +
|
| + std::string mime_type;
|
| + std::string headers;
|
| + int64 content_length;
|
| + base::Time last_modified;
|
| + std::string redirect_url;
|
| + int redirect_status;
|
| + net::HostPortPair socket_address;
|
| +};
|
| +
|
| +struct ExternalTabSettings {
|
| + ExternalTabSettings();
|
| + ExternalTabSettings(gfx::NativeWindow parent,
|
| + const gfx::Rect& dimensions,
|
| + unsigned int style,
|
| + bool is_incognito,
|
| + bool load_requests_via_automation,
|
| + bool handle_top_level_requests,
|
| + const GURL& initial_url,
|
| + const GURL& referrer,
|
| + bool infobars_enabled,
|
| + bool route_all_top_level_navigations);
|
| + ~ExternalTabSettings();
|
| +
|
| + gfx::NativeWindow parent;
|
| + gfx::Rect dimensions;
|
| + unsigned int style;
|
| + bool is_incognito;
|
| + bool load_requests_via_automation;
|
| + bool handle_top_level_requests;
|
| + GURL initial_url;
|
| + GURL referrer;
|
| + bool infobars_enabled;
|
| + bool route_all_top_level_navigations;
|
| +};
|
| +
|
| +struct NavigationInfo {
|
| + NavigationInfo();
|
| + NavigationInfo(int navigation_type,
|
| + int relative_offset,
|
| + int navigation_index,
|
| + const std::wstring& title,
|
| + const GURL& url,
|
| + const GURL& referrer,
|
| + SecurityStyle security_style,
|
| + bool displayed_insecure_content,
|
| + bool ran_insecure_content);
|
| + ~NavigationInfo();
|
| +
|
| + int navigation_type;
|
| + int relative_offset;
|
| + int navigation_index;
|
| + std::wstring title;
|
| + GURL url;
|
| + GURL referrer;
|
| + SecurityStyle security_style;
|
| + bool displayed_insecure_content;
|
| + bool ran_insecure_content;
|
| +};
|
| +
|
| +// A stripped down version of ContextMenuParams in webkit/glue/context_menu.h.
|
| +struct MiniContextMenuParams {
|
| + MiniContextMenuParams();
|
| + MiniContextMenuParams(int screen_x,
|
| + int screen_y,
|
| + const GURL& link_url,
|
| + const GURL& unfiltered_link_url,
|
| + const GURL& src_url,
|
| + const GURL& page_url,
|
| + const GURL& frame_url);
|
| + ~MiniContextMenuParams();
|
| +
|
| + // The x coordinate for displaying the menu.
|
| + int screen_x;
|
| +
|
| + // The y coordinate for displaying the menu.
|
| + int screen_y;
|
| +
|
| + // This is the URL of the link that encloses the node the context menu was
|
| + // invoked on.
|
| + GURL link_url;
|
| +
|
| + // The link URL to be used ONLY for "copy link address". We don't validate
|
| + // this field in the frontend process.
|
| + GURL unfiltered_link_url;
|
| +
|
| + // This is the source URL for the element that the context menu was
|
| + // invoked on. Example of elements with source URLs are img, audio, and
|
| + // video.
|
| + GURL src_url;
|
| +
|
| + // This is the URL of the top level page that the context menu was invoked
|
| + // on.
|
| + GURL page_url;
|
| +
|
| + // This is the URL of the subframe that the context menu was invoked on.
|
| + GURL frame_url;
|
| +};
|
| +
|
| +struct AttachExternalTabParams {
|
| + AttachExternalTabParams();
|
| + AttachExternalTabParams(uint64 cookie,
|
| + const GURL& url,
|
| + const gfx::Rect& dimensions,
|
| + int disposition,
|
| + bool user_gesture,
|
| + const std::string& profile_name);
|
| + ~AttachExternalTabParams();
|
| +
|
| + uint64 cookie;
|
| + GURL url;
|
| + gfx::Rect dimensions;
|
| + int disposition;
|
| + bool user_gesture;
|
| + std::string profile_name;
|
| +};
|
| +
|
| +#if defined(OS_WIN)
|
| +
|
| +struct Reposition_Params {
|
| + HWND window;
|
| + HWND window_insert_after;
|
| + int left;
|
| + int top;
|
| + int width;
|
| + int height;
|
| + int flags;
|
| + bool set_parent;
|
| + HWND parent_window;
|
| +};
|
| +
|
| +#endif // defined(OS_WIN)
|
| +
|
| +struct AutomationURLRequest {
|
| + AutomationURLRequest();
|
| + AutomationURLRequest(const std::string& url,
|
| + const std::string& method,
|
| + const std::string& referrer,
|
| + const std::string& extra_request_headers,
|
| + scoped_refptr<net::UploadData> upload_data,
|
| + int resource_type,
|
| + int load_flags);
|
| + ~AutomationURLRequest();
|
| +
|
| + std::string url;
|
| + std::string method;
|
| + std::string referrer;
|
| + std::string extra_request_headers;
|
| + scoped_refptr<net::UploadData> upload_data;
|
| + int resource_type; // see webkit/glue/resource_type.h
|
| + int load_flags; // see net/base/load_flags.h
|
| +};
|
| +
|
| +namespace IPC {
|
| +
|
| +template <>
|
| +struct ParamTraits<AutomationMsg_Find_Params> {
|
| + typedef AutomationMsg_Find_Params param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<AutomationMsg_NavigationResponseValues> {
|
| + typedef AutomationMsg_NavigationResponseValues param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<AutomationMsg_ExtensionResponseValues> {
|
| + typedef AutomationMsg_ExtensionResponseValues param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<AutomationMsg_ExtensionProperty> {
|
| + typedef AutomationMsg_ExtensionProperty param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<SecurityStyle> {
|
| + typedef SecurityStyle param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<PageType> {
|
| + typedef PageType param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +#if defined(OS_WIN)
|
| +
|
| +// Traits for SetWindowPos_Params structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<Reposition_Params> {
|
| + typedef Reposition_Params param_type;
|
| + static void Write(Message* m, const param_type& p) {
|
| + WriteParam(m, p.window);
|
| + WriteParam(m, p.window_insert_after);
|
| + WriteParam(m, p.left);
|
| + WriteParam(m, p.top);
|
| + WriteParam(m, p.width);
|
| + WriteParam(m, p.height);
|
| + WriteParam(m, p.flags);
|
| + WriteParam(m, p.set_parent);
|
| + WriteParam(m, p.parent_window);
|
| + }
|
| + static bool Read(const Message* m, void** iter, param_type* p) {
|
| + return ReadParam(m, iter, &p->window) &&
|
| + ReadParam(m, iter, &p->window_insert_after) &&
|
| + ReadParam(m, iter, &p->left) &&
|
| + ReadParam(m, iter, &p->top) &&
|
| + ReadParam(m, iter, &p->width) &&
|
| + ReadParam(m, iter, &p->height) &&
|
| + ReadParam(m, iter, &p->flags) &&
|
| + ReadParam(m, iter, &p->set_parent) &&
|
| + ReadParam(m, iter, &p->parent_window);
|
| + }
|
| + static void Log(const param_type& p, std::string* l) {
|
| + l->append("(");
|
| + LogParam(p.window, l);
|
| + l->append(", ");
|
| + LogParam(p.window_insert_after, l);
|
| + l->append(", ");
|
| + LogParam(p.left, l);
|
| + l->append(", ");
|
| + LogParam(p.top, l);
|
| + l->append(", ");
|
| + LogParam(p.width, l);
|
| + l->append(", ");
|
| + LogParam(p.height, l);
|
| + l->append(", ");
|
| + LogParam(p.flags, l);
|
| + l->append(", ");
|
| + LogParam(p.set_parent, l);
|
| + l->append(", ");
|
| + LogParam(p.parent_window, l);
|
| + l->append(")");
|
| + }
|
| +};
|
| +#endif // defined(OS_WIN)
|
| +
|
| +// Traits for AutomationURLRequest structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<AutomationURLRequest> {
|
| + typedef AutomationURLRequest param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +// Traits for AutomationURLResponse structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<AutomationURLResponse> {
|
| + typedef AutomationURLResponse param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +// Traits for ExternalTabSettings structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<ExternalTabSettings> {
|
| + typedef ExternalTabSettings param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +// Traits for NavigationInfo structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<NavigationInfo> {
|
| + typedef NavigationInfo param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +// Traits for MiniContextMenuParams structure to pack/unpack.
|
| +template <>
|
| +struct ParamTraits<MiniContextMenuParams> {
|
| + typedef MiniContextMenuParams param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +template <>
|
| +struct ParamTraits<AttachExternalTabParams> {
|
| + typedef AttachExternalTabParams param_type;
|
| + static void Write(Message* m, const param_type& p);
|
| + static bool Read(const Message* m, void** iter, param_type* p);
|
| + static void Log(const param_type& p, std::string* l);
|
| +};
|
| +
|
| +} // namespace IPC
|
| +
|
| +#endif // CHROME_COMMON_AUTOMATION_MESSAGE_TYPES_H_
|
|
|
| Property changes on: chrome\common\automation_message_types.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|