added gesture support