KR20200015045A - 가상 입력 툴을 제공하기 위한 전자 장치 및 방법 - Google Patents

가상 입력 툴을 제공하기 위한 전자 장치 및 방법 Download PDF

Info

Publication number
KR20200015045A
KR20200015045A KR1020180090321A KR20180090321A KR20200015045A KR 20200015045 A KR20200015045 A KR 20200015045A KR 1020180090321 A KR1020180090321 A KR 1020180090321A KR 20180090321 A KR20180090321 A KR 20180090321A KR 20200015045 A KR20200015045 A KR 20200015045A
Authority
KR
South Korea
Prior art keywords
display
area
electronic device
input
processor
Prior art date
Application number
KR1020180090321A
Other languages
English (en)
Other versions
KR102545598B1 (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 삼성전자주식회사
Priority to KR1020180090321A priority Critical patent/KR102545598B1/ko
Priority to US16/428,066 priority patent/US11340776B2/en
Priority to EP19845545.3A priority patent/EP3791253B1/en
Priority to PCT/KR2019/006579 priority patent/WO2020027417A1/en
Priority to CN201980051477.3A priority patent/CN112534390B/zh
Publication of KR20200015045A publication Critical patent/KR20200015045A/ko
Application granted granted Critical
Publication of KR102545598B1 publication Critical patent/KR102545598B1/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/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/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03547Touch pads, in which fingers can move on a surface
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • 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
    • 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
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/12Synchronisation between the display unit and other units, e.g. other display units, video-disc players
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0384Wireless input, i.e. hardware and software details of wireless interface arrangements for pointing devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

다양한 실시예들에 따른 전자 장치는, 통신 회로와, 명령어들을 저장하는 적어도 하나의 메모리와, 디스플레이와, 상기 명령어들을 실행할 시, 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 상기 통신 회로를 이용하여 외부 장치(external device)의 다른(another) 디스플레이 상에서 표시하고, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하고, 상기 수신에 응답하여, 상기 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하도록 구성된 적어도 하나의 프로세서를 포함할 수 있다.

Description

가상 입력 툴을 제공하기 위한 전자 장치 및 방법{ELECTRONIC DEVICE AND METHOD FOR PROVIDING VIRTUAL INPUT TOOL}
후술되는 다양한 실시예들은 가상 입력 툴(virtual input tool)을 제공하기 위한 전자 장치(electronic device) 및 그의 동작 방법에 관한 것이다.
기술의 발달로 인하여, 테블릿(tablet), 페블릿(pablet), 스마트폰 등과 같은 휴대용 단말(portable terminal)의 보급이 증가하고 있다. 이러한 휴대용 단말은 직관적인 인터액션(intuitive interaction)을 제공하기 위해 터치 스크린(touch screen)을 포함할 수 있다.
전자 장치(electronic device)와의 인터액션(interaction)을 제공하기 위해, 무선(wireless) 키보드, 무선 마우스(mouse) 등과 같은 다양한 종류들의 휴대용 입력 툴(input tool)들(또는 보조 입력 장치(auxiliary input device)들)이 보급되고 있다. 하지만, 사용자는, 스마트폰(smartphone), 테블릿(tablet), 페블릿(phablet) 등과 같은 휴대용 단말을 일반적으로 소지하기 때문에, 독립적인 휴대용 입력 툴들을 소지하는 것은, 사용자에게 불편함을 초래할 수 있다.
따라서, 강화된(enhanced) 편의성(convenience)을 제공하기 위해, 사용자에 의해 일반적으로 소지되는 휴대용 단말을 휴대용 입력 툴로 이용하기 위한 방안(solution)이 요구될 수 있다.
본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
다양한 실시예들에 따른 전자 장치는, 통신 회로와, 명령어들을 저장하는 적어도 하나의 메모리와, 디스플레이와, 상기 명령어들을 실행할 시, 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 상기 통신 회로를 이용하여 외부 장치(external device)의 다른(another) 디스플레이 상에서 표시하고, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하고, 상기 수신에 응답하여, 상기 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하도록 구성된 적어도 하나의 프로세서를 포함할 수 있다.
다양한 실시예들에 따른 전자 장치를 동작하기 위한 방법은, 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 외부 장치(external device)의 디스플레이 상에서 표시하는 동작과, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하는 동작과, 상기 수신에 응답하여, 상기 전자 장치의 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동작을 포함할 수 있다.
다양한 실시예들에 따른 비일시적(non-transitory) 컴퓨터 판독가능 저장 매체(medium)는, 전자 장치(electronic device)의 프로세서에 의해 실행될 시, 상기 전자 장치와 구별되는 다른(another) 전자 장치의 디스플레이 상에서 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 표시하고, 상기 제1 사용자 인터페이스를 상기 다른 전자 장치의 상기 디스플레이 상에서 표시하는 동안 지정된 입력을 수신하는 것에 응답하여, 상기 전자 장치의 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드를 표시하도록 상기 전자 장치를 야기하는 프로그램을 저장할 수 있다.
다양한 실시 예들에 따른 전자 장치(electronic device) 및 그의 방법은, 가상 키보드와 가상 터치 패드를 제공함으로써 향상된 휴대성(enhanced portability)을 제공할 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 다양한 실시예들에 따른 전자 장치를 포함하는 환경의 예를 도시한다.
도 2는 다양한 실시예들에 따른 전자 장치의 기능적 구성의 예를 도시한다.
도 3a는 다양한 실시예들에 따른 전자 장치에서 표시되는 가상 입력 툴의 예를 도시한다.
도 3b는 다양한 실시예들에 따른 전자 장치에서 표시되는 가상 입력 툴의 다른 예를 도시한다.
도 3c는 다양한 실시예들에 따른 전자 장치에서 표시되는 가상 입력 툴의 또 다른 예를 도시한다.
도 3d는 다양한 실시예들에 따른 전자 장치에서 표시되는 가상 입력 툴의 또 다른 예를 도시한다.
도 4a는 다양한 실시예들에 따라 가상 입력 툴을 표시하기 위해 이용되는 지정된 입력의 예를 도시한다.
도 4b는 다양한 실시예들에 따라 가상 입력 툴을 표시하기 위해 이용되는 지정된 입력의 다른 예를 도시한다.
도 4c는 다양한 실시예들에 따라 가상 입력 툴을 표시하기 위해 이용되는 지정된 입력의 또 다른 예를 도시한다.
도 4d는 다양한 실시예들에 따라 가상 입력 툴을 표시하기 위해 이용되는 지정된 입력의 또 다른 예를 도시한다.
도 4e는 다양한 실시예들에 따라 가상 입력 툴을 표시하기 위해 이용되는 지정된 입력의 또 다른 예를 도시한다.
도 5a는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 예를 도시한다.
도 5b는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 다른 예를 도시한다.
도 5c는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 5d는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 5e는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 6은 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 7a는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 7b는 다양한 실시예들에 따라 변경되는 가상 입력 툴의 표시의 또 다른 예를 도시한다.
도 8은 다양한 실시예들에 따른 전자 장치의 동작의 예를 도시한다.
도 9는 다양한 실시예들에 따라 가상 터치 패드 및 가상 키보드의 배치를 결정하는 전자 장치의 동작의 예를 도시한다.
도 10은 다양한 실시예들에 따라 가상 터치 패드 또는 가상 키보드를 비활성화하는 전자 장치의 동작의 예를 도시한다.
이하, 본 문서의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 문서의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1", "제2", "첫째" 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)" 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어(hardware)적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU(central processing unit) 또는 AP(application processor))를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 문서의 다양한 실시 예들에 따르는 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에 따르면, 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토메이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS, global navigation satellite system), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예들에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따르는 전자 장치는 플렉서블 전자 장치 또는 폴더블 전자 장치일 수 있다. 또한, 본 문서의 실시 예에 따르는 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따르는 새로운 전자 장치를 포함할 수 있다.
본 문서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
이하, 첨부 도면을 참조하여, 다양한 실시 예들을 상세히 설명하면 다음과 같다. 다만, 설명의 편의를 위하여 도면에서는 구성 요소들이 그 크기가 과장 또는 축소 될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
도 1은 다양한 실시예들에 따른 전자 장치를 포함하는 환경의 예를 도시한다.
도 1을 참조하면, 환경(100)은 전자 장치(101) 및 전자 장치(102)를 포함할 수 있다.
다양한 실시예들에서, 전자 장치(101)는 터치 스크린과 통신 회로를 포함하는 휴대용 단말(portable terminal)일 수 있다. 예를 들면, 전자 장치(101)는, 테블릿(tablet), 페블릿(phablet), 또는 스마트 폰(smart phone)일 수 있다.
다양한 실시예들에서, 전자 장치(101)는 전자 장치(102)와 유선으로(by wire) 또는 무선으로(by wireless) 통신할 수 있다. 다양한 실시예들에서, 전자 장치(101)는 전자 장치(102)와의 통신을 위해, 다양한 통신 경로들을 이용할 수 있다. 예를 들면, 전자 장치(101)는 전자 장치(101)와 중계 개체(relay entity)(예: 기지국(base station), AP(access point) 등) 사이의 통신 경로 및 상기 중계 개체와 전자 장치(102) 사이의 통신 경로로 구성되는(configured with) 간접 통신 경로(indirect communication path)를 통해 전자 장치(102)와 통신할 수 있다. 다른 예를 들면, 전자 장치(101)는 전자 장치(101)와 전자 장치(102) 사이의 직접 통신 경로(direct communication path)를 통해 전자 장치(102)와 통신할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 전자 장치(101)는, 전자 장치(102)와의 통신을 이용하여, 전자 장치(102)의 디스플레이 상에서 화면을 표시할 수 있다. 다양한 실시예들에서, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면은, 전자 장치(101)의 디스플레이 상에서 표시되는 화면과 동일할 수도 있고, 상이할 수도 있다. 예를 들면, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면은, 전자 장치(101)의 디스플레이 상에서 표시되는 화면의 구성(configuration)과 다른(different from) 구성으로 전자 장치(101)의 디스플레이 상에서 표시되는 화면에 의해 제공되는 콘텐트에 상응하는 콘텐트를 제공할 수 있다. 다른 예를 들면, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면은, 전자 장치(101)의 디스플레이 상에서 표시되는 화면에 의해 제공되는 콘텐트와 다른(different from) 콘텐트를 제공할 수 있다. 또 다른 예를 들면, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면은, 전자 장치(101)의 디스플레이 상에서 표시되는 화면의 구성에 상응하는 구성으로 전자 장치(101)의 디스플레이 상에서 표시되는 화면에 의해 제공되는 콘텐트에 상응하는 콘텐트를 제공할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 전자 장치(101)는, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면에 대한 입력을 수신할 수 있다. 다양한 실시예들에서, 전자 장치(101)는, 상기 입력에 기반하여, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면의 표시(representation)를 전자 장치(102)와의 통신을 이용하여 변경할 수 있다.
다양한 실시예들에서, 전자 장치(102)는 화면을 표시할 수 있거나 외부 장치를 이용하여 화면을 표시할 수 있는 장치일 수 있다. 다양한 실시예들에서, 전자 장치(102)는, 다른 전자 장치(예: 전자 장치(101))와의 통신 없이, 화면을 표시할 수 있는 장치일 수 있다. 예를 들면, 전자 장치(102)는, TV(television), 디지털 사이너지(digital signage), 데스크 탑(desktop computer), 랩탑 컴퓨터(laptop computer), 테블릿, 페블릿, 또는 스마트폰일 수 있다. 다양한 실시예들에서, 전자 장치(102)는, 다른 전자 장치(예: 전자 장치(101))와의 통신을 이용하여야만(only by using) 화면을 표시할 수 있는 장치일 수 있다. 예를 들면, 전자 장치(102)는, 모니터(monitor) 또는 빔 프로젝터(beam projector)일 수 있다.
다양한 실시예들에서, 전자 장치(102)는 전자 장치(101)의 화면의 크기보다 넓은 크기의 화면을 제공할 수 있는 장치일 수 있다. 하지만, 이에 제한되지 않는다.
도 2는 다양한 실시예들에 `따른 전자 장치의 기능적 구성의 예를 도시한다. 이러한 기능적 구성은, 도 1에 도시된 전자 장치(101)에 포함될 수 있다.
도 2을 참조하면, 전자 장치(101)는, 프로세서(210), 메모리(220), 디스플레이(230), 통신 회로(240), 및 센서 회로(250)를 포함할 수 있다.
프로세서(210)는 전자 장치(101)의 전반적인 동작을 제어할 수 있다. 예를 들면, 프로세서(210)는 광고, 인터넷, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 다양한 실시예들에서, 프로세서(210)는 하나의 프로세서 코어(single core)를 포함하거나, 복수의 프로세서 코어들을 포함할 수 있다. 예를 들면, 프로세서(210)는 듀얼 코어(dual-core), 쿼드 코어(quad-core), 헥사 코어(hexa-core) 등의 멀티 코어(multi-core)를 포함할 수 있다. 실시 예들에 따라, 프로세서(210)는 내부 또는 외부에 위치된 캐시 메모리(cache memory)를 더 포함할 수 있다.
프로세서(210)는 전자 장치(101)의 다른 구성 요소들의 명령을 수신할 수 있고, 수신된 명령을 해석할 수 있으며, 해석된 명령에 따라 계산을 수행하거나 데이터를 처리할 수 있다.
프로세서(210)는 어플리케이션에서 생성되거나 발생되는 데이터 또는 신호를 처리할 수 있다. 예를 들면, 프로세서(210)는 어플리케이션을 실행하거나 제어하기 위해 메모리(220)에게 명령어, 데이터 또는 신호를 요청할 수 있다. 프로세서(210)는 어플리케이션을 실행하거나 제어하기 위해 메모리(220)에게 명령어, 데이터, 또는 신호를 기록(또는 저장)하거나 갱신할 수 있다.
프로세서(210)는 메모리(220), 디스플레이(230), 통신 회로 (240), 또는 센서 회로(250)로부터 수신되는 메시지, 데이터, 명령어, 또는 신호를 해석할 수 있고, 가공할 수 있다. 프로세서(210)는 수신된 메시지, 데이터, 명령어, 또는 신호에 기반하여 새로운 메시지, 데이터, 명령어, 또는 신호를 생성할 수 있다. 프로세서(210)는 가공되거나 생성된 메시지, 데이터, 명령어, 또는 신호를 메모리(220), 디스플레이(230), 통신 회로(240), 또는 센서 회로(250)에게 제공할 수 있다.
프로세서(210)의 전부 또는 일부는 전자 장치(101) 내의 다른 구성 요소(예를 들면, 메모리(220), 디스플레이(230), 통신 회로(240), 또는 센서 회로(250))와 전기적으로(electrically) 또는 작동적으로(operably 또는 operatively) 결합(coupled with)되거나 연결될(connected to) 수 있다.
실시 예들에 따라, 프로세서(210)는 하나 또는 그 이상의 프로세서들로 구성될(configured with) 수 있다. 예를 들면, 프로세서(210)는 응용 프로그램 등과 같은 상위 계층의 프로그램을 제어하는 AP(application processor), 디스플레이(230) 를 제어하기 위한 GPU(graphic processing unit), 또는 통신 회로(240)를 제어하기 위한 CP(communication processor) 중 하나 이상을 포함할 수 있다.
메모리(220)는 전자 장치(101)를 제어하는 명령어, 제어 명령어 코드, 제어 데이터, 또는 사용자 데이터를 저장할 수 있다. 예를 들면, 메모리(220)는 어플리케이션(application), OS(operating system), 미들웨어(middleware), 디바이스 드라이버(device driver)를 포함할 수 있다.
메모리(220)는 휘발성 메모리(volatile memory) 또는 불휘발성(non-volatile memory) 중 하나 이상을 포함할 수 있다. 휘발성 메모리는 DRAM(dynamic random access memory), SRAM(static RAM), SDRAM(synchronous DRAM), PRAM(phase-change RAM), MRAM(magnetic RAM), RRAM(resistive RAM), FeRAM(ferroelectric RAM) 등을 포함할 수 있다. 불휘발성 메모리는 ROM(read only memory), PROM(programmable ROM), EPROM(electrically programmable ROM), EEPROM(electrically erasable programmable ROM), 플래시 메모리(flash memory) 등을 포함할 수 있다.
메모리(220)는 하드 디스크 드라이브(HDD, hard disk drive), 솔리드 스테이트 디스크(SSD, solid state disk), eMMC(embedded multi media card), UFS(universal flash storage)와 같은 불휘발성 매체(medium)를 포함할 수 있다.
디스플레이(230)는, 컨텐츠, 데이터, 또는 신호를 출력할 수 있다. 다양한 실시예들에서, 디스플레이(230)는 프로세서(210)에 의해 가공된 이미지 데이터를 표시할 수 있다.
실시예들에 따라, 디스플레이(230)는 터치 입력 등을 수신할 수 있는 복수의 터치 센서들(미도시)과 결합됨으로써, 일체형의 터치 스크린(touch screen)으로 구성될(configured with) 수도 있다. 디스플레이(230)가 터치 스크린으로 구성되는 경우, 상기 복수의 터치 센서들은, 디스플레이(230) 위에 배치되거나, 디스플레이(140) 아래에 배치될 수 있다.
실시예들에 따라, 디스플레이(230)는, 디스플레이(230)의 적어도 일부를 접을 수 있는(foldable) 디스플레이(예: 폴더블 디스플레이)로 구성될 수 있다. 디스플레이(230)가 폴더블 디스플레이로 구성되는 경우, 전자 장치(101)는 디스플레이(230)를 접을 수 있는 구조(structure)를 가질 수 있다.
통신 회로(240)는 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102))간의 유선 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 일실시예에 따르면, 통신 모듈(240)은 무선 통신 회로(예: 셀룰러 통신 회로, 근거리 무선 통신 회로, 또는 GNSS(global navigation satellite system) 통신 회로) 또는 유선 통신 회로(예: LAN(local area network) 통신 회로, 또는 전력선 통신 회로)를 포함하고, 그 중 해당하는 통신 회로를 이용하여 제 1 네트워크(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 회로(240)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일실시예에 따르면, 상기 무선 통신 회로는 가입자 식별 모듈에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(101)를 구별 및 인증할 수 있다.
센서 회로(250)는, 전자 장치(101)의 자세에 대한 정보를 획득하기 위한 센서를 포함할 수 있다.
다양한 실시예들에서, 센서 회로(250)는, 전자 장치(101)의 선형적(linear) 움직임의 변화에 대한 데이터를 획득하기 위한 센서, 전자 장치(101)의 회전(rotational) 움직임의 변화에 대한 데이터를 획득하기 위한 센서, 전자 장치(101)가 사용자에 의해 그립되는지 여부를 식별하기 위한 센서, 또는 전자 장치(101)의 지리적 위치에 대한 데이터를 획득하기 위한 센서 중 하나 이상을 포함할 수 있다. 예를 들면, 상기 센서 회로(250)는, 지자기 센서, 자이로 센서, 근접 센서, 가속도 센서, 조도 센서, 또는 적외선 센서 중 하나 이상을 포함할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 전자 장치(101)에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시할 수 있다. 예를 들면, 프로세서(210)는, 통신 회로(240)를 이용하여 전자 장치(102)에게 상기 어플리케이션의 상기 제1 사용자 인터페이스에 대한 프레임 데이터를 송신하거나 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하기 위한 제어 정보를 송신할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 전자 장치(101)에서 실행되고 있는 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 상기 제1 사용자 인터페이스에 대한 입력을 수신할 수 있는 적어도 하나의 가상 입력 툴을 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 가상 입력 툴은, 상기 제1 사용자 인터페이스와의 인터액션을 제공하기 위해, 디스플레이 상에서 표시될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 가상 입력 툴은, 다양한 배치(arrangement)들 또는 형태(shape)들로 디스플레이 상에서 표시될 수 있다.
예를 들어, 도 3a를 참조하면, 상태(300)와 같이, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 디스플레이(230)를 이용하여, 제1 영역(301)에서 가상 터치 패드를 제2 영역(302)에서 가상 키보드를 표시할 수 있다. 다양한 실시예들에서, 상기 가상 터치 패드는, 마우스(mouse)와 같은 기능을 제공할 수 있다. 예를 들면, 상기 가상 터치 패드는, 상기 가상 터치 패드를 표시하는 영역에 대한(on) 입력(예: 드래그 입력, 싱글 탭 입력, 멀티 탭 입력, 누름 입력(depression input)(예: 포스(force) 터치 입력) 등)에 기반하여, 상기 제1 사용자 인터페이스 상에서 커서(cursor)와 같은 포인터(pointer)를 움직이거나, 스크롤을 수행하거나, 상기 제1 사용자 인터페이스 내에 포함된 실행가능한(executable) 객체를 실행하거나 이동하기 위해 이용될 수 있다. 다른 예를 들면, 상기 가상 터치 패드는, 상기 가상 터치 패드를 표시하는 영역에 대한 드래그 입력의 경로에 기반하여, 드로잉(drawing)을 수행하거나 수기 문자(handwritten character)를 입력하기 위해 이용될 수 있다. 다양한 실시예들에서, 상기 가상 키보드는, 키보드(keyboard)와 같은 기능을 제공할 수 있다. 예를 들면, 상기 가상 키보드는, 상기 가상 키보드 내에 포함된 복수의 키들 중 적어도 하나의 키에 대한 입력(예: 드래그 입력, 싱글 탭 입력, 멀티 탭 입력, 누름 입력(depression input)(예: 포스(force) 터치 입력) 등)에 기반하여 상기 적어도 하나의 키에 의해 지시되는 적어도 하나의 문자(character)를 상기 제1 사용자 인터페이스에 입력하기 위해 이용될 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 제1 영역(301)은, 제2 영역(302)과 분리되거나(separate from) 구별될(distinct from) 수 있다. 다양한 실시예들에서, 제1 영역(301)은, 제2 영역(302)으로부터 이격된(spaced apart from) 위치에서 표시될 수 있다. 예를 들면, 제1 영역(301)은, 제2 영역(302) 위에(above) 배치될 수 있다. 다른 예를 들면, 도 3a의 도시와 달리, 제1 영역(301)은, 제2 영역(302) 아래에(below) 배치될 수도 있다. 하지만, 이에 제한되지 않는다.
다른 예를 들어, 도 3b를 참조하면, 상태(310)와 같이, 프로세서(210)는 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 디스플레이(230)를 이용하여 제1 영역(311)에서 상기 가상 터치 패드를 제1 영역(311) 위에 플로팅되거나(floated on) 중첩된(superimposed on) 제2 영역(312)에서 상기 가상 키보드를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는 제1 영역(311)에서 표시되는 상기 가상 터치 패드에 대한 입력을 수신하는 것에 응답하여, 제2 영역(312)에서 표시되는 상기 가상 키보드를 비활성화할(disable) 수 있다. 상기 가상 키보드의 비활성화는, 상기 입력이 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나의(any one) 키 위를 지나가더라도(move across over), 상기 가상 키보드에 대한 입력으로 인식하지 않음을 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 입력이 해제됨을 식별하거나 상기 입력이 해제된 후 지정된 시간(specified time)이 경과됨을 식별하는 것에 응답하여, 상기 비활성화된 가상 키보드를 활성화할 수 있다. 다양한 실시예들에서, 프로세서(210)는 제2 영역(312)에서 표시되는 상기 가상 키보드에 대한 입력을 수신하는 것에 응답하여, 제1 영역(311)에서 표시되는 상기 가상 터치 패드를 비활성화할 수 있다. 상기 가상 터치 패드의 비활성화는, 상기 입력이 상기 가상 터치 패드의 어느 영역을 지나가더라도, 상기 가상 터치 패드에 대한 입력을 인식하지 않음을 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 입력이 해제됨을 식별하거나 상기 입력이 해제된 후 지정된 시간이 경과됨을 식별하는 것에 응답하여, 상기 비활성화된 가상 터치 패드를 활성화할 수 있다.
또 다른 예를 들어, 도 3c를 참조하면, 상태(320)와 같이, 프로세서(210)는 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 디스플레이(230)를 이용하여, 제1 영역(321)에서 가상 조이 패드(virtual joy pad)의 제1 부분을 제2 영역(322)에서 상기 가상 조이 패드의 제2 부분을 제1 영역(321)과 제2 영역(322) 사이의 제3 영역(323)에서 상기 가상 조이 패드의 남은 부분을 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는 전자 장치(101)에서 게임 어플리케이션을 실행 중이고, 상기 게임 어플리케이션의 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시함을 식별하는 것에 기반하여, 디스플레이(230)를 이용하여 제1 영역(321)에서 상기 가상 조이 패드의 상기 제1 부분을 제2 영역(322)에서 상기 가상 조이 패드의 상기 제2 부분을 제3 영역(323)에서 상기 가상 조이 패드의 상기 남은 부분을 표시할 수 있다. 다양한 실시예들에서, 상기 가상 조이 패드의 상기 제1 부분은 방향 제어를 위한 실행가능한 객체들을 포함할 수 있다. 예를 들면, 상기 방향 제어를 위한 실행가능한 객체들 중 제1 객체는 상기 게임 어플리케이션에 의해 제공되는 게임의 캐릭터를 제1 방향으로 움직이기 위해 이용되고, 상기 방향 제어를 위한 실행가능한 객체들 중 제2 객체는 상기 캐릭터를 상기 제1 방향과 반대인(opposite to) 제2 방향으로 움직이기 위해 이용되고, 상기 방향 제어를 위한 실행가능한 객체들 중 제3 객체는 상기 캐릭터를 제3 방향으로 움직이기 위해 이용되며, 상기 방향 제어를 위한 실행가능한 객체들 중 제4 객체는 상기 캐릭터를 제4 방향으로 움직이기 위해 이용될 수 있다. 다양한 실시예들에서, 상기 가상 조이 패드의 상기 제2 부분은 상기 캐릭터의 행동들을 제어하기 위한 실행가능한 객체들을 포함할 수 있다. 예를 들면, 상기 제2 부분에 포함된 실행가능한 객체들 중 제1 객체는 상기 캐릭터의 제1 행동의 수행을 위해 이용되고, 상기 제2 부분에 포함된 실행가능한 객체들 중 제2 객체는 상기 캐릭터의 제2 행동의 수행을 위해 이용되고, 상기 제2 부분에 포함된 실행가능한 객체들 중 제3 객체는 상기 캐릭터의 제3 행동의 수행을 위해 이용되며, 상기 제2 부분에 포함된 실행가능한 객체들 중 제4 객체는 상기 캐릭터의 제4 행동의 수행을 위해 이용될 수 있다. 다양한 실시예들에서, 상기 가상 조이 패드의 상기 남은 부분은 상기 게임 상의 다양한 세팅(setting)들을 제어하기 위한 실행가능한 객체들을 포함할 수 있다. 예를 들면, 상기 남은 부분에 포함된 실행가능한 객체들 중 제1 객체는 상기 가상 조이 패드를 도 3a 또는 도 3b에 도시된 상기 가상 키보드 및 상기 가상 키패드로 변경하기 위해 이용될 수 있고, 상기 남은 부분에 포함된 실행가능한 객체들 중 제2 객체는 전자 장치(102)의 디스플레이 상에서 표시되는 상기 게임 어플리케이션의 상기 사용자 인터페이스 내에서 상기 게임 상에서 제공되는 메뉴를 표시하기 위해 이용될 수 있고, 상기 남은 부분에 포함된 실행가능한 객체들 중 제3 객체는 상기 게임을 일시 정지하기 위해 이용될 수 있으며, 상기 남은 부분에 포함된 실행가능한 객체들 중 제4 객체는 상기 게임의 모드를 결정하기 위해 이용될 수 있다. 하지만, 이에 제한되지 않는다.
또 다른 예를 들어, 도 3d를 참조하면, 상태(330)와 같이, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 디스플레이(230)를 이용하여 마우스에 포함되는 기능들에 각각 대응하는 실행가능한 객체들을 표시할 수 있다. 예를 들면, 상기 실행가능한 객체들 중 제1 객체(331)는 마우스의 왼쪽 버튼의 기능에 대응하고, 상기 실행가능한 객체들 중 제2 객체(332)는 마우스의 오른쪽 버튼의 기능에 대응하며, 상기 실행가능한 객체들 중 제3 객체(333)는 마우스의 회전 가능한 구조체(rotatable structure, 예: 휠)에 대응할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 센서 회로(250)을 이용하여 획득되는 전자 장치(101)의 위치의 변경에 대한 정보에 기반하여, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 어플리케이션의 상기 제1 사용자 인터페이스 내의 포인터의 위치를 변경할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안 전자 장치(101)가 포트레이트 상태(portrait state)에 있음을 센서 회로(250)를 이용하여 식별하는 것에 기반하여, 마우스에 포함되는 기능들에 각각 대응하는 실행가능한 객체들을 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 마우스에 포함되는 기능들에 각각 대응하는 실행가능한 객체들을 표시하는 동안, 디스플레이(230) 아래 또는 위에 배치되는 복수의 터치 센서들 중 상기 실행 가능한 객체들을 표시하는 영역 아래 또는 위에 배치되는 터치 센서들을 활성화하고, 상기 복수의 터치 센서들 중 남은 터치 센서들을 비활성화할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안 전자 장치(101)의 상태가 상기 포트레이트 상태로부터 변경된 랜드스케이프(landscape state) 상태에 있음을 센서 회로(250)를 이용하여 식별하는 것에 기반하여, 상태(330)를 상태(335)로 전환할 수 있다. 다양한 실시예들에서, 상태(335)는 가상 키보드를 표시하는 상태를 의미할 수 있다. 상태(335)에서 프로세서(210)는, 상기 가상 키보드에 포함된 복수의 키들 중 적어도 하나의 키에 대한 입력을 수신하는 것에 기반하여, 상기 적어도 하나의 키에 대응하는 기능을 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시되는 상기 어플리케이션의 상기 제1 사용자 인터페이스 내에서 실행할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시하는 동안, 전자 장치(101)에서 또는 전자 장치(102)에서 지정된 입력을 수신하는 것에 응답하여, 도 3a 내지 도 3d에서 도시된 가상 입력 툴을 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 상기 가상 입력 툴은, 상기 지정된 입력을 수신하기 전에 디스플레이(230)을 이용하여 표시되었던 다른 화면으로부터 변경되어(as changed) 표시될 수 있다. 다양한 실시예들에서, 상기 다른 화면은 전자 장치(102)의 디스플레이 상에서 표시되는 화면(예: 상기 제1 사용자 인터페이스)과 동일할 수도 있고, 다를 수도 있다. 예를 들면, 상기 다른 화면은, 전자 장치(102)의 디스플레이 상에서 표시되는 화면에 의해 제공되는 콘텐트에 상응하는 콘텐트를 제공하고, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면의 구성(configuration)(예: 객체들의 배치(arrangement)에 상응하는 구성을 가질 수 있다. 예를 들면, 상기 다른 화면은, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면의 감소된 화면(reduced screen)일 수 있다. 다른 예를 들면, 상기 다른 화면은, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면에 의해 제공되는 콘텐트에 상응하는 콘텐트를 제공하고, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면의 구성과 구별되는 다른 구성을 가질 수 있다. 또 다른 예를 들면, 상기 다른 화면은, 전자 장치(102)의 디스플레이 상에서 표시되는 상기 화면에 의해 제공되는 콘텐트와 구별되는 다른 콘텐트를 제공할 수 있다. 예를 들면, 상기 다른 화면은, 상기 어플리케이션과 구별되는 다른 어플리케이션의 사용자 인터페이스일 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 상기 지정된 입력은 다양한 포맷(format)들을 가질 수 있다.
예를 들어, 도 4a를 참조하면, 프로세서(210)는, 상태(400)와 같이, 전자 장치(102)의 디스플레이 상에서 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하는 동안, 디스플레이(230)를 이용하여 상기 어플리케이션의 제2 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 상기 제2 사용자 인터페이스의 구성은, 상기 제1 사용자 인터페이스의 구성과 다를 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(400)에서 전자 장치(102)의 디스플레이 상에서 표시되는 상기 제1 사용자 인터페이스 내에 포함된 지정된 객체(401)에 대한 상기 지정된 입력을 수신함을 통신 회로(240)를 이용하여 식별할 수 있다. 다양한 실시예들에서, 지정된 객체(401)는, 디스플레이(230)에서 상기 가상 입력 툴을 호출하기 위해 상기 제1 사용자 인터페이스 내에 포함될 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 응답하여, 상태(400)를 상태(410)로 전환하거나 변경할 수 있다. 다양한 실시예들에서, 상태(410)는, 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 입력 툴을 표시하는 상태를 의미할 수 있다. 예를 들면, 프로세서(210)는, 상태(410)에서 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(410)에서, 상기 지정된 입력의 식별과 독립적으로(independently from) 또는 상기 지정된 입력과 관계없이(in regardless of), 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(400)에서 전자 장치(102)의 디스플레이 상에서 표시되는 상기 제1 사용자 인터페이스 내에 포함된 텍스트 입력 부분(402)에 대한 상기 지정된 입력을 수신함을 통신 회로(240)를 이용하여 식별할 수 있다. 다양한 실시예들에서, 텍스트 입력 부분(402)은 캐릭터(character)를 입력하기 위한 사용자 입력을 수신할 수 있는 영역을 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 응답하여, 상태(400)를 상태(410)로 전환하거나 변경할 수 있다. 예를 들면, 프로세서(210)는, 상태(410)에서 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(410)에서, 상기 지정된 입력의 식별과 독립적으로(independently from) 또는 상기 지정된 입력과 관계없이(in regardless of), 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(400)에서 디스플레이 상에서 표시되는 상기 제2 사용자 인터페이스 내에 포함된 지정된 객체(403)에 대한 상기 지정된 입력을 수신할 수 있다. 다양한 실시예들에서, 지정된 객체(403)는 디스플레이(230)에서 상기 가상 입력 툴을 호출하기 위해 상기 제2 사용자 인터페이스 내에 포함될 수 있다. 다양한 실시예들에서, 프로세서(210)는, 지정된 객체(403)에 대한 상기 지정된 입력을 수신하는 것에 응답하여, 상태(400)를 상태(410)로 변경할 수 있다. 예를 들면, 프로세서(210)는, 상태(410)에서 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(410)에서, 상기 지정된 입력의 수신과 독립적으로, 전자 장치(102)의 상기 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(400)에서 디스플레이 상에서 표시되는 상기 제2 사용자 인터페이스 내에 포함된 텍스트 입력 부분(404)에 대한 상기 지정된 입력을 수신할 수 있다. 다양한 실시예들에서, 텍스트 입력 부분(404)은 캐릭터를 입력하기 위한 사용자 입력을 수신할 수 있는 영역을 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 텍스트 입력 부분(404)에 대한 상기 지정된 입력을 수신하는 것에 응답하여, 상태(400)를 상태(410)로 전환할 수 있다. 예를 들면, 프로세서(210)는, 상태(410)에서 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(410)에서, 상기 지정된 입력의 수신과 독립적으로 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(410)에서 상기 제1 사용자 인터페이스 내에서 상기 제1 사용자 인터페이스를 제공하는 어플리케이션과 구별되는 적어도 하나의 어플리케이션을 전자 장치(101)에서 실행하기 위한 적어도 하나의 객체(예: 객체 B, 객체 C)를 통신 회로(240)를 이용하여 더 표시할 수 있다. 다양한 실시예들에서, 프로레섯(210)는, 상태(410)에서 상기 제2 사용자 인터페이스 내에서 상기 적어도 하나의 어플리케이션을 전자 장치(101)에서 실행하기 위한 적어도 하나의 객체(예: 객체 B, 객체 C)를 디스플레이(230)를 이용하여 더 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 제1 사용자 인터페이스 내에 포함된 상기 적어도 하나의 객체 또는 상기 제2 사용자 인터페이스 내에 포함된 상기 적어도 하나의 객체에 대한 입력을 수신하는 것에 응답하여, 상기 적어도 하나의 객체에 의해 지시되는 다른(another) 어플리케이션을 전자 장치(101)에서 실행할 수 있다. 프로세서(210)는, 상기 실행에 응답하여, 상기 제1 어플리케이션으로부터 변경된 상기 다른 어플리케이션의 사용자 인터페이스를 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 표시할 수 있다. 하지만, 이에 제한되지 않는다.
다른 예를 들어, 도 4b를 참조하면, 프로세서(210)는, 상태(411)와 같이, 전자 장치(102)의 디스플레이 상에서 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하는 동안, 전자 장치(101)가 사용자에 의해 그립됨을 센서 회로(250)를 이용하여 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 기반하여, 상태(411)에서 디스플레이(230)를 이용하여 상기 어플리케이션의 상기 제2 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 센서 회로(250)를 이용하여, 전자 장치(101)의 상태가 상태(411)로부터 상태(412)로 전환됨을 식별할 수 있다. 다양한 실시예들에서, 상태(412)는 프로세서(210)가 전자 장치(101)에 대한 사용자의 그립이 해제됨을 센서 회로(250)를 이용하여 식별하는 상태를 의미할 수 있다. 예를 들면, 상태(412)는 전자 장치(101)가 테이블에 놓이는 상태를 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(412)로의 전환에 응답하여, 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(412)로의 전환과 독립적으로, 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
또 다른 예를 들어, 도 4c를 참조하면, 프로세서(210)는, 상태(413)와 같이, 전자 장치(102)의 디스플레이 상에서 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하는 동안, 디스플레이(230)를 이용하여 표시되는 상기 제2 사용자 인터페이스 상에서 지정된 속성(specified attribute 또는 지정된 유형(specified type))을 가지는 상기 지정된 입력을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는 상기 제2 사용자 인터페이스 상에서 상기 지정된 속성을 가지는 상기 지정된 입력을 수신하는 것에 응답하여, 상태(413)를 상태(414)로 전환할 수 있다. 다양한 실시예들에서, 상태(414)는 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 입력 툴을 표시하는 상태를 의미할 수 있다. 예를 들면, 프로세서(210)는, 상태(413)에서 상기 제2 사용자 인터페이스의 엣지 영역으로부터 상기 제2 사용자 인터페이스의 다른 영역(예: 중심 영역(center area))으로 향하는(toward) 드래그 입력(415)을 상기 지정된 속성을 가지는 상기 지정된 입력으로 수신하는 것에 응답하여, 상태(413)를 상태(414)로 전환할 수 있다. 다른 예를 들면, 프로세서(210)는, 상태(413)에서 상기 제2 사용자 인터페이스 상에서 지정된 패턴(specified pattern)을 가지는 드래그 입력(416)을 상기 지정된 속성을 가지는 상기 지정된 입력으로 수신하는 것에 응답하여, 상태(413)를 상태(414)로 전환할 수 있다. 또 다른 예를 들면, 프로세서(210)는, 상태(413)에서 상기 제2 사용자 인터페이스 상에서 너클 입력을 상기 지정된 속성을 가지는 상기 지정된 입력으로 수신하는 것에 응답하여, 상태(413)를 상태(414)로 전환할 수 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 프로세서(210)는, 상태(414)에서, 상기 지정된 입력을 수신하는 것과 독립적으로 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
또 다른 예를 들어, 도 4d를 참조하면, 전자 장치(101)는, 전자 장치(102)의 디스플레이 상에서 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하는 동안, 전자 장치(101)에 부착할 수 있는(attachable) 또는 전자 장치(101)에 삽입할 수 있는(insertable) 스타일러스(419)가 전자 장치(101)로부터 분리된(separated) 상태(418)에서 있을 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(418)에서, 디스플레이(230)를 이용하여 상기 제2 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 상태(418)에서, 프로세서(210)는 전자 장치(101)로부터 분리되었던 스타일러스(419)가 전자 장치(101)에 부착되거나 전자 장치(101) 내에 삽입됨을 상기 지정된 입력으로 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 응답하여, 상태(418)를 상태(420)로 전환할 수 있다. 다양한 실시예들에서, 상태(420)는 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 입력 툴(예: 상기 가상 터치 패드 및 상기 가상 키보드)을 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(420)로의 전환과 독립적으로, 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
또 다른 예를 들어, 도 4e를 참조하면, 상태(421)와 같이, 프로세서(210)는, 전자 장치(102)의 디스플레이 상에서 상기 어플리케이션의 상기 제1 사용자 인터페이스를 표시하는 동안, 상기 제2 사용자 인터페이스를 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(421)에서, 전자 장치(101)와 관련된 스타일러스(422)의 물리적 버튼(physical button)에 대한 입력(423)이 상기 지정된 입력으로 수신됨을 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 응답하여, 상태(421)를 상태(424)로 전환할 수 있다. 다양한 실시예들에서, 상태(424)는, 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 입력 툴(예: 상기 가상 터치 패드 및 상기 가상 키보드)을 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별과 독립적으로, 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스를 유지할 수 있다.
다양한 실시예들에서, 프로세서(210)는 디스플레이(230)를 이용하여 상기 가상 입력 툴을 표시하는 동안 상기 가상 입력 툴에 대한 사용자 입력을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 사용자 입력의 수신에 응답하여, 상기 가상 입력 툴의 적어도 일부의 상태를 변경하거나 전환할 수 있다.
예를 들어, 도 5a를 참조하면, 프로세서(210)는, 상태(500)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5a에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(500)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(500)에서, 상기 제1 영역으로부터 상기 제2 영역으로 향하는 입력(501)을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(500)에서, 입력(501)이 상기 제1 영역으로부터 개시됨(initiated)을 식별하는 것에 기반하여, 상기 제1 영역과 구별되는 상기 제2 영역 내에서 표시되는 상기 가상 키보드를 비활성화할(disable) 수 있다. 예를 들면, 프로세서(210)는, 입력(501)의 접촉(contact)이 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 입력(501)의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식할 수 있다. 프로세서(210)는, 상기 인식에 기반하여, 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 통신 회로(240)를 이용하여 변경할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(500)에서, 입력(501)이 디스플레이 상에서 유지되는 동안, 상기 가상 키보드를 비활성화하는 것을 유지할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(501)이 해제됨을 식별하는 타이밍으로부터 지정된 시간이 경과될 때까지 입력(501) 다음의(subsequent to) 다른(another) 입력이 상기 제1 영역을 통해 수신되는지 여부를 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(501)이 해제됨을 식별하는 타이밍으로부터 지정된 시간이 경과될 때까지 상기 다른 입력이 상기 제1 영역을 통해 수신되지 않음을 식별하는 것에 기반하여, 상기 비활성화된 가상 키보드를 활성화할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(500)에서 상기 가상 키보드를 비활성화하는 동안, 상기 가상 키보드를 비활성화함을 나타내기 위한 표시(representation)를 디스플레이(230)를 이용하여 표시할 수 있다. 예를 들면, 프로세서(210)는, 상태(500)에서 상기 가상 키보드를 비활성화하는 동안, 상기 가상 키보드를 비활성화함을 나타내기 위한 표시로 상기 가상 키보드를 흐리게(dim 또는 blur) 하거나 상기 가상 키보드를 비활성화함을 나타내기 위한 표시로 상기 가상 키보드 위에서(over) 반투명 레이어(translucent layer)를 표시할 수 있다.
다른 예를 들어, 도 5a를 참조하면, 프로세서(210)는, 상태(502)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5a에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(502)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(502)에서, 상기 제2 영역으로부터 상기 제1 영역으로 향하는 입력(503)을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는 상태(502)에서 입력(503)이 상기 제2 영역으로부터 개시됨을 식별하는 것에 기반하여, 상기 제2 영역과 구별되는 상기 제1 영역 내에서 표시되는 상기 가상 터치 패드를 비활성화할 수 있다. 예를 들면, 프로세서(210)는, 입력(503)의 접촉이 디스플레이 상에서 유지되는 동안, 상기 가상 터치 패드를 표시하는 상기 제1 영역의 적어도 일부 위를 지나가는 입력(503)의 경로를 상기 가상 터치 패드에 대한 입력으로 처리하는 것 대신 무시하거나(ignore) 폐기할(discaord) 수 있다. 프로세서(210)는, 상기 무시에 기반하여, 입력(503)에 의해 야기되는 상기 가상 키보드에 포함된 복수의 키들 중 적어도 일부에 대한 키 입력만을 이용하여, 전자 장치(102)의 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시를 변경할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(502)에서, 입력(503)이 디스플레이 상에서 유지되는 동안, 상기 가상 터치 패드를 비활성화하는 것을 유지할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(503)이 해제됨을 식별하는 것에 응답하여, 상기 비활성화된 가상 터치 패드를 활성화할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(503)이 해제됨을 식별하는 타이밍으로부터 지정된 시간이 경과될 때까지 입력(503) 다음의 다른 입력이 상기 제2 영역을 통해 수신되는지 여부를 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(503)이 해제됨을 식별하는 타이밍으로부터 지정된 시간이 경과될 때까지 상기 다른 입력이 상기 제2 영역을 통해 수신되지 않음을 식별하는 것에 기반하여, 상기 비활성화된 가상 터치 패드를 활성화할 수 있다.
다양한 실시예들에서, 프로세서(210)는, 상태(502)에서 상기 가상 터치 패드를 비활성화하는 동안, 상기 가상 터치 패드를 비활성화함을 나타내기 위한 표시를 디스플레이(230)를 이용하여 표시할 수 있다. 예를 들면, 프로세서(210)는, 상태(502)에서 상기 가상 터치 패드를 비활성화하는 동안, 상기 가상 터치 패드를 비활성화함을 나타내기 위한 표시로 상기 가상 터치 패드를 흐리게 하거나 상기 가상 터치 패드를 비활성화함을 나타내기 위한 표시로 상기 가상 터치 패드 위에서 반투명 레이어를 표시할 수 있다.
또 다른 예를 들어, 도 5b를 참조하면, 프로세서(210)는, 상태(504)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5b에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(504)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(504)에서, 상기 제1 영역으로부터의 드래그 입력(505)을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(504)에서, 드래그 입력(505)이 상기 제1 영역으로부터 상기 가상 키보드를 표시하는 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상태(504)로부터 변경된 상태(506)와 같이, 드래그 입력(505)와 상기 가상 키보드 사이의 접촉을 피하기 위해 상기 가상 키보드의 표시(representation)를 변경할 수 있다. 예를 들면, 프로세서(210)는, 상태(506)에서, 드래그 입력(505)와 상기 가상 키보드 사이의 접촉을 피하기 위해, 디스플레이(230)를 이용하여 상기 가상 키보드를 드래그 입력(505)보다 아래로 이동할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(506)로부터 변경된 상태(507)에서와 같이, 드래그 입력(505)이 해제됨을 식별하는 것에 기반하여, 상기 가상 키보드의 상기 변경된 표시를 복원할 수 있다.
또 다른 예를 들어, 도 5c를 참조하면, 프로세서(210)는, 상태(508)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5c에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(508)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(508)에서, 수기 문자(handwritten character)를 입력하기 위한 모드로 진입하기 위한 입력을 수신할 수 있다. 예를 들면, 프로세서(210)는, 상태(508)에서, 상기 가상 키보드의 모드를 수기 문자를 입력하기 위한 모드로 변경하기 위한 입력을 수신할 수 있다. 다양한 실시예들에서, 상기 입력은, 음성 신호(voice signal)를 통해 수신될 수 있다. 다양한 실시예들에서, 상기 입력은, 전자 장치(101)의 물리적 버튼에 대한 누름 입력(depression input)을 통해 수신될 수도 있다. 다양한 실시예들에서, 상기 입력은, 상기 가상 키보드에 포함된 복수의 키들 중 지정된 키에 대한 터치 입력을 통해 수신될 수도 있다. 하지만, 이에 제한되지 않는다. 다양한 실시예들에서, 프로세서(210)는, 상기 입력을 수신하는 것에 응답하여, 상태(508)를 상태(509)로 변경할 수 있다. 다양한 실시예들에서, 상태(509)는, 상기 가상 키보드로부터 변경된 인식 결과 필드(recognition result field)(510)를 상기 제2 영역 내에서 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 인식 결과 필드(510)는, 상기 가상 터치 패드 상에서 수신되는 수기 입력(handwritten input) 또는 드로잉 입력(drawing input)의 경로에 기반하여 인식된 캐릭터에 대한 정보를 제공하기 위한 필드를 의미할 수 있다. 예를 들면, 프로세서(210)는, 상기 가상 터치 패드에 수신되는 상기 수기 입력의 경로에 기반하여 문자 인식을 수행하고, 상기 문자 인식의 결과에 대한 정보를 인식 결과 필드(510) 내에서 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(509)에서, 상기 가상 터치 패드를 표시하는 상기 제1 영역으로부터의 입력(511)을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(511)이 디스플레이 상에서 유지되는 동안, 입력(511)이 상기 제1 영역으로부터 인식 결과 필드(510)를 표시하는 상기 제2 영역으로 향함을 식별할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 식별에 기반하여, 상태(509)를 상태(512)로 전환할 수 있다. 다양한 실시예들에서, 상태(512)는 입력(511)과 인식 결과 필드(510) 사이의 접촉을 피하기 위해 인식 결과 필드(510)의 표시를 변경하는 상태를 의미할 수 있다. 예를 들면, 프로세서(210)는, 상태(512)에서, 입력(511)와 인식 결과 필드(510) 사이의 접촉을 피하기 위하여, 디스플레이(230)를 이용하여 인식 결과 필드(510)를 입력(511)보다 아래로 이동할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(511)이 해제됨을 식별하는 것에 기반하여, 인식 결과 필드(510)의 상기 변경된 표시를 복원할 수 있다.
또 다른 예를 들어, 도 5d를 참조하면, 프로세서(210)는, 상태(513)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5d에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(513)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(513)에서, 전자 장치(101) 내에서 현재 제공하고 있는 모드와 구별되는 적어도 하나의 다른 모드(another mode)로 진입하기 위한 입력을 수신할 수 있다. 예를 들면, 상기 적어도 하나의 다른 모드는, 전자 장치(101) 내에서 상기 제1 사용자 인터페이스에 대한 인터액션을 전자 장치(101) 내에서 현재 제공되고 있는 인터액션의 유형과 적어도 일부 구별되는 다른(another) 유형을 가지는 인터액션을 수신하기 위한 모드를 의미할 수 있다. 예를 들면, 상기 다른 모드는, 수기 캐릭터를 입력할 수 있는 모드, 이모티콘(emoticon) 또는 이모지(emoji)를 입력할 수 있는 모드, AR(augmented reality) 스티커(sticker)를 입력할 수 있는 모드, 동적 이미지(예: GIF 포맷의 이미지)를 입력할 수 있는 모드, 라이브 메시지를 입력할 수 있는 모드, 또는 음성 신호를 입력할 수 있는 모드 중 적어도 하나를 포함할 수 있다. 다양한 실시예들에서, 상기 다른 모드로 진입하기 위한 입력은, 음성 신호(voice signal)를 통해 수신될 수 있다. 다양한 실시예들에서, 상기 다른 모드로 진입하기 위한 입력은, 전자 장치(101)의 물리적 버튼에 대한 누름 입력(depression input)을 통해 수신될 수도 있다. 다양한 실시예들에서, 상기 다른 모드로 진입하기 위한 입력은, 상기 가상 키보드에 포함된 복수의 키들 중 지정된 키에 대한 터치 입력을 통해 수신될 수도 있다.
다양한 실시예들에서, 프로세서(210)는, 상기 적어도 하나의 다른 모드를 제공하기 위해 요구되는 표시 영역의 크기에 기반하여, 상기 가상 터치 패드를 표시하는 영역의 크기를 변경할 수 있다.
예를 들어, 프로세서(210)는, 상기 다른 모드로 진입하기 위한 입력을 수신하는 것에 응답하여, 상태(513)를 상태(514)로 변경할 수 있다. 다양한 실시예들에서, 상태(514)는 전자 장치(101)에서 음성 입력을 수신할 수 있는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(514)는 상기 음성 입력을 수신할 수 있음을 나타내기 위한 적어도 하나의 시각적 객체(515)를 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(514)는, 상기 가상 키보드로부터 변경된 적어도 하나의 시각적 객체(515)를 표시하는 상태를 의미할 수 있다. 적어도 하나의 시각적 객체(515)를 표시하기 위해 요구되는 영역의 크기는 상기 가상 키보드를 표시하기 위해 요구되는 영역의 크기보다 작을 수 있기 때문에, 프로세서(210)는 상태(514)에서 상기 가상 터치 패드를 확대하여(as enlarged) 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(513)로부터 상태(514)로의 전환에 기반하여, 상기 가상 터치 패드에 대한 입력을 처리하는 기법(scheme)을 변경할 수 있다. 예를 들면, 상태(514)에서 상기 가상 터치 패드를 표시하는 영역은 상태(513)에서 상기 가상 터치 패드를 표시하는 영역보다 넓기 때문에, 프로세서(210)는 상태(513)에서 상기 가상 터치 패드에 대한 입력을 상대 좌표(relative coordinate)의 기법으로 처리하는 반면, 상태(514)에서 상기 가상 터치 패드에 대한 입력을 절대 좌표(absolute coordinate)의 기법으로 처리할 수 있다. 달리 표현하면, 프로세서(210)는, 상태(513)에서 상기 가상 터치 패드에 대한 입력을 상기 입력의 시작점과 종료점 사이의 거리에 기반하여 처리하는 반면, 상태(514)에서 상기 터치 패드에 대한 입력이 야기된 좌표에 기반하여 처리할 수 있다.
다른 예를 들어, 프로세서(210)는, 상기 다른 모드로 진입하기 위한 다른 입력을 수신하는 것에 응답하여, 상태(513)를 상태(516)로 변경할 수 있다. 다양한 실시예들에서, 상태(516)는 상기 가상 키보드에 포함된 모든 키들의 수보다 많은 수의 시각적 객체들을 표시하는 것을 요구하거나 상기 가상 키보드에 포함된 키들 각각의 크기보다 큰 크기를 가지는 시각적 객체들을 표시하는 것을 요구하는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(516)는 상기 가상 키보드로부터 변경된 복수의 시각적 객체들을 포함하는 필드(517)를 표시하는 상태를 의미할 수 있다. 필드(517)를 표시하기 위해 요구되는 영역의 크기는 상기 가상 키보드를 표시하기 위해 요구되는 영역의 크기보다 클 수 있기 때문에, 프로세서(210)는 상태(516)에서 상기 가상 터치 패드를 축소하여(as reduced) 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(513)로부터 상태(516)로의 전환과 독립적으로, 상기 가상 터치 패드에 대한 입력을 처리하는 기법을 유지할 수 있다. 하지만, 이에 제한되지 않는다.
또 다른 예를 들어, 도 5e를 참조하면, 프로세서(210)는, 상태(518)에서, 디스플레이(230)를 이용하여 제1 영역에서 상기 가상 터치 패드를 제2 영역에서 상기 가상 키보드를 표시할 수 있다. 도 5e에 도시하지 않았으나, 다양한 실시예들에서, 프로세서(210)는, 상태(518)에서, 통신 회로(240)를 이용하여 전자 장치(102)의 디스플레이 상에서 상기 제1 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(518)에서, 상기 가상 키보드에 포함된 복수의 키들을 표시하기 위해 요구되는 영역보다 넓은 영역을 요구하는 시각적 객체를 표시하기 위한 모드로 진입하기 위한 입력을 수신할 수 있다. 예를 들면, 상기 입력은, 음성 신호(voice signal)를 통해 수신될 수 있다. 다른 예를 들면, 상기 입력은, 전자 장치(101)의 물리적 버튼에 대한 누름 입력(depression input)을 통해 수신될 수도 있다. 또 다른 예를 들면, 상기 입력은, 상기 가상 키보드에 포함된 복수의 키들 중 지정된 키에 대한 터치 입력을 통해 수신될 수도 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 프로세서(210)는, 상기 입력을 수신하는 것에 응답하여, 상태(518)를 상태(519)로 전환할 수 있다. 다양한 실시예들에서, 상태(519)는, 상기 가상 키보드로부터 변경된 복수의 시각적 객체들 중 일부를 포함하는 영역(520)을 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(519)는, 상기 가상 터치 패드를 확대하여(as enlarged) 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(519)에서 상기 복수의 시각적 객체들 중 일부를 포함하는 영역(520)을 지정된 속도(specified speed) 미만으로 스크롤하거나 싱글 핑거를 이용하여 스크롤하기 위한 입력(521)을 수신할 수 있다. 다양한 실시예들에서, 상태(519)에서, 프로세서(210)는, 입력(521)을 수신하는 것에 기반하여, 영역(520)에 포함되는 시각적 객체들을 스크롤할 수 있다. 예를 들면, 프로세서(210)는, 입력(521)을 수신하는 것에 응답하여, 입력(521)을 수신하기 전에 영역(520)에 포함되었던 시각적 객체들 적어도 일부를 제거하고 상기 복수의 시각적 객체들 중 남은 일부를 영역(520)에서 표시할 수 있다. 다양한 실시예들에서, 영역(520)의 크기는, 입력(521)과 독립적으로 또는 상기 시각적 객체들의 스크롤과 독립적으로 유지될 수 있다. 다양한 실시예들에서, 프로세서(210)는 상태(519)에서 상기 복수의 시각적 객체들 중 일부를 포함하는 영역(520)을 지정된 속도 이상으로 스크롤하거나 멀티 핑거들을 이용하여 스크롤하기 위한 입력(522)을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 입력(522)을 수신하는 것에 기반하여, 상태(519)를 상태(523)로 변경할 수 있다. 다양한 실시예들에서, 상태(523)는, 영역(520)을 확대하여(as enlarged) 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(523)는, 상태(519)보다 많은 수의 시각적 객체들을 표시하는 상태를 의미할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(523)에서 입력(522)와 다른 방향을 가지는 입력을 수신하는 것에 기반하여, 상태(523)를 상태(519)로 복원할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(523)에서 표시되는 시각적 객체들 중 적어도 하나의 시각적 객체를 선택하기 위한 입력을 수신하는 것에 응답하여, 상태(523)를 상태(519)로 복원할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(523)에서 지정된 시간 동안 사용자 입력을 수신하지 않음을 식별하는 것에 응답하여, 상태(523)를 상태(519)로 복원할 수 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 프로세서(210)는, 상기 가상 입력 툴을 표시하는 동안 센서 회로(250)를 이용하여 획득되는 전자 장치(101)의 자세에 대한 정보에 기반하여, 상기 가상 입력 툴의 표시를 변경할 수 있다.
예를 들어, 도 6을 참조하면, 프로세서(210)는, 상태(601)와 같이, 센서 회로(250)를 이용하여 전자 장치(101)가 포트레이트 상태(또는 포트레이트 모드)에서 있음을 식별하는 동안, 제1 영역에서 상기 가상 터치 패드를 상기 제1 영역 아래의 제2 영역에서 상기 가상 키보드를 표시할 수 있다.
프로세서(210)는, 상태(601)에서 센서 회로(250)를 이용하여 전자 장치(101)의 상태가 상기 포트레이트 상태로부터 랜드스케이프 상태(또는 랜드스케이프 모드)로 전환됨을 식별하는 것에 기반하여, 상태(601)를 상태(602)로 전환할 수 있다. 다양한 실시예들에서, 상태(602)는, 상태(601)와 다른 종횡비(aspect ratio)로 상기 가상 터치 패드 및 상기 가상 키보드를 표시하는 상태를 의미할 수 있다. 상태(602)에서 표시되는 상기 가상 키보드는 상태(601)와 같이 상기 가상 터치 패드 아래에서 표시될 수 있다.
프로세서(210)는, 상태(601)에서 센서 회로(250)를 이용하여 전자 장치(101)의 상태가 상기 포트레이트 상태로부터 상기 랜드스케이프 상태로 전환됨을 식별하는 것에 기반하여, 상태(601)를 상태(603)로 전환할 수도 있다. 다양한 실시예들에서, 상태(603)는, 상태(601)와 다른 배치(arrangement)로 상기 가상 터치 패드 및 상기 가상 키보드를 표시하는 상태를 의미할 수 있다. 예를 들면, 상태(603)에서 표시되는 상기 가상 키보드는, 상태(601)와 달리, 상기 가상 터치 패드 옆에서(beside) 표시될 수 있다. 다양한 실시예들에서, 상태(603)에서 표시되는 상기 가상 터치 패드 또는 상기 가상 키보드 중 적어도 하나의 종횡비는, 상태(601)에서 표시되는 상기 가상 터치 패드 또는 상기 가상 키보드 중 적어도 하나의 종횡비에 상응할 수도 있고, 상태(601)에서 표시되는 상기 가상 터치 패드 또는 상기 가상 키보드 중 적어도 하나의 종횡비와 다를 수도 있다. 하지만, 이에 제한되지 않는다.
다양한 실시예들에서, 프로세서(210)는, 상기 가상 입력 툴을 표시하는 동안 수신되는 사용자 입력에 기반하여, 상기 가상 입력 툴의 표시를 변경할 수 있다.
예를 들어, 도 7a를 참조하면, 상태(701)에서, 프로세서(210)는 제1 영역 내에서 상기 가상 터치 패드를 표시하고, 상기 제1 영역의 적어도 일부에 중첩된(superimposed on) 제2 영역 내에서 상기 가상 키보드를 표시할 수 있다. 프로세서(210)는, 상태(701)에서 제1 영역 내에서 상기 가상 터치 패드를 상기 제1 영역의 적어도 일부에 중첩된 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 가상 키보드를 이동하기 위한 입력(702)을 수신할 수 있다. 다양한 실시예들에서, 입력(702)은, 상기 가상 키보드를 이동하기 위해 구성된(configured) 객체(703)를 통해 수신될 수 있다. 다양한 실시예들에서, 입력(702)은, 상기 가상 키보드의 복수의 사이드들 중 지정된 사이드를 통해 수신될 수도 있다. 하지만, 이에 제한되지 않는다. 프로세서(210)는, 입력(702)을 수신하는 것에 응답하여, 상태(704)와 같이, 입력(702)에 의해 이동된 영역에서 상기 가상 키보드를 표시할 수 있다.
다른 예를 들어, 도 7b를 참조하면, 상태(710)에서, 프로세서(210)는, 제1 영역 내에서 상기 가상 터치 패드를 표시하고, 상기 제1 영역의 적어도 일부에 중첩된 제2 영역 내에서 상기 가상 키보드를 표시할 수 있다. 프로세서(210)는, 상태(710)에서 상기 제1 영역 내에서 가상 터치 패드를 상기 제1 영역의 적어도 일부에 중첩된 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 가상 키보드의 크기를 조정(adjust)하기 위한 입력(711)을 수신할 수 있다. 다양한 실시예들에서, 입력(711)은, 상기 가상 키보드의 복수의 사이드들 중 어느 하나의(any one) 사이드로부터 개시될 수 있다. 프로세서(210)는, 입력(711)을 수신하는 것에 응답하여, 상태(712)와 같이, 입력(711)에 의해 조정된 크기(예: 확대된 크기 또는 축소된 크기)를 가지는 상기 가상 키보드를 표시할 수 있다.
또 다른 예를 들어, 도 7c를 참조하면, 상태(720)에서, 프로세서(210)는, 제1 영역 내에서 상기 가상 터치 패드를 표시하고, 상기 제1 영역의 적어도 일부에 중첩된 제2 영역 내에서 상기 가상 키보드를 표시할 수 있다. 프로세서(210)는, 상태(720)에서 상기 제1 영역 내에서 가상 터치 패드를 상기 제1 영역의 적어도 일부에 중첩된 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 가상 키보드와 관련된 영역에서 표시되는 객체(721)에 대한 입력을 수신할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(720)에서 객체(721)에 대한 입력을 수신하는 것에 응답하여, 상태(720)를 상태(725)로 전환할 수 있다. 다양한 실시예들에서, 상태(725)는, 상기 가상 키보드를 표시하는 것을 중단하는 상태를 의미할 수 있다. 다양한 실시예들에서, 상태(725)에서, 프로세서(210)는, 상기 가상 키보드를 다시 복원하기 위한 아이콘(726)을 상기 가상 터치 패드에 중첩하여(as superimposed on) 표시할 수 있다. 다양한 실시예들에서, 아이콘(726)은, 상기 가상 키보드를 나타내기 위한 시각적 객체를 포함할 수 있다. 다양한 실시예들에서, 아이콘(726)은, 상기 가상 터치 패드 위에서 이동될 수 있다. 예를 들면, 아이콘(726)은, 아이콘(726)에 대한 드래그 입력에 기반하여, 상기 가상 터치 패드 위에서 이동될 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상태(725)에서 아이콘(726)에 대한 입력을 수신하는 것에 응답하여, 상태(725)를 상태(720)로 복원할 수 있다. 예를 들면, 프로세서(210)는, 아이콘(726)에 대한 입력을 수신하는 것에 응답하여, 상기 가상 키보드가 이전에 표시되었던 위치에서 상기 가상 키보드를 표시할 수 있다. 하지만, 이에 제한되지 않는다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는, 전자 장치(101)와 연결된 전자 장치(102)의 디스플레이에서 전자 장치(101)에서 실행되고 있는 어플리케이션의 사용자 인터페이스를 표시하는 동안, 상기 사용자 인터페이스에 대한 인터액션을 제공하기 위한 가상 입력 툴을 디스플레이(230)를 이용하여 표시할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는, 사용자가 직관적으로 상기 가상 입력 툴을 이용할 수 있도록, 상기 가상 입력 툴을 전자 장치(101) 또는 전자 장치(102)에 수신되는 지정된 입력에 기반하여 표시할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는, 상기 가상 입력 툴로 상기 가상 터치 패드 및 상기 가상 키보드를 동시에(concurrently) 표시하는 동안 오입력이 발생하는 것을 방지 하기 위해, 상기 가상 터치 패드 또는 상기 가상 키보드 중 적어도 하나의 기능을 비활성화하거나 상기 가상 터치 패드 또는 상기 가상 키보드 중 적어도 하나와 관련된 표시(representation)를 변경할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는, 사용자가 보다 쉽게(easily) 상기 가상 입력 툴을 이용할 수 있도록 상기 가상 입력 툴의 표시(예: 크기 또는 표시 위치 등)를 변경하거나 상기 가상 입력 툴로부터 수신되는 입력의 속성(예: 절대 좌표 기법, 상대 좌표 기법 등)을 변경할 수 있다. 다시 말해, 전자 장치(101)는, 상기 가상 입력 툴을 제공함으로써, 강화된(enhanced) 사용자 경험을 제공할 수 있다.
상술한 바와 같은, 다양한 실시예들에 따른 전자 장치(electronic device)(예: 전자 장치(101))는 통신 회로(예: 통신 회로(240))와, 명령어들을 저장하는 적어도 하나의 메모리(예: 메모리(220))와, 디스플레이(예: 디스플레이(230))와, 적어도 하나의 프로세서(예: 프로세서(210))를 포함할 수 있고, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 상기 통신 회로를 이용하여 외부 장치(external device)의 다른(another) 디스플레이 상에서 표시하고, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하고, 상기 수신에 응답하여, 상기 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하도록 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하고, 상기 수신에 응답하여, 상기 디스플레이를 이용하여 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 표시하도록 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터 상기 제2 영역으로 향하는(toward) 드래그 입력을 수신하고, 상기 드래그 입력의 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하고, 상기 인식에 기반하여, 상기 외부 장치의 상기 다른 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 상기 통신 회로를 이용하여 변경하도록 더 구성될 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 드래그 입력이 개시됨을 식별하는 것에 응답하여 상기 가상 키보드를 비활성화(disable)함으로써, 상기 드래그 입력의 상기 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 상기 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 상기 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하도록 구성될 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 가상 키보드 위에서(over) 상기 가상 키보드가 비활성화됨을 나타내기(indicate) 위한 반투명(translucent) 레이어(layer)를 표시하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터의 드래그 입력을 수신하고, 상기 드래그 입력의 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제1 영역으로부터 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상기 드래그 입력과 상기 가상 키보드 사이의 접촉(contact)을 피하기(avoid) 위해 상기 가상 키보드의 표시(representation)를 변경하도록 더 구성될 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제2 영역으로부터 상기 제1 영역으로 이동함을 식별하는 것에 응답하여, 상기 가상 키보드의 상기 변경된 표시를 복원하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 전자 장치의 방향(orientation)이 변경됨을 식별하는 것에 응답하여, 상기 가상 터치 패드 및 상기 가상 키보드의 배치(arrangement)를 변경하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 사이드(side)들 중 지정된 사이드(specified side)를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 상기 제2 영역으로부터 이동하도록 더 구성될 수 있다. 다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 남은 사이드들 중 하나의(a) 사이드를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 표시하는 영역을 확대하거나 축소하도록 더 구성될 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하도록 더 구성될 수 있고, 상기 지정된 입력은, 상기 제2 사용자 인터페이스 내에 포함된 복수의 실행가능한(executable) 객체들 중 지정된 객체에 대한 터치 입력에 대응할 수 있다.
다양한 실시예들에서, 상기 지정된 입력은, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안 상기 전자 장치의 자세(posture)가 지정된 자세(specified posture)로 변경됨을 식별하는 것에 대응할 수 있다.
다양한 실시예들에서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하도록 더 구성될 수 있고, 상기 지정된 입력은, 상기 제1 사용자 인터페이스 내에 포함된 텍스트 입력 부분 또는 상기 제2 사용자 인터페이스 내에 포함된 텍스트 입력 부분에 대한 터치 입력에 대응할 수 있다.
다양한 실시예들에서, 상기 제2 영역은, 상기 제1 영역 아래에(below) 배치될 수 있다.
상술한 바와 같은 다양한 실시예들에 따른 비일시적(non-transitory) 컴퓨터 판독가능 저장 매체(medium)는, 전자 장치(electronic device)의 프로세서에 의해 실행될 시, 상기 전자 장치와 구별되는 다른(another) 전자 장치의 디스플레이 상에서 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 표시하고, 상기 제1 사용자 인터페이스를 상기 다른 전자 장치의 상기 디스플레이 상에서 표시하는 동안, 지정된 입력을 수신하는 것에 응답하여, 상기 전자 장치의 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드를 표시하도록 상기 전자 장치를 야기하는 프로그램을 저장할 수 있다.
다양한 실시예들에서, 상기 프로그램은, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 다른 전자 장치의 상기 디스플레이 상에서 표시하는 동안, 상기 전자 장치의 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하고, 상기 수신에 응답하여, 상기 전자 장치의 상기 디스플레이를 이용하여 상기 제2 사용자 인터페이스로부터 변경된 상기 강 터치 패드 및 상기 가상 키보드를 표시하도록 상기 전자 장치를 야기할 수 있다.
다양한 실시예들에서, 상기 프로그램은, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터 상기 제2 영역으로 향하는(toward) 드래그 입력을 수신하고, 상기 드래그 입력의 접촉(contact)이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하고, 상기 인식에 기반하여, 상기 다른 전자 장치의 상기 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 상기 통신 회로를 이용하여 변경하도록 상기 전자 장치를 야기할 수 있다. 다양한 실시예들에서, 상기 프로그램은, 상기 드래그 입력의 상기 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 가상 키보드 위에서 상기 가상 키보드가 비활성화됨을 나타내기 위한 반투명 레이어를 표시하도록 상기 전자 장치를 야기할 수 있다.
다양한 실시예들에서, 상기 프로그램은, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터의 드래그 입력을 수신하고, 상기 드래그 입력의 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제1 영역으로부터 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상기 드래그 입력과 상기 가상 키보드 사이의 접촉(contact)을 피하기(avoid) 위해 상기 가상 키보드의 표시(representation)를 변경하도록 상기 전자 장치를 야기할 수 있다. 다양한 실시예들에서, 상기 프로그램은, 상기 드래그 입력의 상기 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제2 영역으로부터 상기 제1 영역으로 이동함을 식별하는 것에 응답하여, 상기 가상 키보드의 상기 변경된 표시를 복원하도록 상기 전자 장치를 야기할 수 있다.
도 8은 다양한 실시예들에 따른 전자 장치의 동작의 예를 도시한다. 이러한 동작은, 도 1 또는 도 2에 도시된 전자 장치(101), 또는 전자 장치(101)에 포함된 프로세서(210)에 의해 수행될 수 있다.
도 8을 참조하면, 동작 801에서, 프로세서(210)는, 전자 장치(101)에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 통신 회로(240)를 이용하여 외부 장치의 디스플레이 상에서 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 디스플레이 상에서 표시하는 동안, 디스플레이(230)를 이용하여 상기 어플리케이션의 제2 사용자 인터페이스를 표시할 수 있다. 다양한 실시예들에서, 상기 외부 장치의 상기 디스플레이의 표시 영역의 크기는 디스플레이(230)의 표시 영역의 크기보다 클 수 있다. 다양한 실시예들에서, 상기 제1 사용자 인터페이스는, 상기 제2 사용자 인터페이스에 의해 제공되는 콘텐트들 뿐 아니라 상기 제2 사용자 인터페이스에 의해 제공되지 않는 다른 콘텐트들을 포함할 수 있다.
동작 802에서, 프로세서(210)는, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 디스플레이 상에서 표시하는 동안, 지정된 입력을 수신할 수 있다. 예를 들면, 상기 지정된 입력은 상기 제2 사용자 인터페이스 내에 포함된 복수의 실행가능한 객체들 중 지정된 객체에 대한 터치 입력에 대응할 수 있다. 다른 예를 들면, 상기 지정된 입력은 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 디스플레이 상에서 표시하는 동안 전자 장치(101)의 자세가 지정된 자세로 변경됨을 식별하는 것에 대응할 수도 있다. 또 다른 예를 들면, 상기 지정된 입력은 상기 제1 사용자 인터페이스 내에 포함된 텍스트 입력 부분에 대한 입력 또는 상기 제2 사용자 인터페이스 내에 포함된 텍스트 입력 부분에 대한 입력에 대응할 수도 있다. 하지만, 이에 제한되지 않는다.
동작 803에서, 프로세서(210)는, 상기 지정된 입력을 수신하는 것에 응답하여, 디스플레이(230)를 이용하여 제1 영역 내에서 가상 터치 패드를 상기 제1 영역과 다른 제2 영역 내에서 가상 키보드를 표시할 수 있다. 예를 들면, 상기 제2 영역은, 상기 제1 영역 아래에 배치될 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 지정된 입력을 수신하는 것에 응답하여 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 표시할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안 전자 장치(101)의 방향(orientation)이 변경됨을 식별하는 것에 응답하여, 상기 가상 터치 패드 및 상기 가상 키보드의 배치 또는 표시(representation)를 변경할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안 상기 가상 키보드의 사이드들 중 지정된 사이드를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 상기 제2 영역으로부터 다른 영역으로 이동할 수 있다. 다양한 실시예들에서, 프로세서(210)는, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안 상기 가상 키보드의 남은 사이드들 중 하나의 사이드를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 표시하는 영역을 확대하거나 축소할 수 있다. 하지만, 이에 제한되지 않는다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는 사용자가 보다 쉽게 상기 외부 장치의 디스플레이 상에서 표시되는 어플리케이션의 사용자 인터페이스에 대한 인터액션을 야기할 수 있도록 상기 가상 입력 툴로 상기 가상 터치 패드 및 상기 가상 키보드를 동시에 표시할 수 있다. 전자 장치(101)는, 이러한 가상 터치 패드 및 가상 키보드의 표시(display)를 통해, 강화된 사용자 경험을 제공할 수 있다.
도 9는 다양한 실시예들에 따라 가상 터치 패드 및 가상 키보드의 배치를 결정하는 전자 장치의 동작의 예를 도시한다. 이러한 동작은, 도 1 또는 도 2에 도시된 전자 장치(101), 또는 전자 장치(101)에 포함된 프로세서(210)에 의해 수행될 수 있다.
도 9의 동작 901 내지 동작 904는 도 8의 동작 802와 관련될 수 있다.
도 9를 참조하면, 동작 901에서, 프로세서(210)는, 상기 지정된 입력을 수신할 수 있다.
동작 902에서, 프로세서(210)는, 상기 지정된 입력을 수신하는 것에 응답하여, 상기 외부 장치의 디스플레이 상에서 표시되고 있는 사용자 인터페이스를 제공하는 어플리케이션의 유형을 식별할 수 있다. 예를 들면, 프로세서(210)는, 상기 어플리케이션이 문서 편집을 위한 어플리케이션인지 게임을 위한 어플리케이션인지 웹 서치를 위한 어플리케이션인지 등을 식별할 수 있다.
동작 903에서, 프로세서(210)는, 상기 식별된 유형에 기반하여 상기 가상 터치 패드 및 상기 가상 키보드의 구성을 결정할 수 있다. 예를 들면, 프로세서(210)는, 상기 외부 장치의 디스플레이 상에서 표시되고 있는 사용자 인터페이스를 제공하는 상기 어플리케이션이 포인터의 이동을 주로 요구하는 어플리케이션이라고 식별한 경우, 상기 가상 터치 패드를 상기 가상 키보드보다 크게 표시할 것을 결정할 수 있다. 다른 예를 들면, 프로세서(210)는, 상기 외부 장치의 디스플레이 상에서 표시되고 있는 사용자 인터페이스를 제공하는 상기 어플리케이션이 문자 입력을 주로 요구하는 어플리케이션이라고 식별한 경우, 상기 가상 터치 패드를 상기 가상 키보드보다 작게 표시할 것을 결정할 수 있다. 하지만, 이에 제한되지 않는다.
동작 904에서, 프로세서(210)는, 상기 결정된 구성에 기반하여 획득된 프레임 데이터를 디스플레이(230)에게 제공할 수 있다. 예를 들면, 프로세서(210)는 디스플레이(230) 내에 포함된 내장 메모리(예: GRAM(graphic random access memory)에 상기 프레임 데이터를 기록할 수 있다. 상기 프레임 데이터는, 디스플레이 상에서 상기 가상 터치 패드 및 상기 가상 키보드를 표시하기 위해 이용될 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는 어플리케이션의 유형에 따라 상기 가상 터치 패드 및 상기 가상 키보드의 구성을 적응적으로 변경할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는 이러한 변경을 통해 강화된 사용자 경험을 제공할 수 있다.
도 10은 다양한 실시예들에 따라 가상 터치 패드 또는 가상 키보드를 비활성화하는 전자 장치의 동작의 예를 도시한다. 이러한 동작은, 도 1 또는 도 2에 도시된 전자 장치(101), 또는 전자 장치(101)에 포함된 프로세서(210)에 의해 수행될 수 있다.
도 10의 동작 1001 내지 동작 1010은 도 8의 동작 803과 관련될 수 있다.
도 10을 참조하면, 동작 1001에서, 프로세서(210)는 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시할 수 있다.
동작 1002에서, 프로세서(210)는, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 드래그 입력을 수신할 수 있다.
동작 1003에서, 프로세서(210)는, 상기 드래그 입력이 상기 제1 영역 내에서 시작되는지 여부를 식별할 수 있다. 예를 들면, 프로세서(210)는, 상기 드래그 입력에 기반하여 상기 가상 키보드 또는 상기 가상 터치 패드에서 오입력이 발생하는 것을 방지하기 위해 상기 드래그 입력이 상기 제1 영역 내에서 시작되는지 여부를 식별할 수 있다. 프로세서(210)는, 상기 드래그 입력이 상기 제1 영역 내에서 시작됨을 식별하는 것에 기반하여, 동작 1004를 수행할 수 있다. 이와 달리, 프로세서(210)는, 상기 드래그 입력이 상기 제2 영역 내에서 시작됨을 식별하는 것에 기반하여, 동작 1005를 수행할 수 있다.
동작 1004에서, 프로세서(210)는, 상기 드래그 입력이 상기 제1 영역 내에서 시작됨을 식별하는 것에 기반하여, 상기 드래그 입력의 접촉이 디스플레이 상에서 유지되는 동안 상기 가상 키보드를 비활성화할 수 있다. 프로세서(210)는, 상기 드래그 입력에 의해 상기 가상 키보드로부터 오입력이 발생하는 것을 방지하기 위해 상기 가상 키보드를 비활성화할 수 있다.
동작 1005에서, 프로세서(210)는, 상기 드래그 입력이 상기 제2 영역 내에서 시작됨을 식별하는 것에 기반하여, 상기 드래그 입력의 접촉이 디스플레이 상에서 유지되는 동안 상기 가상 터치 패드를 비활성화할 수 있다. 프로세서(210)는, 상기 드래그 입력에 의해 상기 가상 터치 패드로부터 오입력이 발생하는 것을 방지하기 위해 상기 가상 터치 패드를 비활성화할 수 있다.
동작 1006에서, 프로세서(210)는, 상기 가상 키보드 또는 상기 가상 터치 패드를 비활성화하는 동안, 상기 드래그 입력이 해제됨(released)을 식별할 수 있다.
동작 1007에서, 프로세서(210)는, 상기 드래그 입력이 해제된 후 다른(another) 드래그 입력을 수신할 수 있다.
동작 1008에서, 프로세서(210)는, 상기 다른 드래그 입력이 지정된 시간 안에서(within) 수신되었는지 여부를 식별할 수 있다. 예를 들면, 프로세서(210)는 상기 다른 드래그 입력이 상기 드래그 입력의 후속 입력인지 여부를 식별하기 위해, 상기 다른 드래그 입력이 상기 지정된 시간 안에서 수신되었는지 여부를 식별할 수 있다. 프로세서(210)는, 상기 다른 드래그 입력이 상기 지정된 시간 안에서 수신되었음을 식별하는 것에 기반하여, 동작 1009를 수행할 수 있다. 이와 달리, 프로세서(210)는, 상기 다른 드래그 입력이 상기 지정된 시간 밖에서(outside of) 수신되었음을 식별하는 것에 기반하여, 동작 1010를 수행할 수 있다.
동작 1009에서, 프로세서(210)는, 상기 다른 드래그 입력이 상기 지정된 시간 안에서 수신되었음을 식별하는 것에 기반하여, 상기 다른 드래그 입력의 시작 위치와 독립적으로 상기 가상 터치 패드 또는 상기 가상 키보드의 비활성화를 유지할 수 있다. 상기 다른 드래그 입력이 상기 지정된 시간 안에서 수신되었음을 식별하는 경우, 프로세서(210)는, 상기 다른 드래그 입력을 상기 드래그 입력의 후속 입력으로 처리하기 위해, 상기 다른 드래그 입력의 시작 위치와 독립적으로 상기 가상 터치 패드 또는 상기 가상 키보드의 비활성화를 유지할 수 있다.
동작 1010에서, 프로세서(210)는, 상기 다른 드래그 입력이 상기 지정된 시간 밖에서 수신되었음을 식별하는 것에 기반하여, 상기 다른 드래그 입력의 시작 위치에 기반하여 상기 가상 터치 패드의 상태 및 상기 가상 키보드의 상태를 결정할 수 있다. 예를 들어, 상기 다른 드래그 입력이 상기 가상 터치 패드를 표시하는 상기 제1 영역에서 시작된 경우, 프로세서(210)는 상기 가상 터치 패드의 상태를 활성 상태로 상기 가상 키보드의 상태를 비활성화 상태로 결정하고, 상기 결정에 기반하여 상기 가상 터치 패드 및 상기 가상 키보드를 제어할 수 있다. 다른 예를 들어, 상기 다른 드래그 입력이 상기 가상 터치 패드를 표시하는 상기 제2 영역에서 시작된 경우, 프로세서(210)는 상기 가상 키보드의 상태를 활성 상태로 상기 가상 터치 패드의 상태를 비활성화 상태로 결정하고, 상기 결정에 기반하여 상기 가상 터치 패드 및 상기 가상 키보드를 제어할 수 있다.
상술한 바와 같이, 다양한 실시예들에 따른 전자 장치(101)는, 상기 가상 터치 패드 및 상기 가상 키보드를 동시에 표시하는 동안 수신되는 입력에 의해 사용자에 의해 의도되지 않은 오입력이 발생하는 것을 방지하기 위해, 상기 가상 터치 패드 또는 상기 가상 키보드를 비활성화할 수 있다. 다양한 실시예들에 따른 전자 장치(101)는 상기 비활성화를 통해 강화된 사용자 경험을 제공할 수 있다.
상술한 바와 같은, 다양한 실시예들에 따른 전자 장치를 동작하기 위한 방법은, 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 외부 장치(external device)의 디스플레이 상에서 표시하는 동작과, 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하는 동작과, 상기 수신에 응답하여, 상기 전자 장치의 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동작을 포함할 수 있다.
다양한 실시예들에서, 상기 제1 사용자 인터페이스를 표시하는 동작은, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하는 동작을 포함할 수 있고, 상기 가상 터치 패드 및 상기 가상 키보드를 표시하는 동작은, 상기 수신에 응답하여 상기 디스플레이를 이용하여 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 표시하는 동작을 포함할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터 상기 제2 영역으로 향하는(toward) 드래그 입력을 수신하는 동작과, 상기 드래그 입력의 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하는 동작과, 상기 인식에 기반하여, 상기 외부 장치의 상기 다른 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 상기 통신 회로를 이용하여 변경하는 동작을 더 포함할 수 있다. 다양한 실시예들에서, 상기 인식하는 동작은, 상기 드래그 입력이 개시됨을 식별하는 것에 응답하여 상기 가상 키보드를 비활성화(disable)함으로써, 상기 드래그 입력의 상기 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 상기 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 상기 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하는 동작을 포함할 수 있다. 다양한 실시예들에서, 상기 방법은, 상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 가상 키보드 위에서(over) 상기 가상 키보드가 비활성화됨을 나타내기(indicate) 위한 반투명(translucent) 레이어(layer)를 표시하는 동작을 더 포함할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터의 드래그 입력을 수신하는 동작과, 상기 드래그 입력의 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제1 영역으로부터 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상기 드래그 입력과 상기 가상 키보드 사이의 접촉(contact)을 피하기(avoid) 위해 상기 가상 키보드의 표시(representation)를 변경하는 동작을 더 포함할 수 있다. 다양한 실시예들에서, 상기 방법은, 상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제2 영역으로부터 상기 제1 영역으로 이동함을 식별하는 것에 응답하여, 상기 가상 키보드의 상기 변경된 표시를 복원하는 동작을 더 포함할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 전자 장치의 방향(orientation)이 변경됨을 식별하는 것에 응답하여, 상기 가상 터치 패드 및 상기 가상 키보드의 배치(arrangement)를 변경하는 동작을 더 포함할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 사이드(side)들 중 지정된 사이드(specified side)를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 상기 제2 영역으로부터 이동하는 동작을 더 포함할 수 있다. 다양한 실시예들에서, 상기 방법은, 상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 남은 사이드들 중 하나의(a) 사이드를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 표시하는 영역을 확대하거나 축소하는 동작을 더 포함할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하는 동작을 더 포함할 수 있고, 상기 지정된 입력은, 상기 제2 사용자 인터페이스 내에 포함된 복수의 실행가능한(executable) 객체들 중 지정된 객체에 대한 터치 입력에 대응할 수 있다.
다양한 실시예들에서, 상기 방법은, 상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하는 동작을 더 포함할 수 있고, 상기 지정된 입력은, 상기 제1 사용자 인터페이스 내에 포함된 텍스트 입력 부분 또는 상기 제2 사용자 인터페이스 내에 포함된 텍스트 입력 부분에 대한 터치 입력에 대응할 수 있다.
본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(ROM: read only memory), 전기적 삭제가능 프로그램가능 롬(EEPROM: electrically erasable programmable read only memory), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(CD-ROM: compact disc-ROM), 디지털 다목적 디스크(DVDs: digital versatile discs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 상기 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(local area network), WLAN(wide LAN), 또는 SAN(storage area network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시 예를 수행하는 장치에 접속할 수도 있다.
상술한 본 개시의 구체적인 실시예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 전자 장치(electronic device)에 있어서,
    통신 회로;
    명령어들을 저장하는 적어도 하나의 메모리;
    디스플레이; 및
    적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 상기 통신 회로를 이용하여 외부 장치(external device)의 다른(another) 디스플레이 상에서 표시하고,
    상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 지정된 입력(specified input)을 수신하고,
    상기 수신에 응답하여, 상기 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드(virtual touch pad)를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하도록 구성된 전자 장치.
  2. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하고,
    상기 수신에 응답하여, 상기 디스플레이를 이용하여 상기 제2 사용자 인터페이스로부터 변경된 상기 가상 터치 패드 및 상기 가상 키보드를 표시하도록 구성된 전자 장치.
  3. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터 상기 제2 영역으로 향하는(toward) 드래그 입력을 수신하고,
    상기 드래그 입력의 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하고,
    상기 인식에 기반하여, 상기 외부 장치의 상기 다른 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 상기 통신 회로를 이용하여 변경하도록 더 구성된 전자 장치.
  4. 청구항 3에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 드래그 입력이 개시됨을 식별하는 것에 응답하여 상기 가상 키보드를 비활성화(disable)함으로써, 상기 드래그 입력의 상기 접촉(contact)이 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 상기 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 상기 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하도록 구성된 전자 장치.
  5. 청구항 4에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 가상 키보드 위에서(over) 상기 가상 키보드가 비활성화됨을 나타내기(indicate) 위한 반투명(translucent) 레이어(layer)를 표시하도록 더 구성된 전자 장치.
  6. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터의 드래그 입력을 수신하고,
    상기 드래그 입력의 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제1 영역으로부터 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상기 드래그 입력과 상기 가상 키보드 사이의 접촉(contact)을 피하기(avoid) 위해 상기 가상 키보드의 표시(representation)를 변경하도록 더 구성된 전자 장치.
  7. 청구항 6에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 드래그 입력의 상기 접촉이 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제2 영역으로부터 상기 제1 영역으로 이동함을 식별하는 것에 응답하여, 상기 가상 키보드의 상기 변경된 표시를 복원하도록 더 구성된 전자 장치.
  8. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 전자 장치의 방향(orientation)이 변경됨을 식별하는 것에 응답하여, 상기 가상 터치 패드 및 상기 가상 키보드의 배치(arrangement)를 변경하도록 더 구성된 전자 장치.
  9. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 사이드(side)들 중 지정된 사이드(specified side)를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 상기 제2 영역으로부터 이동하도록 더 구성된 전자 장치.
  10. 청구항 9에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 디스플레이를 이용하여 상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 가상 키보드(virtual keyboard)를 표시하는 동안 상기 가상 키보드의 남은 사이드들 중 하나의(a) 사이드를 이동하기 위한 터치 입력을 수신하는 것에 응답하여, 상기 가상 키보드를 표시하는 영역을 확대하거나 축소하도록 더 구성된 전자 장치.
  11. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하도록 더 구성되고,
    상기 지정된 입력은,
    상기 제2 사용자 인터페이스 내에 포함된 복수의 실행가능한(executable) 객체들 중 지정된 객체에 대한 터치 입력에 대응하는 전자 장치.
  12. 청구항 1에 있어서, 상기 지정된 입력은,
    상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안 상기 전자 장치의 자세(posture)가 지정된 자세(specified posture)로 변경됨을 식별하는 것에 대응하는 전자 장치.
  13. 청구항 1에 있어서, 상기 적어도 하나의 프로세서는, 상기 명령어들을 실행할 시,
    상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 외부 장치의 상기 다른 디스플레이 상에서 표시하는 동안, 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하도록 더 구성되고,
    상기 지정된 입력은,
    상기 제1 사용자 인터페이스 내에 포함된 텍스트 입력 부분 또는 상기 제2 사용자 인터페이스 내에 포함된 텍스트 입력 부분에 대한 터치 입력에 대응하는 전자 장치.
  14. 청구항 1에 있어서, 상기 제2 영역은,
    상기 제1 영역 아래에(below) 배치되는 전자 장치.
  15. 프로그램(a program)을 저장하는 비일시적(non-transitory) 컴퓨터 판독가능 저장 매체(medium)에 있어서,
    상기 프로그램은, 전자 장치(electronic device)의 프로세서에 의해 실행될 시,
    상기 전자 장치와 구별되는 다른(another) 전자 장치의 디스플레이 상에서 상기 전자 장치에서 실행되고 있는 어플리케이션의 제1 사용자 인터페이스를 표시하고,
    상기 제1 사용자 인터페이스를 상기 다른 전자 장치의 상기 디스플레이 상에서 표시하는 동안, 지정된 입력을 수신하는 것에 응답하여, 상기 전자 장치의 디스플레이를 이용하여 제1 영역 내에서 가상 터치 패드를 상기 제1 영역과 구별되는 제2 영역 내에서 가상 키보드를 표시하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
  16. 청구항 15에 있어서, 상기 프로그램은,
    상기 어플리케이션의 상기 제1 사용자 인터페이스를 상기 다른 전자 장치의 상기 디스플레이 상에서 표시하는 동안, 상기 전자 장치의 상기 디스플레이를 이용하여 상기 제1 영역 및 상기 제2 영역을 포함하는 영역 내에서 상기 어플리케이션의 제2 사용자 인터페이스를 표시하고,
    상기 수신에 응답하여, 상기 전자 장치의 상기 디스플레이를 이용하여 상기 제2 사용자 인터페이스로부터 변경된 상기 강 터치 패드 및 상기 가상 키보드를 표시하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
  17. 청구항 15에 있어서, 상기 프로그램은,
    상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터 상기 제2 영역으로 향하는(toward) 드래그 입력을 수신하고,
    상기 드래그 입력의 접촉(contact)이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안, 상기 가상 키보드에 포함된 복수의 키들 중 어느 하나(any one) 위를 지나가는(move across over) 상기 드래그 입력의 경로를 상기 가상 키보드에 대한 입력 대신(instead of) 상기 가상 터치 패드에 대한 입력의 일부로 인식하고,
    상기 인식에 기반하여, 상기 다른 전자 장치의 상기 디스플레이 상에서 표시되고 있는 상기 제1 사용자 인터페이스의 표시(representation)를 상기 통신 회로를 이용하여 변경하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
  18. 청구항 17에 있어서, 상기 프로그램은,
    상기 드래그 입력의 상기 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 가상 키보드 위에서 상기 가상 키보드가 비활성화됨을 나타내기 위한 반투명 레이어를 표시하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
  19. 청구항 15에 있어서, 상기 프로그램은,
    상기 제1 영역 내에서 상기 가상 터치 패드를 상기 제2 영역 내에서 상기 가상 키보드를 표시하는 동안, 상기 제1 영역으로부터의 드래그 입력을 수신하고,
    상기 드래그 입력의 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제1 영역으로부터 상기 제2 영역으로 향함을(toward) 식별하는 것에 응답하여, 상기 드래그 입력과 상기 가상 키보드 사이의 접촉(contact)을 피하기(avoid) 위해 상기 가상 키보드의 표시(representation)를 변경하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
  20. 청구항 19에 있어서, 상기 프로그램은,
    상기 드래그 입력의 상기 접촉이 상기 전자 장치의 상기 디스플레이 상에서 유지되는 동안 상기 드래그 입력이 상기 제2 영역으로부터 상기 제1 영역으로 이동함을 식별하는 것에 응답하여, 상기 가상 키보드의 상기 변경된 표시를 복원하도록 상기 전자 장치를 야기하는 비일시적 컴퓨터 판독가능 저장 매체.
KR1020180090321A 2018-08-02 2018-08-02 가상 입력 툴을 제공하기 위한 전자 장치 및 방법 KR102545598B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180090321A KR102545598B1 (ko) 2018-08-02 2018-08-02 가상 입력 툴을 제공하기 위한 전자 장치 및 방법
US16/428,066 US11340776B2 (en) 2018-08-02 2019-05-31 Electronic device and method for providing virtual input tool
EP19845545.3A EP3791253B1 (en) 2018-08-02 2019-05-31 Electronic device and method for providing virtual input tool
PCT/KR2019/006579 WO2020027417A1 (en) 2018-08-02 2019-05-31 Electronic device and method for providing virtual input tool
CN201980051477.3A CN112534390B (zh) 2018-08-02 2019-05-31 用于提供虚拟输入工具的电子装置及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180090321A KR102545598B1 (ko) 2018-08-02 2018-08-02 가상 입력 툴을 제공하기 위한 전자 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200015045A true KR20200015045A (ko) 2020-02-12
KR102545598B1 KR102545598B1 (ko) 2023-06-20

Family

ID=69229727

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180090321A KR102545598B1 (ko) 2018-08-02 2018-08-02 가상 입력 툴을 제공하기 위한 전자 장치 및 방법

Country Status (4)

Country Link
US (1) US11340776B2 (ko)
EP (1) EP3791253B1 (ko)
KR (1) KR102545598B1 (ko)
WO (1) WO2020027417A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112416238A (zh) * 2020-11-30 2021-02-26 联想(北京)有限公司 信息处理方法、装置及电子设备和存储介质
US20220382374A1 (en) * 2021-05-26 2022-12-01 Da-Yuan Huang Methods, devices, and computer-readable storage media for performing a function based on user input

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114825A1 (en) * 2003-11-24 2005-05-26 International Business Machines Corporation Laptop computer including a touch-sensitive display and method of driving the laptop computer
KR20130007811A (ko) * 2011-07-11 2013-01-21 삼성전자주식회사 외부 장치와 연결된 휴대 단말기의 화면 표시 방법 및 장치
KR20130053594A (ko) * 2011-11-15 2013-05-24 삼성전자주식회사 터치스크린 단말기에서 문자 입력 방법 및 장치
US20160072944A1 (en) * 2013-05-17 2016-03-10 Kyocera Corporation Mobile electronic device, control method, and computer program product
KR20170066916A (ko) * 2015-12-07 2017-06-15 삼성전자주식회사 전자 장치 및 그의 제어 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5681220A (en) 1994-03-18 1997-10-28 International Business Machines Corporation Keyboard touchpad combination in a bivalve enclosure
US7661069B2 (en) * 2005-03-31 2010-02-09 Microsoft Corporation System and method for visually expressing user interface elements
KR20070079858A (ko) 2006-02-03 2007-08-08 유주영 터치패드를 이용한 드래그 기능 구현 방법
US9015616B2 (en) * 2008-10-22 2015-04-21 Google Inc. Search initiation
US8527894B2 (en) * 2008-12-29 2013-09-03 International Business Machines Corporation Keyboard based graphical user interface navigation
US20110248822A1 (en) * 2010-04-09 2011-10-13 Jc Ip Llc Systems and apparatuses and methods to adaptively control controllable systems
US20130082840A1 (en) * 2011-10-03 2013-04-04 Research In Motion Limited Method and Apparatus Pertaining to Automatically Moving a Component that Comprises a Part of a Portable Electronic Device
CN103907003B (zh) * 2011-10-28 2016-10-26 本田技研工业株式会社 车辆诊断方法和外部诊断装置
US9035883B2 (en) * 2012-03-07 2015-05-19 Google Technology Holdings LLC Systems and methods for modifying virtual keyboards on a user interface
US9378581B2 (en) * 2012-03-13 2016-06-28 Amazon Technologies, Inc. Approaches for highlighting active interface elements
KR102066040B1 (ko) 2012-08-27 2020-01-15 삼성전자 주식회사 휴대 장치의 입력 처리 방법 및 그 휴대 장치
KR20140055327A (ko) 2012-10-31 2014-05-09 김태혁 터치 방식 입력장치를 갖는 이동 단말기의 사용자 모니터와 연동을 위한 인터페이스 방법
US9176668B2 (en) * 2013-10-24 2015-11-03 Fleksy, Inc. User interface for text input and virtual keyboard manipulation
KR20160001180A (ko) * 2014-06-26 2016-01-06 삼성전자주식회사 가상 키보드의 디스플레이를 위한 방법 및 그 전자 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114825A1 (en) * 2003-11-24 2005-05-26 International Business Machines Corporation Laptop computer including a touch-sensitive display and method of driving the laptop computer
KR20130007811A (ko) * 2011-07-11 2013-01-21 삼성전자주식회사 외부 장치와 연결된 휴대 단말기의 화면 표시 방법 및 장치
KR20130053594A (ko) * 2011-11-15 2013-05-24 삼성전자주식회사 터치스크린 단말기에서 문자 입력 방법 및 장치
US20160072944A1 (en) * 2013-05-17 2016-03-10 Kyocera Corporation Mobile electronic device, control method, and computer program product
KR20170066916A (ko) * 2015-12-07 2017-06-15 삼성전자주식회사 전자 장치 및 그의 제어 방법

Also Published As

Publication number Publication date
EP3791253A4 (en) 2021-06-23
WO2020027417A1 (en) 2020-02-06
US20200042167A1 (en) 2020-02-06
EP3791253B1 (en) 2023-10-18
EP3791253A1 (en) 2021-03-17
US11340776B2 (en) 2022-05-24
CN112534390A (zh) 2021-03-19
KR102545598B1 (ko) 2023-06-20

Similar Documents

Publication Publication Date Title
US11609681B2 (en) Reduced size configuration interface
US10942546B2 (en) Electronic device and method for processing gesture thereof
KR102649254B1 (ko) 디스플레이 제어 방법, 저장 매체 및 전자 장치
EP3164785B1 (en) Wearable device user interface control
US20120280898A1 (en) Method, apparatus and computer program product for controlling information detail in a multi-device environment
KR102481632B1 (ko) 전자 장치 및 전자 장치의 디스플레이를 이용한 적응적 터치 입력 방법
KR20170053280A (ko) 복수의 전자장치 사이에서 가상 객체를 표시하는 방법 및 이를 지원하는 전자 장치
KR101831741B1 (ko) 원격 다중 터치 제어
US10890982B2 (en) System and method for multipurpose input device for two-dimensional and three-dimensional environments
KR20160050682A (ko) 전자장치의 화면 표시 제어 방법 및 장치
KR102521192B1 (ko) 전자 장치 및 그의 동작 방법
KR102542913B1 (ko) 회전체를 구비한 전자 장치 및 이의 동작 방법
US10019148B2 (en) Method and apparatus for controlling virtual screen
KR20160043393A (ko) 전자 펜 운용 방법 및 이를 지원하는 전자 장치
KR20150039552A (ko) 전자 장치의 디스플레이 조작 방법 및 그 전자 장치
KR102545598B1 (ko) 가상 입력 툴을 제공하기 위한 전자 장치 및 방법
US10222866B2 (en) Information processing method and electronic device
EP3433713B1 (en) Selecting first digital input behavior based on presence of a second, concurrent, input
KR102526860B1 (ko) 전자 장치 및 전자 장치 제어 방법
CN112534390B (zh) 用于提供虚拟输入工具的电子装置及其方法
US11928264B2 (en) Fixed user interface navigation
KR20160002760U (ko) 다이얼을 가지는 전자 장치

Legal Events

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