add touch and layout