nemomobile/lipstick — pull request #210 by mikkoharju (2014-11-10 13:49:05+00:00)
Title: [lipstick] Handle surface pings in LipstickCompositorWindow

When a user tries to interact with an application that is not
currently responding to touch events, a visual indication
of unresponsiveness would be useful.

Added the following enablers for the visual indication:

- Made LipstickCompositorWindow (LCW) handle the pings exclusively
* since the surface is not exposing the serial outside,
we need to keep only one ping in-flight at a time
- Added a boolean property "unresponsive" to LCW
- Added an invokable ping(timeout) to enabled pings from outside
- LCW sends a ping on every Begin, End and Cancel touch event

A window is considered unresponsive if pong is not received
within the specified timeout. The compositor can then display
an indication after the window has remained unresponsive for a
period of time. After receiving the pong the unresponsive state
is cleared immediately.