#81 add custom focus traversal