add keyboard control and some styles