KR102117048B1 - 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스 - Google Patents

복수의 애플리케이션 실행 방법 및 이를 위한 디바이스 Download PDF

Info

Publication number
KR102117048B1
KR102117048B1 KR1020130112075A KR20130112075A KR102117048B1 KR 102117048 B1 KR102117048 B1 KR 102117048B1 KR 1020130112075 A KR1020130112075 A KR 1020130112075A KR 20130112075 A KR20130112075 A KR 20130112075A KR 102117048 B1 KR102117048 B1 KR 102117048B1
Authority
KR
South Korea
Prior art keywords
application
execution window
execution
window
displayed
Prior art date
Application number
KR1020130112075A
Other languages
English (en)
Other versions
KR20150032068A (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 KR1020130112075A priority Critical patent/KR102117048B1/ko
Publication of KR20150032068A publication Critical patent/KR20150032068A/ko
Application granted granted Critical
Publication of KR102117048B1 publication Critical patent/KR102117048B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • 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/0485Scrolling or panning
    • 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
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Abstract

디바이스가 복수의 애플리케이션을 실행하는 방법에 있어서, 제 1 애플리케이션의 실행 창을 화면에 표시하는 단계; 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청을 수신하는 단계; 실행 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시하는 단계; 및 제 1 애플리케이션에서 제공되는 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행하는 단계를 포함하는 복수의 애플리케이션 실행 방법을 개시한다.

Description

복수의 애플리케이션 실행 방법 및 이를 위한 디바이스{METHOD AND DEVICE FOR EXECUTING A PLURALITY OF APPLICATIONS}
본 발명은 복수의 애플리케이션을 실행하는 방법 및 이를 위한 디바이스에 관한 것이다.
모바일 단말은 다양한 기능을 수행할 수 있도록 구성될 수 있다. 그러한 다양한 기능들의 예로 데이터 및 음성 통신 기능, 카메라를 통해 사진이나 동영상을 촬영하는 기능, 음성 저장 기능, 스피커 시스템을 통한 음악 파일의 재생 기능, 이미지나 비디오의 디스플레이 기능 등이 있다.
일부 모바일 단말은 게임을 실행할 수 있는 추가적 기능을 포함하고, 다른 일부 단말은 멀티미디어 기기로서 구현되기도 한다. 더욱이 스마트 폰의 개발이 가속화되면서 다양한 애플리케이션들의 개발 및 사용이 증가하고 있다.
하지만, 모바일 단말에서 멀티 윈도우 기능을 제공하고자 할 때, 스크린을 분할하여 멀티 윈도우를 제공하기 때문에, 한 개 또는 소수의 윈도우만을 실행할 수 밖에 없다. 즉, 모바일 단말의 스크린 사이즈의 제약으로 인해 멀티 윈도우의 실용성이 저해되고 있는 실정이다.
따라서, 모바일 단말 내에서 멀티 윈도우의 사용을 극대화시킬 수 있도록 하는 시스템의 개발이 필요하다.
본 발명은 복수의 애플리케이션을 연결하여 실행하는 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스를 제공하는 데 목적이 있다.
본 발명은 제 1 애플리케이션의 실행 창 위에 이동 가능한 소정 사이즈의 제 2 애플리케이션의 실행 창을 제공함으로써, 멀티 윈도우 기능을 향상시키는 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스를 제공하는 데 목적이 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 제 1 애플리케이션의 실행 창을 화면에 표시하는 단계; 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청을 수신하는 단계; 실행 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시하는 단계; 및 제 1 애플리케이션에서 제공되는 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 실행 요청을 수신하는 단계는, 제 2 애플리케이션을 제 1 애플리케이션의 실행 창 보다 작은 상기 소정 사이즈로 실행하라는 요청을 수신하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 제 2 애플리케이션에 대한 실행 요청을 수신하는 단계는, 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 기 설정된 이벤트는, 외부 디바이스의 연결, 알림 메시지 수신, 외부 디바이스의 연결 요청 및 소정 버튼 선택 입력 수신 중 적어도 하나를 포함할 수 있다.
본 발명의 일 실시예에 따른 제 1 애플리케이션에서 제공되는 정보는, 제 1 애플리케이션의 실행 창에 표시되는 정보 및 제 1 애플리케이션에서 제 2 애플리케이션으로 전송되는 정보 중 적어도 하나를 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 소정 기능을 실행한 결과 정보를 제 2 애플리케이션의 실행 창 위에 표시하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 제 2 애플리케이션의 소정 기능을 실행하는 단계는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택하는 단계; 및 선택된 적어도 하나의 콘텐트를 이용하여, 제 2 애플리케이션의 소정 기능을 실행하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 제 2 애플리케이션의 소정 기능을 실행하는 단계는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 이미지를 선택하는 단계; 및 선택된 적어도 하나의 이미지를 제 2 애플리케이션을 이용하여 캡쳐하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 제 2 애플리케이션의 소정 기능을 실행하는 단계는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 텍스트를 선택하는 단계; 및 선택된 텍스트에 대한 부가 정보를 제 2 애플리케이션을 통해 제공하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 적어도 하나의 콘텐트를 선택하는 단계는, 사용자의 드래그 입력에 기초하여, 제 2 애플리케이션의 실행 창을 적어도 하나의 콘텐트가 표시된 영역으로 이동시키는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 제 2 애플리케이션의 실행 창에 대한 이동 요청을 수신하는 단계; 및 이동 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 위에서 이동시키는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 화면에 대한 사용자의 터치를 감지하는 단계; 및 화면 상에서 터치가 감지된 위치로 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 사용자의 음성을 수신하는 단계; 및 음성이 수신된 방향으로 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 소정 사이즈로 표시된 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청을 수신하는 단계; 및 사이즈 변경 요청에 기초하여, 제 2 애플리케이션의 실행 창의 사이즈를 변경하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 제 2 애플리케이션이 카메라 애플리케이션인 경우, 제 2 애플리케이션의 실행 창의 사이즈를 피사체의 크기에 따라 조절하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법은, 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 디바이스는, 제 1 애플리케이션의 실행 창을 화면에 표시하고, 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시하는 디스플레이부; 및
제 1 애플리케이션에서 제공되는 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행하는 제어부를 포함할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 제 2 애플리케이션을 제 1 애플리케이션의 실행 창 보다 작은 상기 소정 사이즈로 실행하라는 요청을 수신할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 소정 기능을 실행한 결과 정보를 제 2 애플리케이션의 실행 창 위에 표시하도록 디스플레이부를 제어할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택하고, 선택된 적어도 하나의 콘텐트를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 이미지를 선택하고, 선택된 적어도 하나의 이미지를 제 2 애플리케이션을 이용하여 캡쳐할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 텍스트를 선택하고, 선택된 텍스트에 대한 부가 정보를 제 2 애플리케이션을 통해 제공할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 사용자의 드래그 입력에 기초하여, 제 2 애플리케이션의 실행 창을 적어도 하나의 콘텐트가 표시된 영역으로 이동시킬 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 제 2 애플리케이션의 실행 창에 대한 이동 요청을 수신하고, 이동 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 위에서 이동시킬 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 화면에 대한 사용자의 터치를 감지하고, 화면 상에서 터치가 감지된 위치로 제 2 애플리케이션의 실행 창을 이동시킬 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 사용자의 음성을 수신하고, 음성이 수신된 방향으로 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 소정 사이즈로 표시된 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청을 수신하고, 사이즈 변경 요청에 기초하여, 제 2 애플리케이션의 실행 창의 사이즈를 변경할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 제 2 애플리케이션이 카메라 애플리케이션인 경우, 제 2 애플리케이션의 실행 창의 사이즈를 피사체의 크기에 따라 조절할 수 있다.
본 발명의 일 실시예에 따른 디바이스의 제어부는, 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행할 수 있다.
도 1은 본 발명의 일 실시예에 따른 멀티 윈도우 기능을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법을 설명하기 위한 순서도이다.
도 3은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창을 플로팅 윈도우 형태로 제 1 애플리케이션의 실행 창 위에 표시하는 일례를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 디바이스가 외부 디바이스 연결에 대응하는 플로팅 윈도우를 표시하는 일례를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 디바이스가 외부 디바이스의 연결 요청에 대응하는 플로팅 윈도우를 표시하는 일례를 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 이동을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 터치 위치에 따라 제 2 애플리케이션의 실행 창이 이동되는 일례를 나타내는 도면이다.
도 8은 본 발명의 일 실시예에 따른 음성 수신 방향에 따라 제 2 애플리케이션의 실행 창이 이동되는 일례를 나타내는 도면이다.
도 9는 본 발명의 일 실시예에 따른 복수 개의 플로팅 윈도우(floating window)를 표시하는 일례를 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 크기가 확대되는 일례를 나타내는 도면이다.
도 11은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 크기가 피사체의 크기에 따라 조절되는 일례를 나타내는 도면이다.
도 12는 본 발명의 일 실시예에 따른 제 1 애플리케이션의 실행 창에 표시되는 콘텐트를 이용하여 제 2 애플리케이션의 소정 기능을 실행하는 방법을 설명하기 위한 순서도이다.
도 13은 본 발명의 일 실시예에 따른 제 2 애플리케이션을 이용하여 디바이스에서 표시되는 이미지를 캡쳐하는 일례를 나타내는 도면이다.
도 14는 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창 위에 제 2 애플리케이션이 소정 기능을 실행한 결과 정보를 표시하는 방법을 설명하기 위한 순서도이다.
도 15는 본 발명의 일 실시예에 따른 사전 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다.
도 16은 본 발명의 일 실시예에 따른 번역 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다.
도 17은 본 발명의 일 실시예에 따른 데이터 전송 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다.
도 18은 본 발명의 일 실시예에 따른 제 1 애플리케이션과 제 2 애플리케이션을 연동하는 방법을 설명하기 위한 순서도이다.
도 19는 본 발명의 일 실시예에 따른 메신저 애플리케이션과 지도 애플리케이션이 연동되는 일례를 나타내는 도면이다.
도 20은 본 발명의 일 실시예에 따른 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행하는 방법을 설명하기 위한 순서도이다.
도 21 및 도 22는 카메라 애플리케이션을 통해 획득된 2차원 바코드 정보가 웹 브라우저를 통해 표시되는 일례를 설명하기 위한 도면이다.
도 23은 본 발명의 일 실시예에 따른 플로팅 윈도우로 표시되는 애플리케이션을 변경하는 방법을 설명하기 위한 순서도이다.
도 24는 본 발명의 일 실시예에 따른 애플리케이션 리스트를 제공하는 일례를 나타내는 도면이다.
도 25 및 도 26은 본 발명의 일 실시예에 따른 디바이스의 구성을 설명하기 위한 블록 구성도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
명세서 전체에서 “애플리케이션”은 특정한 업무를 수행하기 위해 고안된 일련의 컴퓨터 프로그램 집합을 말한다. 본 명세서에 기술되는 애플리케이션은 다양할 수 있다. 예를 들어, 애플리케이션에는 웹 브라우저, 카메라 애플리케이션, 사전 애플리케이션, 번역 애플리케이션, 데이터 전송 애플리케이션, 음악 재생 애플리케이션, 동영상 재생 애플리케이션, 메시지 애플리케이션, 소셜 커뮤니케이터 애플리케이션, 소셜 미디어 애플리케이션, 지도 애플리케이션, 사진 폴더 애플리케이션, 방송 애플리케이션, 게임 애플리케이션, 운동 지원 애플리케이션, 결제 애플리케이션, 메모 애플리케이션, 캘린더 애플리케이션, 폰 북 애플리케이션 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 본 발명의 일 실시예에 따른 멀티 윈도우 기능을 설명하기 위한 도면이다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 멀티 윈도우 기능을 제공할 수 있다. 여기서, 멀티 윈도우 기능은, 하나의 화면에 여러 개의 작업 창(예컨대, 애플리케이션 실행 창)을 표시하는, 유저인터페이스의 한 기능을 의미할 수 있다.
예를 들어, 디바이스(100)는, 제 1 애플리케이션 및 제 2 애플리케이션을 실행할 수 있다. 그리고 디바이스(100)는, 제 1 애플리케이션의 실행 창(10) 및 제 2 애플리케이션의 실행 창(20)을 화면에 함께 표시할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 제 1 애플리케이션의 실행 창(10)과 제 2 애플리케이션의 실행 창(20)의 크기를 다르게 표시할 수 있다. 예를 들어, 디바이스(100)는, 제 1 애플리케이션의 실행 창(10)은 전체 화면에 표시하고, 제 2 애플리케이션의 실행 창(20)은 제 1 애플리케이션의 실행 창(10) 보다 작은 사이즈로 표시할 수 있다.
또한, 디바이스(100)는, 제 1 애플리케이션의 실행 창(10) 보다 작은 제 2 애플리케이션의 실행 창(20)을 플로팅 윈도우(floating window) 형태로 표시할 수도 있다. 플로팅 윈도우란 사용자 입력에 따라 이동될 수 있는 유동적인 UI(user interface) 객체를 의미할 수 있다. 예를 들어, 디바이스(100)는, 사용자 입력에 기초하여, 제 2 애플리케이션의 실행 창(20)을 제 1 애플리케이션의 실행 창(10) 위에서 이동시켜 표시할 수 있다. 이하에서는 설명의 편의상, 전체 화면보다 작은 사이즈로 표시되고, 이동 가능한 윈도우를 플로팅 윈도우로 명명하기로 한다.
본 발명의 일 실시예에 따르면, 디바이스(100)는 터치 입력을 수신할 수 있다. 명세서 전체에서 "터치 입력"이란 사용자가 디바이스(100)를 제어하기 위해 터치 스크린에 행하는 제스처 등을 의미한다. 예를 들어, 본 명세서에서 기술되는 터치 입력에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭 등이 있을 수 있다.
"탭(tap)"은 사용자가 손가락이나 터치 도구(예컨대, 전자 펜)를 이용하여 화면을 터치한 후 움직이지 않은 채 화면에서 즉시 들어올리는 동작을 나타낸다.
"터치&홀드(touch & hold)"는 사용자가 손가락이나 터치 도구(예컨대, 전자 펜)를 이용하여 화면을 터치한 후 임계 시간(예컨대, 2초) 이상 터치 입력을 유지하는 동작을 나타낸다. 예를 들어, 터치-인 시점과 터치-아웃 시점 간의 시간 차이가 임계 시간(예컨대, 2초) 이상인 경우를 의미한다. 터치 입력이 탭인지 터치&홀드인지를 사용자에게 인식시키도록 하기 위하여 터치 입력이 임계 시간 이상 유지되면 시각적 또는 청각적 또는 촉각적으로 피드백 신호를 제공할 수도 있다. 상기 임계 시간은 구현 예에 따라서 변경될 수 있다.
"더블 탭(double tap)"은 사용자가 손가락이나 터치 도구(stylus)를 이용하여 화면을 두 번 터치하는 동작을 나타낸다.
"드래그(drag)"는 사용자가 손가락이나 터치 도구를 화면에 터치한 후 터치를 유지한 상태에서 손가락이나 터치 도구를 화면 내의 다른 위치로 이동시키는 동작을 의미한다. 드래그 동작으로 인하여 오브젝트가 이동되거나 후술할 패닝 동작이 수행된다.
"패닝(panning)"은 사용자가 오브젝트를 선택하지 않고 드래그 동작을 수행하는 경우를 나타낸다. 패닝은 특정 오브젝트를 선택하지 않기 때문에 오브젝트가 페이지 내에서 이동되는 것이 아니라 페이지 자체가 화면 내에서 이동하거나, 오브젝트의 그룹이 페이지 내에서 이동한다.
"플릭(flick)"은 사용자가 손가락이나 터치 도구를 이용하여 임계 속도(예컨대, 100 pixel/s) 이상으로 드래그하는 동작을 나타낸다. 손가락이나 터치 도구의 이동 속도가 임계 속도(예컨대, 100 pixel/s) 이상인지에 기초하여 드래그(또는 패닝)와 플릭을 구별할 수 있다.
"드래그 앤드 드롭(drag & drop)"은 사용자가 손가락이나 터치 도구를 이용해 오브젝트를 화면 내 소정 위치에 드래그한 후 놓는 동작을 의미한다.
“핀치(pinch)”는 사용자가 두 손가락을 화면 위에 터치한 상태에서 서로 다른 방향으로 움직이는 동작을 나타낸다. 오브젝트 또는 페이지의 확대(Pinch Open) 또는 축소(Pinch Close)를 위한 제스처이며, 두 손가락의 거리에 따라 확대 값이나 축소 값이 결정된다.
“스와이프(swipe)”는 손가락이나 터치 도구로 화면 위의 오브젝트를 터치한 상태에서 수평 또는 수직 방향으로 일정 거리를 움직이는 동작이다. 사선 방향의 움직임은 스와이프 이벤트로 인식되지 않을 수 있다.
본 발명의 일 실시예에 의하면, 제 1 애플리케이션과 제 2 애플리케이션은 동일한 입력 방식에 의해 제어될 수 있다. 예를 들어, 제 1 애플리케이션과 제 2 애플리케이션 모두 터치 입력에 의해 제어될 수 있다.
본 발명의 다른 실시예에 의하면, 제 1 애플리케이션과 제 2 애플리케이션은 서로 다른 입력 방식에 의해 제어될 수도 있다. 예를 들어, 제 1 애플리케이션은 터치 입력에 의해 제어되고, 제 2 애플리케이션은 음성 입력에 의해 제어될 수 있다. 또한, 제 1 애플리케이션은 터치 입력에 의해 제어되고, 제 2 애플리케이션은 안구 입력에 의해 제어될 수 있다. 안구 입력은 디바이스(100)를 제어하기 위해 사용자가 눈의 깜빡임, 응시 위치, 안구의 이동 속도 등을 조절하는 입력을 의미한다.
한편, 본 발명의 일 실시예에 따르면, 디바이스(100)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 디바이스(100)는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 태블릿 PC, 전자북 단말기, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, 스마트 TV, CE(Consumer Electronics) 기기(예컨대, 디스플레이 패널을 갖는 냉장고, 에어컨 등) 등이 있을 수 있으나, 이에 한정되는 것은 아니다
이하에서는 도 2를 참조하여, 본 발명의 일 실시예에 따른 디바이스(100)가 복수의 애플리케이션을 실행하는 방법에 대해서 자세히 살펴보기로 한다.
도 2는 본 발명의 일 실시예에 따른 복수의 애플리케이션 실행 방법을 설명하기 위한 순서도이다.
단계 S210에서, 디바이스(100)는, 제 1 애플리케이션의 실행 창을 화면에 표시할 수 있다.
예를 들어, 디바이스(100)는 사용자 요청에 기초하여 제 1 애플리케이션을 실행하고, 제 1 애플리케이션의 실행 창을 화면에 표시할 수 있다. 이때, 본 발명의 일 실시예에 따르면, 디바이스(100)는 제 1 애플리케이션의 실행 창을 전체 화면에 풀 사이즈(full-size)로 표시할 수 있다.
본 발명의 일 실시예에 의하면, 제 1 애플리케이션의 종류는 다양할 수 있다. 예를 들어, 제 1 애플리케이션에는, 웹 브라우저, 메신저 애플리케이션, 네비게이션 애플리케이션, 사진 폴더 애플리케이션 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
단계 S220에서, 디바이스(100)는, 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청을 수신할 수 있다. 예를 들어, 디바이스(100)는, 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지할 수 있다. 본 발명의 일 실시예에 의하면, 기 설정된 이벤트는, 소정 버튼 선택 입력 수신, 외부 디바이스의 연결, 알림 메시지 수신, 및 외부 디바이스의 연결 요청 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 의하면, 사용자는 제 2 애플리케이션에 대한 실행을 요청하기 위해 디바이스(100)에 포함된 특정 버튼을 선택할 수 있다. 이때, 특정 버튼은 물리적 버튼일 수도 있고, GUI(Graphical User Interface) 형태의 가상의 버튼일 수도 있다. 예를 들어, 사용자는 제 2 애플리케이션에 대응하는 아이콘을 터치함으로써 제 2 애플리케이션에 대한 실행을 디바이스(100)에 요청할 수 있다.
또한, 사용자는 제 2 애플리케이션에 대한 실행을 요청하기 위해 디바이스(100)에 외부 디바이스를 연결할 수도 있다. 이때, 외부 디바이스는 디바이스(100)에 유선으로 연결될 수도 있고, 무선으로 연결될 수도 있다. 본 발명의 일 실시예에 따른 외부 디바이스에는, 이어폰, 충전기, 전자펜, TV 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 알림 메시지가 수신되거나, 외부 디바이스로부터 통신 연결 요청이 수신되는 경우에 제 2 애플리케이션에 대한 실행 요청이 수신된 것으로 판단할 수도 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 제 2 애플리케이션을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 실행하라는 요청을 수신할 수도 있다. 예를 들어, 사용자는 제 2 애플리케이션의 실행 창을 플로팅 윈도우 형태로 실행하라는 요청을 디바이스(100)에 입력할 수 있다.
단계 S230에서, 디바이스(100)는, 제 2 애플리케이션에 대한 실행 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다.
본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 실행 창의 사이즈 또는 모양은, 디바이스(100) 사용자에 의해 미리 결정될 수 있다. 또한, 제 2 애플리케이션의 실행 창의 사이즈 또는 모양은, 제 2 애플리케이션의 종류에 따라 제 2 애플리케이션 생성 시 또는 배포 시에 미리 결정될 수도 있다. 한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 사용자 입력에 따라 제 2 애플리케이션의 실행 창의 사이즈 또는 모양을 조절할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 제 2 애플리케이션의 실행 창을 플로팅 윈도우 형태로 표시할 수 있다. 즉, 제 2 애플리케이션의 실행 창은 제 1 애플리케이션의 실행 창 위에서 이동될 수 있다. 예를 들어, 디바이스(100)는, 사용자의 드래그 입력에 따라, 제 2 애플리케이션의 실행 창을 이동시킬 수 있다. 또한, 디바이스(100)는, 사용자의 터치가 감지되는 위치 또는 음성이 수신되는 위치로 제 2 애플리케이션의 실행 창을 이동시킬 수 있다.
본 발명의 일 실시예에 의하면, 제 2 애플리케이션이 실행되는 경우, 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 제 2 애플리케이션의 실행 창이 표시되므로, 디바이스(100)는 제 1 애플리케이션의 실행 창과 제 2 애플리케이션의 실행 창을 동시에 표시할 수 있다.
또한, 본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 실행 창이 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시되므로, 디바이스(100)는, 제 2 애플리케이션의 실행에 따라 제 1 애플리케이션의 실행 창의 크기를 조절할 필요가 없다.
한편, 본 발명의 일 실시예에 의하면, 제 1 애플리케이션의 실행 창과 제 2 애플리케이션의 실행 창의 사이즈가 다르므로, 사용자는 윈도우 사이즈에 따라서 제 1 애플리케이션을 메인 애플리케이션으로 이용하고, 제 2 애플리케이션을 서브 애플리케이션으로 이용할 수도 있다.
단계 S240에서, 디바이스(100)는, 제 1 애플리케이션에서 제공되는 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다.
본 발명의 일 실시예에 의하면, 제 1 애플리케이션에서 제공되는 정보는, 제 1 애플리케이션의 실행 창에 표시되는 정보 및 제 1 애플리케이션에서 제 2 애플리케이션으로 전송되는 정보 중 적어도 하나를 포함할 수 있다.
제 1 애플리케이션의 실행 창에 표시되는 정보에는, 정지 영상(예컨대, 사진, 그림 등), 동영상, 텍스트, 웹 페이지 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 또한, 제 1 애플리케이션에서 제 2 애플리케이션으로 전송되는 정보에는 외부 디바이스의 위치 정보, 제 1 애플리케이션의 실행 결과 정보, 외부 디바이스의 상태 정보, 외부 디바이스와의 통신 연결 정보 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 소정 기능은, 다양할 수 있다. 예를 들어, 제 2 애플리케이션의 소정 기능은 데이터 전송 기능, 번역 기능, 사전 기능, 캡쳐 기능 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 의하면, 디바이스(100)는 제 2 애플리케이션을 제 1 애플리케이션과 별도로 실행하는 것이 아니라 제 1 애플리케이션과 연동하여 실행할 수 있다. 예를 들어, 제 2 애플리케이션은, 제 1 애플리케이션의 실행 창에 표시되는 특정 이미지를 캡쳐할 수 있다. 또한, 제 2 애플리케이션은, 제 1 애플리케이션의 실행 창에서 표시되는 특정 텍스트에 대한 부가 정보(예컨대, 번역문, 사전적 의미 등)를 제공할 수 있다. 이에 관하여는 도 12를 참조하여, 후에 좀 더 자세히 살펴보기로 한다.
본 발명의 구현 예에 따라서 단계 S210 내지 단계 S240의 순서가 변경될 수 있으며, 일부 단계가 생략될 수도 있다. 이하에서는 디바이스(100)가 제 2 애플리케이션의 실행 창을 제어하는 실시예에 대해서 자세히 살펴보기로 한다.
도 3은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창을 플로팅 윈도우 형태로 제 1 애플리케이션의 실행 창 위에 표시하는 일례를 나타내는 도면이다. 도 3에서는 제 1 애플리케이션이 웹 브라우저이고, 제 2 애플리케이션이 음악 재생 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 3(a)에 도시된 바와 같이, 본 발명의 일 실시예에 의하면, 디바이스(100)는 제 1 애플리케이션(예컨대, 웹 브라우저)을 실행하고, 제 1 애플리케이션의 실행 창(310)을 전체 화면에 표시할 수 있다. 또한, 디바이스(100)는, 사용자 요청에 따라 제 2 애플리케이션(예컨대, 음악 재생 애플리케이션)을 실행하고, 제 2 애플리케이션(예컨대, 음악 재생 애플리케이션)의 실행 창(320)을 전체 화면에 표시할 수 있다. 이 경우, 제 2 애플리케이션의 실행 창(320)이 제 1 애플리케이션의 실행 창(310) 위에 표시되기 때문에, 제 2 애플리케이션 (예컨대, 음악 재생 애플리케이션) 보다 먼저 실행되고 있던 제 1 애플리케이션의 실행 창(310)은 더 이상 보이지 않을 수 있다.
이때, 디바이스(100)는 전체 화면으로 표시되고 있는 제 2 애플리케이션의 실행 창(320)을 플로팅 윈도우 형태로 표시하라는 사용자 입력을 수신할 수 있다. 예를 들어, 디바이스(100)는 제 2 애플리케이션의 실행 창(320) 위의 일정 영역을 드래그하여 선택하는 사용자 입력을 수신할 수 있다.
도 3(b)에 도시된 바와 같이, 디바이스(100)는, 사용자의 드래그 입력에 따라, 전체 화면으로 표시되고 있던 제 2 애플리케이션의 실행 창(320)을 작은 사이즈의 플로팅 윈도우 형태로 변환하여 표시할 수 있다. 이때, 디바이스(100)는 사용자가 드래그하여 선택한 일정 영역에 대응하는 사이즈로 제 2 애플리케이션의 실행 창(320)을 표시할 수 있다. 예를 들어, 사용자가 제 2 애플리케이션의 실행 창(320) 위에서 반지름이 2cm인 원을 드래그하여 그린 경우, 디바이스(100)는 반지름이 2cm인 원 모양으로 제 2 애플리케이션의 실행 창(320)을 표시할 수 있다.
한편, 제 2 애플리케이션의 실행 창(320)의 사이즈가 제 1 애플리케이션의 실행 창(310)의 사이즈 보다 작아졌으므로, 미리 전체 화면에 표시되고 있던 제 1 애플리케이션의 실행 창(310)이 나타날 수 있다. 즉, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 풀 사이즈의 제 1 애플리케이션의 실행 창(310) 위에 작은 사이즈의 제 2 애플리케이션의 실행 창(320)을 함께 표시할 수 있다.
또한, 본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 실행 창(320)은, 플로팅 윈도우 형태로 제공되고 있으므로, 제 1 애플리케이션의 실행 창(310) 위에서 자유롭게 이동될 수 있다. 이에 관하여는 도 6을 참조하여, 후에 자세히 살펴보기로 한다.
한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 제 2 애플리케이션의 실행 창(320)의 사이즈에 대응하는 GUI를 제 2 애플리케이션의 실행 창(320) 위에 표시할 수 있다. 예를 들어, 디바이스(100)는 제 2 애플리케이션의 실행 창(320)이 전체 화면에 표시되는 경우, 제 2 애플리케이션의 실행 창(320)에 앨범 이미지, 아티스트 정보, 재상 시간, 재생 제어 버튼(예컨대, 일시 중지, 앞으로 넘김, 뒤로 넘김, 빠르게 재생, 느리게 재생 등) 등을 표시하고, 제 2 애플리케이션의 실행 창(320)이 작은 사이즈의 플로팅 윈도우로 표시되는 경우, 제 2 애플리케이션의 실행 창(320) 위에 앨범 이미지와 일시 중지 버튼만을 표시할 수 있다.
도 4는 본 발명의 일 실시예에 따른 디바이스가 외부 디바이스 연결에 대응하는 플로팅 윈도우를 표시하는 일례를 설명하기 위한 도면이다. 도 4에서는 제 1 애플리케이션이 웹 브라우저이고, 제 2 애플리케이션이 음악 재생 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 4(a)에 도시된 바와 같이, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지할 수 있다. 예를 들어, 디바이스(100)는, 제 1 애플리케이션을 실행하고, 제 1 애플리케이션의 실행 창(410)을 표시하는 중에 이어폰(400)의 연결을 감지할 수 있다.
도 4(b)에 도시된 바와 같이, 디바이스(100)는 이어폰(400) 연결이 감지되는 경우, 이어폰(400) 연결 감지에 대응하는 제 2 애플리케이션을 실행할 수 있다. 예를 들어, 디바이스(100)는, 음악 재생 애플리케이션을 실행할 수 있다. 그리고 디바이스(100)는 음악 재생 애플리케이션의 실행 창(420)을 플로팅 윈도우로 표시할 수 있다.
도 4에서는 디바이스(100)에 이어폰(400)이 연결되는 경우를 예로 들어 설명하였으나 이에 한정되는 것은 아니다. 예를 들어, 디바이스(100)에 충전기가 연결되는 경우, 디바이스(100)는 자동으로 음성 인식 애플리케이션을 실행할 수 있다. 그리고 디바이스(100)는, 음성 인식 애플리케이션의 실행 창을 플로팅 윈도우로 표시할 수 있다. 이때, 사용자는 음성 인식 애플리케이션을 통해 음성으로 충전 중인 디바이스(100)를 제어할 수 있다.
또 다른 실시예에 의하면, 디바이스(100)에 TV 가 연결되는 경우, 디바이스(100)는 TV 연결을 감지하고, TV를 원격 제어할 수 있는 원격 제어 애플리케이션을 실행할 수 있다. 이때, 디바이스(100)는 원격 제어 애플리케이션의 실행 창을 플로팅 윈도우로 표시할 수 있다.
도 5는 본 발명의 일 실시예에 따른 디바이스가 외부 디바이스의 연결 요청에 대응하는 플로팅 윈도우를 표시하는 일례를 설명하기 위한 도면이다. 도 5에서는 제 1 애플리케이션이 웹 브라우저이고, 제 2 애플리케이션이 전화 통화 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 5(a)에 도시된 바와 같이, 디바이스(100)는 제 1 애플리케이션의 실행 창(예컨대, 웹 페이지)(510)을 전체 화면에 표시할 수 있다. 이때, 디바이스(100)는 친구의 디바이스(예컨대, sarah’s phon)로부터 전화 통화 연결 요청을 수신할 수 있다.
도 5(b)에 도시된 바와 같이, 디바이스(100)는 전화 통화 연결 요청에 기초하여, 전화 통화 애플리케이션을 실행할 수 있다. 그리고 디바이스(100)는, 전화 통화 애플리케이션의 실행 창(520)을 플로팅 윈도우로 표시할 수 있다. 이때, 전화 통화 애플리케이션의 실행 창(520)에는 전화 통화 연결을 요청한 상대방의 정보(예컨대, 상대방 이미지, 상대방 전화번호, 상대방 이름 등)가 표시될 수 있다. 또한, 사용자는 전화 통화 애플리케이션의 실행 창(520)을 상하로 이동시켜 전화를 받거나 전화 연결을 차단할 수 있다.
따라서, 본 발명의 일 실시예에 의하면, 디바이스(100)가 웹 페이지(510)를 표시하는 중에 외부로부터 전화 연결 요청이 수신되더라도, 디바이스(100)는 작은 사이즈의 플로팅 윈도우 형태로 전화 통화 애플리케이션의 실행 창(520)을 웹 페이지(510) 위에 표시해 줄 수 있으므로, 사용자의 웹 페이지(510) 이용 방해를 최소화할 수 있다.
도 6은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 이동을 설명하기 위한 도면이다.
도 6(a)에 도시된 바와 같이, 디바이스(100)는 제 2 애플리케이션의 실행 창(620)을 화면의 좌측 상단에 표시할 수 있다. 이때, 디바이스(100)는, 제 2 애플리케이션의 실행 창(620)에 대한 이동 요청을 수신할 수 있다. 예를 들어, 제 2 애플리케이션의 실행 창(620)을 터치한 채 드래그하는 사용자 입력을 수신할 수 있다.
도 6(b)에 도시된 바와 같이, 디바이스(100)는, 제 2 애플리케이션의 실행 창(620)에 대한 이동 요청에 기초하여, 제 2 애플리케이션의 실행 창(620)을 제 1 애플리케이션의 실행 창(610) 위에서 이동시킬 수 있다. 예를 들어, 디바이스(100)는 사용자의 터치 앤 드래그 입력에 기초하여, 좌측 상단에 표시된 제 2 애플리케이션의 실행 창(620)을 좌측 하단으로 이동시켜 표시할 수 있다.
본 발명의 일 실시예에 의하면, 사용자는 플로팅 윈도우 형태의 제 2 애플리케이션의 실행 창(620)을 자유롭게 이동시킬 수 있다. 도 6에서는 사용자의 터치 입력에 기초하여 제 2 애플리케이션의 실행 창이 이동하는 일례를 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 사용자의 음성 입력, 모션 입력, 벤딩 입력, 또는 키 입력 등에 기초하여 제 2 애플리케이션의 실행 창(620)이 이동될 수도 있다.
도 7은 본 발명의 일 실시예에 따른 터치 위치에 따라 제 2 애플리케이션의 실행 창이 이동되는 일례를 나타내는 도면이다. 도 7에서는 제 1 애플리케이션이 동영상 재생 애플리케이션이고, 제 2 애플리케이션이 전화 통화 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 7(a)에 도시된 바와 같이, 디바이스(100)는, 제 1 애플리케이션의 실행 창(예컨대, 동영상 재생)(710)을 전체 화면에 표시할 수 있다. 또한, 디바이스(100)는 제 1 애플리케이션을 통해 소정 동영상을 재생하는 중에 외부 디바이스로부터 전화 통화 연결 요청을 수신할 수 있다. 이때, 디바이스(100)는 전화 통화 애플리케이션의 실행 창(720)을 제 1 애플리케이션의 실행 창(710) 위에 플로팅 윈도우 형태로 표시할 수 있다.
도 7(b)에 도시된 바와 같이, 디바이스(100)는, 화면에 대한 사용자의 터치를 감지할 수 있다. 이 경우, 디바이스(100)는, 터치가 감지된 위치로 제 2 애플리케이션의 실행 창(720)을 이동시킬 수 있다. 예를 들어, 사용자가 화면의 우측 상단을 엄지손가락으로 터치하는 경우, 디바이스(100)는 화면의 좌측 하단에 표시된 제 2 애플리케이션의 실행 창(720)을 화면의 우측 상단으로 이동시켜 표시할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는 사용자의 터치가 감지되는 위치로 플로팅 윈도우를 이동시켜 줄 수 있으므로, 사용자는 터치 위치를 변경하지 않고, 플로팅 윈도우를 편하게 조작할 수 있다.
도 8은 본 발명의 일 실시예에 따른 음성 수신 방향에 따라 제 2 애플리케이션의 실행 창이 이동되는 일례를 나타내는 도면이다. 도 8에서는 제 1 애플리케이션이 네비게이션 애플리케이션이고, 제 2 애플리케이션이 음성 인식 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 8에 도시된 바와 같이, 디바이스(100)는 네비게이션 애플리케이션의 실행 창(810)을 전체 화면에 표시하고, 음성 인식 애플리케이션의 실행 창(820)을 플로팅 윈도우 형태로 네비게이션 애플리케이션의 실행 창(810) 위에 표시할 수 있다.
이때, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 사용자의 음성을 마이크로폰을 통해 수신할 수 있다. 그리고 디바이스(100)는 음성이 수신된 방향으로 음성 인식 애플리케이션의 실행 창(820)을 이동시켜 표시할 수 있다.
예를 들어, 사용자가 디바이스(100)의 상단 방향에서 음성을 입력하는 경우, 디바이스(100)는 음성 인식 애플리케이션의 실행 창(820)을 화면의 상단으로 이동시켜 표시할 수 있다. 이 경우, 사용자는 음성 인식 애플리케이션의 실행 창(820)의 위치를 확인함으로써, 디바이스(100)에 음성이 입력되고 있는 위치를 직관적으로 파악할 수 있다.
본 발명의 일 실시예에 의하면, 음성 인식 애플리케이션은 사용자로부터 입력된 음성을 분석하고, 분석된 음성 정보를 네비게이션 애플리케이션에 전달할 수 있다.
도 9는 본 발명의 일 실시예에 따른 복수 개의 플로팅 윈도우(floating window)를 표시하는 일례를 설명하기 위한 도면이다.
도 9에 도시된 바와 같이, 디바이스(100)는 웹 브라우저의 실행 창(910)을 전체 화면에 표시하고, 웹 브라우저의 실행 창(910) 위에 플로팅 윈도우 형태로 음악 재생 애플리케이션의 실행 창(920)을 표시할 수 있다.
또한, 본 발명의 일 실시예에 의하면, 디바이스(100)는 외부 디바이스로부터 전화 통화 연결 요청을 수신할 수 있다. 이때, 디바이스(100)는 전화 통화 애플리케이션의 실행 창(930)도 플로팅 윈도우 형태로 웹 브라우저의 실행 창(910) 위에 표시할 수 있다.
본 발명의 일 실시예에 의하면, 사용자는 디바이스(100)의 화면에 표시된 복수의 플로팅 윈도우 각각을 제어할 수 있다. 예를 들어, 사용자는 음악 재생 애플리케이션의 실행 창(920)에 대한 좌우 스와이프 입력을 통해 재생 콘텐트를 변경하거나, 재생 속도를 조절할 수 있다. 또한, 사용자는 음악 재생 애플리케이션의 실행 창(920)을 소정 시간(예컨대, 2초) 이상 또는 소정 횟수(예컨대, 2회) 터치함으로써, 음악 재생을 중지시킬 수도 있다.
또한, 본 발명의 일 실시예에 의하면, 사용자는 전화 통화 애플리케이션의 실행 창(930)에 대한 상하 스와이프 입력을 통해 전화 통화 연결을 허락하거나 차단할 수 있다. 예를 들어, 사용자가 전화 통화 애플리케이션의 실행 창(930)을 위쪽 방향으로 스와이프하는 경우, 디바이스(100)는 외부 디바이스와의 전화 통화 연결을 수행할 수 있다. 또한, 사용자가 전화 통화 애플리케이션의 실행 창(930)을 아래 방향으로 스와이프하는 경우, 디바이스(100)는 외부 디바이스의 전화 통화 연결 요청에 대한 거절 메시지를 외부 디바이스로 전송할 수 있다.
도 10은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 크기가 확대되는 일례를 나타내는 도면이다.
도 10에 도시된 바와 같이, 디바이스(100)는 사용자 입력에 따라 제 2 애플리케이션의 실행 창의 사이즈를 변경할 수 있다. 이 경우, 디바이스(100)는, 제 2 애플리케이션의 실행 창의 사이즈에 대응하는 GUI(Graphical User Interface)를 제 2 애플리케이션의 실행 창 위에 표시할 수 있다.
예를 들어, 디바이스(100)는, 원형의 뮤직 애플리케이션의 실행 창(1020)을 선택하는 사용자 입력(예컨대, 더블 탭)을 수신할 수 있다. 이 경우, 디바이스(100)는 원형의 뮤직 애플리케이션의 실행 창(1020)을 확대하고, 확대된 창(1021)을 제 1 애플리케이션의 실행 창(1010) 위에 표시할 수 있다. 본 발명의 일 실시예에 의하면, 디바이스(100)는, 원형의 뮤직 애플리케이션의 실행 창 (1020)보다 더 많은 컨트롤 버튼을 포함하는 컨트롤 패널을 확대된 창(1021)을 통해 제공할 수 있다. 본 발명의 일 실시예에 의하면, 확대된 창(1021)도 사용자의 입력에 따라 이동될 수 있다.
한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 사용자 입력에 기초하여, 확대된 창(1021)을 다시 원형의 뮤직 애플리케이션의 실행 창(1020)으로 변경하여 표시할 수도 있다.
도 11은 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창의 크기가 피사체의 크기에 따라 조절되는 일례를 나타내는 도면이다.
도 11(a)에 도시된 바와 같이, 디바이스(100)는 카메라 애플리케이션을 실행하고, 카메라 애플리케이션의 실행 창(1100)을 소정 사이즈의 플로팅 윈도우 형태로 표시할 수 있다. 이때, 소정 사이즈의 카메라 애플리케이션의 실행 창(1100)을 통해 피사체의 이미지(예컨대, 2차원 바코드 이미지) 일부만이 표시될 수 있다.
도 11(b)에 도시된 바와 같이, 디바이스(100)는, 피사체 이미지의 크기에 따라 카메라 애플리케이션의 실행 창(1100)의 사이즈를 조절할 수 있다. 예를 들어, 디바이스(100)는, 피사체의 이미지(예컨대, 2차원 바코드 이미지) 전체가 카메라 애플리케이션의 실행 창(1100)을 통해 표시되도록 카메라 애플리케이션의 실행 창(1100)을 확대할 수 있다.
도 12는 본 발명의 일 실시예에 따른 제 1 애플리케이션의 실행 창에 표시되는 콘텐트를 이용하여 제 2 애플리케이션의 소정 기능을 실행하는 방법을 설명하기 위한 순서도이다.
단계 S1210에서, 디바이스(100)는, 제 2 애플리케이션의 실행 창을 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다. 예를 들어, 디바이스(100)는, 제 2 애플리케이션의 실행 창을 작은 사이즈의 이동 가능한 플로팅 윈도우 형태로 표시할 수 있다. 단계 S1210은 도 2의 단계 S230에 대응하므로, 구체적인 설명은 생략하기로 한다.
단계 S1220에서, 디바이스(100)는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택할 수 있다.
명세서 전체에서 ‘콘텐트’는 유무선 통신망을 통해 제공되는 디지털 정보를 의미할 수 있다. 본 발명의 일 실시예에 따른 콘텐트는, 동영상 콘텐트(예컨대, TV 프로그램 영상, VOD(Video On Demand), 개인 영상(UCC: User-Created Contents), 뮤직비디오, 유투브 영상 등), 정지 영상 콘텐트(예컨대, 사진, 그림 등), 텍스트 콘텐트(예컨대, 전자책(시, 소설), 편지, 업무 파일), 음악 콘텐트(예컨대, 음악, 연주곡, 라디오 방송 등), 웹 페이지, 애플리케이션 실행 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 사용자의 드래그 입력에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 위에서 적어도 하나의 콘텐트가 표시된 영역으로 이동시킬 수 있다. 그리고 디바이스(100)는 제 2 애플리케이션의 실행 창이 위치하는 영역에 표시된 적어도 하나의 콘텐트를 선택할 수 있다.
단계 S1230에서, 디바이스(100)는, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다. 본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 소정 기능은 데이터 전송 기능, 번역 기능, 사전 기능, 및 캡쳐 기능 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 도 13을 참조하여, 자세히 살펴보기로 한다.
도 13은 본 발명의 일 실시예에 따른 제 2 애플리케이션을 이용하여 디바이스에서 표시되는 이미지를 캡쳐하는 일례를 나타내는 도면이다. 도 13에서는 제 1 애플리케이션이 웹 브라우저이고, 제 2 애플리케이션이 카메라 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 13(a)에 도시된 바와 같이, 디바이스(100)는 웹 브라우저를 실행하고, 웹 브라우저의 실행 창(1310)을 전체 화면에 표시할 수 있다. 이때, 웹 브라우저의 실행 창(1310)에는 적어도 하나의 이미지가 포함되어 있을 수 있다.
한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는 카메라 애플리케이션을 실행하고, 카메라 애플리케이션의 실행 창(1320)을 웹 브라우저의 실행 창(1310) 위에 표시할 수 있다. 이때, 디바이스(100)는, 카메라 애플리케이션의 실행 창(1320)을 이동 가능한 작은 사이즈(mini-size)의 플로팅 윈도우 형태로 표시할 수 있다.
본 발명의 일 실시예에 의하면, 사용자는 카메라 애플리케이션의 실행 창(1320)을 이동시켜, 웹 브라우저의 실행 창(1310)에 포함된 제 1 이미지(1311) 위에 위치시킬 수 있다. 이때, 디바이스(100)는 카메라 애플리케이션의 실행 창(1320)이 위치하는 제 1 이미지(1311)를 선택할 수 있다.
본 발명의 일 실시예에 의하면, 사용자가 카메라 애플리케이션의 실행 창(1320)에서 캡쳐 버튼을 선택하는 경우, 디바이스(100)는 카메라 애플리케이션의 캡쳐 기능을 이용하여 제 1 이미지(1311)를 캡쳐할 수 있다.
도 13(b)에 도시된 바와 같이, 사용자는 카메라 애플리케이션의 실행 창(1320)을 제 2 이미지(1311) 위로 이동시킬 수 있다. 이때, 사용자가 카메라 애플리케이션의 실행 창(1320)에서 캡쳐 버튼을 선택하는 경우, 디바이스(100)는 카메라 애플리케이션의 캡쳐 기능을 이용하여 제 2 이미지(1311)를 캡쳐할 수 있다.
도 13(c)에 도시된 바와 같이, 본 발명의 일 실시예에 의하면, 디바이스(100)는, 캡쳐된 제 1 이미지(1311) 및 제 2 이미지(1312)를 이미지 폴더에 저장할 수 있다. 따라서, 본 발명의 일 실시예에 의하면, 디바이스(100)는 화면에 표시된 일부 이미지를 캡쳐하고, 캡쳐된 일부 이미지를 사용자에게 제공할 수 있다.
도 14는 본 발명의 일 실시예에 따른 제 2 애플리케이션의 실행 창 위에 제 2 애플리케이션이 소정 기능을 실행한 결과 정보를 표시하는 방법을 설명하기 위한 순서도이다.
단계 S1410에서, 디바이스(100)는, 제 2 애플리케이션의 실행 창을 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다.
단계 S1420에서, 디바이스(100)는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택할 수 있다.
단계 S1430에서, 디바이스(100)는, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다. 단계 S1410 내지 단계 S1430은 도 12의 단계 S1210 내지 단계 S1230에 대응하므로, 구체적인 설명은 생략하기로 한다.
단계 S1440에서, 디바이스(100)는, 제 2 애플리케이션의 소정 기능을 실행한 결과 정보를 제 2 애플리케이션의 실행 창 위에 표시할 수 있다. 본 발명의 일 실시예에 의하면, 제 2 애플리케이션의 소정 기능을 실행한 결과 정보에는, 캡쳐된 이미지 정보, 번역문 정보, 검색된 단어 의미 정보, 외부로 전송된 콘텐트의 수 정보 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 도 15 및 도 16을 참조하여, 좀 더 자세히 살펴보기로 한다.
도 15는 본 발명의 일 실시예에 따른 사전 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다. 도 15에서는 제 1 애플리케이션이 신문 애플리케이션이고, 제 2 애플리케이션이 사전 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 15(a)에 도시된 바와 같이, 디바이스(100)는 신문 애플리케이션을 실행하고, 신문 애플리케이션의 실행 창(1510)을 전체 화면에 표시할 수 있다. 이때, 디바이스(100)는 신문 애플리케이션의 실행 창(1510)에 뉴스 콘텐트를 표시할 수 있다. 또한, 디바이스(100)는 사전 애플리케이션의 실행 창(1520)을 소정 사이즈의 플로팅 윈도우 형태로 신문 애플리케이션의 실행 창(1510) 위에 표시할 수 있다.
이때, 사용자는 사전 애플리케이션의 실행 창(1520)을 이동시켜 뉴스 콘텐트에 포함된 특정 단어(예컨대, threaten) 위에 위치시킬 수 있다. 그리고 사용자는 사전 애플리케이션의 실행 창(1520)을 소정 시간(예컨대, 3초) 이상 터치하거나 소정 횟수(예컨대, 2회) 이상 터치할 수 있다. 이 경우, 디바이스(100)는 사전 애플리케이션을 이용하여 사용자에 의해 선택된 특정 단어(예컨대, threaten)에 대한 의미를 검색할 수 있다.
도 15(b)에 도시된 바와 같이, 디바이스(100)는 사전 애플리케이션의 실행 창(1520)을 확대하고, 확대된 사전 애플리케이션의 실행 창(1520) 위에 특정 단어(예컨대, threaten)의 의미(예컨대, [VERB] If a person threatens to do something unpleasant to you, or if they threaten you, they say or imply that they will do something unpleasant to you, especially if you do not do what they want)를 표시할 수 있다.
도 15에서는 사용자가 플로팅 윈도우를 이동시켜, 특정 단어를 선택하는 경우를 예로 들어 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 디바이스(100)가 다중 입력 방식을 지원하는 경우, 사용자는 터치 입력(예컨대, 특정 단어가 표시된 영역을 드래그)을 통해 신문 애플리케이션의 실행 창(1510)에서 특정 단어(예컨대, threaten)를 선택하고, 음성 입력을 통해 사전 애플리케이션이 특정 단어(예컨대, threaten)에 대한 의미를 검색하도록 제어할 수도 있다.
도 16은 본 발명의 일 실시예에 따른 번역 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다. 도 16에서는 제 1 애플리케이션이 신문 애플리케이션이고, 제 2 애플리케이션이 번역 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 16(a)에 도시된 바와 같이, 디바이스(100)는 신문 애플리케이션을 실행하고, 신문 애플리케이션의 실행 창(1610)을 전체 화면에 표시할 수 있다. 이때, 디바이스(100)는 신문 애플리케이션의 실행 창(1610)에 뉴스 콘텐트를 표시할 수 있다. 또한, 디바이스(100)는 번역 애플리케이션의 실행 창(1620)을 소정 사이즈의 플로팅 윈도우 형태로 신문 애플리케이션의 실행 창(1610) 위에 표시할 수 있다.
이때, 사용자는 번역 애플리케이션의 실행 창(1620)을 이동시켜 번역되길 원하는 뉴스 콘텐트 위에 위치시킬 수 있다. 번역되길 원하는 뉴스 콘텐트의 크기가 번역 애플리케이션의 실행 창(1620)의 크기 보다 큰 경우, 사용자는 번역 애플리케이션의 실행 창(1620)을 터치 입력(예컨대, 핀치 입력)을 통해 확대시킬 수 있다.
도 16(b)에 도시된 바와 같이, 디바이스(100)는 번역 애플리케이션의 실행 창(1520) 아래에 위치하는 뉴스 콘텐트를 번역한 번역문을 번역 애플리케이션의 실행 창(1620) 위에 표시할 수 있다. 예를 들어, 디바이스(100)는, 번역 애플리케이션의 번역 기능을 이용하여, 사용자에 의해 선택된 영문 뉴스 스크립트를 한국어로 번역할 수 있다. 그리고 디바이스(100)는 한국어로 번역된 번역문을 번역 애플리케이션의 실행 창(1620) 위에 표시할 수 있다.
도 17은 본 발명의 일 실시예에 따른 데이터 전송 애플리케이션의 실행 창이 소정 사이즈의 플로팅 윈도우로 표시되는 일례를 나타내는 도면이다. 도 17에서는 제 1 애플리케이션이 사진 폴더 애플리케이션이고, 제 2 애플리케이션이 데이터 전송 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 17(a)에 도시된 바와 같이, 디바이스(100)는 사용자 요청에 따라 사진 폴더 애플리케이션의 실행 창(1710)을 전체 화면에 표시할 수 있다. 이때, 사진 폴더 애플리케이션의 실행 창(1710)에는 복수의 사진이 표시될 수 있다. 또한, 디바이스(100)는, 데이터 전송 애플리케이션의 실행 창(1720)을 플로팅 윈도우 형태로 사진 폴더 애플리케이션의 실행 창(1710) 위에 표시할 수 있다.
본 발명의 일 실시예에 의하면, 사용자는 데이터 전송 애플리케이션의 실행 창(1720)을 사진 폴더 애플리케이션의 실행 창(1710)에 포함된 제 1 사진 위로 이동시킬 수 있다. 그리고 사용자는 데이터 전송 애플리케이션의 실행 창(1720)을 소정 시간(예컨대, 3초) 이상 터치하거나 소정 횟수(예컨대, 2회) 이상 터치할 수 있다. 이 경우, 디바이스(100)는 데이터 전송 애플리케이션을 이용하여 사용자에 의해 선택된 제 1 사진을 외부 디바이스로 전송할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는 근거리 통신을 통해 제 1 사진을 외부 디바이스로 전송할 수 있다. 근거리 통신에는 블루투스, BLE (Bluetooth Low Energy), 와이파이 다이렉트, UWB(ultra wideband), Zigbee, NFC(Near Field Communication unit), Ant+ 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
한편, 본 발명의 일 실시예에 의하면, 디바이스(100)는 외부 디바이스로 전송된 사진의 수에 관한 정보를 데이터 전송 애플리케이션의 실행 창(1720) 위에 표시할 수 있다. 예를 들어, 디바이스(100)가 데이터 전송 애플리케이션을 통해 8개의 사진을 외부 디바이스로 전송한 경우, 디바이스(100)는 데이터 전송 애플리케이션의 실행 창(1720) 위에 ‘8’을 표시할 수 있다.
도 17(b)에 도시된 바와 같이, 디바이스(100)는 사용자의 터치 입력(예컨대, 드래그)에 기초하여 데이터 전송 애플리케이션의 실행 창(1720)을 이동시킬 수 있다. 예를 들어, 디바이스(100)는 제 2 사진 위로 데이터 전송 애플리케이션의 실행 창(1720)을 이동시킬 수 있다. 이때, 사용자로부터 데이터 전송 애플리케이션의 실행 창(1720)을 소정 시간(예컨대, 3초) 이상 터치하거나 소정 횟수(예컨대, 2회) 이상 터치하는 입력이 수신되는 경우, 디바이스(100)는 데이터 전송 애플리케이션의 전송 기능을 이용하여, 제 2 사진을 외부 디바이스로 전송할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 데이터 전송 애플리케이션을 통해 9개의 사진을 외부 디바이스로 전송하였으므로, 데이터 전송 애플리케이션의 실행 창(1720) 위에 ‘9’를 표시할 수 있다.
도 18은 본 발명의 일 실시예에 따른 제 1 애플리케이션과 제 2 애플리케이션을 연동하는 방법을 설명하기 위한 순서도이다.
단계 S1810에서, 디바이스(100)는 제 1 애플리케이션 및 제 2 애플리케이션을 실행할 수 있다. 예를 들어, 디바이스(100)는 제 1 애플리케이션의 실행 창을 전체 화면에 표시하고, 제 2 애플리케이션의 실행 창을 플로팅 윈도우 형태로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다.
단계 S1820에서, 외부 디바이스(200)도 제 1 애플리케이션을 실행할 수 있다. 본 발명의 일 실시예에 의하면, 제 1 애플리케이션은 메시지 애플리케이션(native communication application), 소셜 커뮤니케이터(social communicator) 애플리케이션(예컨대, 카카오톡, 밴드, 마이피플 등), 및 소셜 미디어 애플리케이션(예컨대, Facebook, Twitter 등) 중 적어도 하나일 수 있다. 단계 S1830에서, 디바이스(100)와 외부 디바이스(200)는 제 1 애플리케이션을 통해 연결될 수 있다.
단계 S1840에서, 외부 디바이스(200)는 외부 디바이스(200)의 정보를 수집할 수 있다. 외부 디바이스(200)의 정보는, 외부 디바이스(200)의 위치 정보, 외부 디바이스(200)의 기능(capability) 정보, 및 외부 디바이스(200)의 컨텍스트 정보 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
단계 S1850에서, 외부 디바이스(200)는 외부 디바이스(200)의 정보를 제 1 애플리케이션을 통해 디바이스(100)로 전송할 수 있다. 이때, 단계 S1860에서, 디바이스(100)는 제 1 애플리케이션을 통해 외부 디바이스(200)의 정보를 수신할 수 있다. 단계 S1870에서, 디바이스(100)는 제 1 애플리케이션이 제 2 애플리케이션으로 외부 디바이스(200)의 정보를 전달하도록 제어할 수 있다.
단계 S1880에서, 디바이스(100)는, 제 1 애플리케이션에서 제 2 애플리케이션으로 전달된 외부 디바이스(200)의 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다. 도 19를 참조하여, 자세히 살펴보기로 한다.
도 19는 본 발명의 일 실시예에 따른 메신저 애플리케이션과 지도 애플리케이션이 연동되는 일례를 나타내는 도면이다.
도 19에 도시된 바와 같이, 디바이스(100)는, 사용자 요청에 따라 메신저 애플리케이션의 실행 창(1910)을 전체 화면에 표시할 수 있다. 이때, 디바이스(100)의 사용자는 메신저 애플리케이션을 통해 외부 디바이스의 사용자와 통신(communication)할 수 있다. 또한, 디바이스(100)는, 지도 애플리케이션의 실행 창(1920)을 플로팅 윈도우 형태로 메신저 애플리케이션의 실행 창(1910) 위에 표시할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 메신저 애플리케이션을 통해 외부 디바이스로부터 외부 디바이스의 위치 정보를 수신할 수 있다. 그리고 디바이스(100)는 메신저 애플리케이션이 수신한 외부 디바이스의 위치 정보를 지도 애플리케이션에 전달할 수 있다.
이때, 지도 애플리케이션은 외부 디바이스의 위치 정보와 디바이스(100)의 현재 위치 정보를 비교할 수 있다. 그리고 지도 애플리케이션은 외부 디바이스의 상대적인 위치 정보를 지도 애플리케이션의 실행 창(1920) 위에 표시할 수 있다.
예를 들어, 디바이스(100)의 사용자가 메신저 애플리케이션을 통해 친구 (예컨대, Tom)와 대화 중인 경우, 디바이스(100)는, 친구(예컨대, Tom)의 디바이스의 상대적인 위치 정보를 지도 애플리케이션의 실행 창(1920) 위에 표시해 줄 수 있다. 친구(예컨대, Tom)의 디바이스가 디바이스(100)를 기준으로 서쪽 방향으로 20 m만큼 떨어져 있는 경우, 디바이스(100)는 지도 애플리케이션의 실행 창(1920)을 서쪽 방향으로 이동시키고, 지도 애플리케이션의 실행 창(1920) 위에 ‘20 m’를 표시할 수 있다.
따라서, 디바이스(100)의 사용자는 지도 애플리케이션의 실행 창(1920)에 표시된 거리 정보(예컨대, 20 m) 및 지도 애플리케이션의 실행 창(1920)의 위치 정보에 기초하여, 대화 중인 친구(예컨대, ‘Tom’)의 현재 위치를 쉽게 파악할 수 있다.
도 20은 본 발명의 일 실시예에 따른 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행하는 방법을 설명하기 위한 순서도이다.
단계 S2010에서, 디바이스(100)는, 제 1 애플리케이션을 실행하고, 제 1 애플리케이션의 실행 창을 전체 화면에 표시할 수 있다.
단계 S2020에서, 디바이스(100)는, 제 2 애플리케이션에 대한 실행 요청을 수신할 수 있다. 이때, 본 발명의 일 실시예에 의하면, 디바이스(100)는 제 2 애플리케이션을 작은 사이즈(mini-size)의 플로팅 윈도우로 실행하라는 실행 요청을 수신할 수 있다.
단계 S2030에서, 디바이스(100)는 제 2 애플리케이션의 실행 창을 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다. 단계 S2010 내지 단계 S2030은 도 2의 단계 S210 내지 단계 S230에 대응하므로, 구체적인 설명은 생략하기로 한다.
단계 S2040에서, 디바이스(100)는, 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행할 수 있다.
본 발명의 일 실시예에 의하면, 제 2 애플리케이션에서 제공되는 정보는, 제 2 애플리케이션의 실행 창에 표시되는 정보 및 제 2 애플리케이션에서 제 1 애플리케이션으로 전송되는 정보 중 적어도 하나를 포함할 수 있다.
본 발명의 일 실시예에 의하면, 제 1 애플리케이션의 소정 기능은, 다양할 수 있다. 예를 들어, 제 1 애플리케이션의 소정 기능은 바코드 분석 기능, 검색 기능, 데이터 전송 기능, 번역 기능, 사전 기능, 캡쳐 기능 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
이하에서는 도 21 및 도 22를 참조하여, 디바이스(100)가 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행하는 실시예에 대해서 살펴보기로 한다.
도 21 및 도 22는 카메라 애플리케이션을 통해 획득된 2차원 바코드 정보가 웹 브라우저를 통해 표시되는 일례를 설명하기 위한 도면이다. 도 21 및 도 22에서는 제 1 애플리케이션이 웹 브라우저이고, 제 2 애플리케이션이 카메라 애플리케이션인 경우를 예로 들어 설명하기로 한다.
도 21에 도시된 바와 같이, 디바이스(100)는 카메라 애플리케이션의 실행 창(2120)을 웹 브라우저의 실행 창(2110) 위에 플로팅 윈도우 형태로 표시할 수 있다. 이때, 사용자는 카메라 애플리케이션의 실행 창(2120)을 자유롭게 이동시켜, 명함(2100)에 포함된 2차원 바코드(2101)를 인식시킬 수 있다. 카메라 애플리케이션은 명함(2100)에 포함된 2차원 바코드(2101)를 분석하고, 분석한 정보를 웹 브라우저에 전달할 수 있다.
본 발명의 일 실시예에 의하면, 웹 브라우저는 카메라 애플리케이션으로부터 전달된 2차원 바코드(2101)를 분석한 정보(예컨대, 성명, 이미지, 전화번호, 팩스, 이메일, 주소 등)를 웹 브라우저의 실행 창(2110)에 표시할 수 있다.
도 22에 도시된 바와 같이, 사용자는 카메라 애플리케이션의 실행 창(2220)을 자유롭게 이동시켜, 복권(2200)에 포함된 2차원 바코드(2201)를 인식시킬 수 있다. 카메라 애플리케이션은 복권(2200)에 포함된 2차원 바코드(2201)를 분석하고, 분석한 정보를 웹 브라우저에 전달할 수 있다.
본 발명의 일 실시예에 의하면, 웹 브라우저는 카메라 애플리케이션으로부터 전달된 2차원 바코드(2201)를 분석한 정보(예컨대, 당첨 번호, 당첨 금액 등)를 웹 브라우저의 실행 창(2210)에 표시할 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 2차원 바코드를 인식한 후에도 카메라 애플리케이션의 실행 창(2120, 2220)을 플로팅 윈도우 형태로 계속 제공하면서, 2차원 바코드를 분석한 정보는 배경 애플리케이션의 실행 창(2110, 2210)을 통해서 표시할 수 있다. 따라서, 사용자는 다양한 종류의 2차원 바코드를 분석한 정보를 계속적으로 확인할 수 있다.
도 23은 본 발명의 일 실시예에 따른 플로팅 윈도우로 표시되는 애플리케이션을 변경하는 방법을 설명하기 위한 순서도이다.
단계 S2310에서, 디바이스(100)는, 제 2 애플리케이션을 실행하고, 제 2 애플리케이션의 실행 창을 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다.
단계 S2320에서, 디바이스(100)는, 사용자 입력에 기초하여, 애플리케이션 리스트를 제공할 수 있다. 예를 들어, 화면의 일 측면에서 내측 방향으로 스와이프하는 입력이 수신되는 경우, 디바이스(100)는 멀티 윈도우 기능을 제공하는 애플리케이션들을 포함하는 애플리케이션 리스트를 화면의 일부 영역에 표시할 수 있다.
단계 S2330에서, 디바이스(100)는, 애플리케이션 리스트에서 제 3 애플리케이션을 선택 받을 수 있다. 본 발명의 일 실시예에 의하면, 제 3 애플리케이션은 제 1 애플리케이션 및 제 2 애플리케이션과는 상이한 애플리케이션일 수 있다.
단계 S2340에서, 디바이스(100)는, 제 3 애플리케이션을 제 2 애플리케이션의 실행 창 위로 이동시키는 사용자 입력을 수신할 수 있다. 예를 들어, 사용자는 애플리케이션 리스트에서 제 3 애플리케이션을 터치한 채 제 2 애플리케이션의 실행 창이 표시된 영역으로 제 3 애플리케이션을 드래그할 수 있다.
단계 S2350에서, 디바이스(100)는, 제 3 애플리케이션을 실행하고, 제 3 애플리케이션의 실행 창을 소정 사이즈로 제 2 애플리케이션의 실행 창 위에 표시할 수 있다. 본 발명의 일 실시예에 의하면, 디바이스(100)는, 작은 사이즈의 플로팅 윈도우 형태로 제공되고 있는 제 2 애플리케이션의 실행 창을 제 3 애플리케이션의 실행 창으로 변경할 수 있다.
한편, 본 발명의 일 실시예에 의하면, 사용자가 애플리케이션 리스트에서 제 4 애플리케이션을 선택하고, 제 4 애플리케이션을 제 2 애플리케이션의 실행 창이 표시되고 있는 영역을 제외한 나머지 영역으로 드래그하는 경우, 디바이스(100)는, 제 4 애플리케이션을 실행하고, 제 4 애플리케이션의 실행 창을 전체 화면에 표시할 수 있다. 이때, 제 4 애플리케이션의 실행 창 위에 플로팅 윈도우가 표시될 수 있다.
도 24는 본 발명의 일 실시예에 따른 애플리케이션 리스트를 제공하는 일례를 나타내는 도면이다.
도 24(a)에 도시된 바와 같이, 디바이스(100)는 웹 브라우저의 실행 창(2410)을 전체 화면에 표시하고, 웹 브라우저의 실행 창(2410) 위에 음악 재생 애플리케이션의 실행 창(2420)을 플로팅 윈도우 형태로 표시할 수 있다.
또한, 디바이스(100)는, 애플리케이션 리스트가 존재함을 나타내는 인디케이터(2400)를 화면에 표시할 수 있다. 본 발명의 일 실시예에 의하면, 디바이스(100)는 사용자의 요청이 있는 경우에만 인디케이터(2400)를 표시할 수도 있고, 항상 인디케이터(2400)를 표시할 수도 있다.
도 24(b)에 도시된 바와 같이, 사용자가 인디케이터(2400)를 터치한 채 우측 방향으로 드래그하는 경우, 디바이스(100)는 애플리케이션 리스트(2430)를 화면에 표시할 수 있다. 도 24(b)에는 드래그 입력을 예로 들어 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 사용자가 인디케이터(2400)를 탭(또는 더블 탭)하는 경우, 디바이스(100)가 애플리케이션 리스트를 표시할 수도 있다.
도 24(c)에 도시된 바와 같이, 사용자가 애플리케이션 리스트(2430)에서 지도 애플리케이션(2431)을 선택하고, 지도 애플리케이션(2431)을 드래그하여 음악 재생 애플리케이션의 실행 창(2420)이 표시되고 있는 영역에 드롭할 수 있다. 이 경우, 디바이스(100)는 지도 애플리케이션(2431)을 실행하고, 지도 애플리케이션의 실행 창(2432)을 음악 재생 애플리케이션의 실행 창(2420) 대신에 플로팅 윈도우 형태로 표시할 수 있다. 이때, 지도 애플리케이션의 실행 창(2432)은 웹 브라우저의 실행 창(2410) 위에서 자유롭게 이동될 수 있다.
본 발명의 일 실시예에 의하면, 디바이스(100)는, 지도 애플리케이션의 실행 창(2432)에 기 설정된 관심 위치(Point Of Interest)에 대한 거리 정보 또는 방향 정보를 표시할 수 있다.
도 25 및 도 26은 본 발명의 일 실시예에 따른 디바이스의 구성을 설명하기 위한 블록 구성도이다.
도 25에 도시된 바와 같이, 본 발명의 일 실시예에 따른 디바이스(100)는, 디스플레이부(111), 제어부(120)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 디바이스(100)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 디바이스(100)는 구현될 수 있다.
예를 들어, 도 26에 도시된 바와 같이, 본 발명의 일 실시예에 따른 디바이스(100)는, 출력부(110), 제어부(120) 이외에 사용자 입력부(130), 센싱부(140), 통신부(150), A/V 입력부(160), 메모리(170)를 더 포함할 수도 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
출력부(110)는, 오디오 신호 또는 비디오 신호 또는 진동 신호의 출력을 위한 것으로, 이에는 디스플레이부(111)와 음향 출력부(112), 진동 모터(113) 등이 포함될 수 있다.
디스플레이부(111)는 디바이스(100)에서 처리되는 정보를 표시 출력한다. 예를 들어, 디스플레이부(111)는, 제 1 애플리케이션의 실행 창을 전체 화면에 표시할 수 있다. 또한, 디스플레이부(111)는 제 2 애플리케이션의 실행 창을 소정 사이즈로 제 1 애플리케이션의 실행 창 위에 표시할 수 있다. 소정 사이즈는 전체 화면의 사이즈보다 작은 사이즈일 수 있다. 디스플레이부(111)는 제 2 애플리케이션의 실행 창을 이동 가능한 플로팅 윈도우 형태로 표시할 수 있다. 디스플레이부(111)는 멀티 윈도우 기능을 제공하는 애플리케이션 리스트를 표시할 수 있다.
한편, 디스플레이부(111)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(111)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부(111)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 디바이스(100)의 구현 형태에 따라 디바이스(100)는 디스플레이부(111)를 2개 이상 포함할 수도 있다.
음향 출력부(112)는 통신부(150)로부터 수신되거나 메모리(170)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(112)는 디바이스(100)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음, 알림음)과 관련된 음향 신호를 출력한다. 이러한 음향 출력부(112)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
진동 모터(113)는 진동 신호를 출력할 수 있다. 예를 들어, 진동 모터(113)는 오디오 데이터 또는 비디오 데이터(예컨대, 호신호 수신음, 메시지 수신음 등)의 출력에 대응하는 진동 신호를 출력할 수 있다. 또한, 진동 모터(113)는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수도 있다.
제어부(120)는, 통상적으로 디바이스(100)의 전반적인 동작을 제어한다. 예를 들어, 제어부(120)는, 메모리(170)에 저장된 프로그램들을 실행함으로써, 출력부(110), 사용자 입력부(120), 센싱부(140), 통신부(150), A/V 입력부(160) 등을 전반적으로 제어할 수 있다.
제어부(120)는, 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청을 수신할 수 있다. 예를 들어, 제어부(120)는, 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지할 수 있다.
제어부(120)는, 제 1 애플리케이션에서 제공되는 정보를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다. 예를 들어, 제어부(120)는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택하고, 선택된 적어도 하나의 콘텐트를 이용하여, 제 2 애플리케이션의 소정 기능을 실행할 수 있다. 제어부(120)는, 소정 기능을 실행한 결과 정보를 제 2 애플리케이션의 실행 창 위에 표시하도록 디스플레이부(111)를 제어할 수도 있다.
제어부(120)는, 사용자 입력에 기초하여, 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 이미지를 선택하고, 선택된 적어도 하나의 이미지를 제 2 애플리케이션을 이용하여 캡쳐할 수 있다. 제어부(120)는, 사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 텍스트를 선택하고, 선택된 텍스트에 대한 부가 정보(예컨대, 사전적 의미, 번역문 등)를 제 2 애플리케이션을 통해 제공할 수도 있다.
제어부(120)는, 사용자의 드래그 입력에 기초하여, 제 2 애플리케이션의 실행 창을 적어도 하나의 콘텐트가 표시된 영역으로 이동시킬 수 있다. 제어부(120)는, 제 2 애플리케이션의 실행 창에 대한 이동 요청에 기초하여, 제 2 애플리케이션의 실행 창을 제 1 애플리케이션의 실행 창 위에서 이동시킬 수 있다.
제어부(120)는, 화면에 대한 사용자의 터치를 감지하고, 화면 상에서 터치가 감지된 위치로 제 2 애플리케이션의 실행 창을 이동시킬 수 있다. 또한, 제어부(120)는, 사용자의 음성이 수신된 방향으로 제 2 애플리케이션의 실행 창을 이동시킬 수도 있다.
제어부(120)는, 소정 사이즈로 표시된 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청에 기초하여, 제 2 애플리케이션의 실행 창의 사이즈를 변경할 수 있다. 제어부(120)는, 제 2 애플리케이션이 카메라 애플리케이션인 경우, 제 2 애플리케이션의 실행 창의 사이즈를 피사체의 크기에 따라 조절할 수 있다.
한편, 제어부(120)는, 제 2 애플리케이션에서 제공되는 정보를 이용하여, 제 1 애플리케이션의 소정 기능을 실행할 수도 있다.
사용자 입력부(130)는, 사용자가 디바이스(100)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(130)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.
사용자 입력부(130)는, 제 2 애플리케이션을 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 실행하라는 요청을 수신할 수 있다. 사용자 입력부(130)는, 제 2 애플리케이션의 실행 창에 대한 이동 요청을 수신할 수 있다. 사용자 입력부(130)는, 소정 사이즈로 표시된 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청을 수신할 수도 있다.
센싱부(140)는, 디바이스(100)의 상태 또는 디바이스(100) 주변의 상태를 감지하고, 감지된 정보를 제어부(120)로 전달할 수 있다.
센싱부(140)는, 지자기 센서(Magnetic sensor)(141), 가속도 센서(Acceleration sensor)(142), 온/습도 센서(143), 적외선 센서(144), 자이로스코프 센서(145), 위치 센서(예컨대, GPS)(146), 기압 센서(147), 근접 센서(148), 및 RGB 센서(illuminance sensor)(149) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
통신부(150)는, 디바이스(100)와 외부 디바이스 또는 디바이스(100)와 서버 간의 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(150)는, 근거리 통신부(151), 이동 통신부(152), 방송 수신부(153)를 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(151)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(152)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
방송 수신부(153)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 디바이스(100)가 방송 수신부(153)를 포함하지 않을 수도 있다.
A/V(Audio/Video) 입력부(160)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(161)와 마이크로폰(162) 등이 포함될 수 있다. 카메라(161)은 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 제어부(120) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
카메라(161)에서 처리된 화상 프레임은 메모리(170)에 저장되거나 통신부(150)를 통하여 외부로 전송될 수 있다. 카메라(161)는 디바이스(100)의 구성 태양에 따라 2개 이상이 구비될 수도 있다.
마이크로폰(162)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크로폰(162)은 외부 디바이스 또는 화자로부터 음향 신호를 수신할 수 있다. 마이크로폰(162)은 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다.
메모리(170)는, 제어부(120)의 처리 및 제어를 위한 프로그램을 저장할 수도 있고, 입/출력되는 데이터들(예컨대, 애플리케이션, 콘텐트, 외부 디바이스의 위치 정보, 주소록, 2차원 바코드 분석 정보 등)을 저장할 수도 있다.
메모리(170)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 디바이스(100)는 인터넷(internet)상에서 메모리(170)의 저장 기능을 수행하는 웹 스토리지(web storage) 또는 클라우드 서버를 운영할 수도 있다.
메모리(170)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(171), 터치 스크린 모듈(172), 알림 모듈(173) 등으로 분류될 수 있다.
UI 모듈(171)은, 애플리케이션 별로 디바이스(100)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(172)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 제어부(120)로 전달할 수 있다. 본 발명의 일 실시예에 따른 터치 스크린 모듈(172)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(172)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.
터치스크린의 터치 또는 근접 터치를 감지하기 위해 터치스크린의 내부 또는 근처에 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.
또한, 터치스크린의 터치를 감지하기 위한 센서의 일례로 근접 센서가 있다.
근접 센서는 소정의 검출면에 접근하는 물체, 혹은 근방에 존재하는 물체의 유무를 전자계의 힘 또는 적외선을 이용하여 기계적 접촉이 없이 검출하는 센서를 말한다. 근접 센서의 예로는 투과형 광전 센서, 직접 반사형 광전 센서, 미러 반사형 광전 센서, 고주파 발진형 근접 센서, 정전용량형 근접 센서, 자기형 근접 센서, 적외선 근접 센서 등이 있다. 사용자의 터치 제스처에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭, 스와이프 등이 있을 수 있다.
알림 모듈(173)은 디바이스(100)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 디바이스(100)에서 발생되는 이벤트의 예로는 호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 등이 있다. 알림 모듈(173)은 디스플레이부(111)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(112)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(113)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
본 발명의 일 실시예에 따른 디바이스(100)는, 적어도 하나의 애플리케이션의 실행 창을 플로팅 윈도우 형태로 다른 애플리케이션의 실행 창 위에 제공함으로써, 사용자가 디바이스(100)의 멀티 윈도우 기능을 효율적으로 이용할 수 있도록 한다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.
100: 디바이스 110: 출력부
120: 제어부 130: 사용자 입력부
140: 센싱부 150: 통신부
160: A/V 입력부 170: 메모리

