implemented Keyboard navigation