summaryrefslogtreecommitdiffstats
path: root/chrome/common/render_messages.cc
diff options
context:
space:
mode:
authorviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-31 21:41:08 +0000
committerviettrungluu@chromium.org <viettrungluu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-31 21:41:08 +0000
commitb29aa74b75d57e1dc78bb151f1b7b2153d13ae3f (patch)
treec06576af8874b736101b045e4e1d75cfed7ba897 /chrome/common/render_messages.cc
parent314e594492cfd5c23225763cb46c5cd190b5551c (diff)
downloadchromium_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.cc43
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(")");
}