Claims (31)

  1. 디바이스가 복수의 애플리케이션을 실행하는 방법에 있어서,
    제 1 애플리케이션의 실행 창을 화면에 표시하는 단계;
    상기 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청을 수신하는 단계;
    상기 실행 요청에 기초하여, 상기 제 2 애플리케이션의 실행 창을 상기 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 상기 제 1 애플리케이션의 실행 창 위에 표시하는 단계;
    상기 제 1 애플리케이션에서 제공되는 정보를 이용하여, 상기 제 2 애플리케이션의 소정 기능을 실행하는 단계;
    상기 제 2 애플리케이션의 소정 기능을 실행한 결과 정보를 상기 제 2 애플리케이션의 실행 창 위에 표시하는 단계; 및
    상기 제 1 애플리케이션에서 제공되는 정보에 기초해서, 상기 제 2 애플리케이션의 실행 창의 위치를 변경하는 단계;를 포함하는 복수의 애플리케이션 실행 방법
  2. 제 1 항에 있어서, 상기 실행 요청을 수신하는 단계는,
    상기 제 2 애플리케이션을 상기 제 1 애플리케이션의 실행 창 보다 작은 상기 소정 사이즈로 실행하라는 요청을 수신하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  3. 제 1 항에 있어서, 상기 제 2 애플리케이션에 대한 실행 요청을 수신하는 단계는,
    상기 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  4. 제 3 항에 있어서, 상기 기 설정된 이벤트는,
    외부 디바이스의 연결, 알림 메시지 수신, 외부 디바이스의 연결 요청 및 소정 버튼 선택 입력 수신 중 적어도 하나를 포함하는 복수의 애플리케이션 실행 방법.
  5. 제 1 항에 있어서, 상기 제 1 애플리케이션에서 제공되는 정보는,
    상기 제 1 애플리케이션의 실행 창에 표시되는 정보 및 상기 제 1 애플리케이션에서 상기 제 2 애플리케이션으로 전송되는 정보 중 적어도 하나를 포함하는 복수의 애플리케이션 실행 방법.
  6. 삭제
  7. 제 1 항에 있어서, 상기 제 2 애플리케이션의 소정 기능을 실행하는 단계는,
    사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택하는 단계; 및
    상기 선택된 적어도 하나의 콘텐트를 이용하여, 상기 제 2 애플리케이션의 소정 기능을 실행하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  8. 제 7 항에 있어서, 상기 제 2 애플리케이션의 소정 기능을 실행하는 단계는,
    상기 사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 이미지를 선택하는 단계; 및
    상기 선택된 적어도 하나의 이미지를 상기 제 2 애플리케이션을 이용하여 캡쳐하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  9. 제 7 항에 있어서, 상기 제 2 애플리케이션의 소정 기능을 실행하는 단계는,
    상기 사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 텍스트를 선택하는 단계; 및
    상기 선택된 텍스트에 대한 부가 정보를 상기 제 2 애플리케이션을 통해 제공하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  10. 제 7 항에 있어서, 상기 적어도 하나의 콘텐트를 선택하는 단계는,
    사용자의 드래그 입력에 기초하여, 상기 제 2 애플리케이션의 실행 창을 상기 적어도 하나의 콘텐트가 표시된 영역으로 이동시키는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  11. 삭제
  12. 제 1 항에 있어서, 상기 복수의 애플리케이션 실행 방법은,
    상기 화면에 대한 사용자의 터치를 감지하는 단계; 및
    상기 화면 상에서 상기 터치가 감지된 위치로 상기 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함하는 복수의 애플리케이션 실행 방법.
  13. 제 1 항에 있어서, 상기 복수의 애플리케이션 실행 방법은,
    사용자의 음성을 수신하는 단계; 및
    상기 음성이 수신된 방향으로 상기 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함하는 복수의 애플리케이션 실행 방법.
  14. 제 1 항에 있어서, 상기 복수의 애플리케이션 실행 방법은,
    상기 소정 사이즈로 표시된 상기 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청을 수신하는 단계; 및
    상기 사이즈 변경 요청에 기초하여, 상기 제 2 애플리케이션의 실행 창의 사이즈를 변경하는 단계를 포함하는 복수의 애플리케이션 실행 방법.
  15. 제 14 항에 있어서, 상기 복수의 애플리케이션 실행 방법은,
    상기 제 2 애플리케이션이 카메라 애플리케이션인 경우, 상기 제 2 애플리케이션의 실행 창의 사이즈를 피사체의 크기에 따라 조절하는 단계를 더 포함하는 복수의 애플리케이션 실행 방법.
  16. 제 1 항에 있어서, 상기 복수의 애플리케이션 실행 방법은,
    상기 제 2 애플리케이션에서 제공되는 정보를 이용하여, 상기 제 1 애플리케이션의 소정 기능을 실행하는 단계를 더 포함하는 복수의 애플리케이션 실행 방법.
  17. 제 1 애플리케이션의 실행 창을 화면에 표시하고, 상기 제 1 애플리케이션과 상이한 제 2 애플리케이션에 대한 실행 요청에 기초하여, 상기 제 2 애플리케이션의 실행 창을 상기 제 1 애플리케이션의 실행 창 보다 작은 소정 사이즈로 상기 제 1 애플리케이션의 실행 창 위에 표시하는 디스플레이부; 및
    상기 제 1 애플리케이션에서 제공되는 정보를 이용하여, 상기 제 2 애플리케이션의 소정 기능을 실행하고,
    상기 소정 기능을 실행한 결과 정보를 상기 제 2 애플리케이션의 실행 창 위에 표시하고, 상기 제 1 애플리케이션에서 제공되는 정보에 기초해서, 상기 제 2 애플리케이션의 실행 창의 위치를 변경하도록 상기 디스플레이부를 제어하는 제어부를 포함하는 디바이스.
  18. 제 17 항에 있어서, 상기 제어부는,
    상기 제 2 애플리케이션을 상기 제 1 애플리케이션의 실행 창 보다 작은 상기 소정 사이즈로 실행하라는 요청을 수신하는 디바이스.
  19. 제 17 항에 있어서, 상기 제어부는,
    상기 제 2 애플리케이션에 대한 실행 요청에 대응하는 기 설정된 이벤트 발생을 감지하는 디바이스.
  20. 삭제
  21. 제 17 항에 있어서, 상기 제어부는,
    사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 콘텐트를 선택하고, 상기 선택된 적어도 하나의 콘텐트를 이용하여, 상기 제 2 애플리케이션의 소정 기능을 실행하는 디바이스.
  22. 제 21 항에 있어서, 상기 제어부는,
    상기 사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 적어도 하나의 이미지를 선택하고, 상기 선택된 적어도 하나의 이미지를 상기 제 2 애플리케이션을 이용하여 캡쳐하는 디바이스.
  23. 제 21 항에 있어서, 상기 제어부는,
    상기 사용자 입력에 기초하여, 상기 제 1 애플리케이션의 실행 창에 표시된 텍스트를 선택하고, 상기 선택된 텍스트에 대한 부가 정보를 상기 제 2 애플리케이션을 통해 제공하는 디바이스.
  24. 제 21 항에 있어서, 상기 제어부는,
    사용자의 드래그 입력에 기초하여, 상기 제 2 애플리케이션의 실행 창을 상기 적어도 하나의 콘텐트가 표시된 영역으로 이동시키는 디바이스.
  25. 삭제
  26. 제 17 항에 있어서, 상기 제어부는,
    상기 화면에 대한 사용자의 터치를 감지하고, 상기 화면 상에서 상기 터치가 감지된 위치로 상기 제 2 애플리케이션의 실행 창을 이동시키는 디바이스.
  27. 제 17 항에 있어서, 상기 제어부는,
    사용자의 음성을 수신하고, 상기 음성이 수신된 방향으로 상기 제 2 애플리케이션의 실행 창을 이동시키는 단계를 더 포함하는 디바이스.
  28. 제 17 항에 있어서, 상기 제어부는,
    상기 소정 사이즈로 표시된 상기 제 2 애플리케이션의 실행 창에 대한 사이즈 변경 요청을 수신하고, 상기 사이즈 변경 요청에 기초하여, 상기 제 2 애플리케이션의 실행 창의 사이즈를 변경하는 디바이스.
  29. 제 28 항에 있어서, 상기 제어부는,
    상기 제 2 애플리케이션이 카메라 애플리케이션인 경우, 상기 제 2 애플리케이션의 실행 창의 사이즈를 피사체의 크기에 따라 조절하는 디바이스.
  30. 제 17 항에 있어서, 상기 제어부는,
    상기 제 2 애플리케이션에서 제공되는 정보를 이용하여, 상기 제 1 애플리케이션의 소정 기능을 실행하는 디바이스.
  31. 제 1 항 내지 제 5 항, 제 7 항 내지 제 10 항, 제 12 항 내지 제 16 항 중 어느 한 항의 복수의 애플리케이션 실행 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020130112075A 2013-09-17 2013-09-17 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스 KR102117048B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130112075A KR102117048B1 (ko) 2013-09-17 2013-09-17 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130112075A KR102117048B1 (ko) 2013-09-17 2013-09-17 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스

