mousearea: rewrite by xinput2 to support touch events and reduce the number of X events