An update to one gamepad's values should only change that gamepad's modified timestamp.
authorbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Jan 2017 23:33:22 +0000 (23:33 +0000)
committerbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 17 Jan 2017 23:33:22 +0000 (23:33 +0000)
commitf99111884b9e90be73e6214201a20a0773b9e000
tree2638e005f440af9e289434e7a197297a30993d98
parent37fad8cde59eb840da5faf488b136507046e3e70
An update to one gamepad's values should only change that gamepad's modified timestamp.
<rdar://problem/28620865> and https://bugs.webkit.org/show_bug.cgi?id=167139

Reviewed by Andy Estes.

Source/WebKit2:

Track the lastModifiedTime for a gamepad in the UI process, and pass it along to web processes.

* Shared/Gamepad/GamepadData.cpp:
(WebKit::GamepadData::GamepadData):
(WebKit::GamepadData::encode):
(WebKit::GamepadData::decode):
* Shared/Gamepad/GamepadData.h:
(WebKit::GamepadData::lastUpdateTime):

* UIProcess/Gamepad/UIGamepad.cpp:
(WebKit::UIGamepad::UIGamepad):
(WebKit::UIGamepad::updateFromPlatformGamepad):
(WebKit::UIGamepad::condensedGamepadData):
(WebKit::UIGamepad::fullGamepadData):
* UIProcess/Gamepad/UIGamepad.h:

* WebProcess/Gamepad/WebGamepad.cpp:
(WebKit::WebGamepad::updateValues):

LayoutTests:

* gamepad/gamepad-timestamp.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@210827 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/gamepad/gamepad-timestamp.html
Source/WebKit2/ChangeLog
Source/WebKit2/Shared/Gamepad/GamepadData.cpp
Source/WebKit2/Shared/Gamepad/GamepadData.h
Source/WebKit2/UIProcess/Gamepad/UIGamepad.cpp
Source/WebKit2/UIProcess/Gamepad/UIGamepad.h
Source/WebKit2/WebProcess/Gamepad/WebGamepad.cpp