Publications (2)

Publication Number Publication Date
KR20150032068A KR20150032068A (ko) 2015-03-25
KR102117048B1 true KR102117048B1 (ko) 2020-05-29

Family

ID=53025430

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130112075A KR102117048B1 (ko) 2013-09-17 2013-09-17 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스

Country Status (1)

Country Link
KR (1) KR102117048B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023013921A3 (ko) * 2021-08-06 2023-03-30 삼성전자 주식회사 어플리케이션의 실행 화면을 표시하기 위한 전자 장치, 그 동작 방법 및 저장 매체
WO2023048404A1 (ko) * 2021-09-24 2023-03-30 삼성전자주식회사 어플리케이션의 실행 화면을 표시하는 방법 및 이를 지원하는 전자 장치
US11934850B2 (en) 2021-08-06 2024-03-19 Samsung Electronics Co., Ltd Electronic device for displaying execution screen of application, operating method thereof, and storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102547115B1 (ko) * 2016-06-03 2023-06-23 삼성전자주식회사 어플리케이션을 전환하기 위한 방법 및 그 전자 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284882A (ja) 1999-03-29 2000-10-13 Sony Corp ウィンドウ表示装置および方法、並びにコンピュータ読み取り可能な媒体
JP2013175189A (ja) 2012-02-24 2013-09-05 Samsung Electronics Co Ltd ディスプレイウィンドーに対するキャプチャイメージ生成方法及びその装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101624993B1 (ko) * 2009-10-01 2016-06-07 엘지전자 주식회사 이동 단말기와 그 제어 방법
KR101889838B1 (ko) * 2011-02-10 2018-08-20 삼성전자주식회사 터치 스크린 디스플레이를 구비한 휴대 기기 및 그 제어 방법
KR20130054071A (ko) * 2011-11-16 2013-05-24 삼성전자주식회사 다중 어플리케이션을 실행하는 모바일 장치 및 그 방법
KR102304700B1 (ko) * 2012-02-24 2021-09-28 삼성전자주식회사 디스플레이 창에 대한 캡쳐 이미지 생성 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284882A (ja) 1999-03-29 2000-10-13 Sony Corp ウィンドウ表示装置および方法、並びにコンピュータ読み取り可能な媒体
JP2013175189A (ja) 2012-02-24 2013-09-05 Samsung Electronics Co Ltd ディスプレイウィンドーに対するキャプチャイメージ生成方法及びその装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023013921A3 (ko) * 2021-08-06 2023-03-30 삼성전자 주식회사 어플리케이션의 실행 화면을 표시하기 위한 전자 장치, 그 동작 방법 및 저장 매체
US11934850B2 (en) 2021-08-06 2024-03-19 Samsung Electronics Co., Ltd Electronic device for displaying execution screen of application, operating method thereof, and storage medium
WO2023048404A1 (ko) * 2021-09-24 2023-03-30 삼성전자주식회사 어플리케이션의 실행 화면을 표시하는 방법 및 이를 지원하는 전자 장치

