KR20160009054A - 연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들 - Google Patents

연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들 Download PDF

Info

Publication number
KR20160009054A
KR20160009054A KR1020157035542A KR20157035542A KR20160009054A KR 20160009054 A KR20160009054 A KR 20160009054A KR 1020157035542 A KR1020157035542 A KR 1020157035542A KR 20157035542 A KR20157035542 A KR 20157035542A KR 20160009054 A KR20160009054 A KR 20160009054A
Authority
KR
South Korea
Prior art keywords
keys
keyboard
graphical keyboard
graphical
key
Prior art date
Application number
KR1020157035542A
Other languages
English (en)
Other versions
KR101633842B1 (ko
Inventor
태드 유진 스태너
닐말 파텔
슈민 자이
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20160009054A publication Critical patent/KR20160009054A/ko
Application granted granted Critical
Publication of KR101633842B1 publication Critical patent/KR101633842B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Abstract

방법은, 컴퓨팅 디바이스에 의해 그리고 디스플레이를 위해, 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력하는 단계를 포함한다. 상기 방법은 입력 컨텍스트(input context)에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정하는 단계와 그리고 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하는 단계를 포함한다. 상기 복수의 제2 키들로부터의 각각의 키와 관련된 문자는 보수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 상기 방법은 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드로부터 제1 키를 선택하는 단계와 그리고 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드로부터 제2 키를 선택하는 단계를 포함한다.

Description

연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들{MULTIPLE GRAPHICAL KEYBOARDS FOR CONTINUOUS GESTURE INPUT}
일부 컴퓨팅 디바이스들(예컨대, 모바일 폰들, 태블릿 컴퓨터들)은 (예컨대, 존재 감응형 입력 디바이스 및/또는 터치스크린과 같은 디스플레이를 이용하여) 텍스트 입력을 수신하기 위한 그래픽 사용자 인터페이스의 일부로서 디스플레이를 위한 그래픽 키보드를 출력할 수 있다. 상기 그래픽 키보드는 컴퓨팅 디바이스의 사용자가 텍스트(예컨대, e-메일, 텍스트 메시지, 또는 문서)를 입력할 수 있게 한다. 예를 들어, 컴퓨팅 디바이스의 디스플레이 디바이스는, 사용자가 상기 디스플레이 디바이스에 디스플레이되는 존재-감응형 입력 디바이스에 키들을 나타냄으로써(예컨대, 태핑함으로써) 데이터를 입력할 수 있게 하는 그래픽 (또는 "소프트") 키보드를 출력할 수 있다. 일부 예들에서, 데이터는 상기 컴퓨팅 디바이스에 의해 제공되는 어플리케이션들 및/또는 서비스들에 액세스하기 위해 사용되는 패스워드를 나타낼 수 있다.
제스쳐 기반의 키보드들이 스마트폰과 같은 컴퓨팅 디바이스 내로 텍스트를 입력하기 위해 이용될 수 있다. 예를 들어, 컴퓨팅 디바이스는 (예컨대, 존재-감응형 입력 디바이스로부터 입력 유닛을 제거함이 없이) 그래픽 키보드의 복수의 키들을 선택하기 위해 검출된 제스쳐에 근거하여 연속적인 제스쳐 입력의 표시들을 수신할 수 있다. 제스쳐 기반의 키보드들은 예컨대, 컴퓨팅 디바이스가 숫자들 및/또는 심볼들과 같은 비 알파벳 문자들(예컨대, 패스워드들)을 포함하는 특정 타입의 텍스트를 입력하기 위한 사용자 입력의 표시들을 수신할 때 제한들을 겪을 수 있다. 일부 예들에서, 예측, 자동-정정 및/또는 그래픽 키보드의 레이아웃이 연속적인 제스쳐 입력에 근거하여 비 알파벳 문자들을 포함하는 그러한 문자 스트링들을 선택하기 위한 컴퓨팅 디바이스의 능력을 감소시킬 수 있다.
일례에서, 방법이 컴퓨팅 디바이스에 의해 그리고 디스플레이를 위해, 복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력하는 단계를 포함하며, 상기 복수의 제1 키들로부터의 각각의 키는 복수의 제1 문자들로부터의 각각의 문자와 관련된다. 상기 방법은 상기 컴퓨팅 디바이스에 의해 그리고 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하는 단계를 더 포함하며, 상기 복수의 제2 키들로부터의 각각의 키는 복수의 제2 문자들로부터의 각각의 문자와 관련되고, 상기 복수의 제2 문자들로부터의 적어도 하나의 문자는 상기 복수의 제1 문자들로부터의 각각의 문자와 다르다. 상기 방법은 컴퓨팅 디바이스에 의해 그리고 상기 제1 그래픽 키보드와의 동시적인(contemporaneous) 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하는 단계를 더 포함한다. 상기 방법은 컴퓨팅 디바이스에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하는 단계와 그리고 상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택하는 단계를 더 포함한다. 상기 방법은 컴퓨팅 디바이스에 의해, 존재-감응형 입력 디바이스에서 검출된 연속적인 제스쳐의 제2 부분의 표시를 수신하는 단계와, 그리고 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 제2 키를 제2의 선택된 키로서 선택하는 단계를 더 포함한다.
일례에서, 디바이스가 적어도 하나의 프로세서 및 적어도 하나의 모듈을 포함하며, 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해, 복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하도록 동작가능하다. 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해, 입력 컨텍스트에 적어도 부분적으로 근거하여 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하고, 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하도록 더 동작가능하며, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다르다. 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고, 상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택하도록 더 동작가능하다. 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 제2 키를 제2의 선택된 키로서 선택하도록 더 동작가능하다.
일례에서, 컴퓨터 판독가능한 저장 매체에는 명령어들이 인코딩되는 바, 상기 명령어들은 실행될 때, 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금, 복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하도록 한다. 상기 컴퓨터 판독가능 저장 매체에는, 실행될 때 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금, 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하고, 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하도록 하는 명령어들이 더 인코딩되며, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다르다. 상기 컴퓨터 판독가능 저장 매체에는, 실행될 때 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고, 상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택하도록 하는 명령어들이 더 인코딩되어 있다. 상기 컴퓨터 판독가능 저장 매체에는, 실행될 때 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금, 존재-감응형 입력 디바이스에서 검출된 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 제2 키를 제2의 선택된 키로서 선택하도록 하는 명령어들이 더 인코딩되어 있다.
본 발명의 하나 이상의 예시들의 세부사항은 첨부 도면들 및 하기 상세한 설명에 제시된다. 다른 특징들, 목적들 및 장점들이 상세한 설명 및 도면들 그리고 특허청구범위로부터 분명해질 것이다.
도 1은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 보여주는 블록도이다.
도 2는 본 발명의 하나 이상의 양상들에 따른, 도 1에 도시된 컴퓨팅 디바이스의 일례의 추가적인 세부사항을 보여주는 블록도이다.
도 3은 본 발명의 하나 이상의 양상들에 따른, 원격 디바이스에서의 디스플레이를 위해 그래픽 컨텐츠를 출력하는 예시적인 컴퓨팅 디바이스를 보여주는 블록도이다.
도 4a 내지 4b는 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 보여주는 블록도들이다.
도 5a 내지 5b는 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 보여주는 블록도들이다.
도 6은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 보여주는 블록도이다.
도 7은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스의 동작들을 보여주는 순서도이다.
일반적으로, 본 발명은 사용자가 제스쳐 기반의 그래픽 키보드를 이용하여 텍스트를 입력하는 것의 용이성(ease)을 향상시킬 수 있는 기법들에 관한 것이다. 예를 들어, 컴퓨팅 디바이스는 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스(GUI)를 (예컨대, 존재-감응형 디스플레이와 같은 디스플레이 디바이스에) 디스플레이를 위해 출력할 수 있다. 상기 컴퓨팅 디바이스에 의한 디스플레이를 위해 출력되는 제1 그래픽 키보드는 사용자가 제1 그래픽 키보드의 키들을 선택하기 위해 하나 이상의 연속적인 제스쳐들의 형태로 (예컨대, 존재-감응형 입력 디바이스에서) 제스쳐 입력을 제공할 수 있게 한다. 예를 들어, 존재-감응형 입력 디바이스는 존재-감응형 입력 디바이스의 제1 위치로부터 존재-감응형 입력 디바이스의 제2 위치로의 입력 유닛(예컨대, 손가락, 펜, 스타일러스)의 움직임(movement)을 포함하는 연속적인 제스쳐 입력을 검출할 수 있다. 상기 연속적인 제스쳐 입력의 표시를 수신함에 응답하여, 상기 컴퓨팅 디바이스는 예컨대, 상기 연속적인 제스쳐 입력의 표시를 공간 및/또는 언어 모델 중 하나 이상에 비교함으로써, 제1 그래픽 키보드의 하나 이상의 키들을 선택된 키들로서 선택할 수 있다.
본 발명의 기법들에 따르면, 상기 컴퓨팅 디바이스는 사용자가 알파벳 문자들 및 비 알파벳 문자들(예컨대, 숫자 문자들, 심볼 문자들)의 조합을 선택하기 위해 연속적인 제스쳐 입력을 제공할 수 있게 한다. 이러한 비 알파벳 문자들의 디스플레이를 개시하기 위해 개별적인 사용자 입력을 요하고, 그럼으로써 잠재적으로, 이러한 디스플레이를 개시하기 위해 (예컨대, 제2의 분리된 사용자 입력을 제공하여) 연속적인 제스쳐에서 인터럽션(interruption)을 요하기 보다는, 본 발명의 기법들을 구현하는 컴퓨팅 디바이스는 입력 컨텍스트에 적어도 부분적으로 근거하여 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정할 수 있다. 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 예를 들어, 상기 제2 그래픽 키보드의 하나 이상의 키들은 상기 제1 그래픽 키보드의 각각의 키와 관련된 각각의 문자와 다른 숫자 문자와 같은 비 알파벳 문자와 관련될 수 있다. 컨텍스트는 예컨대, 패스워드 영역, URL(uniform resource locator) 영역, 이메일 어드레스 영역, 데이터 영역 및 기타 등등의 식별자와 같은 GUI의 입력 영역의 식별자를 포함할 수 있다.
컴퓨팅 디바이스는 예컨대, 제1 그래픽 키보드를 포함하지 않는 GUI의 하나 이상의 부분들(예컨대, GUI의 텍스트 제시 영역, GUI의 텍스트 디스플레이 영역)의 알파 블랜딩된(alpha-blended) 그래픽 오버레이로서 제2 그래픽 키보드를 출력함으로써 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력할 수 있다. 이러한 방식으로, 본 명세서에 기술된 기법들을 구현하는 컴퓨팅 디바이스의 사용은 사용자가 제1 그래픽 키보드의 하나 이상의 키들 및 제2 그래픽 키보드의 하나 이상의 키들을 선택하기 위해 연속적인 제스쳐 입력을 제공할 수 있게 한다. 예를 들어, 컴퓨팅 디바이스는 연속적인 제스쳐의 제1 부분을 수신함에 응답하여 제1 그래픽 키보드의 제1 키를 선택할 수 있고, 연속적인 제스쳐 입력의 제2 부분을 수신함에 응답하여 제2 그래픽 키보드의 제2 키를 선택할 수 있다.
따라서, 본 발명의 기법들은 컴퓨팅 디바이스가 비알파벳 문자들과 관련된 제2 그래픽 키보드의 디스플레이를 개시하기 위해 연속적인 제스쳐에서 인터렵션을 반드시 요함이 없이, 알파벳 및 비알파벳 문자들의 조합을 선택하기 위해 연속적인 제스쳐 입력을 수신할 수 있게 한다. 따라서, 본 명세서에 기술된 기법들은 사용자가 컴퓨팅 디바이스를 이용하여, 패스워드들, URL들, 이메일 어드레스들, 날짜들, 컬러들, 등등과 같은 텍스트를 입력하는 것의 용이성을 향상시킬 수 있고, 그럼으로써 잠재적으로는 컴퓨팅 디바이스의 유용성을 향상시킬 수 있다.
도 1은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하기 위해 이용될 수 있는 예시적인 컴퓨팅 디바이스(2)를 보여주는 블록도이다. 일부 예들에서, 컴퓨팅 디바이스(2)는 컴퓨팅 디바이스에 다양한 사용자 입력들을 제공함으로써 컴퓨팅 디바이스(2)와 인터랙션할 수 있는 사용자와 관련될 수 있다. 컴퓨팅 디바이스(2)의 예들은 이들로만 한정되는 것은 아니지만, (스마트폰들을 포함하는) 모바일 폰들과 같은 포터블 또는 모바일 디바이스들, 랩탑 컴퓨터들, 데스크탑 컴퓨터들, 태블릿 컴퓨터들, 스마트 텔레비젼 플랫폼들, 개인용 디지털 단말기(PDA)들, 서버들, 및 메인프레임들을 포함할 수 있다. 컴퓨팅 디바이스(2)는 일부 예들에서, 사용자 인터페이스(UI) 디바이스(4), UI 모듈(6), 제스쳐 모듈(8), 및 이차적인 키보드 모듈(secondary keyboard module)(10)을 포함할 수 있다. 본 발명의 기법들을 구현하는 컴퓨팅 디바이스(2)의 다른 예들은 도 1에 도시되지 않은 추가적인 컴포넌트들을 포함할 수 있다.
컴퓨팅 디바이스(2)는 UI 디바이스(4)를 포함할 수 있다. 일부 예들에서, UI 디바이스(4)는 촉각적, 청각적 또는 시각적 입력을 수신하도록 구성된다. UI 디바이스(4)의 예들은 터치-감응형 및/또는 존재-감응형 스크린, 마우스, 키보드, 음성 응답 시스템, 마이크, 카메라 또는 입력을 수신하기 위한 다른 디바이스를 포함할 수 있다. 예를 들어, UI 디바이스(4)는 하나 이상의 제스쳐들을 수행하는 입력 유닛(예컨대, 손가락, 펜, 스타일러스 및 기타 등등)의 존재를 검출할 수 있는 존재-감응형 디스플레이를 포함할 수 있다. 도 3에 더 예시된 바와 같이, 존재-감응형 디스플레이는 존재-감응형 입력 디바이스 및 디스플레이 디바이스를 포함할 수 있다. UI 디바이스(4)는 그래픽 사용자 인터페이스(GUI)(12)와 같은 컨텐츠를 디스플레이하기 위해 출력할 수 있다. UGI(12)는 제1 그래픽 키보드(14)를 포함하는 부분, 텍스트 디스플레이 영역(13)을 포함하는 부분, 하나 이상의 텍스트 제시 영역들(미도시)을 포함하는 부분 또는 다른 부분들 및/또는 영역들과 같은 하나 이상의 부분들을 포함할 수 있다.
도 1에 도시된 바와 같이, 컴퓨팅 디바이스(2)는 UI 모듈(6)을 포함할 수 있다. UI 모듈(6)은 사용자 입력과 같은 입력을 수신하기 위해 하나 이상의 기능들을 수행하고, 제스쳐 모듈(8) 및 이차적인 키보드 모듈(10)과 같은 컴퓨팅 디바이스(2)와 관련된 다른 컴포넌트들에 이러한 입력의 표시들을 전송할 수 있다. UI 모듈(6)은 또한, 제스쳐 모듈(8) 및 이차적인 키보드 모듈(10)과 같은 컴퓨팅 디바이스(2)와 관련된 컴포넌트들로부터 데이터를 수신할 수 있다. 데이터를 이용하여, UI 모듈(6)은 UI 디바이스(4)와 같은 컴퓨팅 디바이스(2)와 관련된 컴포넌트들이 데이터에 근거하여 출력을 제공할 수 있게 한다. 예를 들어, UI 모듈(6)은 이차적인 키보드 모듈(10)로부터 데이터를 수신할 수 있고, 예컨대, UI 디바이스(4)가 본 명세서에 기술된 기법들에 따라 2차적인 키보드(22)를 디스플레이할 수 있게 함으로써, 이러한 데이터 근거하여 UI 디바이스(4)가 GUI(12)를 디스플레이할 수 있게 한다. 일부 예들에서, UI 모듈(6)은 워드 프로세싱 어플리케이션, 텍스트 메시징 어플리케이션, 스프레드시트, 웹 브라우져, 서버 어플리케이션, 또는 다른 어플리케이션들 중 하나 이상과 같은 컴퓨팅 디바이스(2)에 의해 실행가능한 하나 이상의 어플리케이션과 관련된 기능을 포함할 수 있다. 특정 예들에서, UI 모듈(6)은 다운로드가능하거나 사전 인스톨된 어플리케이션 즉 "앱"과 같은 컴퓨팅 디바이스(2)의 하나 이상의 프로세서들에 의해 실행가능한 어플리케이션으로서 구현될 수 있다. 일부 예들에서, UI 모듈(6)은 컴퓨팅 디바이스(2)의 하드웨어 유닛의 일부로서 구현될 수 있다. 다른 예로서, UI 모듈(6)은 컴퓨팅 디바이스(2)의 운영 체제의 일부로서 구현될 수 있다.
도 1에 도시된 바와 같이, GUI(12)는, 사용자가 컴퓨팅 디바이스(2)와 인터랙션할 수 있게 하는 UI 모듈(6)에 의해 생성된 인터페이스일 수 있다. GUI(12)는 그래픽 컨텐츠를 포함할 수 있다. 그래픽 컨텐츠는 일반적으로, 그래픽 사용자 인터페이스의 어떤 시각적으로 디스플레이가능한 그래픽 객체일 수 있다. 그래픽 컨텐츠의 예들은 텍스트, 이미지들, 움직이는 이미지들의 그룹, 하이퍼링크, 애니메이션, 비디오, 문자 세트의 문자들, 등등을 포함할 수 있다. 도 1에 도시된 바와 같이, 그래픽 컨텐츠는 제1 그래픽 키보드(14), 제2 그래픽 키보드(22), 텍스트 디스플레이 영역(13) 및 패스워드 영역(26)을 포함할 수 있다.
제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22) 각각은 복수의 키들을 포함할 수 있다. 예를 들어, 제1 그래픽 키보드(14)는 "P" 키(16), "A" 키(18) 및 "S" 키(20)와 같은 알파벳 키들을 포함하는 복수의 제1 키들을 포함할 수 있다. 제2 그래픽 키보드(22)는 또한, "5" 키(24)와 같은 비 알파벳 키들(예컨대, 숫자 및/또는 심볼 키들)과 같은 복수의 제2 키들을 포함할 수 있다. 제2 그래픽 키보드(22)에 포함된 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 제1 그래픽 키보드(14)의 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 예를 들어, 도 1의 예에 예시된 바와 같이, "5" 키(24)와 관련된 숫자 "5" 문자는 제1 그래픽 키보드(14)의 각각의 키와 관련된 각각의 문자와 다르다. 즉, 이 예에서, 제2 키보드(22)에 포함된 "5" 키(24)는 숫자 문자 "5"와 관련되고, 제1 그래픽 키보드(14)의 키들 중 어느 것도 숫자 문자 "5"와 관련되지 않는다.
제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22) 각각은 선택가능한 키들의 순서화된 세트로서 UI 디바이스(4)에 의해 디스플레이될 수 있다. 키들은 문자 세트(예컨대, 영어 알파벳의 글자들, 숫자들)로부터의 단일 문자를 표시할 수 있거나 또는 문자들의 조합을 표시할 수 있다. 그래픽 키보드의 일례는 종래의 "QWERTY" 키보드 레이아웃을 포함할 수 있다. 다른 예들은 서로 다른 언어들, 서로 다른 문자 세트들 또는 서로 다른 문자 레이아웃들에 대한 문자들을 포함할 수 있다. 도 1의 예에 도시된 바와 같이, 제1 그래픽 키보드(14)는 문자 키들을 제공하는 영어 언어뿐만 아니라 다른 기능을 제공하는 다양한 키들(예컨대, "123" 키)에 대한 종래의 "QWERTY" 키보드 레이아웃의 버전을 포함한다.
일부 예들에서, 텍스트 디스플레이 영역(13)은 예컨대, 텍스트 메시지, 문서, 이메일 메시지, 웹 브라우져, 및 기타 등등에 포함된 문자들 또는 다른 그래픽 컨텐츠를 포함할 수 있다. 예를 들어, 텍스트 디스플레이 영역(13)은 UI 디바이스(4)에서 수행되는 제스쳐들을 통해 사용자에 의해 선택되는 문자들 또는 다른 그래픽 컨텐츠를 포함할 수 있다. 일부 예들에서, GUI(12)는 패스워드 영역(26)과 같은 하나 이상의 영역들을 포함할 수 있다. GUI(12)에 포함될 수 있는 다른 예시적인 영역들은 이들로만 한정되는 것은 아니지만, URL 영역들, 이메일 어드레스 영역들, 컬러 영역들, 날짜 영역들, 날짜시간 영역들, 날짜시간-로컬(datetime-local) 영역들, 월(month) 영역들, 숫자 영역들, 범위 영역들, 검색 영역들, 전화번호 영역들, 시간 영역들, 및 주 영역들을 포함한다. 이러한 영역들 각각은 GUI(12)의 서로 다른 영역들일 수 있다. 일부 예들에서, 이러한 영역들은 GUI(12)의 단일 영역일 수 있고, 텍스트 디스플레이 영역(13)과 동일한 GUI(12)의 하나 이상의 영역들을 포함할 수 있다.
UI 모듈(6)은, UI 디바이스(4)가 제1 그래픽 키보드(14)를 디스플레이하고, 제1 그래픽 키보드(14)의 하나 이상의 키들을 디스플레이하는 UI 디바이스(4)의 하나 이상의 위치들에서 검출되는 제스쳐 입력과 같은 제스쳐 입력을 검출할 수 있게 한다. 이러한 제스쳐 입력은 제1 그래픽 키보드(14)의 개별적인 키들을 선택하기 위한 하나 이상의 탭 제스쳐들과 같은 개별(discrete) 제스쳐들을 포함할 수 있다. 일부 예들에서, UI 디바이스(4)는 하나 이상의 연속적인 제스쳐들을 검출할 수 있어서, UI 디바이스(4)는 UI 디바이스(4)의 제1 위치로부터 UI 디바이스(4)의 제2 위치로의 입력 유닛(예컨대, 손가락, 펜, 스타일러스)의 연속적인 모션(motion)을 검출한다. 예를 들어, 도 1에 예시된 바와 같이, UI 디바이스(4)는 제1 위치(30)로부터 제2 위치(32)로의 입력 유닛(예컨대, 손가락)의 모션을 포함하는 연속적인 모션 제스쳐(28)를 검출할 수 있다. UI 모듈(6)은 UI 디바이스(4)로부터 연속적인 제스쳐(28)와 같은 연속적인 제스쳐의 표시를 수신할 수 있고, 하기에 더 기술되는 바와 같이, 제스쳐의 표시에 적어도 부분적으로 근거하여 제1 그래픽 키보드(14)의 하나 이상의 키들을 선택할 수 있다.
이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드(22)를 디스플레이하는 것을 결정한다. 상기 입력 컨텍스트는 예컨대, 패스워드 영역(26)과 같은 입력을 수신할 수 있는 입력 영역의 식별자를 포함할 수 있다. 다른 예들에서, 이차적인 키보드 모듈(10)은 패스워드 영역들, URL 영역들, 이메일 어드레스 영역들, 컬러 영역들, 날짜 영역들, 날짜시간 영역들, 날짜시간-로컬 영역들, 월 영역들, 숫자 영역들, 범위 영역들, 검색 영역들, 전화번호 영역들, 시간 영역들, 및 주 영역들과 같은 하나 이상의 입력 영역들의 식별자의 표시를 수신할 수 있다. 상기 식별자는 HTML(Hyper Text Markup Language) 5 인터페이스에 의해 특정된 식별자와 같은 GUI(12)의 활성 입력 영역(예컨대, 현재 선택된 영역, 활성 커서를 포함하는 영역, 등등)의 식별자를 포함할 수 있다.
일례로, 이차적인 키보드 모듈(10)은 패스워드 영역(26)이 GUI(12)의 활성 영역임을 나타내는 표시를 수신할 수 있다. 추가적으로, 이차적인 키보드 모듈(10)은 패스워드(예컨대, 컴퓨팅 디바이스(2)를 이용한 어플리케이션 및/또는 서비스로의 액세스를 허가하는 패스워드)를 특정하는 데이터를 수신하도록 구성된 GUI(12)의 영역으로서 패스워드 영역(26)을 식별하는 패스워드 영역(26)의 식별자의 표시를 수신할 수 있다. GUI(12)의 활성 영역으로서 패스워드 영역(26)의 표시를 수신함에 응답하여, 이차적인 키보드 모듈(10)은 UI 모듈(6)이 UI 디바이스(4)에 디스플레이하기 위해 제2 키보드(22)를 출력할 수 있게 한다.
특정 예들에서, UI 모듈(6)은 텍스트 디스플레이 영역(13)에서와 같이 하나 이상의 디스플레이가능 영역들을 포함하는 GUI(12)의 부분에 디스플레이하기 위해 제2 키보드(22)를 출력할 수 있다. 일부 예들에서, UI 모듈(5)은 디스플레이가능한 영역들 중 하나 이상의 알파 블랜딩된(예컨대, 반투명(translucent)) 오버레이로서 제2 키보드(22)를 출력할 수 있다. 예를 들어, UI 모듈(6)은 텍스트 디스플레이 영역(13) 또는 하나 이상의 텍스트 제시 영역들(미도시)과 같은 하나 이상의 다른 영역들의 알파 블랜딩된 오버레이로서 제2 키보드(22)를 출력할 수 있다.
제스쳐 모듈(8)은 UI 디바이스(4)(예컨대, 존재-감응형 입력 디바이스)에서 검출된 연속적인 제스쳐(28)의 제1 부분(34)의 표시를 수신할 수 있다. 예시된 바와 같이, 제1 부분(34)은 제1 그래픽 키보드(14)의 "P" 키(16)에 대응하는 제1 위치(30)로부터 "A" 키(18)에 대응하는 UI 디바이스(4)의 위치로의 입력 유닛(예컨대, 손가락)의 모션을 포함한다. 제스쳐 모듈(8)은 하기에 더 기술되는 바와 같이, 연속적인 제스쳐(28)의 제1 부분(34)의 표시에 적어도 부분적으로 근거하여, 제1 그래픽 키보드(14)의 "A" 키(18)를 선택할 수 있다.
제스쳐 모듈(8)은 UI 디바이스(4)에서 검출된 연속적인 제스쳐(28)의 제2 부분(36)의 표시를 수신할 수 있다. 예시된 바와 같이, 제2 부분(36)은 "A" 키(18)에 대응하는 위치로부터 "5" 키(24)에 대응하는 위치로의 입력 유닛의 모션을 포함한다. 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 제2 부분(36)의 표시에 적어도 부분적으로 근거하여, 제2 그래픽 키보드(22)의 "5" 키(24)를 선택할 수 있다. 도 1에 더 예시된 바와 같이, 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 하나 이상의 부분들로 계속되며 제1 그래픽 키보드(14)의 "S" 키(20)와 같은 제1 그래픽 키보드(14) 및/또는 제2 그래픽 키보드(22)의 하나 이상의 키들을 선택할 수 있다.
제스쳐 모듈(8)은 선택된 키들과 관련된 하나 이상의 문자들을 포함하는 후보 문자 스트링을 결정할 수 있다. 후보 문자 스트링은 제1 그래픽 키보드(14)의 키들과 관련된 하나 이상의 문자들 및 제2 그래픽 키보드(22)와 관련된 하나 이상의 문자들을 포함할 수 있다. 예를 들어, 제스쳐 모듈(8)은 후보 문자 스트링(38)을 결정할 수 있다. 예시된 바와 같이, 후보 문자 스트링(38)은 제1 그래픽 키보드(14)의 "A" 키(18)에 대응하는 "A" 문자(40) 및 제2 그래픽 키보드(22)의 "5" 키(24)에 대응하는 "5" 문자(42)를 포함할 수 있다.
이 방식으로, 컴퓨팅 디바이스(2)는 사용자가 그래픽 키보드를 이용하여 텍스트의 하나 이상의 문자들을 선택하기 위해 제스쳐 입력을 제공하는 것의 용이성을 향상시킬 수 있다. 본 명세서에 기술된 기법들에 따르면, 사용자는 그래픽 키보드의 모드들을 변경하기 위해 그리고 비알파벳 문자들에 대응하는 선택가능한 키들의 디스플레이를 개시하기 위해 개별적인 제스쳐 입력들을 요함이 없이, 제1 그래픽 키보드에 포함된 하나 이상의 알파벳 문자들 및 제2 그래픽 키보드에 포함된 하나 이상의 비알파벳 문자들을 선택하기 위해 연속적인 제스쳐 입력을 제공할 수 있다. 따라서, 상기 기법들은 잠재적으로, 사용자가 알파벳 및 비알파벳 텍스트의 조합들을 포함하는 텍스트를 컴퓨팅 디바이스를 이용하여 선택하기 위해 제스쳐 입력을 제공하는 것의 레이트(rate)를 증가시킬 수 있고, 그럼으로써 잠재적으로 컴퓨팅 디바이스의 유용성을 증가시킬 수 있다.
도 2는 본 발명의 하나 이상의 양상들에 따른 도 1에 도시된 컴퓨팅 디바이스의 일례의 추가 세부사항들을 예시하는 블록도이다. 도 2는 컴퓨팅 디바이스(2)의 단 하나의 특별한 예를 도시하며, 컴퓨팅 디바이스(2)의 많은 다른 예들이 다른 예시들에서 이용될 수 있다.
도 2의 특정예에 도시된 바와 같이, 컴퓨팅 디바이스(2)는 하나 이상의 프로세서들(50), 하나 이상의 입력 디바이스들(52), UI 디바이스(4), 하나 이상의 통신 유닛들(54), 하나 이상의 출력 디바이스들(56) 및 하나 이상의 저장 디바이스들(58)을 포함한다. 예시된 바와 같이, 컴퓨팅 디바이스(2)는 또한, UI 모듈(6), 제스쳐 모듈(8), 이차적인 키보드 모듈(10) 및 컴퓨팅 디바이스(2)에 의해 (예컨대, 하나 이상의 프로세서들(50)에 의해) 실행가능한 운영 체제(62)를 포함할 수 있다. 컴퓨팅 디바이스(2)는 키 영역들(64) 및 언어 모델(66)을 더 포함할 수 있다.
컴포넌트들(4, 50, 52, 54, 56, 및 58) 각각은 컴포넌트간 통신들을 위해 (물리적으로, 통신적으로 그리고/또는 동작적으로) 상호연결될 수 있다. 일부 예들에서, 통신 채널들(60)은 시스템 버스, 네트워크 연결, 프로세스간 통신 데이터 구조 또는 데이터를 통신하기 위한 어떤 다른 방법을 포함할 수 있다. 도 2의 일례로서, 컴포넌트들(4, 50, 52, 54, 56, 및 58)은 하나 이상의 통신 채널들(60)에 의해 결합될 수 있다. UI 모듈(6), 제스쳐 모듈(8), 2차 모듈(10)은 또한, 서로 그리고 키 영역들(64) 및 언어 모듈(66)과 같은 컴퓨팅 디바이스(2)의 다른 컴포넌트들과 정보를 통신할 수 있다.
일례에서, 프로세서들(50)은 컴퓨팅 디바이스(2) 내의 실행을 위한 기능 및/또는 프로세스 명령들을 구현하도록 구성된다. 예를 들어, 프로세서들(50)은 저장 디바이스(58)에 저장된 명령들을 프로세싱할 수 있다. 프로세서들(50)의 예들은 마이크로프로세서, 제어기, 디지털 신호 프로세서(DSP), 응용 주문형 집적 회로(ASIC), 현장 프로그램가능 게이트 어레이(FPGA) 또는 균등한 개별 또는 집적 로직 회로망 중 어느 하나 이상을 포함할 수 있다.
저장 디바이스(58)는 동작 동안 컴퓨팅 디바이스(2) 내에 정보를 저장하도록 구성될 수 있다. 일부 예들에서, 저장 디바이스(58)는 컴퓨터 판독가능 저장 매체로서 기술된다. 일부 예들에서, 저장 디바이스(58)는 임시 메모리인 바, 이는 저장 디바이스(58)의 주요 목적이 장기 저장이 아님을 의미한다. 일부 예들에서, 저장 디바이스(58)는 휘발성 메모리로서 기술되는 바, 이는 컴퓨터가 턴오프될 때 저장 디바이스(58)가 저장된 컨텐츠를 유지하지 않음을 의미한다. 휘발성 메모리들의 예들은 랜덤 액세스 메모리(RAM)들, 동적 랜덤 액세스 메모리(DRAM)들, 정적 랜덤 액세스 메모리(SRAM)들 및 이 기술분야에 알려진 다른 형태의 휘발성 메모리들을 포함한다. 일부 예들에서, 저장 디바이스(58)는 프로세서들(50)에 의한 실행을 위한 프로그램 명령어들을 저장하는 데 이용된다. 일례에서, 저장 디바이스(58)는 프로그램 실행 동안 임시로 정보를 저장하기 위해 컴퓨팅 디바이스(2) 상에서 실행되는 소프트웨어 또는 어플리케이션(예컨대, 이차적인 키보드 모듈(10))에 의해 이용된다.
일부 예들에서, 저장 디바이스(58)는 또한, 하나 이상의 컴퓨터 판독가능 저장 매체를 포함한다. 저장 디바이스들(58)은 휘발성 메모리보다 많은 양의 정보를 저장하도록 구성될 수 있다. 저장 디바이스들(58)은 또한, 정보의 장기 저장을 위해 구성될 수 있다. 일부 예들에서, 저장 디바이스들(58)은 비휘발성 저장 요소들을 포함한다. 이러한 비휘발성 저장 요소들의 예들은 자기 하드 디스크들, 광학 디스크들, 플로피 디스크들, 플래시 메모리들, 또는 전기적으로 프로그램가능한 메모리(EPROM)들 또는 전기적으로 소거가능하고 프로그램가능한 메모리(EEPROM)들의 형태들을 포함한다.
일부 예들에서, 컴퓨팅 디바이스(2)는 또한, 하나 이상의 통신 유닛들(54)을 포함한다. 일례에서, 컴퓨팅 디바이스(2)는 하나 이상의 무선 네트워크들과 같은 하나 이상의 네트워크들을 통해 외부 디바이스들과 통신하기 위해 통신 유닛(54)을 이용한다. 통신 유닛(54)은 이더넷 카드, 광학 송수신기, 무선 주파수 송수신기 또는 정보를 전송 및 수신할 수 있는 어떤 다른 타입의 디바이스와 같은 네트워크 인터페이스 카드일 수 있다. 이러한 네트워크 인터페이스들의 다른 예들은 블루투스, 3G 및 WiFi 무선 컴퓨팅 디바이스들뿐만 아니라 USB를 포함할 수 있다. 일부 예들에서, 컴퓨팅 디바이스(2)는 서버와 같은 외부 디바이스와 무선으로 통신하기 위해 통신 유닛(54)을 이용한다.
일례에서, 컴퓨팅 디바이스(2)는 또한, 하나 이상의 입력 디바이스들(52)을 포함한다. 일부 예들에서, 입력 디바이스(52)는 촉각적, 오디오 또는 비디오 피드백을 통해 사용자로부터 입력을 수신하도록 구성된다. 입력 디바이스(52)의 예들은 존재-감응형 디스플레이, 존재-감응형 입력 디바이스, 마우스, 키보드, 음성 반응형 시스템, 비디오 카메라, 마이크 또는 사용자로부터 커맨드를 검출하기 위한 어떤 다른 타입의 디바이스를 포함한다. 일부 예들에서, 존재-감응형 디스플레이는 터치-감응형 스크린을 포함한다.
하나 이상의 입력 디바이스들(56)은 또한, 컴퓨팅 디바이스(2)에 포함될 수 있다. 일부 예들에서, 출력 디바이스(56)는 촉각적, 오디오 또는 비디오 자극(stimuli)을 이용하여 사용자에게 출력을 제공하도록 구성된다. 일례에서, 출력 디바이스(56)는 존재-감응형 디스플레이, 사운드 카드, 비디오 그래픽 어댑터 카드 또는 신호를 사람들 또는 기계들이 이해가능한 적절한 형태로 변환하기 위한 어떤 다른 타입의 디바이스를 포함한다. 출력 디바이스(56)의 추가적인 예들은 스피커, CRT 모니터, LCD 또는 사용자가 이해할 수 있는(intelligible) 출력을 생성할 수 있는 어떤 다른 타입의 디바이스를 포함한다.
일부 예들에서, UI 디바이스(4)는 입력 디바이스(52) 및/또는 출력 디바이스(56)의 기능을 포함할 수 있다. 일례에서, UI 디바이스(4)는 터치-감응형 스크린일 수 있다. 도 2의 에에서, UI 디바이스(4)는 존재-감응형 디스플레이일 수 있다. 일부 예들에서, 존재 감응형 디스플레이는 상기 존재-감응형 디스플레이의 스크린에서 그리고/또는 스크린 근처에서 입력 유닛(예컨대, 사용자의 손가락, 펜, 스타일러스, 등등)과 같은 객체를 검출할 수 있다. 일 예시적인 범위로서, 존재-감응형 디스플레이는 상기 존재-감응형 디스플레이의 물리 스크린의 2 인치 이하에 있는 입력 유닛을 검출할 수 있다. 존재-감응형 디스플레이는 입력 유닛이 검출된 존재-감응형 디스플레이의 하나 이상의 위치들(예컨대, (x, y) 좌표들)을 결정할 수 있다. 다른 예시적인 범위에서, 존재-감응형 디스플레이는 상기 존재-감응형 디스플레이의 물리 스크린으로부터 6인치 이하에 있는 객체를 검출할 수 있고, 다른 예시적인 범위들이 또한 가능하다. 존재-감응형 디스플레이는 용량성, 유도성 및/또는 광학 인식 기법들을 이용하여 입력 유닛에 의해 선택된 디스플레이의 위치를 결정할 수 있다. 일부 예들에서, 존재-감응형 디스플레이는 출력 디바이스(56)에 관하여 기술된 바와 같이, 촉각적, 오디오 또는 비디오 자극을 이용하여 사용자에게 출력을 제공한다.
컴퓨팅 디바이스(2)는 운영 체제(62)를 포함할 수 있다. 일부 예들에서, 운영 체제(62)는 컴퓨팅 디바이스(2)의 컴포넌트들의 동작을 제어한다. 예를 들어, 일례에서 운영 체제(62)는 프로세서(50), 통신 유닛(54), 저장 디바이스(58), 입력 디바이스(52) 및 출력 디바이스(56)와의 UI 모듈(6), 제스쳐 모듈(8) 및/또는 이차적인 키보드 모듈(10)의 통신을 지원한다. UI 모듈(6), 제스쳐 모듈(8) 및 이차적인 키보드 모듈(10)은 컴퓨팅 디바이스(2)에 의해 실행가능한 프로그램 명령어들 및/또는 데이터를 각각 포함할 수 있다. 일례로서, 이차적인 키보드 모듈(10)은 컴퓨팅 디바이스(2)로 하여금 본 발명에 기술된 동작들 및 액션(action)들 중 하나 이상을 수행하게 하는 명령어들을 포함할 수 있다.
컴퓨팅 디바이스(2)는 언어 모델(66)을 포함할 수 있다. 언어 모델(66)은 렉시콘(lexicon)을 포함할 수 있다. 일부 예들에서, 렉시콘은 단어들의 리스팅을 포함할 수 있고, 리스트된 단어들에 관한 추가적인 정보를 포함할 수 있다. 렉시콘은 어레이, 리스트, 트리(tree) 또는 다른 데이터 구조들 중 하나 이상에 의해서와 같이 하나 이상의 데이터 구조들에 의해 표시될 수 있다. 예를 들어, 언어 모델(66)은 트리(trie) 데이터 구조에 저장된 렉시콘을 포함할 수 있다. 일부 예들에서, 언어 모델(66)은 컴퓨팅 디바이스(2) 상에 인스톨된 디폴트 사전일 수 있다. 특정 예들에서, 언어 모델(66)은 컴퓨팅 디바이스(2) 상에 인스톨된 미리정의된 구들의 그룹을 포함할 수 있다. 다른 예들에서, 언어 모델(66)은 복수의 렉시콘들의 소스들을 포함할 수 있는 바, 상기 복수의 렉시콘들의 소스들은 컴퓨팅 디바이스(2)에 저장되거나 또는, 하나 이상의 통신 채널들을 통해 컴퓨팅 디바이스(2)에 액세스가능한 하나 이상의 원격 컴퓨팅 디바이스들에 저장될 수 있다. 일부 예들에서, 언어 모듈(66)은 컴퓨팅 디바이스(2)의 펌웨어에 구현될 수 있다.
언어 모델(66)은 n-그램 언어 모델들과 같은 언어 모델 빈도 정보를 포함할 수 있다. n-그램 언어 모델은 시퀀스 상 이전 아이템들에 근거하여 아이템들의 인접한 아이템들의 시퀀스에서 아이템 xi(글자, 단어, 구두점 문자 또는 다른 구획 문자)에 대한 확률 분포(즉,
Figure pct00001
)를 제공할 수 있다. 예를 들어, 바이그램 언어 모델(n=2인 경우의 n-그램 모델)은 글자 "i"가 글자들의 시퀀스 "th"를 뒤따를 확률을 제공할 수 있다. 다른 예로서, 바이그램 언어 모델은 단어 "than"이 단어 "better"를 뒤따를 확률을 제공할 수 있다. 일부 예들에서, 언어 모델(66)은 통합된 언어 모델 빈도 정보를 갖는 렉시콘 트리를 포함한다. 예를 들어, 렉시콘 트리의 각각의 노드는 글자의 표시 및 확률 값을 포함할 수 있다.
본 발명의 기법들은 사용자가 컴퓨팅 디바이스 내로 텍스트를 입력할 수 있는 속도를 향상시킬 수 있다. 본 발명의 기법들을 이용하면, 컴퓨팅 디바이스는 입력 컨텍스트에 적어도 부분적으로 근거하여, 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 제2 그래픽 키보드를 출력하는 것을 결정할 수 있다. 제2 키보드의 적어도 하나의 키와 관련된 문자는 제1 키보드의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 예를 들어, 제2 키보드는 제1 그래픽 키보드에 포함되지 않은 비알파벳 문자들(예컨대, 숫자 및/또는 심볼 문자들)과 관련된 하나 이상의 비알파벳 키들을 포함할 수 있다. 따라서, 본 발명의 컴퓨팅 디바이스 구현 기법들은 제2 키보드에 포함된 복수의 키들을 디스플레이하기 위해 제1 그래픽 키보드의 모드들을 변경하기 위한 별개의 개별적인 제스쳐 입력을 요함이 없이, 사용자가 제1 그래픽 키보드의 하나 이상의 키들 및 제2 그래픽 키보드의 하나 이상의 키들을 선택하기 위해 연속적인 제스쳐 입력을 제공할 수 있게 한다.
UI 모듈(6)은 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력할 수 있다. 예를 들어, UI 모듈(6)은 "P" 키(16), "A" 키(18) 및 "S" 키(20)를 포함하는 제1 그래픽 키보드(14)를 UI 디바이스(4)에 디스플레이하기 위해 출력할 수 있다. 이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 디스플레이하는 것을 결정할 수 있다. 예를 들어, 이차적인 키보드 모듈(10)은 패스워드 정보를 수신하도록 구성된 GUI(12)의 영역으로서 패스워드 영역(26)(예컨대, GUI(12)의 활성 입력 영역)의 식별자에 근거하여, 제2 그래픽 키보드(22)를 출력하는 것을 결정할 수 있다. 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(14)와의 동시적인 디스플레이를 위해, 제2 그래픽 키보드(22)를 출력할 수 있다. 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 예를 들어, 제2 키보드(22)의 "5" 키와 관련된 "5" 문자는 제1 그래픽 키보드(14)의 각각의 키와 관련된 각각의 문자와 다르다.
제스쳐 모듈(8)은 존재-감응형 입력 디바이스에서 검출된 연속적인 제스쳐의 제1 부분의 표시를 수신할 수 있다. 일례로서, 제스쳐 모듈(8)은 UI 디바이스(4)(예컨대, 존재-감응형 입력 디바이스)에서 검출된 연속적인 제스쳐(28)의 제1 부분(34)의 표시를 수신할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택할 수 있다. 예를 들어, 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 제1 부분(34)에 적어도 부분적으로 근거하여, 제1 그래픽 키보드(14)의 "A" 키(18)를 선택할 수 있다.
일례로서, 사용자는 제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22)의 하나 이상의 키들의 그룹을 선택하기 위해 제스쳐를 수행할 수 있다. 사용자가 제스쳐를 수행함에 응답하여, UI 디바이스(4)는 도 1의 연속적인 제스쳐(28)에 의해 정의되는 제스쳐 경로와 같은 제스쳐 경로를 검출할 수 있는 바, 상기 제스쳐 경로는 제스쳐 경로 데이터로서 UI 모듈(6)에 의해 수신될 수 있다. 제스쳐 모듈(8)은 UI 모듈(6)로부터의 제스쳐 경로 데이터를 수신할 수 있다. 일부 예들에서, UI 모듈(6)은, 연속적인 제스쳐(28)에 의해 정의되는 제스쳐 경로가 UI 디바이스(4)에 의해 검출됨에 따라 제스쳐 모듈(8)에 제스쳐 경로 데이터를 점증적으로(incrementally) 전송한다.
제스쳐 모듈(8)은 제스쳐 경로 데이터와 관련된 복수의 특징들에 근거하여, 제스쳐에 의해 횡단되는 하나 이상의 정렬 포인트들을 결정할 수 있다. 도 1의 예에서, 제스쳐 모듈(8)은 제1 정렬 포인트가 연속적인 제스쳐(28)에 의해 정의되는 제스쳐 경로의 시작에 위치됨을 결정할 수 있다. 일부 예들에서, 제스쳐 모듈(8)은 제스쳐 경로를 따르는 일 포인트에서의 경로의 곡률(curvature)을 결정할 수 있다. 이러한 예들에서, 제스쳐 모듈(8)은 상기 포인트가 (제스쳐 경로가 그 포인트에서 갑자기 방향을 바꾸는 경우) 높은 곡률이 존재하는 정렬 포인트일 가능성이 더 높음을 결정할 수 있다. 다른 예들에서, 제스쳐 모듈(8)은 중간-세그먼트 곡률(mid-segment curvature)(제스쳐를 따르는 두 개의 포인트들 사이의 제스쳐 경로의 최대 곡률)을 결정할 수 있다. 다른 예에서, 제스쳐 모듈(8)은 일 포인트가 높은 중간-세그먼트 곡률이 존재하는 다음 정렬 포인트일 가능성이 더 적음을 결정할 수 있다. 일부 예들에서, 제스쳐 모듈(8)은 일 포인트가 제스쳐 경로가 검출된 속도에 근거하여 정렬 포인트임을 결정할 수 있다. 일부 예들에서, 더 느린 레이트의 검출은 상기 포인트가 정렬 포인트임을 나타낸다. 일부 예들에서, 높은 중간-세그먼트 곡률은 제1 포인트와 제2 포인트 사이에 코너들이 존재했음을 나타내며, 이는 상기 제2 포인트가 다음 정렬 포인트일 가능성이 더 낮음을 제시한다(즉, 일 포인트가 이들 간에 빠졌다(missed)).
일부 예들에서, 정렬 포인트는 둘 이상의 포인트들 사이의 제스쳐 세그먼트의 포인트들 사이의 최대 거리 및 제1 키로부터 제2 키로의 이상적인 라인(ideal line)에 근거할 수 있다. 이상적인 라인은 예컨대, 제1 키로부터 제2 키로의 최단 거리 경로일 수 있다. 양호한 정렬을 위해, 최대 거리가 작을 수 있는 바, 이는 제스쳐 세그먼트가 이상적인 라인으로부터 벗어나지 않음을 의미한다.
각각의 정렬 포인트에 대해, 제스쳐 모듈(8)은 제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22) 중 하나 이상에 포함된 복수의 키들 중 적어도 두 개의 키들 각각에 대한 각각의 비용 값들을 결정할 수 있다. 각각의 비용 값들의 각각은 정렬 포인트가 복수의 키들 중 일 키를 나타낼 확률을 표시할 수 있다. 일부 예들에서, 제스쳐 모듈(8)은 하기에 더 기술되는 바와 같이, 각각의 물리적 비용 값들을 각각의 렉시컬(lexical) 비용 값들과 비교함으로써 각각의 비용 값들을 결정한다.
제스쳐 모듈(8)은 복수의 키들 중 적어도 두 개의 키들의 각각에 대한 각각의 물리적 비용 값들을 결정할 수 있다. 각각의 물리적 비용 값들의 각각은 정렬 포인트의 물리적 특징들이 복수의 키들 중 일 키의 물리적 특징들을 나타낼 확률을 표시할 수 있다. 예를 들어, 제스쳐 모듈(8)은 정렬 포인트와 키의 키보드 위치 사이의 유클리드 거리(Euclidian distance)를 평가함으로써 각각의 물리적 비용 값들을 결정할 수 있다.
복수의 키들의 물리적 특징들은 키 영역들(64)에 포함될 수 있다. 예를 들어, 키 영역들(64)은 제1 그래픽 키보드(14)의 복수의 제1 키들 및 제2 그래픽 키보드(22)의 복수의 제2 키들 각각에 대해, 각각의 키가 디스플레이되는, 제1 그래픽 키보드(14) 및/또는 제2 그래픽 키보드(22)의 위치 및/또는 영역에 대응하는 좌표들의 세트를 포함할 수 있다. 도 1의 예에서, 제스쳐 모듈(8)은 제1 정렬 포인트와 "A" 키(18) 사이의 유클리드 거리에 근거하여 제1 물리적 비용 값을 결정할 수 있다. 일부 예들에서, 제스쳐 모듈(8)은 제1 정렬 포인트와 제2 정렬 포인트 사이의 유클리드 거리를 제1 정렬 포인트에 의해 표시되는 제1 글자와 제2 정렬 포인트에 의해 표시될 수 있는 제2 글자 사이의 유클리드 거리와 비교함으로써 물리적 비용 값들을 결정할 수 있다. 제스쳐 모듈(8)은 제2 글자의 비용 값이 상기 거리들의 차이에 반비례함을(즉, 상기 거리들이 더 비슷할수록 제2 글자가 더 가능성있음(probable)을) 결정할 수 있다. 예를 들어, 더 짧은 거리는 더 양호한 정렬을 제시할 수 있다.
제스쳐 모듈(8)은 또한, 복수의 키들 중 적어도 두 개의 키들 각각에 대한 각각의 렉시컬 비용 값들을 결정함으로써 각각의 비용 값들을 결정할 수 있다. 각각의 렉시컬 비용 값들 각각은, 복수의 키들 중 일 키에 의해 표시되는 글자가 후보 단어에 포함될 확률을 표시할 수 있다. 렉시컬 비용 값들은 언어 모델(66)에 근거할 수 있다. 예를 들어, 렉시컬 비용 값들은 언어 모델(66)에 포함된 가능성있는 단어들에 근거하여 소정 글자가 선택될 가능성을 표시할 수 있다.
특정 예들에서, 제스쳐 모듈(8)은 결합된 비용 값을 결정하기 위해 각각의 물리적 비용 값들 및 각각의 렉시컬 비용 값들을 결합함으로써 (예컨대, 각각의 물리적 비용 값들 및 각각의 렉시컬 비용 값들을 합함으로써) 각각의 비용 값들을 결정할 수 있다. 예를 들어, 제스쳐 모듈(8)은 키가 최저 결합 비용 값과 관련됨을 결정함에 응답하여, 제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22) 중 하나 이상의 키보드의 키를 선택할 수 있다.
일부 예들에서, 제스쳐 모듈(8)은 각각의 물리적 비용 값들에 근거하되, 각각의 렉시컬 비용 값들에는 근거하지 않고 각각의 비용 값들을 결정할 수 있다. 예를 들어, 비알파벳 문자들(예컨대, 숫자 및/또는 심볼 문자들)을 포함하는 그러한 문자 스트링들과 같은 특정 문자 스트링들은 언어 모델(66)에 포함된 렉시콘에 표시되지 않을 수 있다. 따라서, 비알파벳 문자들, 날짜들, 시간들, 등등을 포함하는 비알파벳 문자들, 예컨대 패스워드들을 포함하는 문자 스트링들은 (문자 스트링의 낮은 확률을 나타내는) 높은 렉시컬 비용 값과 관련될 수 있고, 그럼으로써 상기 문자 스트링과 관련된 키들이 제스쳐 경로 데이터에 근거하여 선택된 키들로서 결정될 가능성을 감소시킨다. 따라서, 입력 컨텍스트(예컨대, 패스워드 영역, 날짜 영역, 시간 영역 및 기타 등등과 같은 입력을 수신할 수 있는 입력 영역의 식별자)가 비알파벳 문자들이 선택? 가능성이 높음을 나타낼 때와 같은 특정 예들에서, 제스쳐 모듈(8)은 각각의 물리적 비용 값들에 근거하되 각각의 렉시컬 비용 값들에 근거하지 않고 각각의 비용 값들을 결정할 수 있다. 일부 예들에서, 제스쳐 모듈(8)은, 후보 문자 스트링이 렉시콘에 포함된 단어를 표시할 확률을 나타내는 언어 모델(예컨대, 언어 모델(66))과 후보 문자 스트링을 비교함이 없이, 각각의 비용 값들 및 관련 후보 문자 스트링을 결정할 수 있다.
특정 예들에서, 제스쳐 모듈(8)은 입력 컨텍스트에 적어도 부분적으로 근거하여, 제1 그래픽 키보드(예컨대, 제1 그래픽 키보드(14))의 복수의 제1 키들 및 제2 그래픽 키보드(예컨대, 제2 그래픽 키보드(22))의 복수의 제2 키들 중 하나 이상으로부터 적어도 하나의 키의 선택의 확률의 표시를 출력할 수 있다. 예를 들어, 제스쳐 모듈(8)은 제1 그래픽 키보드(14) 및 제2 그래픽 키보드(22) 중 하나 이상에 디스플레이하기 위해 히트 맵(heat map)을 출력할 수 있다. 상기 히트 맵은 예컨대, 적어도 하나의 키의 선택의 확률에 비례하여 적어도 하나의 키에 대응하는 영역에 디스플레이되는 다수의 도트(dot)들의 밀도를 출력함으로써(예컨대, 높은 밀도는 높은 선택 확률을 나타냄), 적어도 하나의 키의 선택의 확률에 비례하여 적어도 하나의 키에 대응하는 영역의 컬러를 출력함으로써(예컨대, 낮은 선택 확률을 나타내는 그린 컬러로부터 높은 선택 확률을 나타내는 레드 컬러로의 컬러 스케일), 적어도 하나의 키의 선택의 확률을 나타낼 수 있다. 이러한 방식으로, 제스쳐 모듈(8)은 언어 모델(66)로부터 수신되는 정보의 결여로 인해 예측의 정확도의 감소를 보상하기 위해 적어도 하나의 키의 선택의 확률의 표시를 출력할 수 있다.
제스쳐 모듈(8)은 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제2 부분의 표시를 수신할 수 있다. 예를 들어, 제스쳐 모듈(8)은 UI 디바이스(4)(예컨대, 존재-감응형 입력 디바이스)에서 검출되는 연속적인 제스쳐(28)의 제2 부분(36)의 표시를 수신할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택할 수 있다. 예를 들어, 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 제2 부분(36)에 의해 정의되는 제스쳐 경로 데이터와 관련된 하나 이상의 비용 값들(예컨대, 물리적 비용 값들)에 적어도 부분적으로 근거하여, 제2 키보드(22)의 "5" 키(24)를 선택할 수 있다.
이러한 방식으로, 본 발명의 기법들은 사용자가 알파벳 문자들과 관련된 키들을 포함하는 제1 그래픽 키보드와 같은 제1 그래픽 키보드의 하나 이상의 키들 및 제1 그래픽 키보드의 키들 중 어느 것과도 관련되지 않은 하나 이상의 문자들과 관련된 키들을 포함하는 제2 그래픽 키보드와 같은 제2 그래픽 키보드의 하나 이상의 키들을 선택하기 위해 연속적인 제스쳐 입력을 제공할 수 있게 한다. 따라서, 본 발명의 기법들을 구현하는 컴퓨팅 디바이스는 잠재적으로, 사용자가 알파벳 및 비알파벳 문자들의 조합을 포함하는 텍스트와 같은 텍스트를 입력할 수 있는 속도를 증가시킬 수 있다. 이러한 방식으로, 상기 기법들은 컴퓨팅 디바이스의 유용성을 향상시킬 수 있다.
도 3은 본 발명의 하나 이상의 양상들에 따른 원격 디바이스에 디스플레이하기 위해 그래픽 컨텐츠를 출력하는 예시적인 컴퓨팅 디바이스를 도시하는 블록도이다. 그래픽 컨텐츠는 일반적으로, 텍스트, 이미지들, 움직이는 이미지들의 그룹, 등등과 같이 디스플레이하기 위해 출력될 수 있는 어떤 시각적 정보를 포함할 수 있다. 도 3에 도시된 예는 컴퓨팅 디바이스(80), 존재-감응형 디스플레이(82), 통신 유닛(84), 프로젝터(96), 프로젝터 스크린(98), 태블릿 디바이스(102), 및 시각적 디스플레이 디바이스(106)를 포함한다. 비록, 예시를 위해 도 1 및 2에 단독 컴퓨팅 디바이스(2)로서 도시되지만, 컴퓨팅 디바이스는 일반적으로, 소프트웨어 명령어들을 실행하기 위한 프로세서 또는 다른 적절한 컴퓨팅 환경을 포함하는 어떤 컴포넌트 또는 시스템일 수 있고, 예컨대, 반드시 존재-감응형 디스플레이를 포함할 필요는 없다.
도 3의 예에 도시된 바와 같이, 컴퓨팅 디바이스(80)는 도 2의 프로세서(50)에 관하여 기술된 바와 같은 기능을 포함하는 프로세서일 수 있다. 이러한 예들에서, 컴퓨팅 디바이스(8)는 통신 채널(86A)에 의해 존재-감응형 디스플레이(82)에 동작적으로 결합될 수 있고, 상기 통신 채널은 시스템 버스 또는 다른 적절한 연결일 수 있다. 컴퓨팅 디바이스(80)는 또한, 통신 채널(86B)에 의해 하기에 더 기술되는 통신 유닛(84)에 동작적으로 결합될 수 있고, 상기 통신 채널은 또한 시스템 버스 또는 다른 적절한 연결일 수 있다. 비록, 도 3에 예로서 개별적으로 도시되지만, 컴퓨팅 디바이스(80)는 어떤 수의 하나 이상의 통신 채널들에 의해 존재-감응형 디스플레이(82) 및 I/O 디바이스들(84)에 동작적으로 결합될 수 있다.
다른 예들에서, 도 1 내지 2에 이전에 예시된 것과 같이, 컴퓨팅 디바이스(80)는 (스마트폰들을 포함하는) 모바일 폰들, 랩탑 컴퓨터들, 등과 같은 포터블 또는 모바일 디바이스를 나타낼 수 있다. 일부 예들에서, 컴퓨팅 디바이스(80)는 데스크 탑 컴퓨터들, 태블릿 컴퓨터들, 스마트 텔레비전 플랫폼들, 카메라들, 개인용 디지털 단말기(PDA)들, 서버들, 메인프레임들, 등등일 수 있다.
도 1에 도시된 UI 디바이스(4)와 같은, 존재-감응형 디스플레이(82)는 디스플레이 디바이스(83) 및 존재-감응형 입력 디바이스(85)를 포함할 수 있다. 디스플레이 디바이스(83)는 예컨대, 컴퓨팅 디바이스(80)로부터 데이터를 수신하고 그래픽 컨텐츠를 디스플레이할 수 있다. 일부 예들에서, 존재-감응형 입력 디바이스(85)는 용량성, 유도성 및/또는 광학 인식 기법들을 이용하여 존재-감응형 디스플레이(82)에서의 하나 이상의 사용자 입력들(예컨대, 연속적인 제스쳐들, 다중-터치 제스쳐들, 단일-터치 제스쳐들, 등등)을 결정하고, 통신 채널(86A)을 이용하여 컴퓨팅 디바이스(80)에 이러한 사용자 입력의 표시들을 전송할 수 있다. 일부 예들에서, 존재-감응형 입력 디바이스(85)는, 사용자가 디스플레이 디바이스(83)에 의해 디스플레이되는 그래픽 요소 위에 입력 유닛을 위치시킬 때, 존재-감응형 입력 디바이스(85)에서의 위치가 그래픽 요소가 디스플레이되는 디스플레이 디바이스(83)의 위치에 대응하도록, 디스플레이 디바이스(83)의 상단에 물리적으로 위치될 수 있다.
도 3에 도시된 바와 같이, 컴퓨팅 디바이스(80)는 또한, 통신 유닛(84)을 포함할 수 있고 그리고/또는 상기 통신 유닛과 동작적으로 결합될 수 있다. 통신 유닛(84)은 도 2에 기술된 바와 같은 통신 유닛(54)의 기능을 포함할 수 있다. 통신 유닛(84)의 예들은 네트워크 인터페이스 카드, 이더넷 카드, 광학 송수신기, 무선 주파수 송수신기 또는, 정보를 전송 및 수신할 수 있는 어떤 다른 타입의 디바이스를 포함할 수 있다. 이러한 통신 유닛들의 다른 예들은 블루투스, 3G 및 WiFi 무선들, USB 인터페이스들, 등등을 포함할 수 있다. 컴퓨팅 디바이스(80)는 또한, 간결성 및 예시를 위해 도 3에 도시되지 않는 하나 이상의 다른 디바이스들, 예컨대 입력 디바이스들, 출력 디바이스들, 메모리, 저장 디바이스들, 등등을 포함할 수 있고 그리고/또는 이들과 동작적으로 결합될 수 있다.
도 3은 또한, 프로젝터(96) 및 프로젝터 스크린(98)을 예시한다. 프로젝션 디바이스들의 다른 이러한 예들은 전자 화이트보드들, 홀로그램 디스플레이 디바이스들 및 그래픽 컨텐츠를 디스플레이하기 위한 어떤 다른 적절한 디바이스들을 포함할 수 있다. 프로젝터(96) 및 프로젝트 스크린(98)은 하나 이상의 통신 유닛들을 포함할 수 있고, 상기 통신 유닛들은 각각의 디바이스들이 컴퓨팅 디바이스(80)와 통신할 수 있게 한다. 일부 예들에서, 하나 이상의 통신 유닛들은 프로젝터(96)와 프로젝터 스크린(98) 사이의 통신을 가능하게 할 수 있다. 프로젝터(96)는 그래픽 컨텐츠를 포함하는 데이터를 컴퓨팅 디바이스(80)로부터 수신할 수 있다. 프로젝터(96)는 데이터를 수신함에 응답하여, 그래픽 컨텐츠를 프로젝터 스크린(98)으로 프로젝션할 수 있다. 일부 예들에서, 프로젝터(96)는 광학 인식 또는 다른 적절한 기법들을 이용하여 프로젝터 스크린에서의 하나 이상의 사용자 입력들(예컨대, 연속적인 제스쳐들, 다중-터치 제스쳐들, 단일-터치 제스쳐들)을 결정할 수 있고, 하나 이상의 통신 유닛들을 이용하여 이러한 사용자 입력의 표시들을 컴퓨팅 디바이스(80)에 전송할 수 있다.
프로젝터 스크린(98)은 일부 예들에서, 존재-감응형 디스플레이(100)를 포함할 수 있다. 존재-감응형 디스플레이(100)는 본 발명에 기술된 바와 같은 UI 디바이스(4)의 기능의 서브세트 또는 기능의 전부를 포함할 수 있다. 일부 예들에서, 존재-감응형 디스플레이(100)는 추가적인 기능을 포함할 수 있다. 프로젝터 스크린(98)(예컨대, 전자 화이트보드)은 컴퓨팅 디바이스(80)로부터 데이터를 수신하고 그래픽 컨텐츠를 디스플레이할 수 있다. 일부 예들에서, 존재-감응형 디스플레이(100)는 용량성, 유도성 및/또는 광학 인식 기법들을 이용하여 프로젝터 스크린(98)에서의 하나 이상의 사용자 입력들(예컨대, 연속적인 제스쳐들, 다중-터치 제스쳐들, 단일-터치 제스쳐들, 등등)을 결정할 수 있고, 하나 이상의 통신 유닛들을 이용하여 이러한 사용자 입력의 표시들을 컴퓨팅 디바이스(80)에 전송할 수 있다.
도 3은 또한, 태블릿 디바이스(102) 및 시각적 디스플레이 디바이스(106)를 예시한다. 태블릿 디바이스(102) 및 시각적 디스플레이 디바이스(106) 각각은 컴퓨팅 및 연결 능력들을 포함할 수 있다. 태블릿 디바이스(102)의 예들은 e-리더 디바이스들, 컨버터블 노트북 디바이스들, 하이브리드 슬레이트 디바이스들, 등등을 포함할 수 있다. 시각적 디스플레이 디바이스(106)의 예들은 텔레비전들, 컴퓨터 모니터들, 등등을 포함할 수 있다. 도 3에 도시된 바와 같이, 태블릿 디바이스(102)는 존재-감응형 디스플레이(104)를 포함할 수 있다. 시각적 디스플레이 디바이스(106)는 존재-감응형 디스플레이(108)를 포함할 수 있다. 존재-감응형 디스플레이들(104, 108)은 본 발명에 기술된 바와 같이 UI 디바이스(4)의 기능의 서브세트 또는 기능의 전부를 포함할 수 있다. 일부 예들에서, 존재-감응형 디스플레이들(104, 108)은 추가적인 기능을 포함할 수 있다. 어떤 경우에는, 존재-감응형 디스플레이(108)는 예컨대, 컴퓨팅 디바이스(80)로부터 데이터를 수신하고 그래픽 컨텐츠를 디스플레이할 수 있다. 일부 예들에서, 존재-감응형 디스플레이(108)는 용량성, 유도성 및/또는 광학 인식 기법들을 기법들을 이용하여 프로젝터 스크린에서의 하나 이상의 사용자 입력들(예컨대, 연속적인 제스쳐들, 다중-터치 제스쳐들, 단일-터치 제스쳐들, 등등)을 결정할 수 있고, 하나 이상의 통신 유닛들을 이용하여 이러한 사용자 입력의 표시들을 컴퓨팅 디바이스(80)에 전송할 수 있다.
상기에 기술된 바와 같이, 일부 예들에서 컴퓨팅 디바이스(80)는 시스템 버스 또는 다른 적절한 통신 채널에 의해 컴퓨팅 디바이스(80)에 결합된 존재-감응형 디스플레이(82)에 디스플레이하기 위해 그래픽 컨텐츠를 출력할 수 있다. 컴퓨팅 디바이스(80)는 또한, 프로젝터(96), 프로젝터 스크린(98), 태블릿 디바이스(102) 및 시각적 디스플레이 디바이스(106)와 같은 하나 이상의 원격 디바이스들에 디스플레이하기 위해 그래픽 컨텐츠를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(80)는 본 발명의 기법들에 따라 그래픽 컨텐츠를 생성 및/또는 수정하기 위해 하나 이상의 명령어들을 실행할 수 있다. 컴퓨팅 디바이스(80)는 통신 유닛(84)과 같은 컴퓨팅 디바이스(80)의 통신 유닛에 그래픽 컨텐츠를 포함하는 데이터를 출력할 수 있다. 통신 유닛(84)은 프로젝터(96), 프로젝터 스크린(98), 태블릿 디바이스(102) 및/또는 시각적 디스플레이 디바이스(106)와 같은 원격 디바이스들 중 하나 이상에 데이터를 전송할 수 있다. 이러한 방식으로, 프로세서(102)는 원격 디바이스들 중 하나 이상에 디스플레이하기 위해 그래픽 컨텐츠를 출력할 수 있다. 일부 예들에서, 원격 디바이스들 중 하나 이상은, 각각의 원격 디바이스들에 포함되고 그리고/또는 상기 각각의 원격 디바이스들에 동작적으로 결합된 존재-감응형 디스플레이에 그래픽 컨텐츠를 출력할 수 있다.
일부 예들에서, 컴퓨팅 디바이스(80)는 컴퓨팅 디바이스(80)에 동작적으로 결합된 존재-감응형 디스플레이(82)에 그래픽 컨텐츠를 출력하지 않을 수 있다. 다른 예들에서, 컴퓨팅 디바이스(80)는 통신 채널(86A)에 의해 컴퓨팅 디바이스(80)에 결합된 존재-감응형 디스플레이(82)에 그리고 하나 이상의 원격 디바이스들에 디스플레이하기 위해 그래픽 컨텐츠를 출력할 수 있다. 이러한 예들에서, 그래픽 컨텐츠는 각각의 디바이스에 실질적으로 동시에 디스플레이될 수 있다. 예를 드어, 원격 디바이스에 그래픽 컨텐츠를 포함하는 데이터를 전송하기 위한 통신 레이턴시에 의해 일부 지연이 도입될 수 있다. 일부 예들에서, 컴퓨팅 디바이스(80)에 의해 생성되고 존재-감응형 디스플레이(82)에 디스플레이하기 위해 출력되는 그래픽 컨텐츠는 하나 이상의 원격 디바이스들에 디스플레이하기 위한 그래픽 컨텐츠 디스플레이 출력과 다를 수 있다.
컴퓨팅 디바이스(80)는 어떤 적절한 통신 기법들을 이용하여 데이터를 전송 및 수신할 수 있다. 예를 들어, 컴퓨팅 디바이스(80)는 네트워크 링크(88A)를 이용하여 외부 네트워크(90)에 동작적으로 결합될 수 있다. 도 3에 예시된 원격 디바이스들 각각은 각각의 네트워크 링크들(88B, 88C, 및 88D) 중 하나에 의해 외부 네트워크(90)에 네트워킹하도록 동작적으로 결합될 수 있다. 외부 네트워크(90)는 네트워크 허브들, 네트워크 스위치들, 네트워크 라우터들, 등등을 포함할 수 있고, 이들은 동작적으로 상호결합되며 그럼으로써, 도 3에 도시된 컴퓨팅 디바이스(80)와 원격 디바이스들 사이의 정보의 교환을 제공한다. 일부 예들에서, 네트워크 링크들(88A-88D)은 이더넷, ATM 또는 다른 네트워크 연결들일 수 있다. 이러한 연결들은 무선 및/또는 유선 연결들일 수 있다.
일부 예들에서, 컴퓨팅 디바이스(80)는 직접 디바이스 통신(94)을 이용하여 도 3에 포함된 원격 디바이스들 중 하나 이상에 동작적으로 결합될 수 있다. 직접 디바이스 통신(94)은 컴퓨팅 디바이스(80)가 유선 또는 무선 통신을 이용하여 원격 디바이스에 바로 데이터를 전송 및 이로부터 바로 데이터를 수신할 수 있게 하는 통신들을 포함할 수 있다. 즉, 직접 디바이스 통신(94)의 일부 예들에서, 컴퓨팅 디바이스(80)에 의해 전송되는 데이터는 원격 디바이스에서 수신되기 전에 하나 이상의 추가적인 디바이스들에 의해 포워딩되지 않으며, 이의 역 또한 동일하다. 직접 디바이스 통신(94)의 예들은 블루투스, 근거리 통신(NFC), USB, WiFi, 적외선, 등등을 포함할 수 있다. 도 3에 예시된 원격 디바이스들 중 하나 이상은 통신 링크들(92A-92D)에 의해 컴퓨팅 디바이스(80)와 동작적으로 결합될 수 있다. 일부 예들에서, 통신 링크들(88A-88D)은 블루투스, NFC, USB, 적외선, 등등을 이용하는 연결들일 수 있다. 이러한 연결들은 무선 및/또는 유선 연결들일 수 있다.
본 발명의 기법들에 따르면, 컴퓨팅 디바이스(80)는 외부 네트워크(90)를 이용하여 시각적 디스플레이 디바이스(106)에 동작적으로 결합될 수 있다. 컴퓨팅 디바이스(80)는 예컨대 존재-감응형 디스플레이(108)에 디스플레이하기 위해 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(80)는 통신 유닛(84)에 그래픽 사용자 인터페이스의 표시를 포함하는 데이터를 전송할 수 있다. 통신 유닛(84)은 외부 네트워크(90)를 이용하여 시각적 디스플레이 디바이스(106)에 그래픽 사용자 인터페이스의 표시를 포함하는 데이터를 전송할 수 있다. 시각적 디스플레이 디바이스(106)는 외부 네트워크(90)를 이용하여 데이터를 수신함에 응답하여, 존재-감응형 디스플레이(108)로 하여금 그래픽 사용자 인터페이스를 출력하게 한다. 컴퓨팅 디바이스(80)는 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 디스플레이하는 것을 결정할 수 있다. 컴퓨팅 디바이스(80)는 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(80)는 통신 유닛(84)에 제2 그래픽 키보드의 표시를 포함하는 데이터를 전송할 수 있고, 상기 통신 유닛은 외부 네트워크(90)를 이용하여 시각적 디스플레이 디바이스(106)에 상기 데이터를 전송할 수 있다. 시각적 디스플레이 디바이스(106)는 상기 데이터를 수신함에 응답하여, 존재-감응형 디스플레이(108)로 하여금 제1 그래픽 키보드와 동시에 제2 그래픽 키보드를 디스플레이하게 한다.
사용자가 제1 그래픽 키보드 및 제2 그래픽 키보드의 하나 이상의 키들을 선택하기 위해 존재-감응형 디스플레이(108)에서 연속적인 제스쳐를 수행함에 응답하여, 시각적 디스플레이 디바이스(106)는 외부 네트워크(90)를 이용하여 컴퓨팅 디바이스(80)에 제스쳐 입력의 표시를 전송할 수 있다. 통신 유닛(84)은 제스쳐 입력의 표시를 수신하고, 통신 디바이스(80)에 상기 표시를 전송할 수 있다.
컴퓨팅 디바이스(80)는 제스쳐 입력의 제1 부분의 표시에 적어도 부분적으로 근거하여, 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택할 수 있다. 컴퓨팅 디바이스(80)는 제스쳐 입력의 제2 부분의 표시에 적어도 부분적으로 근거하여, 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택할 수 있다. 일부 예들에서, 컴퓨팅 디바이스(80)는 상기 제1의 선택된 키와 관련된 적어도 하나의 문자 및 상기 제2의 선택된 키와 관련된 적어도 하나의 문자를 포함하는 후보 문자 스트링을 결정할 수 있다. 컴퓨팅 디바이스(80)는 특정 예들에서, 시각적 디스플레이 디바이스(106)에 디스플레이하기 위해 후보 문자 스트링을 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(80)는 통신 유닛(84)에 후보 문자 스트링을 포함하는 데이터를 전송할 수 있고, 상기 통신 유닛은 또한, 외부 네트워크(90)를 이용하여 시각적 디스플레이 디바이스(106)에 데이터를 전송한다. 상기 데이터를 수신할 시, 시각적 디스플레이 디바이스(106)는 존재-감응형 디스플레이(108)로 하여금 그래픽 사용자 인터페이스 내에 후보 문자 스트링을 디스플레이하게 한다. 이 방식으로, 프로세서(102)는 본 발명의 기법들에 따라 존재-감응형 스크린(108)에 디스플레이하기 위해 후보 문자 스트링을 출력할 수 있다.
도 4a 내지 4b는 본 발명의 하나 이상의 양상들에 따른 제1 그래픽 키보드와 동시적으로 디스플레이하기 위해 제2 그래픽 키보드를 출력하기 위해 이용될 수 있는 예시적인 컴퓨팅 디바이스를 예시하는 블록도들이다. 도 4a는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이하기 위해 출력하고 제스쳐 입력의 표시를 수신하는 컴퓨팅 디바이스의 예를 도시한다. 도 4b는 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 도 4a의 컴퓨팅 디바이스의 예를 도시한다. 즉, 함께 고려될 때, 도 4a 내지 4b는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이하기 위해 출력하고, 제스쳐 입력의 표시를 수신하며, 상기 제스쳐 입력의 표시를 수신함에 응답하여 그래픽 사용자 인터페이스 내에 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 컴퓨팅 디바이스의 예를 도시한다. 예시를 위해, 도 4a 내지 4b는 도 1 내지 2의 컴퓨팅 디바이스(2)의 컨텍스트 내에서 기술된다.
도 4a에 예시된 바와 같이, UI 모듈(6)은 제1 그래픽 키보드(112)를 포함하는 GUI(110)를 출력할 수 있다. 예시된 바와 같이, 제1 그래픽 키보드(112)는 "P" 키(112) 및 "A" 키(114)와 같은 복수의 제1 키들을 포함할 수 있다. GUI(110)는 하단 영역(118) 및 상단 영역(120)을 포함할 수 있다. 하단 영역(118) 및 상단 영역(120)은 사용자가 GUI(110)를 보는 동안 GUI(110) 내에 디스플레이되는 텍스트를 판독하는 GUI(110)의 지향(orientation)과 같은 GUI(110)의 지향에 대한 하단 및 상단 영역들로서 고려될 수 있다. 즉, 하단 영역(118)은 GUI(110)에 제시되는 텍스트의 지향에 대한 GUI(110)의 하단 영역으로 고려될 수 있다. 유사하게, 상단 영역(120)은 GUI(110)에 제시되는 텍스트의 지향에 대한 GUI(110)의 상단 영역으로 고려될 수 있어서, GUI(110)를 보는 사용자는 자연스럽게 GUI(100) 내에 디스플레이되는 텍스트를 좌우로 그리고 상단 영역(120)으로부터 하단 영역(118)으로 판독할 수 있다. 하단 영역(118) 및 상단 영역(120)은 하단 영역(118)이 GUI(110)의 지향에 대한 상단 영역(120) 아래에 있도록 하는 GUI(110)의 어떤 영역일 수 있다.
제스쳐 모듈(8)은 연속적인 제스쳐(124)의 부분(122)의 표시를 수신할 수 있다. 예시된 바와 같이, 연속적인 제스쳐(124)는 제1 위치(126)로부터 제2 위치(128)로 그리고 제3 위치(130)로의 입력 유닛의 모션을 포함할 수 있다. 부분(122)은 제2 위치(128)로부터 제3 위치(130)로의 입력 유닛의 모션을 포함할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐(124)의 부분(122)이 하단 영역(118)로부터 상단 영역(120)으로의 방향으로, 제1 그래픽 키보드(112)와 관련된 GUI(110)의 위치(예컨대, 제1 그래픽 키보드(112)를 포함하는 GUI(110)의 영역 내의 위치)에 대응하는 제2 위치(128)로부터 제1 그래픽 키보드(112)와 관련되지 않은 GUI(110)의 위치(예컨대, 제1 그래픽 키보드(112)를 포함하지 않는 GUI(110)의 영역 내의 위치)에 대응하는 제2 위치(130)로의 입력 유닛의 모션을 포함함을 결정할 수 있다. 이에 응답하여, 제스쳐 모듈(8)은 이차적인 키보드 모듈(10)로 하여금 제1 그래픽 키보드(112)와 동시에 디스플레이하기 위해 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하게 한다. 이러한 방식으로, 이차적인 키보드 모듈(10)은 GUI(110)의 하단 영역으로부터 GUI(110)의 상단 영역으로의 방향으로 제1 그래픽 키보드(112)를 포함하는 GUI(110)의 영역 외부로 확장되는 모션(예컨대, 제1 그래픽 키보드의 "상단을 벗어나(off the top)" 확장되는 제스쳐)을 포함하는 제스쳐 입력을 수신함에 응답하여 제2 그래픽 키보드를 출력할 수 있다.
도 4b에 예시된 바와 같이, 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(112)와 동시에 디스플레이하기 위해 제2 그래픽 키보드(132)를 출력할 수 있다. 즉, 이차적인 키보드 모듈(10)은 UI 디바이스(4)가 GUI(110) 내에 제1 그래픽 키보드(112)를 디스플레이하는 동안, UI 디바이스(4)가 GUI(110) 내에 제2 그래픽 키보드(132)를 디스플레이할 수 있게 한다. 예시된 바와 같이, 제2 그래픽 키보드(132)는 "@" 키(134) 및 "5" 키(136)와 같은 복수의 제2 키들을 포함할 수 있다. 이러한 방식으로, 이차적인 키보드 모듈(10)은 제2 그래픽 키보드(132)의 적어도 하나의 키와 관련된 적어도 하나의 문자가 제1 그래픽 키보드(112)의 각각의 키와 관련된 각각의 문자와 다르도록, 제1 그래픽 키보드(112)와 동시에 디스플레이하기 위해 제2 그래픽 키보드(132)를 출력할 수 있다.
도 5a 내지 5b는 본 발명의 하나 이상의 양상들에 따른 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 도시하는 블록도들이다. 도 5a는 제1 그래픽 키보드를 포함하며 제스쳐 입력의 표시를 수신하는 그래픽 사용자 인터페이스를 디스플레이하기 위해 출력하는 컴퓨팅 디바이스의 예를 도시한다. 도 5b는 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 도 5a의 컴퓨팅 디바이스의 예를 도시한다. 즉, 함께 고려될 때, 도 5a 내지 5b는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이하기 위해 출력하고, 제스쳐 입력의 표시를 수신하며, 그리고 제스쳐 입력의 표시를 수신함에 응답하여 그래픽 사용자 인터페이스 내에 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 컴퓨팅 디바이스의 예를 도시한다. 예시를 위해, 도 5a 내지 5b의 예들은 도 1 내지 2의 컴퓨팅 디바이스(2)의 맥락 내에서 기술된다.
도 5a에 예시된 바와 같이, UI 모듈(6)은 제1 그래픽 키보드(142)를 포함하는 GUI(140)를 출력할 수 있다. 예시된 바와 같이, 제1 그래픽 키보드(142)는 "P" 키(144), "A" 키(146) 및 "?123" 키(148)와 같은 복수의 제1 키들을 포함할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐(152)의 표시 부분(150)을 수신할 수 있다. 예시된 바와 같이, 연속적인 제스쳐(152)는 제1 위치(154)로부터 제2 위치(156)로 그리고 제3 위치(158)로의 입력 유닛의 모션을 포함할 수 있다. 부분(150)은 제2 위치(156)로부터 제3 위치(158)로의 입력 유닛의 모션을 포함할 수 있다.
제스쳐 모듈(8)은 연속적인 제스쳐(152)의 부분(150)에 적어도 부분적으로 근거하여, 본 명세서에 기술된 기법들에 따라 "?123" 키(148)를 선택할 수 있다. "?123" 키(148)는 제1 그래픽 키보드(142)의 대안적인 문자 기능(alternate character function)과 관련될 수 있어서, "?123" 키(148)를 선택함에 응답하여, 제스쳐 모듈(8)은 이차적인 키보드 모듈(10)이 제1 그래픽 키보드(142)로부터의 각각의 키와 관련된 각각의 문자와는 다른 적어도 하나의 문자를 포함하는 그래픽 키보드의 하나 이상의 키들을 출력하게 한다.
도 5b에 예시된 바와 같이, "?123" 키(148)를 선택함에 응답하여, 제스쳐 모듈(8)은 이차적인 키보드 모듈(10)로 하여금 제1 그래픽 키보드(142)와 동시에 디스플레이하기 위해 제2 그래픽 키보드(160)를 출력하게 한다. 예시된 바와 같이, 제2 그래픽 키보드(160)는 "@" 키(162) 및 "5" 키(164)와 같은 복수의 제2 키들을 포함할 수 있다. 이 방식으로, 이차적인 키보드 모듈(10)은 제2 그래픽 키보드(160)의 적어도 하나의 키와 관련된 적어도 하나의 문자가 제1 그래픽 키보드(142)의 각각의 키와 관련된 각각의 문자와 다르도록, 제1 그래픽 키보드(142)와 동시에 디스플레이하기 위해 제2 그래픽 키보드(160)를 출력한다. 일부 예들에서, 제2 그래픽 키보드(160)의 디스플레이는 도 4a 내지 5b에 예시된 기법들 중 하나 또는 이들의 조합에 의해 트리거될 수 있다.
도 6은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 예시적인 컴퓨팅 디바이스를 예시한다. 도 6에 예시된 바와 같이, 이차적인 키보드 모듈(10)은 본 발명에 개시된 기법들에 따라, GUI(170) 내에 디스플레이하기 위해 제1 그래픽 키보드(172) 및 제2 그래픽 키보드(174)를 출력할 수 있다. 제1 그래픽 키보드(172) 및 제2 그래픽 키보드(174) 각각은 복수의 키들을 포함할 수 있다.
이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여, 제2 키보드(174)에 포함된 복수의 제2 키들의 배치(arrangment)를 결정할 수 있다. 예를 들어, 도 6에 예시된 바와 같이, 이차적인 키보드 모듈(10)은 제1 행(176), 제2 행(178) 및 제3 행(180)에 포함된 키들의 배치를 포함하는 복수의 제2 키들의 배치를 결정할 수 있다. 일례로서, 이차적인 키보드 모듈(10)은 GUI(170)이 활성 입력 영역으로서 패스워드 영역(182)의 식별자의 표시를 수신할 수 있다. 패스워드 영역(182)의 식별자의 표시를 수신함에 응답하여, 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(172)에 가장 가까이 위치된 제1 행(176)에 포함된 숫자 키들을 포함하는 제2 그래픽 키보드(174)에 포함된 복수의 제2 키들의 예시된 배치를 결정할 수 있다. 이 방식으로, 이차적인 키보드 모듈(10)은 입력 컨텍스트에 의해 결정된 바와 같이 선택될 가능성이 더 높을 수 있는 이들 키들(예컨대, 숫자 키들)을 제1 그래픽 키보드(172)에 가장 가깝게 위치시킬 수 있다. 따라서, 이차적인 키보드 모듈(10)은 사용자로 하여금 이 키들과 제1 그래픽 키보드(172) 사이의 거리가 최소화되도록, 선택될 가능성이 높은 이 키들을 선택하기 위한 제스쳐 입력을 제공할 수 있게 한다.
도 6의 예에서, 제2 키보드(174)에 포함된 복수의 제2 그래픽 키들의 배치는 제2 그래픽 키보드(174) 내의 행들 내의 키들 및 행들의 배치에 관하여 예시되지만, 본 발명의 양상들은 이에 제한되지 않는다. 예를 들어, 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(172)와 더 가깝게 심볼 키들(예컨대, 비숫자 키들)을 위치시키는 배치들과 같은 다른 배치들을 결정할 수 있다. 유사하게, 특정 예들에서, 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(172)와 더 가깝게 예컨대, 제1 행(176) 내에, 하나 이상의 숫자 키들 및/또는 하나 이상의 심볼 키들을 포함하는 배치들을 결정할 수 있다.
이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여 복수의 제2 키들의 배치를 결정할 수 있다. 예를 들어, 데이터 영역과 관련된 입력 영역의 식별자의 표시를 수신함에 응답하여, 이차적인 키보드 모듈(10)은 제1 그래픽 키보드(172)에 가장 가깝게 날짜의 입력을 위해 일반적으로 이용되는 심볼들(예컨대, "/" 키)을 위치시키는 복수의 제2 키들의 배치를 결정할 수 있다.
이 방식으로, 이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여 제2 키보드(174)에 포함된 복수의 제2 키들의 배치를 결정할 수 있어서, 입력 컨텍스트에 대응하는 텍스트의 입력 동안 일반적으로 이용되는 키들은 입력 컨텍스트에 대응하는 텍스트의 입력 동안 일반적으로 덜 사용되는 키들보다 제1 키보드(172)에 가깝게 위치된다. 따라서, 이차적인 키보드 모듈(10)은 제1 키보드(172)에 포함된 적어도 하나의 키 및 제2 키보드(174)에 포함된 적어도 하나의 키를 선택하기 위한 제스쳐 경로에 의해 횡단되는 길이를 감소시키는 것을 도울 수 있다. 따라서, 본 명세서에 기술된 기법들에 따르면, 이차적인 키보드 모듈(10)은 사용자가 컴퓨팅 디바이스를 이용하여 텍스트를 입력할 수 있는 속도를 증가시키는 것을 도울 수 있다.
도 7은 본 발명의 하나 이상의 양상들에 따른, 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 데 이용될 수 있는 컴퓨팅 디바이스의 예시적인 동작들을 도시하는 순서도이다. 단지 예시를 위해, 예시적인 동작들은 도 1 및 2에 도시된 바와 같은 컴퓨팅 디바이스(2)의 컨텍스트 내에서 하기에 기술된다.
컴퓨팅 디바이스(2)의 하나 이상의 프로세서들(50)을 실행시키는 UI 모듈(6)은 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이하기 위해 출력할 수 있다(단계(190)). 예를 들어, UI 모듈(6)은 제1 그래픽 키보드(14)를 포함하는 GUI(12)를 UI 디바이스(4)에 디스플레이하기 위해 출력할 수 있다. 제1 그래픽 키보드(14)는 "P" 키(16), "A" 키(18), 및 "S" 키(20)와 같은 복수의 제1 키들을 포함할 수 있다.
이차적인 키보드 모듈(10)은 입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정할 수 있다(단계(192)). 일례로서, 이차적인 키보드 모듈(10)은 패스워드 영역(26)의 식별자를 포함하는 입력 컨텍스트에 적어도 부분적으로 근거하여, 제2 키보드(22)를 디스플레이하는 것을 결정할 수 있다. UI 모듈(6)은 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력할 수 있다(단계(194)). 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다. 예를 들어, UI 모듈(6)은 제1 그래픽 키보드(14)와 동시에 디스플레이하기 위해 제2 키보드(22)를 출력할 수 있다. 제2 키보드(22)는 복수의 제2 키들을 포함할 수 있다. 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자(예컨대, "5" 키(24)와 관려된 "5" 문자)는 제1 그래픽 키보드(14)에 포함된 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와 다를 수 있다.
제스쳐 모듈(8)은 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신할 수 있다(단계(194)). 예를 들어, 제스쳐 모듈(8)은 UI 디바이스(4)(예컨대, 존재-감응형 입력 디바이스)에서 검출되는 연속적인 제스쳐(28)의 제1 부분(34)의 표시를 수신할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택할 수 있다(단계(196)). 예를 들어, 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 제1 부분(34)에 적어도 부분적으로 근거하여, 제1 그래픽 키보드(14)의 복수의 제1 키들로부터 "A" 키(18)를 제1의 선택된 키로서 선택할 수 있다.
제스쳐 모듈(8)은 존재-감응형 디스플레이에서 검출되는 연속적인 제스쳐의 제2 부분의 표시를 수신할 수 있다(단계(198)). 일례로서, 제스쳐 모듈(8)은 UI 디바이스(4)에서 검출되는 연속적인 제스쳐(28)의 제2 부분(36)의 표시를 수신할 수 있다. 제스쳐 모듈(8)은 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택할 수 있다(단계(200)). 예를 들어, 제스쳐 모듈(8)은 연속적인 제스쳐(28)의 제2 부분(36)에 적어도 부분적으로 근거하여 제2 그래픽 키보드(22)의 복수의 제2 키들로부터 "5" 키(24)를 선택할 수 있다.
일례에서, 입력 컨텍스트는 입력을 수신할 수 있는 입력 영역의 식별자를 포함한다. 일례에서, 입력 영역의 식별자는 패스워드 영역, URL 영역, 이메일 어드레스 영역, 컬러 영역, 날짜 영역, 날짜시간 영역, 날짜시간-로컬 영역, 월 영역, 숫자 영역, 범위 영역, 검색 영역, 전화 번호 영역, 시간 영역 및 주 영역 중 적어도 하나의 식별자를 포함한다. 일례에서, 동작들은 컴퓨팅 디바이스(2)에 의해, 후보 문자 스트링을 결정하는 것을 더 포함하며, 상기 후보 문자 스트링은 적어도, 제1의 선택된 키와 관련된 제1 문자 및 제2의 선택된 키와 관련된 제2 문자를 포함한다.
일례에서, 후보 문자 스트링을 결정하는 것은, 상기 후보 문자 스트링이 렉시콘에 포함된 단어를 표시할 확률을 나타내는 언어 모델과 상기 후보 문자 스트링을 비교함이 없이 상기 후보 문자 스트링을 결정하는 것을 포함한다. 일례에서, 동작들은 컴퓨팅 디바이스(2)에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 더 포함하며, 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것은 연속적인 제스쳐의 제2 부분의 표시를 수신하기에 앞서 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함한다. 이러한 예에서, 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 것은 또한, 컴퓨팅 디바이스(2)에 의해 연속적인 제스쳐의 제3 부분이 제1 그래픽 키보드의 제1 위치에 대응하는 존재-감응형 입력 디바이스의 제1 위치로부터 제1 그래픽 키보드와 관련되지 않은 그래픽 사용자 인터페이스의 제2 위치에 대응하는 존재-감응형 입력 디바이스의 제2 위치로의 모션을 포함함을 결정하는 것에 적어도 부분적으로 근거하여 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 것을 포함한다.
일례에서, 그래픽 사용자 인터페이스의 제2 위치는 그래픽 사용자 인터페이스의 지향에 대해 그래픽 사용자 인터페이스의 상단 영역 내에 위치되는 그래픽 사용자 인터페이스의 위치를 포함한다. 일례에서, 동작들은 컴퓨팅 디바이스(2)에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것 - 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것은 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 전에 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함함 - 과, 그리고 컴퓨팅 디바이스(2)에 의해 그리고 연속적인 제스쳐의 제3 부분의 표시에 적어도 부분적으로 근거하여, 제1 그래픽 키보드의 대안적인 문자 기능과 관련된 제1 그래픽 키보드의 제3 키를 선택하는 것을 더 포함한다. 이러한 예에서, 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 것은 제1 그래픽 키보드의 제3 키를 선택하는 것에 적어도 부분적으로 근거하여 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 것을 더 포함한다.
일례에서, 그래픽 사용자 인터페이스는 제1 그래픽 키보드를 포함하는 제1 부분, 및 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상을 포함하는 다른 제2 부분을 포함한다. 이러한 예에서, 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 것은 그래픽 사용자 인터페이스의 제2 부분 내에 디스플레이하기 위해 제2 그래픽 키보드를 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상의 알파 블랜딩된 오버레이로서 출력하는 것을 더 포함한다.
일례에서, 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 것은 입력 컨텍스트에 적어도 부분적으로 근거하여, 제2 그래픽 키보드의 복수의 제2 키들의 배치를 결정하는 것과, 그리고 제2 그래픽 키보드의 복수의 제2 키들의 결정된 배치에 따라 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 것을 더 포함한다. 일례에서, 제1 그래픽 키보드와 동시에 디스플레이하기 위해 제2 그래픽 키보드를 출력하는 것은 제2 그래픽 키보드의 복수의 제2 키들로부터의 적어도 하나의 키의 선택의 확률의 표시를 제2 그래픽 키보드에서 디스플레이하기 위해 출력하는 것을 더 포함한다.
예시 1: 방법으로서, 컴퓨팅 디바이스에 의해 그리고 디스플레이를 위해, 복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력하는 단계와, 상기 복수의 제1 키들로부터의 각각의 키는 복수의 제1 문자들로부터의 각각의 문자와 관련되고,
상기 컴퓨팅 디바이스에 의해 그리고 입력 컨텍스트(input context)에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정하는 단계와, 상기 복수의 제2 키들로부터의 각각의 키는 복수의 제2 문자들로부터의 각각의 문자와 관련되고, 상기 복수의 제2 문자들로부터의 적어도 하나의 문자는 상기 복수의 제1 문자들로부터의 각각의 문자와 다르며,
상기 컴퓨팅 디바이스에 의해 그리고 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하는 단계와,
상기 컴퓨팅 디바이스에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하는 단계와,
상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택하는 단계와,
상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하는 단계와, 그리고
상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 제2 키를 제2의 선택된 키로서 선택하는 단계를 포함하는 방법.
예시 2: 제1예에 있어서, 상기 입력 컨텍스트는 입력을 수신할 수 있는 입력 영역의 식별자를 포함하는 방법.
예시 3: 제1예 또는 제2예에 있어서, 상기 입력 영역의 식별자는 패스워드 영역, URL(uniform resource locator) 영역, 이메일 어드레스 영역, 컬러 영역, 날짜(date) 영역, 날짜시간(datetime) 영역, 날짜시간-로컬 영역, 월(month) 영역, 숫자 영역, 범위 영역, 검색 영역, 전화 번호 영역, 시간 영역 및 주(week) 영역 중 적어도 하나의 식별자를 포함하는 방법.
예시 4: 제1예 내지 제3예 중 어느 한 예에 있어서, 상기 컴퓨팅 디바이스에 의해, 후보 문자 스트링을 결정하는 단계를 더 포함하며, 상기 후보 문자 스트링은 적어도, 상기 제1의 선택된 키와 관련된 제1 문자 및 상기 제2의 선택된 키와 관련된 제2 문자를 포함하는 방법.
예시 5: 제1예 내지 제4예 중 어느 한 예에 있어서, 상기 후보 문자 스트링을 결정하는 단계는 상기 후보 문자 스트링이 렉시콘(lexicon)에 포함된 단어를 표시할 확률(probability)을 나타내는 언어 모델과 상기 후보 문자 스트링을 비교함이 없이 상기 후보 문자 스트링을 결정하는 것을 포함하는 방법.
예시 6: 제1예 내지 제5예 중 어느 한 예에 있어서, 상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계를 더 포함하며, 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 전에 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함하며,
상기 제2 그래픽 키보드를 출력하는 것을 결정하는 단계는, 상기 연속적인 제스쳐의 제3 영역이 상기 제1 그래픽 키보드의 제1 위치에 대응하는 상기 존재-감응형 입력 디바이스의 제1 위치로부터 상기 제1 그래픽 키보드와 관련되지 않은 상기 그래픽 사용자 인터페이스의 제2 위치에 대응하는 상기 존재-감응형 입력 디바이스의 제2 위치로의 모션을 포함함을 상기 컴퓨팅 디바이스에 의해 결정하는 것에 적어도 부분적으로 근거하여 상기 제2 그래픽 키보드를 출력하는 것을 결정하는 것을 더 포함하는 방법.
예시 7: 제1예 내지 제6예 중 어느 한 예에 있어서, 상기 그래픽 사용자 인터페이스의 제2 부분은 상기 그래픽 사용자 인터페이스의 지향(orientation)에 대해 상기 그래픽 사용자 인터페이스의 상단 영역 내에 위치되는 상기 그래픽 사용자 인터페이스의 위치를 포함하는 방법.
예시 8: 제1예 내지 제7예 중 어느 한 예에 있어서, 상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계와, 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 전에 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함하고, 그리고
상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제3 부분의 표시에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 대안적인 문자 기능과 관련된 상기 제1 그래픽 키보드의 제3 키를 선택하는 단계를 더 포함하고,
상기 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 단계는 상기 제1 그래픽 키보드의 제3 키를 선택하는 것에 적어도 부분적으로 근거하여 상기 제2 그래픽 키보드를 출력하는 것을 결정하는 것을 더 포함하는 방법.
예시 9: 제1예 내지 제8예 중 어느 한 예에 있어서, 상기 그래픽 사용자 인터페이스는 상기 제1 그래픽 키보드를 포함하는 제1 부분 및 다른 제2 부분을 포함하고, 상기 제2 부분은 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상을 포함하며,
상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는 상기 그래픽 사용자 인터페이스의 제2 부분 내에 디스플레이를 위해 상기 제2 그래픽 키보드를 상기 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상의 알파 블랜딩된(alpha-blended) 오버레이로서 출력하는 것을 더 포함하는 방법.
예시 10: 제1예 내지 제9예 중 어느 한 예에 있어서, 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는,
상기 입력 컨텍스트에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들의 배치(arrangment)를 결정하는 것과, 그리고
상기 제2 그래픽 키보드의 복수의 제2 키들의 결정된 배치에 따라 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 것을 더 포함하는 방법.
예시 11: 제1예 내지 제10예 중 어느 한 예에 있어서, 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 적어도 하나의 키의 선택의 확률의 표시를 상기 제2 그래픽 키보드에서 디스플레이하기 위해 출력하는 것을 더 포함하는 방법.
예시 12: 디바이스로서,
적어도 하나의 프로세서와, 그리고 적어도 하나의 모듈을 포함하며, 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해,
복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하고,
입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정하고,
상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하고, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고,
상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하고,
상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 그리고
상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하도록 동작가능한 디바이스.
예시 13: 제12예에 있어서, 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해 제2예 내지 제11예 중 어느 한 예에 기재된 방법을 수행하도록 동작가능한 디바이스.
예시 14: 명령어들이 인코딩된 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 실행될 때, 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금:
복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하고,
입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정하고,
상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하고, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고,
상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하고,
상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 그리고
상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하도록 하는 컴퓨터 판독가능 저장 매체.
예시 15: 제14예에 있어서, 실행될 때, 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금 제2예 내지 제11예 중 어느 한 예에 기재된 방법을 수행하도록 하는 명령어들이 인코딩된 컴퓨터 판독가능 저장 매체.
예시 16: 디바이스로서,
복수의 제1 키들을 포함하는 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하기 위한 수단과,
입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들을 포함하는 제2 그래픽 키보드를 출력하는 것을 결정하기 위한 수단과,
상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하기 위한 수단과, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하기 위한 수단과,
상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하기 위한 수단과,
상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 위한 수단과, 그리고
상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하기 위한 수단을 포함하는 디바이스.
예시 17: 제16예에 있어서, 제2예 내지 제11예 중 어느 한 예에 기재된 방법을 수행하기 위한 수단을 더 포함하는 디바이스.
본 발명에 기술된 기법들은 적어도 부분적으로 하드웨어, 소프트웨어, 펌웨어 또는 이들의 어떤 조합으로 구현될 수 있다. 예를 들어, 기술된 기법들의 다양한 양상들은 하나 이상의 프로세서들, 디지털 신호 프로세서(DSP)들, 응용 주문형 집적 회로(ASIC)들, 현장 프로그램가능 게이트 어레이(FPGA)들 또는 어떤 다른 균등한 집적 또는 이산 로직 회로망뿐만 아니라 이러한 컴포넌트들의 어떤 조합들을 포함하는 하나 이상의 프로세서들 내에 구현될 수 있다. 용어 "프로세서" 또는 "프로세싱 회로망"은 일반적으로, 단독 또는 다른 로직 회로망과의 조합의 상기 로직 회로망 중 어느 것 또는 어떤 다른 균등한 회로망을 나타낼 수 있다. 하드웨어를 포함하는 제어 유닛은 또한, 본 발명의 기법들 중 하나 이상을 수행할 수 있다.
이러한 하드웨어, 소프트웨어 및 펌웨어는 본 발명에 기술된 다양한 기법들을 지원하기 위해 동일한 디바이스 내에 또는 개별 디바이스들 내에 구현될 수 있다. 추가적으로, 기술된 유닛들, 모듈들 또는 컴포넌트들 중 어느 것은 함께 또는 이산적이되 상호운용가능한 로직 디바이스들로서 개별적으로 구현될 수 있다. 모듈들 또는 유닛들로서의 서로 다른 특징들의 묘사는 서로 다른 기능적 양상들을 강조하기 위해 의도된 것이며, 반드시 이러한 모듈들 유닛들이 개별적인 하드웨어, 펌웨어 또는 소프트웨어 컴포넌트들에 의해 실현되야 함을 의미하는 것이 아니다. 오히려, 하나 이상의 모듈들 또는 유닛들과 관련된 기능은 개별적인 하드웨어, 펌웨어 또는 소프트웨어 컴포넌트들에 의해 수행될 수 있거나 또는 공통 또는 개별적인 하드웨어, 펌웨어 또는 소프트웨어 컴포넌트들 내에 집적될 수 있다.
본 발명에 기술된 기법들은 또한, 명령어들이 인코딩된 컴퓨터 판독가능 저장 매체를 포함하는 제조물로 구현 또는 인코딩될 수 있다. 인코딩된 컴퓨터 판독가능 저장 매체를 포함하는 제조물에 수록 또는 인코딩된 명령어들은, 예컨대 상기 컴퓨터 판독가능 저장 매체에 포함 또는 인코딩된 명령어들이 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로그램가능한 프로세서들 또는 다른 프로세서들로 하여금 본 명세서에 기술된 기법들 중 하나 이상을 구현하도록 할 수 있다. 컴퓨터 판독가능 저장 매체는 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 프로그램가능한 판독 전용 메모리(PROM), 소거가능하고 프로그램가능한 판독 전용 메모리(EPROM), 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리(EEPROM), 플래시 메모리, 하드 디스크, 컴팩트 디스크 ROM(CD-ROM), 플로피 디스크, 카세트, 자기 매체, 광학 매체 또는 다른 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 일부 예들에서, 제조물은 하나 이상의 컴퓨터 판독가능 저장 매체를 포함할 수 있다.
일부 예들에서, 컴퓨터 판독가능 저장 매체는 비일시적 매체를 포함할 수 있다. 용어 "비일시적"은 저장 매체가 반송파 또는 전파 신호로 구현되지 않음을 나타낼 수 있다. 특정 예들에서, 비일시적 저장 매체는 (예컨대, RAM 또는 캐시에) 시간에 걸쳐 변화할 수 있는 데이터를 저장할 수 있다.
다양한 예시들이 기술되었다. 이들 및 다른 예시들이 다음의 특허청구범위 내에 있다.

