| Index: Source/modules/gamepad/Gamepad.cpp
|
| diff --git a/Source/modules/gamepad/Gamepad.cpp b/Source/modules/gamepad/Gamepad.cpp
|
| index 8fbe47c17946f3d38b21769ef387a9da8b966497..aea6a9ff3976bdcb8fc4c5ac5c9411baa4c225ea 100644
|
| --- a/Source/modules/gamepad/Gamepad.cpp
|
| +++ b/Source/modules/gamepad/Gamepad.cpp
|
| @@ -28,42 +28,26 @@
|
|
|
| namespace WebCore {
|
|
|
| -Gamepad::Gamepad()
|
| - : m_index(0)
|
| - , m_timestamp(0)
|
| +Gamepad::Gamepad() : GamepadBase()
|
| {
|
| ScriptWrappable::init(this);
|
| }
|
|
|
| -void Gamepad::axes(unsigned count, float* data)
|
| +void Gamepad::buttons(unsigned count, const blink::WebGamepadButton* data)
|
| {
|
| - m_axes.resize(count);
|
| - if (count)
|
| - std::copy(data, data + count, m_axes.begin());
|
| + if (m_buttons.size() != count) {
|
| + m_buttons.resize(count);
|
| + for (unsigned i = 0; i < count; ++i)
|
| + m_buttons[i] = GamepadButton::create();
|
| + }
|
| + for (unsigned i = 0; i < count; ++i) {
|
| + m_buttons[i]->value(data[i].value);
|
| + m_buttons[i]->pressed(data[i].pressed);
|
| + }
|
| }
|
|
|
| -#if defined(ENABLE_NEW_GAMEPAD_API)
|
| -void Gamepad::buttons(unsigned count, blink::WebGamepadButton* data)
|
| -{
|
| - m_buttons.resize(count);
|
| - for (unsigned i = 0; i < count; ++i)
|
| - m_buttons[i] = data[i].value;
|
| -}
|
| -#else
|
| -void Gamepad::buttons(unsigned count, float* data)
|
| -{
|
| - m_buttons.resize(count);
|
| - if (count)
|
| - std::copy(data, data + count, m_buttons.begin());
|
| -}
|
| -#endif
|
| -
|
| Gamepad::~Gamepad()
|
| {
|
| }
|
|
|
| -void Gamepad::trace(Visitor* visitor)
|
| -{
|
| -}
|
| -
|
| } // namespace WebCore
|
|
|