Also Published As

Publication number Publication date
KR20150032068A (ko) 2015-03-25

Similar Documents

Publication Publication Date Title
US10534524B2 (en) Method and device for controlling reproduction speed of multimedia content
US9952681B2 (en) Method and device for switching tasks using fingerprint information
CN110134321B (zh) 用于发送数据的方法和设备,以及接收数据的方法和设备
CN103995657B (zh) 移动终端及其控制方法
US10097494B2 (en) Apparatus and method for providing information
US9411512B2 (en) Method, apparatus, and medium for executing a function related to information displayed on an external device
CN103984692B (zh) 推荐面板提供方法和设备和推荐项目提供方法和服务器
EP2775386B1 (en) Electronic apparatus displaying representative information and control method thereof
KR20130026892A (ko) 이동 단말기 및 그것의 사용자 인터페이스 제공 방법
KR102254121B1 (ko) 메뉴 제공 방법 및 이를 위한 디바이스
TWI681330B (zh) 用以執行可攜式終端的應用程式的方法和可攜式終端裝置
EP3211515A1 (en) Display device and method for controlling display device
CN106527928A (zh) 一种截屏控制装置、方法及智能终端
KR102117048B1 (ko) 복수의 애플리케이션 실행 방법 및 이를 위한 디바이스
KR102380228B1 (ko) 디바이스를 제어하는 방법 및 그 디바이스
JP6196390B2 (ja) コンテンツディスプレイ方法及びそのためのデバイス
KR20140003245A (ko) 이동 단말기 및 이동 단말기의 제어 방법
US9817566B1 (en) Approaches to managing device functionality
US20140292818A1 (en) Display apparatus and control method thereof
KR102306535B1 (ko) 디바이스를 제어하는 방법 및 디바이스
TWI681320B (zh) 提供裝置的內容的方法與所述裝置
KR102361028B1 (ko) 컨텐츠를 제공하는 방법 및 이를 위한 디바이스
KR20200086653A (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