added keyboard and click support