tested on linux; add test for mouse