dom/plugins/ipc/NPEventAndroid.h

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:caa4956261a7
1 /* -*- Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 8 -*- */
2 /* vim: set sw=4 ts=8 et tw=80 ft=cpp : */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7 // This is a NPEventX11.h derived stub for Android
8 // Plugins aren't actually supported yet
9
10 #ifndef mozilla_dom_plugins_NPEventAndroid_h
11 #define mozilla_dom_plugins_NPEventAndroid_h
12
13 #include "npapi.h"
14
15 namespace mozilla {
16
17 namespace plugins {
18
19 struct NPRemoteEvent {
20 NPEvent event;
21 };
22
23 }
24
25 }
26
27
28 namespace IPC {
29
30 template <>
31 struct ParamTraits<mozilla::plugins::NPRemoteEvent>
32 {
33 typedef mozilla::plugins::NPRemoteEvent paramType;
34
35 static void Write(Message* aMsg, const paramType& aParam)
36 {
37 aMsg->WriteBytes(&aParam, sizeof(paramType));
38 }
39
40 static bool Read(const Message* aMsg, void** aIter, paramType* aResult)
41 {
42 const char* bytes = 0;
43
44 if (!aMsg->ReadBytes(aIter, &bytes, sizeof(paramType))) {
45 return false;
46 }
47
48 memcpy(aResult, bytes, sizeof(paramType));
49 return true;
50 }
51
52 static void Log(const paramType& aParam, std::wstring* aLog)
53 {
54 // TODO
55 aLog->append(L"(AndroidEvent)");
56 }
57 };
58
59 } // namespace IPC
60
61
62 #endif // mozilla_dom_plugins_NPEventAndroid_h

mercurial