Update seat timestamp in UserActivitySpy.
Although IdleInterface::simulateUserActivity is called upon new event, KIdleTimePoller still relies on the seat timestamp to update the timestamp. Also, updating event timestamp in individual event handler could still be a problem:
- It could be missing in certain places
- timestamp should be updated regardless whether certain event filter handles it or not.
Move them all to UserActivitySpy as a centralized the place to update seat timestamp.
This also fixes screen autolocking issue when input method is used.
See !1816 (closed) for more context on the original motivation.