Mypal/dom/gamepad/ipc/GamepadEventChannelParent.h

32 lines
1.0 KiB
C++

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "mozilla/dom/PGamepadEventChannelParent.h"
#ifndef mozilla_dom_GamepadEventChannelParent_h_
#define mozilla_dom_GamepadEventChannelParent_h_
namespace mozilla{
namespace dom{
class GamepadEventChannelParent final : public PGamepadEventChannelParent
{
public:
NS_INLINE_DECL_THREADSAFE_REFCOUNTING(GamepadEventChannelParent)
GamepadEventChannelParent();
virtual void ActorDestroy(ActorDestroyReason aWhy) override;
virtual bool RecvGamepadListenerAdded() override;
virtual bool RecvGamepadListenerRemoved() override;
void DispatchUpdateEvent(const GamepadChangeEvent& aEvent);
bool HasGamepadListener() const { return mHasGamepadListener; }
private:
~GamepadEventChannelParent() {}
bool mHasGamepadListener;
nsCOMPtr<nsIThread> mBackgroundThread;
};
}// namespace dom
}// namespace mozilla
#endif