Claims (17)

  1. 방법으로서,
    컴퓨팅 디바이스에 의해 그리고 디스플레이를 위해, 복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력하는 단계와, 상기 복수의 제1 키들로부터의 각각의 키는 복수의 제1 문자들로부터의 각각의 문자와 관련되고,
    상기 컴퓨팅 디바이스에 의해 그리고 입력 컨텍스트(input context)에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하는 단계와, 상기 복수의 제2 키들로부터의 각각의 키는 복수의 제2 문자들로부터의 각각의 문자와 관련되고, 상기 복수의 제2 문자들로부터의 적어도 하나의 문자는 상기 복수의 제1 문자들로부터의 각각의 문자와 다르며,
    상기 컴퓨팅 디바이스에 의해 그리고 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하는 단계와,
    상기 컴퓨팅 디바이스에 의해, 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하는 단계와,
    상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터의 제1 키를 제1의 선택된 키로서 선택하는 단계와,
    상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하는 단계와, 그리고
    상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 제2 키를 제2의 선택된 키로서 선택하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 입력 컨텍스트는 입력을 수신할 수 있는 입력 영역의 식별자를 포함하는 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 입력 영역의 식별자는 패스워드 영역, URL(uniform resource locator) 영역, 이메일 어드레스 영역, 컬러 영역, 날짜(date) 영역, 날짜시간(datetime) 영역, 날짜시간-로컬 영역, 월(month) 영역, 숫자 영역, 범위 영역, 검색 영역, 전화 번호 영역, 시간 영역 및 주(week) 영역 중 적어도 하나의 식별자를 포함하는 것을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 후보 문자 스트링을 결정하는 단계를 더 포함하며, 상기 후보 문자 스트링은 적어도, 상기 제1의 선택된 키와 관련된 제1 문자 및 상기 제2의 선택된 키와 관련된 제2 문자를 포함하는 것을 특징으로 하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 후보 문자 스트링을 결정하는 단계는 상기 후보 문자 스트링이 렉시콘(lexicon)에 포함된 단어를 표시할 확률(probability)을 나타내는 언어 모델과 상기 후보 문자 스트링을 비교함이 없이 상기 후보 문자 스트링을 결정하는 것을 포함하는 것을 특징으로 하는 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계를 더 포함하며, 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 전에 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함하며,
    상기 제2 그래픽 키보드를 출력하는 것을 결정하는 단계는, 상기 연속적인 제스쳐의 제3 영역이 상기 제1 그래픽 키보드의 제1 위치에 대응하는 상기 존재-감응형 입력 디바이스의 제1 위치로부터 상기 제1 그래픽 키보드와 관련되지 않은 상기 그래픽 사용자 인터페이스의 제2 위치에 대응하는 상기 존재-감응형 입력 디바이스의 제2 위치로의 모션을 포함함을 상기 컴퓨팅 디바이스에 의해 결정하는 것에 적어도 부분적으로 근거하여 상기 제2 그래픽 키보드를 출력하는 것을 결정하는 것을 더 포함하는 것을 특징으로 하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 그래픽 사용자 인터페이스의 제2 부분은 상기 그래픽 사용자 인터페이스의 지향(orientation)에 대해 상기 그래픽 사용자 인터페이스의 상단 영역 내에 위치되는 상기 그래픽 사용자 인터페이스의 위치를 포함하는 것을 특징으로 하는 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 상기 존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계와, 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 단계는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 전에 상기 연속적인 제스쳐의 제3 부분의 표시를 수신하는 것을 포함하고, 그리고
    상기 컴퓨팅 디바이스에 의해 그리고 상기 연속적인 제스쳐의 제3 부분의 표시에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 대안적인 문자 기능과 관련된 상기 제1 그래픽 키보드의 제3 키를 선택하는 단계를 더 포함하고,
    상기 제2 그래픽 키보드를 디스플레이하는 것을 결정하는 단계는 상기 제1 그래픽 키보드의 제3 키를 선택하는 것에 적어도 부분적으로 근거하여 상기 제2 그래픽 키보드를 출력하는 것을 결정하는 것을 더 포함하는 것을 특징으로 하는 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 그래픽 사용자 인터페이스는 상기 제1 그래픽 키보드를 포함하는 제1 부분 및 다른 제2 부분을 포함하고, 상기 제2 부분은 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상을 포함하며,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는 상기 그래픽 사용자 인터페이스의 제2 부분 내에 디스플레이를 위해 상기 제2 그래픽 키보드를 상기 텍스트 제시 영역 및 텍스트 디스플레이 영역 중 하나 이상의 알파 블랜딩된(alpha-blended) 오버레이로서 출력하는 것을 더 포함하는 것을 특징으로 하는 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는,
    상기 입력 컨텍스트에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들의 배치(arrangment)를 결정하는 것과, 그리고
    상기 제2 그래픽 키보드의 복수의 제2 키들의 결정된 배치에 따라 상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 것을 더 포함하는 것을 특징으로 하는 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해 상기 제2 그래픽 키보드를 출력하는 단계는 상기 제2 그래픽 키보드의 복수의 제2 키들로부터의 적어도 하나의 키의 선택의 확률의 표시를 상기 제2 그래픽 키보드에서 디스플레이하기 위해 출력하는 것을 더 포함하는 것을 특징으로 하는 방법.
  12. 디바이스로서,
    적어도 하나의 프로세서와, 그리고 적어도 하나의 모듈을 포함하며, 상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해,
    복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하고,
    입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하고,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하고, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
    존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고,
    상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하고,
    상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 그리고
    상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하도록 동작가능한 것을 특징으로 하는 디바이스.
  13. 제12항에 있어서,
    상기 적어도 하나의 모듈은 상기 적어도 하나의 프로세서에 의해 제2항 내지 제11항 중 어느 한 항에 기재된 방법을 수행하도록 동작가능한 것을 특징으로 하는 디바이스.
  14. 명령어들이 인코딩된 컴퓨터 판독가능 저장 매체로서, 상기 명령어들은 실행될 때, 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금:
    복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하고,
    입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하고,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하고, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
    존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하고,
    상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하고,
    상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하고, 그리고
    상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하도록 하는 컴퓨터 판독가능 저장 매체.
  15. 제14항에 있어서,
    실행될 때, 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금 제2항 내지 제11항 중 어느 한 항에 기재된 방법을 수행하도록 하는 명령어들이 인코딩된 컴퓨터 판독가능 저장 매체.
  16. 디바이스로서,
    복수의 제1 키들로 구성된 제1 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 디스플레이를 위해 출력하기 위한 수단과,
    입력 컨텍스트에 적어도 부분적으로 근거하여, 복수의 제2 키들로 구성된 제2 그래픽 키보드를 출력하는 것을 결정하기 위한 수단과,
    상기 제1 그래픽 키보드와의 동시적인 디스플레이를 위해, 상기 제2 그래픽 키보드를 출력하기 위한 수단과, 상기 복수의 제2 키들로부터의 적어도 하나의 키와 관련된 문자는 상기 복수의 제1 키들로부터의 각각의 키와 관련된 각각의 문자와는 다르며,
    존재-감응형 입력 디바이스에서 검출되는 연속적인 제스쳐의 제1 부분의 표시를 수신하기 위한 수단과,
    상기 연속적인 제스쳐의 제1 부분에 적어도 부분적으로 근거하여, 상기 제1 그래픽 키보드의 복수의 제1 키들로부터 제1 키를 제1의 선택된 키로서 선택하기 위한 수단과,
    상기 존재-감응형 입력 디바이스에서 검출되는 상기 연속적인 제스쳐의 제2 부분의 표시를 수신하기 위한 수단과, 그리고
    상기 연속적인 제스쳐의 제2 부분에 적어도 부분적으로 근거하여, 상기 제2 그래픽 키보드의 복수의 제2 키들로부터 제2 키를 제2의 선택된 키로서 선택하기 위한 수단을 포함하는 것을 특징으로 하는 디바이스.
  17. 제16항에 있어서,
    제2항 내지 제11항 중 어느 한 항에 기재된 방법을 수행하기 위한 수단을 더 포함하는 것을 특징으로 하는 디바이스.
