diff options
author | viettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-31 21:41:08 +0000 |
---|---|---|
committer | viettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-31 21:41:08 +0000 |
commit | b29aa74b75d57e1dc78bb151f1b7b2153d13ae3f (patch) | |
tree | c06576af8874b736101b045e4e1d75cfed7ba897 /chrome/common/render_messages.cc | |
parent | 314e594492cfd5c23225763cb46c5cd190b5551c (diff) | |
download | chromium_src-b29aa74b75d57e1dc78bb151f1b7b2153d13ae3f.zip chromium_src-b29aa74b75d57e1dc78bb151f1b7b2153d13ae3f.tar.gz chromium_src-b29aa74b75d57e1dc78bb151f1b7b2153d13ae3f.tar.bz2 |
Pepper/Flapper: First pass at context menu implementation.
This meets the needs of Flapper. We may want to generalize/restrict/modify the
API for inclusion into PPAPI, but hopefully this lays a foundation.
BUG=none
TEST=Flapper context menus work (with the right version of Flapper)
Review URL: http://codereview.chromium.org/6253017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73193 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/render_messages.cc')
-rw-r--r-- | chrome/common/render_messages.cc | 43 |
1 files changed, 40 insertions, 3 deletions
diff --git a/chrome/common/render_messages.cc b/chrome/common/render_messages.cc index d872fec..28d8f90 100644 --- a/chrome/common/render_messages.cc +++ b/chrome/common/render_messages.cc @@ -55,12 +55,18 @@ struct ParamTraits<WebMenuItem::Type> { case WebMenuItem::OPTION: type = "OPTION"; break; + case WebMenuItem::CHECKABLE_OPTION: + type = "CHECKABLE_OPTION"; + break; case WebMenuItem::GROUP: type = "GROUP"; break; case WebMenuItem::SEPARATOR: type = "SEPARATOR"; break; + case WebMenuItem::SUBMENU: + type = "SUBMENU"; + break; default: type = "UNKNOWN"; break; @@ -78,9 +84,9 @@ void ParamTraits<FontDescriptor>::Write(Message* m, const param_type& p) { bool ParamTraits<FontDescriptor>::Read(const Message* m, void** iter, param_type* p) { - return( + return ReadParam(m, iter, &p->font_name) && - ReadParam(m, iter, &p->font_point_size)); + ReadParam(m, iter, &p->font_point_size); } void ParamTraits<FontDescriptor>::Log(const param_type& p, std::string* l) { @@ -88,6 +94,31 @@ void ParamTraits<FontDescriptor>::Log(const param_type& p, std::string* l) { } #endif +void ParamTraits<webkit_glue::CustomContextMenuContext>::Write( + Message* m, + const param_type& p) { + WriteParam(m, p.is_pepper_menu); + WriteParam(m, p.request_id); +} + +bool ParamTraits<webkit_glue::CustomContextMenuContext>::Read(const Message* m, + void** iter, + param_type* p) { + return + ReadParam(m, iter, &p->is_pepper_menu) && + ReadParam(m, iter, &p->request_id); +} + +void ParamTraits<webkit_glue::CustomContextMenuContext>::Log( + const param_type& p, + std::string* l) { + l->append("("); + LogParam(p.is_pepper_menu, l); + l->append(", "); + LogParam(p.request_id, l); + l->append(")"); +} + void ParamTraits<ContextMenuParams>::Write(Message* m, const param_type& p) { WriteParam(m, p.media_type); WriteParam(m, p.x); @@ -112,6 +143,7 @@ void ParamTraits<ContextMenuParams>::Write(Message* m, const param_type& p) { WriteParam(m, p.edit_flags); WriteParam(m, p.security_info); WriteParam(m, p.frame_charset); + WriteParam(m, p.custom_context); WriteParam(m, p.custom_items); } @@ -141,6 +173,7 @@ bool ParamTraits<ContextMenuParams>::Read(const Message* m, void** iter, ReadParam(m, iter, &p->edit_flags) && ReadParam(m, iter, &p->security_info) && ReadParam(m, iter, &p->frame_charset) && + ReadParam(m, iter, &p->custom_context) && ReadParam(m, iter, &p->custom_items); } @@ -742,6 +775,7 @@ void ParamTraits<WebMenuItem>::Write(Message* m, const param_type& p) { WriteParam(m, p.enabled); WriteParam(m, p.checked); WriteParam(m, p.action); + WriteParam(m, p.submenu); } bool ParamTraits<WebMenuItem>::Read(const Message* m, @@ -752,7 +786,8 @@ bool ParamTraits<WebMenuItem>::Read(const Message* m, ReadParam(m, iter, &p->type) && ReadParam(m, iter, &p->enabled) && ReadParam(m, iter, &p->checked) && - ReadParam(m, iter, &p->action); + ReadParam(m, iter, &p->action) && + ReadParam(m, iter, &p->submenu); } void ParamTraits<WebMenuItem>::Log(const param_type& p, std::string* l) { @@ -766,6 +801,8 @@ void ParamTraits<WebMenuItem>::Log(const param_type& p, std::string* l) { LogParam(p.checked, l); l->append(", "); LogParam(p.action, l); + l->append(", "); + LogParam(p.submenu, l); l->append(")"); } |