keyboard movement, ui elements drag (merged from boshaw)
fixes after merge