diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-19 18:05:56 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-19 18:05:56 +0000 |
commit | 8b8e7c9bce4198a4ee2865d9dfce6e8baa173ad3 (patch) | |
tree | 938304b8e1be417c1b9c73d7463dacbc1da79843 /chrome/common/render_messages.h | |
parent | f2c4ee3627e6039fd42bd7c0c93e902b72653449 (diff) | |
download | chromium_src-8b8e7c9bce4198a4ee2865d9dfce6e8baa173ad3.zip chromium_src-8b8e7c9bce4198a4ee2865d9dfce6e8baa173ad3.tar.gz chromium_src-8b8e7c9bce4198a4ee2865d9dfce6e8baa173ad3.tar.bz2 |
Initial version of chrome.experimental.sidebar extension API.
BUG=51084
TEST=Run interactive_ui_tests and browser_tests.
New:
- sidebar Extension API (design doc: https://docs.google.com/a/google.com/Doc?docid=0AV4Qg3xyZ8RQZGZtbWIydDJfNWc0eHJtbmRm&hl=en);
- Sidebar panel in Chrome browser view;
Original review=http://codereview.chromium.org/2836040/show
Patch by alekseys@google.com
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56716 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/render_messages.h')
-rw-r--r-- | chrome/common/render_messages.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/chrome/common/render_messages.h b/chrome/common/render_messages.h index 1ffee93..8f6c8ad 100644 --- a/chrome/common/render_messages.h +++ b/chrome/common/render_messages.h @@ -18,6 +18,7 @@ #include "base/ref_counted.h" #include "base/shared_memory.h" #include "base/string16.h" +#include "base/values.h" #include "chrome/common/common_param_traits.h" #include "chrome/common/css_colors.h" #include "chrome/common/dom_storage_common.h" @@ -867,6 +868,27 @@ enum ViewHostMsg_EnablePreferredSizeChangedMode_Flags { kPreferredSizeHeightThisIsSlow = 1 << 1, }; +// Parameters structure for ViewHostMsg_ExtensionRequest. +struct ViewHostMsg_DomMessage_Params { + // Message name. + std::string name; + + // List of message arguments. + ListValue arguments; + + // URL of the frame request was sent from. + GURL source_url; + + // Unique request id to match requests and responses. + int request_id; + + // True if request has a callback specified. + bool has_callback; + + // True if request is executed in response to an explicit user gesture. + bool user_gesture; +}; + namespace IPC { template <> @@ -2711,6 +2733,44 @@ struct ParamTraits<ViewMsg_DeviceOrientationUpdated_Params> { l->append(")"); } }; +// Traits for ViewHostMsg_DomMessage_Params structure to pack/unpack. +template <> +struct ParamTraits<ViewHostMsg_DomMessage_Params> { + typedef ViewHostMsg_DomMessage_Params param_type; + static void Write(Message* m, const param_type& p) { + WriteParam(m, p.name); + WriteParam(m, p.arguments); + WriteParam(m, p.source_url); + WriteParam(m, p.request_id); + WriteParam(m, p.has_callback); + WriteParam(m, p.user_gesture); + } + static bool Read(const Message* m, void** iter, param_type* p) { + return + ReadParam(m, iter, &p->name) && + ReadParam(m, iter, &p->arguments) && + ReadParam(m, iter, &p->source_url) && + ReadParam(m, iter, &p->request_id) && + ReadParam(m, iter, &p->has_callback) && + ReadParam(m, iter, &p->user_gesture); + } + static void Log(const param_type& p, std::string* l) { + l->append("("); + LogParam(p.name, l); + l->append(", "); + LogParam(p.arguments, l); + l->append(", "); + LogParam(p.source_url, l); + l->append(", "); + LogParam(p.request_id, l); + l->append(", "); + LogParam(p.has_callback, l); + l->append(", "); + LogParam(p.user_gesture, l); + l->append(")"); + } +}; + } // namespace IPC #define MESSAGES_INTERNAL_FILE "chrome/common/render_messages_internal.h" |