key selection, todo: viewport control