KR1020157035542A 2013-05-31 2014-05-28 연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들 KR101633842B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/907,602 US8997013B2 (en) 2013-05-31 2013-05-31 Multiple graphical keyboards for continuous gesture input
US13/907,602 2013-05-31
PCT/US2014/039805 WO2014193962A1 (en) 2013-05-31 2014-05-28 Multiple graphical keyboards for continuous gesture input

Publications (2)

Publication Number Publication Date
KR20160009054A true KR20160009054A (ko) 2016-01-25
KR101633842B1 KR101633842B1 (ko) 2016-06-27

Family

ID=51059590

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157035542A KR101633842B1 (ko) 2013-05-31 2014-05-28 연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들

Country Status (5)

Country Link
US (1) US8997013B2 (ko)
EP (1) EP3005066B1 (ko)
KR (1) KR101633842B1 (ko)
CN (1) CN105308551B (ko)
WO (1) WO2014193962A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022005238A1 (ko) * 2020-07-01 2022-01-06 윤경숙 문자 입력 방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD660864S1 (en) * 2010-01-27 2012-05-29 Apple Inc. Graphical user interface for a display screen or portion thereof
USD748649S1 (en) * 2013-03-04 2016-02-02 Roku, Inc. Display screen with an animated electronic program guide
US10068085B2 (en) * 2013-06-14 2018-09-04 Blackberry Limited Method and system for allowing any language to be used as password
US9727235B2 (en) * 2013-12-12 2017-08-08 Lenovo (Singapore) Pte. Ltd. Switching an interface mode using an input gesture
USD766259S1 (en) * 2013-12-31 2016-09-13 Beijing Qihoo Technology Co. Ltd. Display screen with a graphical user interface
JP2016181018A (ja) * 2015-03-23 2016-10-13 ソニー株式会社 情報処理システムおよび情報処理方法
US10203870B2 (en) * 2015-04-07 2019-02-12 Blackberry Limited Authentication using a touch-sensitive keyboard with distinct pluralities of keys as respective regions
US20170289337A1 (en) * 2016-04-05 2017-10-05 Google Inc. Faster Text Entry on Mobile Devices Through User-Defined Stroke Patterns
US10140017B2 (en) * 2016-04-20 2018-11-27 Google Llc Graphical keyboard application with integrated search
US10409487B2 (en) * 2016-08-23 2019-09-10 Microsoft Technology Licensing, Llc Application processing based on gesture input
CN107783667A (zh) * 2016-08-26 2018-03-09 法乐第(北京)网络科技有限公司 一种软键盘显示方法及装置
US10884610B2 (en) 2016-11-04 2021-01-05 Myscript System and method for recognizing handwritten stroke input
US11554322B2 (en) 2019-04-26 2023-01-17 Sony Interactive Entertainment LLC Game controller with touchpad input

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080096593A (ko) * 2004-07-30 2008-10-30 애플 인크. 터치 감지 입력 장치용 제스처
US20120117501A1 (en) * 2010-11-05 2012-05-10 Jonathan Koch Device, Method, and Graphical User Interface for Manipulating Soft Keyboards
KR20130029797A (ko) * 2010-06-07 2013-03-25 구글 잉크. 모션 입력을 통한 대체 키보드 문자 선택

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5953541A (en) 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
US5825362A (en) 1997-05-07 1998-10-20 Datahand Corporation Graphical user interface with keyboard display graphical
KR100327209B1 (ko) 1998-05-12 2002-04-17 윤종용 첨펜의자취를이용한소프트웨어키보드시스템및그에따른키코드인식방법
US6359572B1 (en) 1998-09-03 2002-03-19 Microsoft Corporation Dynamic keyboard
US7293231B1 (en) 1999-03-18 2007-11-06 British Columbia Ltd. Data entry for personal computing devices
US7750891B2 (en) 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
WO2000074240A1 (en) 1999-05-27 2000-12-07 America Online Keyboard system with automatic correction
EP1303805B1 (de) 2000-07-21 2010-02-10 Speedscript AG Verfahren für ein schnellschreibsystem und schnellschreibgerät
US7042443B2 (en) 2001-10-11 2006-05-09 Woodard Scott E Speed Writer program and device with Speed Writer program installed
US7075520B2 (en) 2001-12-12 2006-07-11 Zi Technology Corporation Ltd Key press disambiguation using a keypad of multidirectional keys
US7151530B2 (en) 2002-08-20 2006-12-19 Canesta, Inc. System and method for determining an input selected by a user through a virtual interface
US7199786B2 (en) 2002-11-29 2007-04-03 Daniel Suraqui Reduced keyboards system using unistroke input and having automatic disambiguating and a recognition method using said system
US7251367B2 (en) 2002-12-20 2007-07-31 International Business Machines Corporation System and method for recognizing word patterns based on a virtual keyboard layout
US20040140986A1 (en) * 2003-01-16 2004-07-22 Boldon John Leland Systems and methods for facilitating printing through interface exportation
US7453439B1 (en) 2003-01-16 2008-11-18 Forward Input Inc. System and method for continuous stroke word-based text input
US7098896B2 (en) 2003-01-16 2006-08-29 Forword Input Inc. System and method for continuous stroke word-based text input
SG135918A1 (en) 2003-03-03 2007-10-29 Xrgomics Pte Ltd Unambiguous text input method for touch screens and reduced keyboard systems
US7250938B2 (en) 2004-01-06 2007-07-31 Lenovo (Singapore) Pte. Ltd. System and method for improved user input on personal computing devices
US7706616B2 (en) 2004-02-27 2010-04-27 International Business Machines Corporation System and method for recognizing word patterns in a very large vocabulary based on a virtual keyboard layout
US20060176283A1 (en) 2004-08-06 2006-08-10 Daniel Suraqui Finger activated reduced keyboard and a method for performing text input
US7508324B2 (en) 2004-08-06 2009-03-24 Daniel Suraqui Finger activated reduced keyboard and a method for performing text input
US8036878B2 (en) 2005-05-18 2011-10-11 Never Wall Treuhand GmbH Device incorporating improved text input mechanism
US8059101B2 (en) 2007-06-22 2011-11-15 Apple Inc. Swipe gestures for touch screen keyboards
US8456425B2 (en) 2008-01-30 2013-06-04 International Business Machines Corporation Self-adapting keypad
US8135582B2 (en) 2009-10-04 2012-03-13 Daniel Suraqui Keyboard system and method for global disambiguation from classes with dictionary database from first and last letters
US8884872B2 (en) * 2009-11-20 2014-11-11 Nuance Communications, Inc. Gesture-based repetition of key activations on a virtual keyboard
US8327296B2 (en) 2010-04-16 2012-12-04 Google Inc. Extended keyboard user interface
US8918734B2 (en) 2010-07-28 2014-12-23 Nuance Communications, Inc. Reduced keyboard with prediction solutions when input is a partial sliding trajectory
EP2812777A4 (en) * 2012-02-06 2015-11-25 Michael K Colby STRING COMPLETION
US20130227460A1 (en) * 2012-02-27 2013-08-29 Bjorn David Jawerth Data entry system controllers for receiving user input line traces relative to user interfaces to determine ordered actions, and related systems and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080096593A (ko) * 2004-07-30 2008-10-30 애플 인크. 터치 감지 입력 장치용 제스처
KR20130029797A (ko) * 2010-06-07 2013-03-25 구글 잉크. 모션 입력을 통한 대체 키보드 문자 선택
US20120117501A1 (en) * 2010-11-05 2012-05-10 Jonathan Koch Device, Method, and Graphical User Interface for Manipulating Soft Keyboards

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022005238A1 (ko) * 2020-07-01 2022-01-06 윤경숙 문자 입력 방법

Also Published As

Publication number Publication date
CN105308551A (zh) 2016-02-03
KR101633842B1 (ko) 2016-06-27
CN105308551B (zh) 2017-09-05
EP3005066B1 (en) 2018-12-26
EP3005066A1 (en) 2016-04-13
US8997013B2 (en) 2015-03-31
US20140359513A1 (en) 2014-12-04
WO2014193962A1 (en) 2014-12-04

Similar Documents

Publication Publication Date Title
KR101633842B1 (ko) 연속적인 제스쳐 입력을 위한 복수의 그래픽 키보드들
US10489508B2 (en) Incremental multi-word recognition
US10977440B2 (en) Multi-gesture text input prediction
US9684446B2 (en) Text suggestion output using past interaction data
US10140017B2 (en) Graphical keyboard application with integrated search
US8887103B1 (en) Dynamically-positioned character string suggestions for gesture typing
US9665246B2 (en) Consistent text suggestion output
US8782550B1 (en) Character string replacement
US9304595B2 (en) Gesture-keyboard decoding using gesture path deviation
US9557818B2 (en) Contextually-specific automatic separators
US9298276B1 (en) Word prediction for numbers and symbols

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190612

Year of fee payment: 4