There is a lot of logic that doesn't have an explicit test here. e.g.
  - desktop Webkit work-around
  - it should not cancel a "too old" click
  - it should behave correctly on text nodes
  - it should blur the element