added keyboard hiding