키보드 포커스

시각 장애우 뿐만 아니라 키보드를 마우스보다 더 선호하는 "고급 사용자" 들을 위해 키보드 포커스 위치를 언제나 분명하게 나타내는 것이 중요합니다. 주어진 시간 언제든 데스크톱의 어떤 컨트롤에든 포커스를 올려놓아 혼동을 주지 말아야합니다. 프로그램의 어떤 위젯에든 포커스를 올려놓은 상태에서 컴퓨터 앞을 벗어난 후, 여자친구랑 통화를 한다거나, 다루던 위젯이 어떤 위젯인지 잊을 때까지 개랑 산책을 할 수 있어야겠지요. 돌아온 다음에는 어떤 위젯을 다루고 있었는지 바로 알아볼 수 있도록 나타내야합니다.

시각 포커스 표시는 데스크톱의 다른 객체와 관계된 커서 위치의 음성 표현입니다. 이 수단 덕분에 포커스 위치가 바뀌어도 사용자가 어떤 객체에 대해서든 이리저리 포커스를 옮길 수 있습니다. 시각 포커스는 보조 기술에 프로그램상에서 노출해야합니다. 대부분의 경우 ATK에서 별도로 처리해야 할 일 없이 자동으로 처리해줍니다. 하지만 개별 위젯을 자체적으로 작성한다면 다음 과정이 필요합니다.

  • 주로 활용하는 컨트롤에 포커스를 두어 시작하십시오. "가장" 쓸모있는 창의 컨트롤이 없는 것 같다면, 창을 열었을 때 가장 먼저 나타나는 컨트롤에 포커스를 두십시오. 대화 상자의 확인 단추 또는 취소 단추는 Enter키 또는 Escape 키로 바로 언제든 활성화할 수 있기 때문에 대부분 주로 활용 하는 컨트롤이라 해도 우선적으로 포커스를 두면 안됩니다.
  • 언제든 현재 입력 위치에 포커스를 분명하게 보여주십시오. 스크롤 요소가 있는 컨트롤에서는 스크롤 영역안에서 선택하여 강조한 요소를 나타나지 않을 때도 있으므로 항상 만족스럽진 않을지도 모릅니다. 키보드 포커스 예제를 참고하십시오.
  • 활성 창의 입력 포커스만 보여주십시오. 포커스가 없거나 활성화하지 않은 모든 창의 기본 시각 포커스 표시는 숨겨두십시오. 단일 창에 분할 창이 있다면, 하나의 창에 포커스 표시를 두시고, 다른 창의 포커스 표시는 숨겨야합니다. 포커스를 올려두지 않은 목록에서 어떤 항목을 계속 선택할 경우 중요한데 이때 2차 포커스 표시를 활용하십시오. 키보드 포커스 예제를 참고하십시오.
  • 관련 객체 그룹의 마지막 이전을 탐색하려 할 경우 적당한 반응 요소를 제공하십시오. 목록을 탐색할 경우 음성을 출력하면서 멈추면 목록의 처음 객체로 포커스를 되돌라는 것보다 낫습니다. 그렇지 않으면, 장님, 저시력자의 경우 처음으로 돌아왔는지 깨닫지 못합니다. 문서에서 텍스트를 검색할 때 문서의 마지막에 도달하면 대화 상자가 나타나고 문서의 처음 부분부터 다시 검색할 지 물어봅니다.
  • 사용자가 부적절한 키를 눌렀을 때 또는 탐색 키 조작 과정에서 포커스 이동에 실패했을 경우 시스템 기본 소리 또는 시각 경고 표시를 재생하십시오. 포커스가 텍스트 필드의 첫번째 문자에 둔 상태에서 왼쪽 화살표 키를 누르거나 단일 선택 대화상자에서 여러 요소 선택을 시도할 경우를 예로 들어볼 수 있습니다(난청 사용자는 기본 경고음과 동일한 시스템 시각 알림을 설정할 수 있어야합니다).