summaryrefslogtreecommitdiffstats
path: root/chrome/common/webkit_param_traits.h
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-07 05:50:28 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-07 05:50:28 +0000
commit952cb7063b41fc2afaa9d1c265d38158b0e7d3e0 (patch)
treea454f8e01ee6ce946e475f8451ba4e1fd1407007 /chrome/common/webkit_param_traits.h
parent71cd6a943b2b677adabbafdd12b2e024106e78f6 (diff)
downloadchromium_src-952cb7063b41fc2afaa9d1c265d38158b0e7d3e0.zip
chromium_src-952cb7063b41fc2afaa9d1c265d38158b0e7d3e0.tar.gz
chromium_src-952cb7063b41fc2afaa9d1c265d38158b0e7d3e0.tar.bz2
Move MediaPlayerAction to WebMediaPlayerAction. Switch to an enum and a
boolean to express the action. R=ajwong BUG=10033 TEST=none Review URL: http://codereview.chromium.org/251103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28236 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/webkit_param_traits.h')
-rw-r--r--chrome/common/webkit_param_traits.h39
1 files changed, 38 insertions, 1 deletions
diff --git a/chrome/common/webkit_param_traits.h b/chrome/common/webkit_param_traits.h
index 335ba9e..8a32741 100644
--- a/chrome/common/webkit_param_traits.h
+++ b/chrome/common/webkit_param_traits.h
@@ -30,6 +30,7 @@
#include "webkit/api/public/WebDragOperation.h"
#include "webkit/api/public/WebFindOptions.h"
#include "webkit/api/public/WebInputEvent.h"
+#include "webkit/api/public/WebMediaPlayerAction.h"
#include "webkit/api/public/WebScreenInfo.h"
#include "webkit/api/public/WebTextDirection.h"
@@ -304,7 +305,7 @@ struct ParamTraits<WebKit::WebTextDirection> {
};
template <>
- struct ParamTraits<WebKit::WebDragOperation> {
+struct ParamTraits<WebKit::WebDragOperation> {
typedef WebKit::WebDragOperation param_type;
static void Write(Message* m, const param_type& p) {
m->WriteInt(p);
@@ -320,6 +321,42 @@ template <>
}
};
+template <>
+struct ParamTraits<WebKit::WebMediaPlayerAction> {
+ typedef WebKit::WebMediaPlayerAction param_type;
+ static void Write(Message* m, const param_type& p) {
+ WriteParam(m, static_cast<int>(p.type));
+ WriteParam(m, p.enable);
+ }
+ static bool Read(const Message* m, void** iter, param_type* r) {
+ int temp;
+ if (!ReadParam(m, iter, &temp))
+ return false;
+ r->type = static_cast<param_type::Type>(temp);
+ return ReadParam(m, iter, &r->enable);
+ }
+ static void Log(const param_type& p, std::wstring* l) {
+ l->append(L"(");
+ switch (p.type) {
+ case WebKit::WebMediaPlayerAction::Play:
+ l->append(L"Play");
+ break;
+ case WebKit::WebMediaPlayerAction::Mute:
+ l->append(L"Mute");
+ break;
+ case WebKit::WebMediaPlayerAction::Loop:
+ l->append(L"Loop");
+ break;
+ default:
+ l->append(L"Unknown");
+ break;
+ }
+ l->append(L", ");
+ LogParam(p.enable, l);
+ l->append(L")");
+ }
+};
+
} // namespace IPC
#endif // CHROME_COMMON_WEBKIT_PARAM_TRAITS_H_