Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
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/. */
7 // This is a NPEventX11.h derived stub for Android
8 // Plugins aren't actually supported yet
10 #ifndef mozilla_dom_plugins_NPEventAndroid_h
11 #define mozilla_dom_plugins_NPEventAndroid_h
13 #include "npapi.h"
15 namespace mozilla {
17 namespace plugins {
19 struct NPRemoteEvent {
20 NPEvent event;
21 };
23 }
25 }
28 namespace IPC {
30 template <>
31 struct ParamTraits<mozilla::plugins::NPRemoteEvent>
32 {
33 typedef mozilla::plugins::NPRemoteEvent paramType;
35 static void Write(Message* aMsg, const paramType& aParam)
36 {
37 aMsg->WriteBytes(&aParam, sizeof(paramType));
38 }
40 static bool Read(const Message* aMsg, void** aIter, paramType* aResult)
41 {
42 const char* bytes = 0;
44 if (!aMsg->ReadBytes(aIter, &bytes, sizeof(paramType))) {
45 return false;
46 }
48 memcpy(aResult, bytes, sizeof(paramType));
49 return true;
50 }
52 static void Log(const paramType& aParam, std::wstring* aLog)
53 {
54 // TODO
55 aLog->append(L"(AndroidEvent)");
56 }
57 };
59 } // namespace IPC
62 #endif // mozilla_dom_plugins_NPEventAndroid_h