KR20160026141A - 윈도우 운용 방법 및 이를 지원하는 전자 장치 - Google Patents

윈도우 운용 방법 및 이를 지원하는 전자 장치 Download PDF

Info

Publication number
KR20160026141A
KR20160026141A KR1020140114103A KR20140114103A KR20160026141A KR 20160026141 A KR20160026141 A KR 20160026141A KR 1020140114103 A KR1020140114103 A KR 1020140114103A KR 20140114103 A KR20140114103 A KR 20140114103A KR 20160026141 A KR20160026141 A KR 20160026141A
Authority
KR
South Korea
Prior art keywords
window
output
item
control module
display control
Prior art date
Application number
KR1020140114103A
Other languages
English (en)
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 KR1020140114103A priority Critical patent/KR20160026141A/ko
Priority to US14/835,038 priority patent/US10437408B2/en
Publication of KR20160026141A publication Critical patent/KR20160026141A/ko
Priority to US16/551,118 priority patent/US11340752B2/en

Links

Images

Classifications

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

Abstract

적어도 하나의 아이템을 표시하는 디스플레이, 상기 아이템 선택 이벤트에 따라 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록 처리하는 표시 제어 모듈을 포함하는 전자 장치가 개시된다. 이 외에도 명세서를 통해 파악되는 다양한 실시 예가 가능하다.

Description

윈도우 운용 방법 및 이를 지원하는 전자 장치{Controlling Method based on a communication status and Electronic device supporting the same}
본 발명의 다양한 실시 예들은 윈도우 제어와 관련된 것이다.
기존의 스마트폰과 같은 전자 장치는, 다양한 사용자 기능 운용과 관련된 화면을 윈도우로 표시하고 있다. 예컨대, 전자 장치는 동영상 기능, 웹 접속 기능 등 입력 이벤트에 의해 지정된 기능들에 따라 관련된 윈도우를 디스플레이를 통해 제공하고 있다.
상술한 종래 전자 장치는 복수개의 기능이 실행되는 경우 사용자 의도에 관계없이 복수개의 윈도우들을 일정 형태로 나열하거나 서로 포개어 배치하고 있다. 이에 따라, 사용자가 의도하는 윈도우 배치를 위해서 윈도우 위치나 크기를 다시 조정해야 하는 불편함이 있었다.
다양한 실시 예에서는 사용자 의도에 따라 다양한 형태의 윈도우를 보다 용이하게 조정하고 운용할 수 있도록 하는 윈도우 운용 방법 및 이를 지원하는 전자 장치를 제공한다.
본 발명의 다양한 실시 예에 따른 전자 장치는, 적어도 하나의 아이템을 표시하는 디스플레이, 상기 아이템 선택 이벤트에 따라 출력 가능한 윈도우의 멀티 윈도우 출력 형태(복수개의 윈도우가 배치되는 환경에서 윈도우 출력 형태)를 지정된 형태로 출력하도록 처리하는 표시 제어 모듈을 포함할 수 있다.
본 발명의 다양한 실시 예에 따른 윈도우 운용 방법은 표시된 아이템 선택과 관련된 이벤트를 수신하는 동작, 상기 이벤트에 대응하여 상기 선택된 아이템과 관련되어 출력 가능한 윈도우의 멀티 윈도우 출력 형태(복수개의 윈도우가 배치되는 환경에서 윈도우 출력 형태)를 지정된 형태로 출력하도록 처리하는 동작을 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 윈도우의 위치 또는 형태 중 적어도 하나의 조정을 보다 직관적이며 용이하게 수행할 수 있도록 지원한다.
도 1은 다양한 실시 예에 따른 네트워크 환경 내의 전자 장치를 나타낸다.
도 2는 다양한 실시 예에 따른 표시 제어 모듈의 구성을 나타낸 도면이다.
도 3은 다양한 실시 예에 따른 윈도우 운용 방법을 나타낸다.
도 4a 및 도 4b는 다양한 실시 예에 따른 이동 이벤트 기반의 멀티 윈도우 형태를 나타낸 한 실시 예다.
도 5a 내지 도 5f는 다양한 실시 예에 따른 선택 이벤트 기반의 멀티 윈도우 형태를 나타낸 한 실시 예다.
도 6a 내지 도 6c는 다양한 실시 예에 따른 멀티 윈도우 미리 보기의 한 실시 예다.
도 7a 및 7b는 다양한 실시 예에 따른 위젯 윈도우를 포함한 멀티 윈도우의 한 실시 예다.
도 8a 내지 도 8c는 다양한 실시 예에 따른 멀티 윈도우 조정 기능의 한 실시 예다.
도 9는 다양한 실시 예에 따른 멀티 윈도우 실행 취소 기능의 한 실시 예다.
도 10은 다양한 실시 예에 따른 윈도우 트레이 운용의 한 실시 예다.
도 11은 다양한 실시 예에 따른 멀티 윈도우 기능을 지원하는 전자 장치의 한 실시 예를 나타낸 도면이다.
도 12는 다양한 실시 예에 따른 프로그램 모듈의 블록도를 나타낸다.
이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "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)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 일반적으로 사용되는 사전에 정의된 용어들은 관련 기술의 문맥 상 가지는 의미와 동일 또는 유사한 의미를 가지는 것으로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 발명의 실시 예들을 배제하도록 해석될 수 없다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 화상 전화기, 전자북 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device)(예: 스마트 안경, 머리 착용형 장치(head-mounted-device(HMD)), 전자 의복, 전자 팔찌, 전자 목걸이, 전자 앱세서리(appcessory), 전자 문신, 스마트 미러, 또는 스마트 와치(smart watch))중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 스마트 가전 제품(smart home appliance)일 수 있다. 스마트 가전 제품은, 예를 들면, 텔레비전, DVD 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, GPS 수신기(global positioning system receiver), 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, 네트워크 162, 타 전자 장치 102, 서버 장치 104 등을 포함할 수 있다.
상술한 네트워크 환경에서의 전자 장치 100은 복수개의 윈도우(또는 멀티 윈도우)를 표시하되, 디스플레이 150에 표시된 아이템(또는 아이콘이나 썸네일, 텍스트 등의 오브젝트)과 관련된 이벤트의 종류 또는 이벤트 발생 위치 중 적어도 하나에 대응하여 지정된 형태의 윈도우로 출력(복수개의 윈도우가 배치되는 환경에서 팝업 윈도우나 스플릿 윈도우 또는 위젯 윈도우 형태로 출력)되도록 지원할 수 있다. 여기서 윈도우는 전자 장치 100의 디스플레이 150에 출력되는 화면 UI의 적어도 일부 요소로서, 예컨대, 디스플레이 150 영역을 분할한 스플릿 윈도우, 디스플레이 150 지정된 영역에 지정된 크기로 출력되는 팝업 윈도우, 어플리케이션의 속성에 따라 제공되는 위젯 윈도우, 또는 어플리케이션 윈도우 등의 형태를 포함할 수 있다. 다양한 실시 예들에서 윈도우는 웹 페이지, 이미지 화면, 문서 화면, 가상 패널, 스크린 등의 의미를 가질 수 있다. 한 실시 예에 따르면, 윈도우는 하나의 사용자 기능과 관련된 정보들이 표시되는 지정된 크기의 구역이나 영역이 될 수 있다. 또는 윈도우는 하나의 사용자 기능과 관련된 정보들이 지정된 크기와 위치를 가지며 배열되는 레이어일 수 있다.
상기 네트워크 162는 통신 네트워크(telecommunications network), 예를 들면, 컴퓨터 네트워크(computer network)(예: LAN 또는 WAN), 인터넷, 또는 전화 망(telephone network) 중 적어도 하나를 포함할 수 있다. 네트워크 162는 전자 장치 100의 통신 서비스 운용과 관련된 통신 채널 형성을 지원할 수 있다. 전자 장치 100은 네트워크 162 이용과 관련된 적어도 하나의 윈도우 예컨대 웹 페이지 윈도우, 통신 연결 상태를 나타내는 윈도우를 출력할 수 있다.
상기 타 전자 장치 102는 상기 전자 장치 100과 동일한 또는 다른 종류의 장치일 수 있다. 타 전자 장치 102는 네트워크 162를 통하여 전자 장치 100에 통화 호 연결 요청 메시지를 전송하거나, 메시지 전송을 요청할 통신 채널을 형성할 수 있다. 전자 장치 100은 타 전자 장치 102와의 통신 연결, 타 전자 장치 102와의 데이터 송수신 등과 관련된 다양한 윈도우를 출력할 수 있다. 예컨대, 전자 장치 100은 타 전자 장치 102와의 연결 가능한 다양한 통신 방식들과 관련된 윈도우, 통신 연결 상태를 나타내는 윈도우, 타 전자 장치 102로부터 수신한 컨텐츠 표시와 관련된 윈도우 등을 출력할 수 있다.
상기 서버 장치 104는 하나 또는 그 이상의 서버들의 그룹을 포함할 수 있다. 다양한 실시 예에 따르면, 상기 전자 장치 100에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 전자 장치(예: 전자 장치 102 또는 서버 장치 104)에서 실행될 수 있다. 서버 장치 104는 통신 서비스 지원과 관련하여 전자 장치 100 또는 타 전자 장치 102와 통신 채널을 형성할 수 있다. 한 실시 예에 따르면, 서버 장치 104는 서버 페이지를 마련하고, 전자 장치 100에 제공할 수 있다. 전자 장치 100은 수신된 서버 페이지를 일정 윈도우 형태(예: 웹 페이지를 표시하는 윈도우, 컨텐츠 재생과 관련된 팝업 윈도우 등)로 출력할 수 있다.
한 실시 예에 따르면, 상기 전자 장치 100이 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 상기 전자 장치 100은 상기 기능 또는 상기 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 다른 장치(예: 타 전자 장치 102, 또는 서버 장치 104)에게 요청할 수 있다. 상기 다른 전자 장치(예: 타 전자 장치 102, 또는 서버 장치 104)는 상기 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 상기 전자 장치 100으로 전달할 수 있다. 상기 전자 장치 100은 수신된 결과를 그대로 또는 추가적으로 처리하여 상기 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
상기 전자 장치 100은 버스 110, 프로세서 120, 메모리 130, 입출력 인터페이스 180, 디스플레이 150, 및 통신 인터페이스 160, 통신 제어 모듈 170을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치 100은, 상기 구성요소들 중 적어도 하나를 생략하거나 다른 구성 요소를 추가적으로 구비할 수 있다.
상기 전자 장치 100의 버스 110은, 예를 들면, 상기 구성요소들 110 내지 170을 서로 연결하고, 상기 구성요소들 간의 통신(예: 제어 메시지 및/또는 데이터)을 전달하는 회로를 포함할 수 있다. 예컨대, 버스 110은 사용자 기능 실행과 관련된 입력 이벤트를 표시 제어 모듈 170 또는 프로세서 120 중 적어도 하나에 전달할 수 있다. 버스 110은 표시 제어 모듈 170의 제어에 따라 출력한 윈도우 데이터를 디스플레이 150에 전달할 수 있다. 다양한 실시 예에 따르면, 버스 110은 터치 기능을 지원하는 디스플레이 150으로부터 멀티 윈도우 출력(복수개의 윈도우가 배치되는 환경에서 윈도우 출력)과 관련된 터치 이벤트가 수신되면 이를 표시 제어 모듈 170에 전달할 수 있다.
상기 프로세서 120은, 응용 프로세서(AP: Application Processor), 통신 프로세서(CP: Communication Processor), 중앙처리장치(CPU) 중 적어도 하나를 포함할 수 있다. 상기 프로세서 120은, 예를 들면, 상기 전자 장치 100의 적어도 하나의 다른 구성요소들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 실행할 수 있다. 다양한 실시 예에 따르면, 프로세서 120은 적어도 하나의 어플리케이션 실행과 관련된 데이터 처리 또는 제어 신호 처리를 수행할 수 있다. 한 실시 예에 따르면, 프로세서 120은 메모리 130에 로드되는 프로그램 모듈들의 운용과 관련된 연산 처리를 수행할 수 있다. 이러한 프로세서 120은 표시 제어 모듈 170의 운용을 지원하여, 이벤트 발생에 따른 윈도우 출력과 조정, 변환 등과 관련된 연산을 수행할 수 있다.
상기 메모리 130은, 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 상기 메모리 130은, 예를 들면, 상기 전자 장치 100의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 상기 메모리 130은 소프트웨어 및/또는 프로그램을 저장할 수 있다. 상기 프로그램은, 예를 들면, 커널 141, 미들웨어 143, API(application programming interface) 145, 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 147 등을 포함할 수 있다. 상기 커널 141, 미들웨어 143, 또는 API 145의 적어도 일부는, 운영 시스템(operating system, OS)이라고 불릴 수 있다.
상기 커널 141은, 예를 들면, 다른 프로그램들(예: 미들웨어 143, API 145, 또는 어플리케이션 프로그램 147)에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스 110, 프로세서 120, 또는 메모리 130 등)을 제어 또는 관리할 수 있다. 또한, 상기 커널 141은 상기 미들웨어 143, 상기 API 145, 또는 상기 어플리케이션 프로그램 147에서 상기 전자 장치 101의 개별 구성요소에 접근함으로써, 시스템 리소스들을 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다. 한 실시 예에 따르면, 커널 141은 멀티 윈도우 출력과 관련된 메모리의 할당, 디스플레이 150의 데이터 출력, 출력된 데이터의 변경 등을 지원할 수 있다.
상기 미들웨어 143은, 예를 들면, 상기 API 145 또는 상기 어플리케이션 프로그램 147이 상기 커널 141과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 상기 미들웨어 143은 상기 어플리케이션 프로그램 147로부터 수신된 작업 요청들과 관련하여, 예를 들면, 상기 어플리케이션 프로그램 147 중 적어도 하나의 어플리케이션에 상기 전자 장치 101의 시스템 리소스(예: 버스 110, 프로세서 120, 또는 메모리 130 등)를 사용할 수 있는 우선 순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 제어(예: 스케쥴링 또는 로드 밸런싱)을 수행할 수 있다. 한 실시 예에 따르면, 미들웨어 143은 적어도 하나의 윈도우 출력과 관련된 정보를 커널 141에 전달하고, 멀티 윈도우 출력과 관련된 입력 이벤트 수신과 관련된 API 호출, 수신된 입력 이벤트에 따라 복수의 윈도우 출력과 관련된 API 호출 등을 지원할 수 있다.
상기 API 145는, 예를 들면, 상기 어플리케이션 147이 상기 커널 141 또는 상기 미들웨어 143에서 제공되는 기능을 제어하기 위한 인터페이스로, 예를 들면, 파일 제어, 윈도우 제어, 화상 처리, 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수 (예: 명령어)를 포함할 수 있다. 한 실시 예에 따르면, API 145는 선택된 사용자 기능 별로 출력할 윈도우 관련 API, 입력 이벤트 처리와 관련된 API, 멀티 윈도우 처리와 관련된 API 등을 포함할 수 있다.
상기 입출력 인터페이스 180은, 예를 들면, 사용자 또는 다른 외부 기기로부터 입력된 명령 또는 데이터를 상기 전자 장치 100의 다른 구성요소(들)에 전달할 수 있는 인터페이스의 역할을 할 수 있다. 또한, 상기 입출력 인터페이스 180은 상기 전자 장치 100의 다른 구성요소(들)로부터 수신된 명령 또는 데이터를 사용자 또는 다른 외부 기기로 출력할 수 있다. 한 실시 예에 따르면, 입출력 인터페이스 180은 디스플레이 150에 표시된 적어도 하나의 아이템을 선택할 수 있는 키 버튼, 키 패드 등을 포함할 수 있다. 또한 입출력 인터페이스 180은 오디오 처리 모듈을 포함할 수 있다. 오디오 처리 모듈은 멀티 윈도우 운용과 관련된 지정된 오디오 데이터를 출력할 수 있다. 예컨대, 오디오 처리 모듈은 특정 기능 실행과 관련되어 출력되는 윈도우가 팝업 윈도우로 출력되는 경우의 오디오 데이터와, 스플릿 윈도우로 출력되는 경우의 오디오 데이터를 서로 다르게 출력할 수 있다. 다양한 실시 예에 따르면, 입출력 인터페이스 180은 진동 모듈, 램프 모듈 등을 더 포함할 수 있다. 진동 모듈의 진동 패턴 또는 램프 모듈의 점멸 색상이나 패턴은 출력되는 윈도우의 형태(복수개의 윈도우가 배치되는 환경에서 윈도우 출력 형태)에 따라 다양하게 적용될 수 있다.
상기 디스플레이 150은, 예를 들면, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이, 또는 마이크로 전자기계 시스템(microelectromechanical systems, MEMS) 디스플레이, 또는 전자종이(electronic paper) 디스플레이를 포함할 수 있다. 상기 디스플레이 150은, 예를 들면, 사용자에게 각종 컨텐츠(예: 텍스트, 이미지, 비디오, 아이콘, 또는 심볼 등)를 표시할 수 있다. 상기 디스플레이 150은, 터치스크린을 포함할 수 있으며, 예를 들면, 전자 펜 또는 사용자의 신체의 일부를 이용한 터치, 제스처, 근접, 또는 호버링(hovering) 입력을 수신할 수 있다.
다양한 실시 예에 따르면, 디스플레이 150은 적어도 하나의 윈도우를 출력할 수 있다. 예컨대, 디스플레이 150은 입력 이벤트에 의해 지정된 사용자 기능 또는 스케줄링에 의해 실행되는 기능에 대응하는 윈도우를 출력할 수 있다. 다양한 실시 예에 따르면, 디스플레이 150은 멀티 윈도우 기능 지원과 관련된 윈도우 트레이를 출력할 수 있다. 윈도우 트레이에서 아이템이 선택되거나 또는 특정 윈도우가 출력되고 있는 상태에서 아이템이 선택되는 경우, 디스플레이 150은 해당 아이템과 관련된 윈도우를 출력할 수 있다. 이 동작에서, 디스플레이 150은 이벤트에 따라 새로 출력되는 윈도우의 형태(복수개의 윈도우가 배치되는 환경에서 윈도우 출력 형태)를 팝업 윈도우로 출력하거나 스플릿 윈도우 또는 위젯 윈도우로 출력할 수 있다. 또는 디스플레이 150은 이벤트에 따라 위젯 윈도우로 출력할 수도 있다.
상기 통신 인터페이스 160은, 예를 들면, 상기 전자 장치 100과 외부 전자 장치(예: 타 전자 장치 102 또는 서버 장치 104) 간의 통신을 설정할 수 있다. 예를 들면, 상기 통신 인터페이스 160은 무선 통신(또는 근거리 무선 통신) 또는 유선 통신을 통해서 네트워크 162에 연결되어 외부 전자 장치(예: 타 전자 장치 102 또는 서버 장치 104)와 통신할 수 있다. 상기 무선 통신은, 예를 들면 셀룰러 통신 프로토콜로서, 예를 들면 LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, 또는 GSM 등 중 적어도 하나를 사용할 수 있다. 상기 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard 232), 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 상기 근거리 무선 통신은 블루투스 통신모듈, 와이파이 다이렉트 통신 모듈 등을 기반으로 형성되는 통신 방식을 포함할 수 있다. 통신 인터페이스 160 운용에 따라 적어도 하나의 윈도우가 디스플레이 150에 출력될 수 있다. 출력된 윈도우에 포함된 적어도 하나의 아이템(또는 오브젝트)와 관련된 이벤트에 대응하여 추가로 출력되는 윈도우 형태가 다를 수 있다.
표시 제어 모듈 170은 전자 장치 100의 윈도우 출력을 제어할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170 은 이벤트에 의해 선택된 아이템의 이동 방향, 이동 속도, 이동 거리, 이동 영역 중 적어도 하나에 따라 윈도우 형태를 다르게 출력하도록 제어할 수 있다. 또는 표시 제어 모듈 170은 선택된(또는 지시된) 아이템과 관련된 이벤트의 형태(예: 탭, 더블 탭, 멀티 탭, 핀치 줌 또는 핀치 아웃, 롱 터치 등)에 대응하여 윈도우 형태를 다르게 출력하도록 제어할 수 있다. 예컨대, 표시 제어 모듈 170은 이벤트에 따라 팝업 윈도우 또는 스플릿 윈도우 중 어느 하나를 출력하도록 제어할 수 있다. 또는 표시 제어 모듈 170은 이벤트에 따라 위젯 윈도우를 출력하도록 제어할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 이벤트에 따라, 팝업 윈도우(또는 스플릿 윈도우, 위젯 윈도우 중 적어도 하나 등)의 크기, 위치, 형태 중 적어도 하나를 다르게 출력하도록 제어할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 특정 기능 실행에 따른 윈도우가 출력된 상태에서 윈도우 트레이 또는 최근 실행 리스트를 출려할 수 있다. 표시 제어 모듈 170은 윈도우 트레이 또는 최근 실행 리스트에서 적어도 하나의 아이템이 선택되면, 선택된 아이템에 대응하는 가이드 정보를 출력할 수 있다. 가이드 정보는 예컨대, 선택된 아이템에 의해 디스플레이 150 상에 복수개의 윈도우가 출력되는 환경에서 선택된 아이템에 대응하는 팝업 윈도우 또는 스플릿 윈도우 또는 위젯 윈도우 등에 대응하는 이미지 또는 텍스트 중 적어도 하나를 포함할 수 있다. 팝업 윈도우 이미지 또는 스플릿 윈도우 이미지 또는 위젯 윈도우 이미지 등이 표시된 영역에 선택된 아이템이 위치하면, 표시 제어 모듈 170은 위치 영역에 대응하는 프리뷰 이미지(예: 선택된 아이템과 관련한 썸네일이나 아이콘 또는 텍스트 등)을 출력할 수 있다. 표시 제어 모듈 170은 선택된 아이템과 관련한 지정된 이벤트(예: 터치 해제 이벤트)가 발생하면, 위치 영역에 대응하는 윈도우(예: 팝업 윈도우, 스플릿 윈도우 또는 위젯 윈도우)를 출력할 수 있다.
도 2는 다양한 실시 예에 따른 표시 제어 모듈의 구성을 나타낸 도면이다.
도 2를 참조하면, 표시 제어 모듈 170은 이벤트 수집 모듈 171, 멀티 윈도우 가이드 173, 기능 실행 모듈 175, 윈도우 처리 모듈 177을 포함할 수 있다.
이벤트 수집 모듈 171은 입출력 인터페이스 180 또는 터치 기능의 디스플레이 150에서 발생하는 이벤트를 수집할 수 있다. 한 실시 예에 따르면, 이벤트 수집 모듈 171은 멀티 윈도우 기능 설정과 관련된 이벤트, 윈도우 트레이 출력 또는 제거와 관련된 이벤트 등을 수집할 수 있다. 다양한 실시 예에 따르면, 이벤트 수집 모듈 171은 멀티 윈도우와 관련된 아이템(예: 특정 윈도우가 출력된 상태에서 표시되는 아이템 또는 윈도우 트레이에 배치된 아이템, 최근 실행 리스트에 배치된 아이템 등) 선택과 관련된 이벤트, 선택된 아이템의 이동과 관련된 이벤트를 수집할 수 있다. 이벤트 수집 모듈 171은 아이템과 관련된 지정된 이벤트가 발생하면, 멀티 윈도우 가이드 173, 기능 실행 모듈 175, 윈도우 처리 모듈 177 중 적어도 하나에 이를 전달할 수 있다. 다양한 실시 예에 따르면, 멀티 윈도우 기능 설정이 없는 경우, 전자 장치 100은 선택된 아이템과 관련한 윈도우를 전체 화면으로 출력할 수 있다.
한 실시 예에 따르면, 이벤트 수집 모듈 171은 아이템을 선택하는 이벤트가 발생하면, 이벤트 종류를 확인할 수 있다. 예컨대, 이벤트 수집 모듈 171은 수신된 이벤트를 분석하여 디스플레이 150에 표시된 아이템 상에서 발생한 탭(또는 더블) 터치 이벤트, 롱 터치 이벤트, 스윕 이벤트, 핀치 이벤트 등인지 확인할 수 있다. 이벤트 수집 모듈 171은 이벤트 종류나 이벤트 발생 위치 등과 관련된 정보를 관련 모듈에 전달할 수 있다. 예컨대, 이벤트 수집 모듈 171은 멀티 윈도우 가이드 173과 관련된 이벤트(예: 롱 터치 이벤트 또는 탭 이벤트)가 수집되면, 이를 멀티 윈도우 가이드 173에 알릴 수 있다. 또는 이벤트 수집 모듈 171은 기능 실행과 관련된 이벤트(예: 더블탭 터치 이벤트나 핀치 이벤트)가 수집되면, 이를 기능 실행 모듈 175에 알릴 수 있다. 또는 이벤트 수집 모듈 171은 윈도우 조정과 관련된 이벤트(예: 스윕 이벤트 또는 드래그 이벤트)이면 윈도우 처리 모듈 177에 알릴 수 있다.
멀티 윈도우 가이드 173은 윈도우 트레이(적어도 하나의 기능 실행과 관련된 아이템이 배열된 트레이) 출력을 제어할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 윈도우 트레이 출력과 관련된 적어도 하나의 세팅(예: 윈도우 트레이 출력과 관련된 아이콘이나 메뉴, 키 버튼 할당 등)을 제공할 수 있다. 멀티 윈도우 가이드 173은 세팅과 관련된 이벤트(예: 윈도우 트레이 아이콘이나 메뉴 또는 키 버튼 선택 이벤트)가 발생하면, 윈도우 트레이를 디스플레이 150에 출력하도록 제어할 수 있다. 다양한 실시 예에 따르면, 멀티 윈도우 가이드 173은 복수개의 윈도우를 디스플레이 150에 출력하기 위하여 지정된 이벤트 발생에 대응하여 최근 실행 리스트 출력을 제어할 수 있다. 최근 실행 리스트에 포함된 아이템이 선택되면, 멀티 윈도우 가이드 173은 선택된 아이템과 관련한 가이드 정보 출력을 제어할 수 있다.
멀티 윈도우 가이드 173은 가이드 정보 출력을 제어할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 이벤트 수집 모듈 171로부터 지정된 이벤트 발생과 관련된 알림을 수신하면 지정된 가이드 정보를 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 멀티 윈도우 가이드 173은 윈도우 트레이 또는 최근 실행 리스트에 포함된 아이템 선택에 대응하여 디스플레이 150의 일정 영역의 표시 형태를 변경한 가이드 정보를 출력할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 디스플레이 150 지정된 영역에 출력된 윈도의 형태를 예시하는 이미지 예컨대, 팝업 윈도우 형태로 출력되도록 설정된 영역 정보, 스플릿 윈도우 형태로 출력되도록 설정된 영역 정보 등을 가이드 정보로 출력할 수 있다. 가이드 정보는 선택된 아이템의 이동에 의해 적어도 일부가 겹치는 경우, 선택된 아이템이 겹친 영역을 하이라이트 하거나, 지정된 영역의 색상, 명암, 채도, 또는 투명도 중 적어도 하나를 변경할 수 있다. 또는 멀티 윈도우 가이드 173은 선택된 아이템과 관련한 썸네일 또는 지정된 이미지를 선택 아이템이 겹친 영역에 가이드 정보로서 출력할 수 있다.
다양한 실시 예에 따르면, 멀티 윈도우 가이드 173은 지정된 윈도우 형태와 관련된 텍스트 또는 이미지 중 적어도 하나를 포함하는 가이드 정보를 출력할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 선택된 아이템과 관련하여 팝업 윈도우 또는 스플릿 윈도우, 또는 위젯 윈도우 중 적어도 하나를 출력하기 위해서 필요한 전자 장치 100 조작 정보(예: 텍스트 또는 이미지 중 적어도 하나)를 가이드 정보로서 출력할 수 있다. 다양한 실시 예에 따르면, 멀티 윈도우 가이드 173은 윈도우의 다양한 크기를 지시하는 텍스트 정보, 복수개의 윈도우들의 배치 정보 중 적어도 하나를 가이드 정보로서 출력할 수 있다. 멀티 윈도우 가이드 173은 선택된 아이템과 관련하여 특정 이벤트 발생을 이벤트 수집 모듈 171로부터 수신하면 출력된 가이드 정보를 제거할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 가이드 정보가 출력 중인 상태에서 지정된 제스처 이벤트가 발생하면, 출력된 가이드 정보 중 적어도 일부를 제거할 수 있다. 또는 멀티 윈도우 가이드 173은 아이템 선택 이전 상태(예: 윈도우 트레이나 최근 실행 리스트가 출력된 상태 또는 윈도우 트레이나 최근 실행 리스트가 출력되기 이전 특정 윈도우가 출력된 상태)로 복귀하도록 제어할 수 있다.
다양한 실시 예에 따르면, 멀티 윈도우 가이드 173은 이벤트 수집 모듈 171로부터 전달된 이벤트에 따라 가이드 정보를 변경할 수 있다. 예컨대, 멀티 윈도우 가이드 173은 크기 조정과 관련된 이벤트(예: 드래그 이벤트)가 수신되면, 출력 중인 가이드 정보의 크기를 변경할 수 잇다. 또는 멀티 윈도우 가이드 173은 이벤트에 따라 가이드 정보에 포함된 텍스트 또는 이미지 중 적어도 하나를 조정(예: 출력된 이미지의 크기를 줄이거나 늘림) 할 수 있다.
다양한 실시 예에 따르면, 기능 실행 모듈 175는 특정 아이템 실행과 관련된 이벤트가 수신되면, 해당 아이템에 설정된 기능을 실행할 수 있다. 기능 실행 모듈 175는 기능 실행에 따른 윈도우를 윈도우 처리 모듈 177에 제공할 수 있다. 기능 실행 모듈 175는 멀티 윈도우가 디스플레이 150에 출력되는 경우 적어도 하나의 윈도우와 관련된 기능 실행을 제어할 수 있다. 한 실시 예에 따르면, 기능 실행 모듈 175는 포커싱된 윈도우(예: 입력 이벤트 처리가 지정된 윈도우)와 관련된 기능 실행을 제어할 수 있다. 또는 기능 실행 모듈 175는 포커싱되지 않은 윈도우와 관련된 기능을 백그라운드 프로세싱으로 처리할 수 있다. 기능 실행 모듈 175는 이벤트 수집 모듈 171이 전달한 이벤트에 대응하여 해당 기능 실행을 제어할 수 있다. 기능 실행 모듈 175는 기능 실행에 따른 정보를 윈도우 처리 모듈 177에 전달할 수 있다. 이 동작에서 기능 실행 모듈 175는 윈도우 식별 정보를 포함한 기능 실행 정보를 윈도우 처리 모듈 177에 전달할 수 있다.
다양한 실시 예에 따르면, 윈도우 처리 모듈 177은 기능 실행 모듈 175로부터 전달된 기능 실행 정보에 대응하여 윈도우 처리를 수행할 수 있다. 예컨대, 윈도우 처리 모듈 177은 입력 이벤트에 의해 지정된 기능 또는 기 설정된 작업 스케줄링에 따라 선택된 기능과 관련된 기능 실행 정보를 수신할 수 있다. 윈도우 처리 모듈 177은 해당 기능 실행 정보 출력과 관련된 윈도우를 생성할 수 있다. 또는 윈도우 처리 모듈 177은 기능 실행 정보에 따라 생성된 윈도우를 갱신할 수 있다. 이 동작에서, 윈도우 처리 모듈 177은 기능 실행 정보에 포함된 윈도우 식별 정보를 확인하고, 해당 윈도우를 갱신할 수 있다.
한 실시 예에 따르면, 윈도우 처리 모듈 177은 기능 실행 모듈 175로부터 새로운 윈도우와 관련된 기능 실행 정보를 수신하면, 새 윈도우를 생성할 수 있다. 윈도우 처리 모듈 177은 이벤트 수집 모듈 171이 전달한 이벤트에 대응하여 새 윈도우의 출력 형태를 결정할 수 있다. 예컨대, 윈도우 처리 모듈 177은 출력할 윈도우를 이벤트에 따라 팝업 윈도우 또는 스플릿 윈도우로 출력할 수 있다. 또는 윈도우 처리 모듈 177은 이벤트에 따라 지정된 팝업 윈도우(또는 스플릿 윈도우)의 크기 또는 위치 중 적어도 하나를 조정할 수 있다. 다양한 실시 예에 따르면, 윈도우 처리 모듈 177은 기능 실행 모듈 175로부터 위젯 실행에 따른 기능 실행 정보를 수신할 수 있다. 윈도우 처리 모듈 177은 수신된 기능 실행 정보에 대응하여 위젯 윈도우를 생성하고, 이를 디스플레이 150에 출력할 수 있다.
다양한 실시 예에 따르면, 윈도우 처리 모듈 177은 출력할 윈도우 형태에 따라 기능 실행 정보의 표시 형태를 조정할 수 있다. 예컨대, 윈도우 처리 모듈 177은 출력할 윈도우 형태(또는 크기)에 따라 출력할 기능 실행 정보의 양 또는 크기 또는 정보의 배치 위치 등을 조정할 수 있다. 다양한 실시 예에 따르면, 윈도우 처리 모듈 177은 이벤트에 따라 출력할 윈도우의 형태(예: 크기 또는 위치)를 조정할 수 있다. 또는 윈도우 처리 모듈 177은 이벤트에 따라 출력 중인 윈도우의 형태를 변경할 수 있다.
상술한 바와 같이, 다양한 실시 예에 따르면, 한 실시 예에 따른 전자 장치는 적어도 하나의 아이템을 표시하는 디스플레이, 상기 아이템 선택 이벤트에 따라 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록 처리하는 표시 제어 모듈을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 입력 이벤트 발생에 대응하여 적어도 하나의 아이템을 포함하는 윈도우 트레이 또는 최근 실행 리스트를 특정 윈도우 상에 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 선택된 아이템의 이동 영역에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 선택된 아이템과 관련하여 출력 가능한 적어도 하나의 윈도우 출력 형태의 가이드 정보를 표시하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 지정된 이벤트 발생에 따라 상기 가이드 정보를 제거하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 선택된 아이템의 이동 위치에 대응하여 출력 가능한 윈도우 출력 형태의 가이드 정보를 표시하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 선택된 아이템이 가이드 정보 상에 배치된 상태에서 지정된 이벤트 발생을 수신하면 상기 선택된 아이템과 관련된 어플리케이션 실행에 따른 정보를 포함하는 윈도우를 상기 가이드 정보에 대응하는 윈도우 형태로 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 이동된 위치의 가이드 정보에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 적어도 하나의 멀티 윈도우 형태와 관련된 적어도 하나의 가상 버튼을 포함하는 적어도 하나의 아이템을 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 선택된 가상 버튼의 종류에 따라 윈도우 형태를 다르게 출력하도록 설정될 수 있다.
다양한 실시 예에 따르면, 상기 표시 제어 모듈은 상기 이벤트 종류에 따라 출력 가능한 윈도우의 형태 또는 크기 중 적어도 하나를 조정하도록 설정될 수 있다.
도 3은 다양한 실시 예에 따른 윈도우 운용 방법을 나타낸다.
도 3을 참조하면, 윈도우 운용 방법에 있어서, 동작 301에서 표시 제어 모듈 170은 아이템 관련 이벤트를 수집할 수 있다. 이와 관련하여, 표시 제어 모듈 170은 적어도 하나의 아이템을 디스플레이 150에 출력하고, 아이템 제어(예: 아이템 선택, 아이템 이동 등)와 관련된 이벤트를 수집할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 적어도 하나의 아이템을 포함하는 윈도우 트레이(또는 최근 실행한 어플리케이션 리스트 또는 멀티 태스킹 리스트)를 제공할 수 있다. 윈도우 트레이는 홈 화면, 대기 화면에 출력되거나, 입력 이벤트 발생에 따라 출력될 수 있다. 다양한 실시 예에 따르면, 윈도우 트레이는 기능 실행에 따른 윈도우가 출력된 상태에서 입력 이벤트에 따라 디스플레이 150의 지정된 영역에 출력될 수 있다.
동작 303에서, 표시 제어 모듈 170은 멀티 윈도우 기능 지원과 관련된 설정이 있거나 또는 멀티 윈도우 기능 지원과 관련된 입력 이벤트가 있는지 확인할 수 있다. 예컨대, 표시 제어 모듈 170은 동작 301에서 수집된 이벤트가 윈도우 트레이에 배치된 아이템과 관련된 이벤트인지 확인할 수 있다. 멀티 윈도우 기능을 지원하지 않는 경우, 동작 305에서, 표시 제어 모듈 170은 아이템 관련 이벤트에 따른 기능 실행을 지원할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템과 관련된 기능을 실행하고, 해당 기능 실행 화면을 디스플레이 150 전체 화면으로 출력할 수 있다. 또는 표시 제어 모듈 170은 아이템 관련 이벤트에 따라 해당 아이템의 위치 이동 등을 지원할 수 있다.
멀티 윈도우 기능을 지원하도록 설정되거나 입력 이벤트가 있는 경우, 동작 307에서, 표시 제어 모듈 170은 이벤트 등을 확인할 수 있다. 예컨대, 표시 제어 모듈 170은 이벤트의 종류(예: 터치 다운 이벤트, 탭 이벤트, 롱 터치 이벤트, 스윕 이벤트, 드래그 이벤트 등), 이벤트가 발생한 디스플레이 150 상에서의 위치, 이벤트의 제스처 형태 중 적어도 하나를 확인할 수 있다.
동작 309에서, 표시 제어 모듈 170은 이벤트에 따른 멀티 윈도우 가이드 출력을 수행하거나 또는 윈도우 처리를 수행할 수 있다.
한 실시 예에 따르면, 표시 제어 모듈 170은 이벤트 종류가 아이템 선택과 관련된 이벤트인 경우, 출력할 윈도우 형태 미리 보기 기능을 제공할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템(예: 아이콘, 썸네일 등) 선택 시, 해당 아이템과 관련된 윈도우가 위치할 지점에 따라 표시될 윈도우 형태를 미리 보기로 제공할 수 있다. 상기 미리 보기 기능은 설정에 따라 제공되거나 또는 제공되지 않을 수 있다. 또는 상기 미리 보기 기능은 선택된 아이템이 지정된 일정 위치에 배치되는 경우에 제공될 수도 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 선택된 아이템이 지정된 영역에 배치되면, 지정된 영역에 대응하는 윈도우(예: 팝업 윈도우, 스플릿 윈도우 또는 위젯 윈도우 중 적어도 하나)를 출력할 수 있다. 또는 표시 제어 모듈 170은 선택된 아이템이 지정된 영역에 배치된 상태에서 지정된 이벤트(예: 터치 해제 이벤트)가 발생하면, 선택된 아이템과 관련된 특정 형태의 윈도우를 출력할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 선택된 아이템의 위치에 따라 실행할 어플리케이션을 결정할 수 있다. 예컨대, 표시 제어 모듈 170은 선택된 아이템이 팝업 윈도우 또는 스플릿 윈도우로 출력될 위치에 배치되면, 기능 어플리케이션을 실행하도록 제어할 수 있다. 표시 제어 모듈 170은 위젯 윈도우로 출력될 위치에 선택된 아이템이 배치되면, 위젯 어플리케이션을 실행하도록 제어할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 이벤트 종류에 따라 윈도우 형태를 선택할 수 있는 가이드 정보를 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 복수개의 아이템을 선택하는 이벤트(예: 복수개의 아이템들이 표시된 영역에서 복수의 아이템을 포함하는 영역을 그리는 드래그 이벤트 발생 시) 복수의 아이템 별로 윈도우 형태를 선택할 수 있는 가이드 정보를 출력할 수 있다. 또는 표시 제어 모듈 170은 윈도우 트레이 호출과 관련된 이벤트 발생 시 윈도우 트레이에 포함된 적어도 하나의 아이템들의 윈도우 형태를 선택할 수 있는 가이드 정보를 출력할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 실행 중인 윈도우들 전체를 검색 요청하는 이벤트(예: 홈 키 관련 입력 신호) 발생 시, 각 윈도우 별 가이드 정보를 검색 윈도우(예: 최근 실행 리스트 또는 멀티 태스킹 리스트) 상에 출력할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 각 윈도우별 가이드 정보를 디스플레이 150의 지정된 위치 또는 검색 윈도우 이외의 영역에 출력할 수도 있다. 표시 제어 모듈 170은 검색 윈도우 상에서 특정 아이템이 선택되면, 선택된 아이템의 윈도우 형태를 선택할 수 있는 가이드 정보를 출력할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 검색 윈도우에 포함된 아이템들의 개수를 확인할 수 있다. 표시 제어 모듈 170은 아이템 개수에 대응하여 가이드 정보의 개수를 다르게 제공할 수 있다. 예컨대, 표시 제어 모듈 170은 검색 윈도우에 2개의 아이템이 포함된 경우, 팝업 윈도우 이미지와 스플릿 윈도우 이미지를 포함하는 가이드 정보를 출력할 수 있다. 또는 표시 제어 모듈 170은 검색 윈도우에 3개의 아이템이 포함된 경우, 팝업 윈도우 이미지와 스플릿 윈도우 이미지, 위젯 윈도우 이미지를 포함하는 가이드 정보를 출력할 수 있다. 또는 표시 제어 모듈 170은 검색 윈도우에 4개의 아이템이 포함된 경우, 3개의 팝업 윈도우 이미지와 스플릿 윈도우 이미지를 포함하는 가이드 정보를 출력할 수 있다. 상술한 바와 같이, 표시 제어 모듈 170은 검색 윈도우에 포함된 아이템의 개수에 대응하여 적어도 하나의 팝업 윈도우 이미지, 적어도 하나의 스플릿 윈도우 이미지(복수개의 영역 구분을 위하여 표시 영역을 개수에 대응하도록 보다 작게 나누어 할당), 적어도 하나의 위젯 윈도우 이미지를 포함하는 가이드 정보를 출력할 수 있다.
다양한 실시 예에 따르면, 상기 가이드 정보는 예컨대, 팝업 윈도우 형태를 선택할 수 있는 가상 버튼(또는 숏컷 버튼, 또는 숏컷 탭 등), 스플릿 윈도우 형태를 선택할 수 있는 가상 버튼, 위젯 윈도우 형태를 선택할 수 있는 가상 버튼 중 적어도 하나를 포함할 수 있다. 또는 가이드 정보는 아이템에 의해 실행되는 기능의 종류에 따라 적어도 하나의 가상 버튼을 포함할 수 있다. 한 실시 예에 따르면, 아이템 관련 기능이 팝업 윈도우 형태(또는 위젯 윈도우 형태나 스플릿 윈도우 형태 중 어느 하나)만을 지원하는 경우 해당 아이템과 관련된 가이드 정보는 팝업 윈도우(또는 위젯 윈도우 형태나 스플릿 윈도우 형태)와 관련된 가상 버튼을 포함할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 이벤트에 따라 윈도우의 크기 또는 위치 중 적어도 하나를 조정할 수 있는 핸들러를 출력할 수 있다. 표시 제어 모듈 170은 핸들러 조작에 따른 이벤트가 발생하면 해당 이벤트에 대응하여 윈도우의 크기 또는 위치 중 적어도 하나를 조정할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 핸들러 조작에 대응하여 윈도우의 형태를 변경할 수 있다. 예컨대, 표시 제어 모듈 170은 핸들러 조작에 대응하여 스플릿 윈도우를 팝업 윈도우로 변경하거나 또는 팝업 윈도우를 스플릿 윈도우로 변경할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 이벤트에 따라 가이드 정보 또는 멀티 윈도우 중 적어도 하나의 윈도우를 제거할 수 있다. 한 실시 예에 따르면, 가이드 정보가 출력되고 있는 상태에서 지정된 제스처 이벤트가 발생하면, 표시 제어 모듈 170은 출력 중인 가이드 정보를 제거할 수 있다. 한 실시 예에 따르면, 멀티 윈도우가 출력되고 있는 상태에서 지정된 제스처 이벤트가 발생하면, 표시 제어 모듈 170은 멀티 윈도우 중 적어도 하나(예: 가장 최근에 생성된 윈도우 또는 가장 오래된 윈도우)를 제거할 수 있다.
동작 311에서, 표시 제어 모듈 170은 멀티 윈도우 운용 지원을 수행할 수 있다. 예컨대, 표시 제어 모듈 170은 멀티 윈도우 중 적어도 하나의 윈도우와 관련된 기능 실행을 지원할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 입력 이벤트 발생에 대응하여 지정된 윈도우의 페이지 전환을 지원할 수 있다. 또는 표시 제어 모듈 170은 입력 이벤트 발생에 대응하여 포커싱되는 윈도우를 변경할 수 있다.
동작 313에서, 표시 제어 모듈 170은 기능 종료와 관련된 이벤트 발생이 있는지 확인할 수 있다. 표시 제어 모듈 170은 기능 종료 관련 이벤트 발생이 없으면, 동작 311 이전으로 분기하거나 또는 동작 307 이전으로 분기하여 이하 동작을 재수행할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 발생된 이벤트가 기능 종료 관련 이벤트가 아니면, 멀티 윈도우 운용과 관련된 이벤트로 처리할 수 있다.
다양한 실시 예에 따르면, 발생된 이벤트가 기능 종료 관련 이벤트가 아니면, 표시 제어 모듈 170은 동작 307 이전으로 분기하여 발생한 이벤트 확인을 수행하고, 동작 309를 재수행할 수 있다. 예컨대, 표시 제어 모듈 170은 멀티 윈도우가 출력된 환경에서 추가적으로 또는 대체적으로 아이템 선택 이벤트가 발생하면, 선택된 아이템을 기반으로 선택할 수 있는 가이드 정보를 출력하고, 가이드 정보의 선택과 관련된 윈도우 적용을 처리할 수 있다. 이 동작에서 표시 제어 모듈 170은 아이템과 관련된 기능 실행에 의해 생성된 윈도우를 현재 출력된 멀티 윈도우 중 적어도 하나의 윈도우와 교체하거나, 또는 추가할 수 있다. 표시 제어 모듈 170은 이벤트에 따라 교체 또는 추가되는 새 윈도우 형태를 다르게 조정할 수 있다. 발생된 이벤트가 기능 종료 관련 이벤트이면, 표시 제어 모듈 170은 멀티 윈도우 기능을 종료하고, 지정된 기능 복귀를 처리할 수 있다. 예컨대, 표시 제어 모듈 170은 대기 화면, 홈 화면으로의 복귀를 수행하거나, 멀티 윈도우 중 적어도 하나의 윈도우를 디스플레이 150 전체 화면으로 출력할 수 있다.
도 4a 및 도 4b는 다양한 실시 예에 따른 이동 이벤트 기반의 멀티 윈도우 형태를 나타낸 한 실시 예다.
도 4a를 참조하면, 전자 장치 100의 표시 제어 모듈 170은 지정된 특정 기능을 실행하도록 미리 지정된 정보 또는 입력 이벤트에 대응하여 지정된 기능 실행을 제어할 수 있다. 표시 제어 모듈 170은 지정된 기능 실행에 대응하여 생성된 윈도우 490을 상태 401에서와 같이 디스플레이 150에 출력할 수 있다. 윈도우 490은 예컨대 음악 재생 윈도우, 동영상 재생 윈도우, 웹 페이지 윈도우, 메시지 기능 관련 윈도우, 문서 기능 관련 윈도우 등이 될 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 입력 이벤트 발생에 대응하여 윈도우 트레이 410(예: 멀티 윈도우 출력과 관련된 윈도우 트레이 또는 최근 실행된 어플리케이션들의 항목들을 포함한 앱 트레이 또는 앱 리스트)을 출력할 수 있다. 윈도우 트레이 410은 디스플레이 150의 일정 영역 예컨대 디스플레이 150의 좌측 영역에 배치될 수 있다. 또는 윈도우 트레이 410은 다른 위치에 출력될 수 있다. 또는 윈도우 트레이 410은 사용자 조작에 대응하여 위치가 변경될 수 있다. 예컨대, 윈도우 트레이 410은 디스플레이 150 좌우측에 각각 배치될 수도 있다. 윈도우 트레이 410은 적어도 하나의 아이템을 포함할 수 있다. 예컨대, 윈도우 트레이 410은 예컨대 음악 재생 기능, 동영상 재생 기능, 방송 컨텐츠 표시 기능, 음성 검색 기능, 음성 녹음 기능, 스케줄러 또는 달력 기능, 통화 기능, 웹 서핑 기능, 시계 기능, 알람 기능, 메시지 기능, 이메일 기능, 채팅 기능, 파일 검색 기능, 폰북 기능, 갤러리 기능, 계산기 기능 등 적어도 하나의 기능과 관련된 아이템을 포함할 수 있다.
표시 제어 모듈 170은 윈도우 트레이 410에서 아이템 412를 선택하는 이벤트를 수집할 수 있다. 표시 제어 모듈 170은 아이템 412를 선택하는 이벤트 발생에 대응하여 상태 403에서와 같이 적어도 하나의 가이드 정보 420, 430을 출력할 수 있다. 가이드 정보 420은 예컨대 아이템 412와 관련하여 실행된 기능의 윈도우를 팝업 윈도우 형태로 출력할 수 있음을 안내하는 정보일 수 있다. 가이드 정보 430은 예컨대 아이템 412와 관련하여 실행된 기능의 윈도우를 스플릿 윈도우 형태로 출력할 수 있음을 안내하는 정보일 수 있다. 스플릿 윈도우와 관련된 가이드 정보 430의 표시와 관련하여, 표시 제어 모듈 170은 윈도우 490을 변형한 윈도우 491을 디스플레이 150에 출력할 수 있다. 윈도우 491은 예컨대, 윈도우 490을 가이드 정보 430에 대응하여 일정 크기로 조정한 윈도우일 수 있다.
표시 제어 모듈 170은 아이템 412와 관련된 이벤트(예: 드래그 이벤트)에 대응하여 아이템 413을 출력할 수 있다. 아이템 413은 예컨대 아이템 412와 유사한 형태의 이미지 또는 텍스트를 포함할 수 있다. 한 실시 예에 따르면, 아이템 413은 아이템 412의 투명도를 조절한 이미지일 수 있다. 아이템 413은 이벤트 발생에 대응하여 표시되는 위치가 변경될 수 있다. 아이템 413이 상태 403에서와 같이 가이드 정보 420과 중첩되는 경우, 가이드 정보 420은 아이템 413과의 겹침에 대응하여 변경될 수 있다. 예컨대, 아이템 413과 겹친 가이드 정보 420은 색상, 명암, 크기 중 적어도 하나가 변경될 수 있다.
아이템 413이 가이드 정보 420과 겹쳐진 상태에서 지정된 이벤트(예: 드래그 이벤트 해제)가 발생하면, 표시 제어 모듈 170은 상태 405에서와 같이 아이템 412의 기능 실행에 따른 윈도우를 가이드 정보 420에 대응하는 팝업 윈도우 450으로 출력할 수 있다. 표시 제어 모듈 170은 팝업 윈도우 450으로 출력하는 동작에서 윈도우 491을 윈도우 490으로 변경할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 상태 401, 403, 405에서 윈도우 490 상태를 유지할 수도 있다. 이 경우 상태 403에서 표시 제어 모듈 170은 가이드 정보 430을 윈도우 490에 오버레이 시켜 출력할 수 있다. 표시 제어 모듈 170은 가이드 정보 420을 윈도우 490에 오버레이 형태로 표시할 수 있다.
도 4b를 참조하면, 표시 제어 모듈 170은 입력 이벤트 발생 또는 전자 장치 100에서 설정된 작업 스케줄링된 태스크 실행에 따라 상태 407에서와 같은 화면을 디스플레이 150에 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 윈도우 490을 디스플레이 150에 출력하고, 윈도우 트레이 410을 윈도우 490 상에 오버레이로 표시할 수 있다.
표시 제어 모듈 170은 아이템 412 선택 후 이동에 따라 아이템 413을 디스플레이 150에 출력할 수 있다. 이 동작에서 아이템 413이 가이드 정보 430 상에 배치되는 경우, 표시 제어 모듈 170은 아이템 413 또는 가이드 정보 430의 표시 형태를 조정할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템 413 또는 가이드 정보 430 중 적어도 하나의 색상, 명암, 크기 중 적어도 하나를 변경할 수 있다.
표시 제어 모듈 170은 아이템 413이 가이드 정보 430 상에 겹쳐진 상태에서 지정된 이벤트(예: 드래그 해제 이벤트)가 발생하면, 상태 411에서와 같이 아이템 412에 대응하는 기능 실행 윈도우를 가이드 정보 430 영역에 스플릿 윈도우 460으로 출력할 수 있다. 이 동작에서 표시 제어 모듈 170은 윈도우 491를 스플릿 윈도우 460와 함께 출력할 수 있다. 상태 409에서 표시 제어 모듈 170은 가이드 정보 430을 출력하되 윈도우 491을 출력하지 않고 윈도우 490 상태를 유지할 수도 있다. 윈도우 490은 아이템 412에 대응하는 스플릿 윈도우가 출력되는 경우 윈도우 491로 변경될 수 있다.
도 5a 내지 도 5c는 다양한 실시 예에 따른 선택 이벤트 기반의 멀티 윈도우 형태를 나타낸 한 실시 예다.
도 5a를 참조하면, 표시 제어 모듈 170은 입력 이벤트 발생에 대응하여 대기 화면, 홈 화면 등을 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 지정된 이벤트 예컨대 최근 실행 리스트(또는 검색 윈도우) 출력과 관련된 이벤트가 발생하면 상태 501에서와 같이 최근 실행 리스트 510을 디스플레이 150에 출력할 수 있다. 표시 제어 모듈 170은 최근 실행 리스트 출력과 관련된 아이콘이나 메뉴를 제공할 수 있다. 또한 표시 제어 모듈 170은 최근 실행 리스트 출력과 관련된 키 버튼을 할당할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 홈 버튼이 일정 시간 간격 이내에 연속으로 눌려지는 경우 또는 지정된 시간 동안 눌려지는 경우 최근 실행 리스트 510(예: 현재 실행 중인 어플리케이션 또는 백그라운드 프로세싱을 통해 실행 중인 어플리케이션 등을 포함하는 리스트)을 출력할 수 있다. 또는 표시 제어 모듈 170은 복수개의 버튼 조합에 따라 최근 실행 리스트 510을 출력할 수도 있다.
최근 실행 리스트 510은 도시된 바와 같이 전자 장치 100이 지원 가능한 또는 사용자가 설정한 적어도 하나의 어플리케이션과 관련된 리스트 아이템 또는 현재 실행 중인 복수개의 어플리케이션과 관련한 리스트 아이템을 포함할 수 있다. 예컨대, 리스트 아이템은 각각의 어플리케이션에 대응하는 아이템일 수 있다. 리스트 아이템은 어플리케이션과 관련된 이미지(예: 어플리케이션 실행 시 제공되는 프리뷰 이미지, 또는 어플리케이션의 종류를 설명하는 이미지, 썸네일, 일정 크기의 아이콘) 또는 텍스트 등을 포함할 수 있다. 리스트 아이템은 출력되는 윈도우 형태 제어와 관련하여 적어도 하나의 가상 버튼(예: 가이드 정보)을 포함할 수 있다. 예컨대, 리스트 아이템 512는 스플릿 윈도우 출력과 관련된 가상 버튼 S, 팝업 윈도우 출력과 관련된 가상 버튼 P, 리스트 아이템 512 제거와 관련된 가상 버튼 X를 포함할 수 있다.
다양한 실시 예에 따르면, 최근 실행 리스트 510은 현재 실행 중인 복수개의 어플리케이션들에 대응하는 리스트 아이템(예: 윈도우, 아이콘, 썸네일 등으로 표시 가능)들을 제공할 수도 있다. 전자 장치 100은 복수개의 어플리케이션 실행에 따른 적어도 하나의 윈도우 590을 출력하고 있는 상태에서 최근 실행 리스트 510 출력과 관련된 이벤트가 발생하면 상태 501에서와 같은 최근 실행 리스트 510을 출력할 수 있다. 예를 들면, 전자 장치 100은 A, B, C, D의 어플리케이션을 실행 중인 상태일 수 있다. 리스트 아이템은 현재 실행 중인 어플리케이션과 관련된 프리뷰 이미지를 포함할 수 있다. 상태 501의 최근 실행 리스트 510에 배치된 리스트 아이템의 순서는 입력 이벤트에 따라 조정될 수 있다. 예컨대, 스크롤 이벤트가 디스플레이 150의 일정 영역에서 발생하면, 표시 제어 모듈 170은 리스트 아이템 512를 뒤로 이동시키거나 마지막 리스트 아이템 뒤로 배치할 수 있다. 이에 대응하여, B 어플리케이션과 관련된 리스트 아이템이 전면에 배치될 수 있다.
다양한 실시 예에 따르면, 리스트 아이템 512의 팝업 윈도우 출력과 관련된 가상 버튼 514가 선택되면, 표시 제어 모듈 170은 상태 503에서와 같이 리스트 아이템 512와 관련된 팝업 윈도우 580을 디스플레이 150에 출력할 수 있다. 다양한 실시 예에 따르면, 팝업 윈도우 관련 가상 버튼 514를 터치 이벤트(예: 탭 이벤트 또는 터치 홀드 이벤트)로 선택하는 경우, 표시 제어 모듈 170은 팝업 윈도우 580을 가이드 정보로서 제공할 수 있다. 표시 제어 모듈 170은 이벤트(예: 터치 홀드 해제 이벤트)가 발생하면, 리스트 아이템 512와 관련된 어플리케이션의 실행 화면을 팝업 윈도우 580으로 출력할 수 있다. 팝업 윈도우 580이 가이드 정보로서 제공되는 경우, 표시 제어 모듈 170은 지정된 제스처 이벤트 발생에 대응하여 팝업 윈도우 580의 출력을 취소 또는 제거할 수 있다. 표시 제어 모듈 170은 팝업 윈도우 580의 제거 시 이전 상태 501로 복귀하거나 최근 실행 리스트 510 출력 이전 상태로 복귀하도록 제어할 수 있다.
도 5b를 참조하면, 상태 505에서와 같이 윈도우 590 상에 최근 실행 리스트 510이 출력된 상태에서, 표시 제어 모듈 170은 리스트 아이템 512와 관련된 스플릿 윈도우 관련 가상 버튼 516을 선택하는 이벤트를 수신할 수 있다. 표시 제어 모듈 170은 리스트 아이템 512b의 가상 버튼 516 선택이 발생하면, 상태 507에서와 같이 리스트 아이템 512b와 관련된 어플리케이션의 출력을 스플릿 윈도우 570으로 디스플레이 150 일정 영역에 배치할 수 있다. 예컨대, 표시 제어 모듈 170은 스플릿 윈도우 570을 디스플레이 150 상단에 배치할 수 있다. 이에 대응하여 표시 제어 모듈 170은 윈도우 590의 크기 또는 위치 중 적어도 하나를 변경할 윈도우 591을 디스플레이 150 상단에 배치할 수 있다. 윈도우 591은 현재 실행되고 있는 윈도우 590의 크기 변경 또는 위치 변경된 형태일 수 있다. 또는 윈도우 591은 최근 실행 리스트 510이 출력되는 동안 백그라운드 프로세싱으로 수행된 지정된 어플리케이션일 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 가상 버튼 516을 선택하는 이벤트 종류에 대응하여 스플릿 윈도우 570의 위치를 조정할 수 있다. 예컨대, 가상 버튼 516을 선택과 관련한 이벤트가 상측(또는 좌측) 방향으로 드래그 앤 드롭 형태로 변경되는 경우, 표시 제어 모듈 170은 스플릿 윈도우 570을 디스플레이 150의 상측에 배치시킬 수 있다. 또는 가상 버튼 516을 선택과 관련한 이벤트가 하측(또는 우측) 방향으로 드래그 앤 드롭 형태로 변경되는 경우, 표시 제어 모듈 170은 스플릿 윈도우 570을 디스플레이 150의 하측에 배치시킬 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 스플릿 윈도우 570을 선택한 후 이동 시키는 이벤트 예컨대, 스플릿 윈도우 570을 윈도우 591이 위치한 영역으로 이동시키는 드래그 이벤트를 수신하면, 스플릿 윈도우 570의 위치를 변경할 수 있다. 다양한 실시 예에 따르면, 가상 버튼 516이 선택되면 표시 제어 모듈 170은 리스트 아이템 512와 관련된 어플리케이션의 프리뷰 이미지를 스플릿 윈도우 570에 출력하도록 제어할 수 있다. 스플릿 윈도우 570과 관련된 터치 해제 이벤트가 발생하면, 표시 제어 모듈 170은 리스트 아이템 512와 관련된 어플리케이션을 실행하고, 실행 정보를 스플릿 윈도우 570에 출력하도록 제어할 수도 있다.
도 5c를 참조하면, 표시 제어 모듈 170은 최근 실행 리스트 510 출력과 관련된 이벤트가 발생하면, 상태 509에서와 같이 최근 실행 리스트 510을 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 최근 실행 리스트 510을 지정된 윈도우 520 상에 출력할 수 있다. 윈도우 520은 최근 실행 리스트 510 출력 직전에 디스플레이 150에 출력된 윈도우일 수 있다. 또는 윈도우 520은 최근 실행 리스트 510의 전면에 배치된 리스트 아이템 523과 관련된 윈도우일 수 있다. 또는 윈도우 520은 최근 실행 리스트 510 출력 시 배경으로 출력되도록 설정된 윈도우일 수 있다. 다양한 실시 예에 따르면, 윈도우 520은 대기 화면이나 홈 화면 등일 수도 있다. 다양한 실시 에에 따르면, 윈도우 520이 전면(최상위 레이어)에 출력되고 있는 최근 실행 리스트 510 출력이 요청되면, 윈도우 520과 관련된 리스트 아이템 523이 전면에 배치되고 일정 순서에 따라 다른 어플리케이션과 관련된 리스트 아이템들이 배치될 수 있다.
한 실시 예에 따르면, 리스트 아이템 523과 관련된 어플리케이션은 팝업 윈도우와 스플릿 윈도우 출력이 모두 가능할 수 있다. 이 경우 리스트 아이템 523은 도시된 바와 같이 팝업 윈도우 출력과 관련된 가상 버튼 523a, 스플릿 윈도우 출력과 관련된 가상 버튼 523b를 포함할 수 있다. 다양한 실시 예에 따르면, 어플리케이션들 중 리스트 아이템 521과 같은 어플리케이션은 팝업 윈도우 출력만을 지원할 수 있다. 이 경우, 리스트 아이템 521은 도시된 바와 같이 팝업 윈도우 출력과 관련된 가상 버튼 521b를 포함할 수 있다.
리스트 아이템 521 선택과 관련된 이벤트가 발생하면, 표시 제어 모듈 170은 상태 511에서와 같이 리스트 아이템 521과 관련된 프리뷰 이미지 550을 디스플레이 150 일정 영역에 출력할 수 있다. 한 실시 예에 따르면, 계산기 어플리케이션과 관련된 프리뷰 이미지 550은 윈도우 520 상에 출력될 수 있다. 프리뷰 이미지 550은 리스트 아이템 521의 어플리케이션이 지원 가능한 팝업 윈도우 형태일 수 있다. 프리뷰 이미지 550과 관련된 이벤트(예: 터치 해제 이벤트)가 발생하면, 표시 제어 모듈 170은 어플리케이션을 실행하고, 상태 513에서와 같이 실행에 따른 정보를 팝업 윈도우 560 형태로 디스플레이 150 상에 출력할 수 있다. 이 동작에서 표시 제어 모듈 170은 팝업 윈도우 560을 윈도우 520 상에 출력할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 리스트 아이템 521에 포함된 가상 버튼 521b를 선택하는 이벤트가 발생하면, 상태 511을 거치지 않고, 상태 513에서와 같이 팝업 윈도우 560을 출력할 수도 있다. 또는 표시 제어 모듈 170은 리스트 아이템 521을 선택하는 이벤트가 발생하면 상태 511을 거치지 않고, 상태 513에서와 같이 팝업 윈도우 560을 출력할 수도 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 리스트 아이템 523을 선택하는 경우에는 팝업 윈도우 이미지와 스플릿 윈도우 이미지를 포함하는 가이드 정보를 상태 511에서 출력할 수 있다. 이후, 표시 제어 모듈 170은 팝업 윈도우 이미지 또는 스플릿 윈도우 이미지를 선택하는 이벤트에 대응하여 리스트 아이템 523에 대응하는 윈도우를 이벤트 발생 위치에 대응하여 출력할 수 있다.
도 5d를 참조하면, 표시 제어 모듈 170은 최근 실행 리스트 510 출력과 관련된 이벤트가 발생하면, 상태 515에서와 같이 최근 실행 리스트 510을 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 최근 실행 리스트 510을 윈도우 590 상에 출력할 수 있다. 윈도우 590은 최근 실행 리스트 510 출력 직전에 디스플레이 150에 출력된 윈도우일 수 있다. 또는 윈도우 590은 최근 실행 리스트 510의 전면에 배치된 리스트 아이템 512와 관련된 윈도우일 수 있다. 또는 윈도우 590은 최근 실행 리스트 510 출력 시 배경으로 출력되도록 설정된 윈도우일 수 있다. 한 실시 예에 따르면, 윈도우 590은 대기 화면이나 홈 화면 등일 수도 있다. 다양한 실시 에에 따르면, 최근 실행 리스트 510 출력이 요청되면, 직전 실행된 어플리케이션에 대응하는 윈도우 590과 관련된 리스트 아이템 512가 최상위 레이어에 배치되고 일정 순서에 따라 다른 어플리케이션과 관련된 최근 실행 아이템들이 배치될 수 있다.
한 실시 예에 따르면, 리스트 아이템 512는 도시된 바와 같이 팝업 윈도우 출력과 관련된 가상 버튼 P, 스플릿 윈도우 출력과 관련된 가상 버튼 S를 포함할 수 있다. 리스트 아이템 512에 배치된 스플릿 윈도우 출력에 대응하는 가상 버튼 516을 선택하는 이벤트가 발생하면, 표시 제어 모듈 170은 상태 517에서와 같이 리스트 아이템 512와 관련된 스플릿 윈도우 570을 디스플레이 150 일정 영역(예: 디스플레이 150의 상단 일정 영역)에 출력할 수 있다
다양한 실시 예에 따르면, 스플릿 윈도우 570의 출력에 대응하여 표시 제어 모듈 170은 다른 리스트 아이템들과 관련한 아이템 선택 영역 517_1을 디스플레이 150의 일정 영역에 출력할 수 있다. 아이템 선택 영역 517_1은 리스트 아이템 512를 제외한 최근 실행 리스트 510에 포함된 아이템들(B app, C app, D app 등)에 대응될 수 있다. 한 실시 예에 따르면, 아이템 517_2는 최근 실행 리스트 510에서의 B app에 대응하는 아이템일 수 있다. 다양한 실시 예에 따르면, 아이템 선택 영역 517_1은 사용자가 자주 사용하는 어플리케이션과 관련된 아이템들이 추가로 배치될 수 있다. 이와 관련하여, 전자 장치 100은 어플리케이션들에 대한 선택 빈도에 대한 정보, 선택된 어플리케이션들의 사용 시간에 대한 정보, 최근 사용된 어플리케이션들에 대한 종류 정보 중 적어도 하나를 저장 관리할 수 있다. 전자 장치 100은 상술한 정보를 바탕으로, 최근 사용 어플리케이션 리스트 아이템들(지정된 일정 개수의 아이템), 자주 사용한 어플리케이션 리스트 아이템들(예: 지정된 일정 빈도 이상의 어플리케이션들에 대응하는 아이템, 가장 높은 사용 빈도의 어플리케이션을 기준으로 순차적으로 정렬 가능), 사용 시간별 어플리케이션 리스트 아이템들(예: 지정된 일정 시간 이상 사용한 어플리케이션들에 대응하는 아이템, 가장 높은 사용 시간을 가지는 어플리케이션을 기준으로 순차적으로 정렬 가능) 등을 출력할 수 있다. 또는 전자 장치 100은 상술한 정보들을 복합적으로 적용하거나 일정 정보들에 대한 가중치 부여(예: 사용 시간을 빈도수보다 높은 가중치를 부여)하여 일정 개수의 리스트 아이템들을 아이템 선택 영역 517_1에 출력할 수 있다. 다양한 실시 예에 따르면, 전자 장치 100은 백그라운드 프로세싱을 통하여 실행되고 있는 아이템들과 상술한 정보 기반 산출된 아이템들을 아이템 선택 영역 517_1에 출력할 수도 있다.
다양한 실시 예에 따르면, 아이템 선택 영역 517_1에서 아이템 517_2를 선택하는 이벤트가 발생하면, 표시 제어 모듈 170은 상태 519에서와 같이 아이템 517_2에 대응하는 스플릿 윈도우 519_1을 디스플레이 150 일정 영역에 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 스플릿 윈도우 519_1을 스플릿 윈도우 570과 구분되는 영역에 출력할 수 있다. 표시 제어 모듈 170은 지정된 이벤트가 발생하면 상태 515에서와 같이 최근 실행 리스트 510을 출력하거나 또는 아이템 선택 영역 517_1을 포함하는 상태 517로 복귀할 수 있다.
도시된 도면에서는 최근 실행 리스트 510을 아이템 선택 영역 517_1의 형태로 변경하는 것을 예시하지만 다양한 실시 예들이 이에 한정되는 것은 아니다. 예컨대, 한 실시 예에 따르면, 아이템 선택 영역 517_1은 리스트 아이템 512를 제외한 최근 실행 리스트로 대체될 수도 있다.
도 5e를 참조하면, 표시 제어 모듈 170은 최근 실행 리스트 510 출력과 관련된 이벤트가 발생하면, 상태 521에서와 같이 최근 실행 리스트 510을 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 최근 실행 리스트 510을 출력 직전에 디스플레이 150에 출력된 윈도우 590 또는 최근 실행 리스트 510 출력 시 배경으로 출력되도록 설정된 윈도우 590 상에 최근 실행 리스트 510을 출력할 수 있다. 최근 실행 리스트 510에서 전면(최상위 레이어)에 배치된 리스트 아이템 521_2는 최근 실행 리스트 510 출력 직전에 디스플레이 150 상에 출력된 윈도우와 관련한 아이템일 수 있다.
한 실시 예에 따르면, 리스트 아이템 521_1과 관련한 지정된 이벤트(예: 롱 프레스 이벤트)가 발생하면, 표시 제어 모듈 170은 상태 523에서와 같이 리스트 아이템 521_1에 대응하는 가이드 정보 523_1을 출력할 수 있다. 표시 제어 모듈 170은 가이드 정보 523_1을 출력하면서 직전에 실행된 어플리케이션 예컨대 리스트 아이템 521_2와 관련한 윈도우 523_2를 팝업 윈도우 523_1의 배경으로 배치할 수 있다.
다양한 실시 예에 따르면, 상기 리스트 아이템 521_1은 해당 어플리케이션과 관련한 썸네일일 수 있다. 표시 제어 모듈 170은 최근 실행 리스트 510 출력이 요청되면, 전면에서 실행 중인 어플리케이션 또는 백그라운드 프로세싱을 통해 실행 중인 어플리케이션들의 화면을 캡쳐하여 썸네일을 생성할 수 있다. 또는 표시 제어 모듈 170은 어플리케이션들에 대응하는 지정된 썸네일을 메모리에서 읽어올 수 있다. 표시 제어 모듈 170은 어플리케이션들과 관련한 썸네일을 기반으로 최근 실행 리스트 510을 출력할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 가이드 정보 523_1이 출력된 이후 지정된 시간이 경과하거나 또는 지정된 이벤트(예: 롱 프레스 해제 이벤트)가 발생하면, 상태 525에서와 같이 팝업 윈도우 525_1을 출력할 수 있다. 팝업 윈도우 525_1은 윈도우 523_2 상에 출력될 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 가이드 정보 523_1의 출력 동작 없이 팝업 윈도우 525_1을 출력할 수도 있다. 예컨대, 표시 제어 모듈 170은 상태 521에서 아이템 521_1과 관련한 지정된 이벤트가 발생하면, 상태 525에서와 같이 최근 실행 리스트 510 출력 직전 실행된 어플리케이션에 대응하는 윈도우 523_2 상에 팝업 윈도우 525_1을 출력할 수 있다.
도 5f를 참조하면, 표시 제어 모듈 170은 최근 실행 리스트 510 출력과 관련된 이벤트가 발생하면, 상태 531에서와 같이 최근 실행 리스트 510을 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 최근 실행 리스트 510을 출력 직전에 디스플레이 150에 출력된 윈도우 590 또는 최근 실행 리스트 510 출력 시 배경으로 출력되도록 설정된 윈도우 590 상에 최근 실행 리스트 510을 출력할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 최근 실행 리스트 510 출력과 함께 숏컷 영역 531_1을 출력할 수 있다. 숏컷 영역 531_1은 팝업 윈도우 출력과 관련한 가상 버튼 531_2를 포함할 수 있다. 다양한 실시 예에 따르면, 숏컷 영역 531_1은 스플릿 윈도우 관련 가상 버튼을 더 포함할 수도 있다.
가상 버튼 531_2와 관련한 이벤트(예: 터치 이벤트)가 발생하면, 표시 제어 모듈 170은 상태 533에서와 같이 팝업 윈도우 533_1을 출력할 수 있다. 표시 제어 모듈 170은 예컨대 직전 실행된 기능(예: 최근 실행 리스트 출력 기능)에 대응하는 윈도우 591 상에 팝업 윈도우 533_1을 출력할 수 있다. 팝업 윈도우 533_1은 팝업 윈도우 형태로 출력 가능한 적어도 하나의 아이템을 포함할 수 있다. 예컨대, 표시 제어 모듈 170은 전자 장치 100이 지원하는 전체 사용자 기능들 중에 팝업 윈도우 형태로 출력 가능한 적어도 하나의 아이템들을 팝업 윈도우 533_1에 출력할 수 있다. 또는 표시 제어 모듈 170은 최근 실행 리스트 510에 포함된 아이템에 대응하는 어플리케이션들 중 팝업 윈도우 형태로 출력 가능한 적어도 하나의 아이템들을 팝업 윈도우 533_1에 출력할 수 있다. 팝업 윈도우 형태로 출력 가능한 아이템이 없는 경우, 표시 제어 모듈 170은 아이템이 없는 팝업 윈도우 533_1을 출력할 수 있다.
팝업 윈도우 533_1에서 특정 아이템 533_2 선택과 관련한 이벤트(예: 터치 이벤트)가 수신되면, 표시 제어 모듈 170은 상태 535에서와 같이 아이템 533_2와 관련한 어플리케이션을 실행하고, 어플리케이션 실행에 따른 윈도우를 팝업 윈도우 535_1의 형태로 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 팝업 윈도우 535_1을 윈도우 591 상에 출력할 수 있다. 윈도우 591은 예컨대, 최근 실행 리스트 510이 출력된 화면일 수 있다.
도 6a 내지 도 6c는 다양한 실시 예에 따른 멀티 윈도우 미리 보기의 한 실시 예다.
도 6a를 참조하면, 표시 제어 모듈 170은 입력 이벤트 발생에 따라 또는 전자 장치 100의 프로세서에 의해 수행되는 지정된 작업 스케줄링 정보에 따라 상태 601에서와 같이 윈도우 트레이 610을 윈도우 690 상에 출력할 수 있다. 윈도우 690은 윈도우 트레이 610 출력 이전에 실행된 어플리케이션과 관련된 윈도우일 수 있다. 윈도우 트레이 610은 도시된 바와 같이 적어도 하나의 아이템을 포함할 수 있다. 적어도 하나의 아이템은 전자 장치 100에서 지원 가능한 기능과 관련된 아이템일 수 있다.
다양한 실시 예에 따르면, 윈도우 트레이 610에서 아이템 612가 선택되면, 표시 제어 모듈 170은 아이템 612 선택 후 이동에 대응하여 미리 보기와 관련된 가이드 정보들 631, 632, 620 중 적어도 하나를 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 선택 아이템 612가 이동하여 가이드 정보 631과 겹치도록 배치되면, 상태 603에서와 같이 표시 제어 모듈 170은 아이템 612에 의해 제공될 상단 스플릿 윈도우의 미리 보기를 가이드 정보 631 상에 표시할 수 있다. 선택 아이템 612가 이동하여 가이드 정보 632와 겹치도록 배치되면, 상태 605에서와 같이 표시 제어 모듈 170은 아이템 612에 의해 제공될 하단 스플릿 윈도우의 미리 보기(예: 해당 윈도우 관련 썸네일 이미지, 일정 크기의 아이콘 또는 스플릿 윈도우를 설명하는 텍스트 등)를 가이드 정보 632 상에 표시할 수 있다. 선택 아이템 612가 이동하여 가이드 정보 620과 겹치도록 배치되면, 상태 607에서와 같이 표시 제어 모듈 170은 아이템 612에 의해 제공될 팝업 윈도우의 미리 보기를 가이드 정보 620 상에 표시할 수 있다.
도 6b를 참조하면, 표시 제어 모듈 170은 입력 이벤트 발생에 따라 또는 스케줄링된 정보에 따라 상태 611에서와 같이 최근 실행 리스트 화면을 출력할 수 있다. 최근 실행 리스트 화면은 예컨대 적어도 하나의 아이템 621, 622를 포함하는 윈도우 690을 포함할 수 있다. 아이템 621, 622는 최근 실행된 어플리케이션들(예: 최근 실행 리스트 출력 직전에 전면 또는 백그라운드 프로세싱을 통해 실행 중인 어플리케이션)과 관련한 아이템일 수 있다. 예컨대, 아이템 621, 622는 메시지 기능 아이템 621, 음악 재생 기능 아이템 622일 수 있다. 표시 제어 모듈 170은 복수의 어플리케이션이 실행 중인 상태에서 지정된 이벤트(예: 홈 키 선택 이벤트 등)가 발생하면 실행 중인 어플리케이션과 관련된 아이템 621, 622를 윈도우 690 상에 출력할 수 있다. 다양한 실시 예에 따르면, 아이템 622가 선택된 이후 이동되는 경우 표시 제어 모듈 170은 아이템 622의 이전 출력 형태를 유지할 수 있다. 또는 다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 622의 이동에 대응하여 상대적으로 크기가 작은 썸네일이나 아이콘으로 대체 표시할 수도 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 622가 선택되면, 아이템 622 선택에 대응하는 가이드 정보 631, 632, 620을 출력할 수 있다. 표시 제어 모듈 170은 아이템 622의 겹침에 대응하여 출력 가능한 윈도우 형태의 미리 보기 중 적어도 하나를 가이드 정보들 상에 표시할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템 622가 디스플레이 150의 상단 영역에 배치되면, 상태 613에서와 같이 아이템 622에 의해 제공될 상단 스플릿 윈도우의 미리 보기를 가이드 정보 631 상에 표시할 수 있다. 표시 제어 모듈 170은 아이템 622가 디스플레이 150의 하단 영역에 배치되면, 상태 615에서와 같이 아이템 622에 의해 제공될 하단 스플릿 윈도우의 미리 보기를 가이드 정보 632 상에 표시할 수 있다. 표시 제어 모듈 170은 아이템 622가 디스플레이 150의 중앙 일정 영역에 배치되면, 상태 617에서와 같이 아이템 622에 의해 제공될 팝업 윈도우의 미리 보기를 가이드 정보 620 상에 표시할 수 있다.
도 6c를 참조하면, 표시 제어 모듈 170은 아이템 선택 시 해당 아이템과 관련하여 제공 가능한 미리 보기를 디스플레이 150에 표시할 수도 있다. 예컨대, 표시 제어 모듈 170은 상태 651에서와 같이 윈도우 트레이 610을 이벤트 발생에 따라 디스플레이 150에 출력할 수 있다. 이 동작에서 표시 제어 모듈 170은 윈도우 690 상에 윈도우 트레이 610을 출력할 수 있다. 윈도우 690은 윈도우 트레이 610 출력 이전에 실행 중인 어플리케이션과 관련된 윈도우일 수 있다.
윈도우 트레이 610의 아이템 652가 선택되면, 표시 제어 모듈 170은 선택된 아이템 652와 관련하여 제공 가능한 모든 윈도우 미리 보기를 디스플레이 150에 표시할 수 있다. 예컨대, 표시 제어 모듈 170은 상태 653에서와 같이 팝업 윈도우 미리 보기를 가이드 정보 620 상에 출력하고, 스플릿 윈도우 미리 보기를 가이드 정보 632 상에 출력할 수 있다. 표시 제어 모듈 170은 윈도우 690을 조정한 윈도우 691을 미리 보기 표시에 대응하여 출력할 수 있다.
도 7a 및 7b는 다양한 실시 예에 따른 위젯 윈도우를 포함한 멀티 윈도우의 한 실시 예다.
도 7a를 참조하면, 상태 701에서와 같이 표시 제어 모듈 170은 윈도우 트레이 710이 표시된 윈도우 790을 디스플레이 150 상에 출력할 수 있다. 윈도우 트레이 710에 배치된 아이템 712가 선택되면, 표시 제어 모듈 170은 아이템 712 선택에 대응하는 가이드 정보 721, 722를 상태 703 에서와 같이 출력할 수 있다. 또는 아이템 712를 일정 위치로 이동시킴에 따 표시 제어 모듈 170은 가이드 정보 721 또는 722를 디스플레이 150에 출력할 수 있다. 가이드 정보 721 또는 722는 아이템 712와 관련된 위젯 윈도우 미리 보기일 수 있다.
다양한 실시 예에 따르면, 아이템 712 선택 후 이동과 관련된 이벤트(예: 드래그 이벤트)가 발생하면, 표시 제어 모듈 170은 아이템 712에 대응하는 이동 아이템 713을 표시할 수 있다. 이동 아이템 713이 예컨대 가이드 정보 721 상에 위치한 상태에서 지정된 이벤트(예: 터치 해제 이벤트)가 발생하면, 상태 705에서와 같이 표시 제어 모듈 170은 아이템 712와 관련된 위젯 윈도우 730을 가이드 정보 721과 관련지어 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 위젯 윈도우 730을 디스플레이 150 상단에 배치할 수 있다. 이 동작에서 표시 제어 모듈 170은 윈도우 790의 크기를 조정한 윈도우 791을 출력할 수 있다. 상술한 동작 지원과 관련하여, 표시 제어 모듈 170은 이동 아이템 713이 가이드 정보 721 상에 위치한 상태에서 지정된 이벤트가 발생하면, 아이템 712와 관련된 위젯 어플리케이션(예:D_widget)을 실행할 수 있다. 표시 제어 모듈 170은 실행한 위젯 어플리케이션의 위젯 정보를 기반으로 위젯 윈도우 730을 출력할 수 있다.
도 7b를 참조하면, 표시 제어 모듈 170은 상태 711에서와 같이 웹 페이지 윈도우 780을 디스플레이 150에 출력할 수 있다. 표시 제어 모듈 170은 입력 이벤트 발생에 대응하여 윈도우 트레이 740을 웹 페이지 윈도우 780 상에 출력할 수 있다. 윈도우 트레이 740 상에 배치된 아이템 742 선택된 후 이동되면, 표시 제어 모듈 170은 상태 713에서와 같이 이동 아이템 743을 출력할 수 있다. 또한, 아이템 742가 선택되거나 또는 아이템 742가 선택되어 이동되면, 표시 제어 모듈 170은 가이드 정보 770을 디스플레이 150의 일정 영역에 출력할 수 있다. 또는 이동 아이템 743이 지정된 일정 영역 예컨대 디스플레이 150 하단 일정 영역에 위치하면, 표시 제어 모듈 170은 아이템 742와 관련된 가이드 정보 770을 출력할 수 있다. 가이드 정보 770은 예컨대 위젯 윈도우 미리 보기 화면일 수 있다. 이동 아이템 743이 가이드 정보 770 상에 배치된 상태에서 지정된 이벤트(예: 터치 해제 이벤트)가 발생하면, 상태 715에서와 같이 표시 제어 모듈 170은 아이템 742와 관련된 위젯 윈도우 771을 디스플레이 150에 출력할 수 있다. 이 동작에서 표시 제어 모듈 170은 윈도우 780 상태를 유지할 수 있다. 또는 다양한 실시 예에 따르면, 표시 제어 모듈 170은 윈도우 780에서 위젯 윈도우 771 생성에 따른 일정 영역이 제외된 윈도우를 출력할 수 있다. 한 실시 예에 따르면, 아이템 742는 스케줄 기능 어플리케이션에 대응하는 아이템일 수 있다. 아이템 742가 가이드 정보 770 영역으로 이동된 후 터치 해제되면, 표시 제어 모듈 170은 아이템 742에 대응하는 위젯 어플리케이션을 실행할 수 있다. 표시 제어 모듈 170은 아이템 742에 대응하는 위젯 어플리케이션의 실행에 따라 도시된 바와 같이 위젯 윈도우 771을 디스플레이 150의 일정 영역(예: 가이드 정보 770 영역 상)에 출력할 수 있다.
도 8a 내지 도 8c는 다양한 실시 예에 따른 멀티 윈도우 조정 기능의 한 실시 예다.
도 8a를 참조하면, 표시 제어 모듈 170은 사용자 입력 제어에 대응하여 또는 지정된 스케줄 정보 실행에 따라 상태 801에서와 같이 멀티 윈도우를 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 디스플레이 150 상단에 동영상 재생 윈도우 890을 출력하고, 디스플레이 150 하단에 지도 검색 윈도우 880을 출력할 수 있다. 동영상 재생 윈도우 890과 지도 검색 윈도우 880은 스플릿 윈도우 형태로 출력될 수 있다. 추가적으로 표시 제어 모듈 170은 디스플레이 150 일정 영역(예: 멀티 윈도우 경계 영역)에 핸들러 870을 출력할 수 있다. 핸들러 870은 동영상 재생 윈도우 890 또는 지도 검색 윈도우 880의 화면 크기를 조정하는데 이용될 수 있다.
입력 이벤트 발생에 대응하여, 표시 제어 모듈 170은 상태 803에서와 같이 윈도우 트레이 810을 디스플레이 150 일정 영역에 출력할 수 있다. 윈도우 트레이 810에서 아이템 812가 선택된 후 일정 거리 이동되면, 표시 제어 모듈 170은 이동 아이템 814를 디스플레이 150에 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 드래그 이벤트에 대응하는 위치에 이동 아이템 814를 출력할 수 있다. 이동 아이템 814가 핸들러 870와 적어도 일부가 중첩되거나 또는 스플릿 윈도우 영역 예컨대 880 영역 상에 이동 아이템 814가 위치하는 경우, 표시 제어 모듈 170은 아이템 812와 관련된 윈도우 미리 보기 화면을 가이드 정보 881로서 출력할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 이동 아이템 814와 핸들러 870의 겹침과 관련하여 아이템 812와 관련된 윈도우를 해당 크기로 표시할 것임을 안내하는 정보(예: 화면 음영 변경, 색상 변경 등)를 출력할 수도 있다.
다양한 실시 예에 따르면, 이동 아이템 814와 핸들러 870이 겹쳐진 상태에서 이벤트(예: 드래그 이벤트)가 발생하면, 표시 제어 모듈 170은 아이템 812와 관련된 윈도우 미리 보기 크기를 조정할 수 있다. 예컨대, 표시 제어 모듈 170은 이동 아이템 814와 겹쳐진 핸들러 870을 상측 방향으로 이동시키는 드래그 이벤트 발생 시 윈도우 미리 보기 881을 상태 805에서와 같이 확장시켜 확장된 윈도우 미리 보기 882를 표시할 수 있다. 표시 제어 모듈 170은 이동 아이템 814와 겹쳐진 핸들러 870을 하측 방향으로 이동시키는 드래그 이벤트 발생 시 윈도우 미리 보기 881을 줄일 수도 있다. 윈도우 미리 보기 881이 윈도우 미리 보기 882로 크기 변경함에 따라 표시 제어 모듈 170은 동영상 재생 윈도우 890의 크기를 조정할 수 있다.
이동 아이템 814와 관련된 이벤트(예: 터치 해제 이벤트)가 발생하면, 표시 제어 모듈 170은 아이템 812와 관련된 어플리케이션을 실행할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템 812와 관련된 웹 브라우저 어플리케이션을 실행할 수 있다. 표시 제어 모듈 170은 웹 브라우저 실행에 따라 획득된 정보로 구성된 스플릿 윈도우 860을 상태 807에서와 같이 윈도우 미리 보기 882 영역 상에 배치할 수 있다. 다양한 실시 예에 따르면, 이동 아이템 814가 핸들러 870과 겹치는 경우, 핸들러 870의 표시 형태를 이동 아이템 814와 관련하여 변경할 수 있다. 또는 표시 제어 모듈 170은 핸들러 870의 형태를 이동 아이템 814로 대체할 수 있다.
도 8b를 참조하면, 표시 제어 모듈 170은 사용자 입력 제어에 대응하여 또는 지정된 스케줄 정보 실행에 따라 상태 811에서와 같이 멀티 윈도우(예: 윈도우 810e_1과 윈도우 810c_1)를 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 디스플레이 150 상단에 동영상 재생 윈도우 810e_1을 출력하고, 디스플레이 150 하단에 지도 검색 윈도우 810c_1을 출력할 수 있다. 윈도우 810e_1과 윈도우 810c_1은 스플릿 윈도우 형태로 출력될 수 있다. 또한 입력 이벤트 발생에 대응하여, 표시 제어 모듈 170은 상태 811에서와 같이 윈도우 트레이 810을 디스플레이 150 일정 영역에 출력할 수 있다.
윈도우 트레이 810에서 아이템 812D가 선택된 후 일정 거리 이동되면, 상태 813에서와 같이 표시 제어 모듈 170은 이동 아이템 812D_1을 디스플레이 150에 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 드래그 이벤트에 대응하는 위치에 이동 아이템 812D_1을 출력할 수 있다. 이 동작에서, 표시 제어 모듈 170은 아이템이 이동되는 영역을 아이템 실행과 관련한 영역(아이템이 해당 영역 상에 위치하거나 위치된 후 지정된 이벤트가 발생하면 아이템을 실행할 수 있는 영역)으로 설정할 수 있다. 추가적으로 표시 제어 모듈 170은 디스플레이 150 일정 영역(예: 멀티 윈도우 경계 영역)에 핸들러 870을 출력할 수 있다. 표시 제어 모듈 170은 이동 아이템 812D_1가 윈도우와 중첩되면 중첩된 윈도우의 표시 효과를 변경(예: 음영 처리 또는 하이라이트 처리)할 수 있다.
상태 815에서와 같이 이동 아이템 812D_1이 핸들러 870과 적어도 일부가 중첩되는 경우, 표시 제어 모듈 170은 이동 아이템 821D_1이 중첩된 윈도우 예컨대 윈도우 810c_1의 크기를 조절할 수 있도록 지원할 수 있다. 예컨대, 이동 아이템 812D_1과 핸들러 870이 겹쳐진 상태에서 이벤트(예: 이동 아이템 812D_1을 이동시키는 드래그 이벤트)가 발생하면, 표시 제어 모듈 170은 아이템 812D_1과 중첩된 윈도우 810c_1의 크기를 조정할 수 있다. 한 실시 예에 따르면, 상태 817에서와 같이 표시 제어 모듈 170은 핸들러 870과 적어도 일부가 겹쳐진 이동 아이템 812D_1가 상측 방향으로 이동하면, 상태 817에서와 같이 윈도우 810c_1을 확장시켜 표시할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 핸들러 870과 적어도 일부가 겹쳐진 이동 아이템 812D_1을 하측 방향으로 이동시키는 드래그 이벤트 발생 시 그에 대응하여 윈도우 810c_1의 크기를 줄일 수 있다.
윈도우 810c_1의 크기가 조정된 상태에서, 지정된 이벤트(예: 이동 아이템 812D_1의 터치를 해제하는 이벤트)가 발생하면, 상태 819에서와 같이 표시 제어 모듈 170은 크기가 변경된 윈도우 810c_2의 크기에 대응하는 윈도우 812D_2를 디스플레이 150에 출력하도록 제어할 수 있다. 이와 관련하여, 표시 제어 모듈 170은 이동 아이템 812D_1의 터치 해제 이벤트 발생 시 이동 아이템 812D_1과 관련한 어플리케이션을 실행하고, 실행에 따른 화면 크기를 윈도우 810c_2의 크기로 조절할 수 있다. 또는 표시 제어 모듈 170은 812D_1 어플리케이션 실행 시 윈도우 810c_2의 크기로 조절된 윈도우 형태로 실행되도록 제어할 수 있다.
도 8c를 참조하면, 표시 제어 모듈 170은 사용자 입력 제어에 대응하여 또는 지정된 스케줄 정보 실행에 따라 상태 821에서와 같이 윈도우 810c를 디스플레이 150에 출력할 수 있다. 한 실시 예에 따르면, 윈도우 810c는 풀 스크린 형태로 디스플레이 150에 출력될 수 있다. 표시 제어 모듈 170은 지정된 이벤트 발생 시 윈도우 트레이 810을 출력할 수 있다.
윈도우 트레이 810에서 아이템 812D가 선택된 후 일정 거리 이동되면, 상태 823에서와 같이 표시 제어 모듈 170은 이동 아이템 812D_1을 디스플레이 150에 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 드래그 이벤트에 대응하는 위치에 이동 아이템 812D_1을 출력할 수 있다. 추가적으로 표시 제어 모듈 170은 이동 아이템 812D_1과 관련한 터치 이벤트 해제 시 출력될 스플릿 윈도우의 크기에 대응하는 가이드 정보 810D_3을 표시할 수 있다. 가이드 정보 810D_3은 예컨대 아이템 812D에 대응하는 지정된 이미지이거나 또는 음영 처리된 영역일 수 있다.
다양한 실시 예에 따르면, 상태 825에서와 같이 이동 아이템 812D_1가 가이드 정보 810D_3의 경계 영역(예: 상단 경계 영역)과 적어도 일부가 중첩되면, 표시 제어 모듈 170은 이동 아이템 812D_1과 관련한 스플릿 윈도우의 크기를 조정할 수 있도록 지원할 수 있다. 한 실시 예에 따르면, 표시 제어 모듈 170은 이동 아이템 812D_1이 가이드 정보 810D_3의 경계 영과 중첩되면 하이라이트 등의 표시 또는 텍스트 등의 표시를 통하여 스플릿 윈도우 크기 조정이 가능함을 안내할 수 있다.
다양한 실시 예에 따르면, 가이드 정보 810D_3의 경계 영역과 중첩된 이동 아이템 812D_1이 상태 827에서와 같이 디스플레이 150의 하측으로 이동하면, 표시 제어 모듈 170은 그에 대응하여 크기가 조정된(예: 감소된) 가이드 정보 812D_4를 출력할 수 있다. 다양한 실시 예에 따르면, 가이드 정보 810D_3의 경계 영역과 중첩된 이동 아이템 812D_1이 디스플레이 150의 상측으로 이동하면, 표시 제어 모듈 170은 그에 대응하여 크기가 확장된 가이드 정보를 출력할 수 있다.
크기가 조정된 가이드 정보 810D_4가 설정된 상태에서, 이동 아이템 812D_1과 관련한 지정된 이벤트(예: 터치 해제 이벤트)가 발생하면, 표시 제어 모듈 170은 상태 829에서와 같이 가이드 정보 810D_4의 크기에 대응하는 스플릿 윈도우 812D_5를 디스플레이 150에 출력할 수 있다. 이와 관련하여, 표시 제어 모듈 170은 풀 스크린의 윈도우 810c을 크기가 조정된 윈도우 810c_3으로 변경할 수 있다.
도 9는 다양한 실시 예에 따른 멀티 윈도우 실행 취소 기능의 한 실시 예다.
도 9를 참조하면, 표시 제어 모듈 170은 상태 901에서와 같이 윈도우 트레이 910을 포함하는 윈도우 990을 디스플레이 150에 출력할 수 있다. 윈도우 트레이 910의 아이템 912가 선택되면, 상태 903에서와 같이 표시 제어 모듈 170은 아이템 912 선택에 대응하는 가이드 정보 920, 930을 출력할 수 있다. 또는 표시 제어 모듈 170은 아이템 921가 선택된 후 지정된 거리 이동되면 가이드 정보 920, 930 등을 출력할 수도 있다. 또한 표시 제어 모듈 170은 아이템 912의 이동에 따라 이동 아이템 913을 출력할 수 있다. 표시 제어 모듈 170은 가이드 정보 930의 출력에 대응하여 윈도우 990을 변경한 991을 출력할 수 있다. 이 동작에서 이동 아이템 913은 사용자의 터치 동작에 의해 지정되고 있는 상태(예: 드래그되고 있는 상태)일 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 상태 905에서와 같이 이동 아이템 913과 관련하여 지정된 터치 이벤트(예: 일정 방향의 스윕 이벤트) 914를 수신할 수 있다. 표시 제어 모듈 170은 지정된 터치 이벤트 914가 수신되면, 아이템 912와 관련된 윈도우 출력을 취소할 수 있다. 예컨대, 표시 제어 모듈 170은 지정된 터치 이벤트 914가 수신되면 가이드 정보 920, 930을 윈도우 990 상에서 제거할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 지정된 터치 이벤트 914가 수신되면, 상태 907에서와 같이 아이템 912 선택 이전 상태로 복귀할 수 있다. 예컨대, 표시 제어 모듈 170은 윈도우 990 상에 윈도우 트레이 910을 디스플레이 150 상에 출력할 수 있다. 표시 제어 모듈 170은 지정된 이벤트 914 수신에 대응하여 이동 아이템 913도 제거할 수 있다.
도 10은 다양한 실시 예에 따른 윈도우 트레이 운용의 한 실시 예다.
도 10을 참조하면, 입력 이벤트 발생에 따라, 상태 1001에서와 같이 표시 제어 모듈 170은 윈도우 트레이 1010을 윈도우 1090 상에 출력할 수 있다. 한 실시 예에 따르면, 윈도우 1090은 대기 화면 또는 홈 화면 윈도우일 수 있다. 윈도우 트레이 1010 상에서 아이템 1012가 선택되면, 표시 제어 모듈 170은 상태 1003에서와 같이 아이템 1012와 관련된 윈도우 1091을 디스플레이 150에 출력할 수 있다. 이 동작에서 표시 제어 모듈 170은 윈도우 1090을 제거하고 아이템 1012와 관련된 윈도우 1091을 디스플레이 150 전체 화면으로 출력할 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 1012에 대응하여 윈도우 트레이 1010의 유지 또는 제거를 제어할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템 1012에 의해 실행된 윈도우 1091이 멀티 윈도우를 지원하는 경우, 윈도우 트레이 1010은 상태 1003에서와 같이 출력을 유지할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 1012가 멀티 윈도우를 지원하지 않는 어플리케이션 실행에 따른 윈도우를 제공하는 경우, 윈도우 트레이 1010은 디스플레이 150에서 제거될 수 있다. 또는 표시 제어 모듈 170은 윈도우 1091이 멀티 윈도우를 지원하지 않는 경우 윈도우 트레이 1010 호출과 관련된 이벤트가 발생하더라도 윈도우 트레이 1010을 출력하지 않도록 제어할 수 있다. 또한 표시 제어 모듈 170은 멀티 윈도우를 제공하지 않는 상태를 알릴 수 있다.
다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 선택 방식에 따라 출력하는 윈도우 형태를 다르게(또는 구별되게) 처리할 수 있다. 예컨대, 표시 제어 모듈 170은 아이템 1012와 관련하여 제1 이벤트(예: 탭 터치에 의한 이벤트)가 발생하면, 도시된 바와 같이 아이템 1012에 대한 윈도우를 디스플레이 150 전체 화면으로 출력할 수 있다. 다양한 실시 예에 따르면, 표시 제어 모듈 170은 아이템 1012와 관련하여 제2 이벤트(예: 롱 프레스에 의한 이벤트)가 발생하면 앞서 설명한 바와 같이 해당 윈도우와 관련한 지정된 윈도우 형태(예: 스플릿 윈도우, 팝업 윈도우 또는 위젯 윈도우 중 적어도 하나)로 출력할 수 있다. 예컨대, 표시 제어 모듈 170은 윈도우 트레이의 배경으로 특정 기능 실행에 따른 윈도우가 출력된 환경에서 새 아이템을 선택하는 방식(예: 탭, 스윕, 롱 프레스, 또는 지정된 제스처 방식)에 대응하여 복수개의 윈도우들이 배치되는 멀티 윈도우 환경에서 이벤트 종류에 따른 지정된 윈도우 형태로 출력하거나, 하나의 윈도우가 전체 화면으로 출력될 수 있도록 지원할 수 있다.
상술한 바와 같이, 다양한 실시 예에 따르면, 한 실시 예에 따른 윈도우 운용 방법은 표시된 아이템 선택과 관련된 이벤트를 수신하는 동작, 상기 이벤트에 대응하여 상기 선택된 아이템과 관련되어 출력 가능한 윈도우의 멀티 윈도우 출력 형태를 다르게(예: 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록) 처리하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 수신하는 동작은 입력 이벤트 발생에 대응하여 적어도 하나의 아이템을 포함하는 윈도우 트레이 또는 최근 실행 리스트를 출력하는 동작, 상기 윈도우 트레이 또는 최근 실행 리스트에 포함된 아이템 선택과 관련된 이벤트를 수신하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 상기 선택된 아이템의 이동 영역에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 상기 선택된 아이템과 관련하여 출력 가능한 적어도 하나의 윈도우 출력 형태의 가이드 정보를 표시하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 지정된 이벤트 발생에 따라 상기 가이드 정보를 제거하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 상기 선택된 아이템의 이동 영역에 대응하여 출력 가능한 윈도우 출력 형태의 가이드 정보를 표시하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 상기 선택된 아이템이 가이드 정보 상에 배치된 상태에서 지정된 이벤트 발생을 수신하는 동작, 상기 지정된 이벤트 발생에 대응하여 상기 선택된 아이템과 관련된 어플리케이션을 실행하는 동작, 상기 어플리케이션 실행에 따른 정보를 포함하는 윈도우를 상기 가이드 정보에 대응하는 윈도우 형태로 출력하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 출력하는 동작은 상기 이동된 위치의 가이드 정보에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하는 동작을 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 적어도 하나의 멀티 윈도우 형태와 관련된 적어도 하나의 가상 버튼을 포함하는 적어도 하나의 아이템을 출력하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 선택된 가상 버튼의 종류에 따라 윈도우 형태를 다르게 출력하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 방법은 상기 이벤트 종류에 따라 출력 가능한 윈도우의 형태 또는 크기 중 적어도 하나를 조정하는 동작을 더 포함할 수 있다.
도 11은 다양한 실시 예에 따른 멀티 윈도우 기능을 지원하는 전자 장치의 한 실시 예를 나타낸 도면이다.
도 11을 참조하면, 상기 전자 장치 1101은, 예를 들면, 도 1에 도시된 전자 장치 100의 전체 또는 일부를 포함할 수 있다. 상기 전자 장치 1101은 하나 이상의 어플리케이션 프로세서(AP) 210, 통신 모듈 1120, SIM(subscriber identification module) 카드 1124, 메모리 1130, 센서 모듈 1140, 입력 장치 1150, 디스플레이 1160, 인터페이스 1170, 오디오 모듈 1180, 카메라 모듈 1191, 전력 관리 모듈 1195, 배터리 1196, 인디케이터 1197, 및 모터 1198을 포함할 수 있다.
상기 AP 1110은, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 상기 AP 1110에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 상기 AP 1110은, 예를 들면, SoC(system on chip)로 구현될 수 있다. 한 실시 예에 따르면, 상기 AP 1110은 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서(image signal processor)를 더 포함할 수 있다. 상기 AP 1110은 도 11에 도시된 구성요소들 중 적어도 일부(예: 셀룰러 모듈 1121)를 포함할 수도 있다. 상기 AP 1110은 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리하고, 다양한 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
상기 통신 모듈 1120은, 도 1의 상기 통신 인터페이스 160과 동일 또는 유사한 구성을 가질 수 있다. 상기 통신 모듈 1120은, 예를 들면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127, NFC 모듈 1128 및 RF(radio frequency) 모듈 1129를 포함할 수 있다.
상기 셀룰러 모듈 1121은, 예를 들면, 통신망을 통해서 음성 통화, 영상 통화, 문자 서비스, 또는 인터넷 서비스 등을 제공할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈 1121은 가입자 식별 모듈(예: SIM 카드 1124)을 이용하여 통신 네트워크 내에서 전자 장치 1101의 구별 및 인증을 수행할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈 1121은 상기 AP 1110이 제공할 수 있는 기능 중 적어도 일부 기능을 수행할 수 있다. 한 실시 예에 따르면, 상기 셀룰러 모듈 1121은 커뮤니케이션 프로세서(CP)를 포함할 수 있다.
상기 Wi-Fi 모듈 1123, 상기 BT 모듈 1125, 상기 GPS 모듈 1127 또는 상기 NFC 모듈 1128 각각은, 예를 들면, 해당하는 모듈을 통해서 송수신되는 데이터를 처리하기 위한 프로세서를 포함할 수 있다. 어떤 실시 예에 따르면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128 중 적어도 일부(예: 두 개 이상)는 하나의 IC(integrated chip) 또는 IC 패키지 내에 포함될 수 있다.
상기 RF 모듈 1129는, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. 상기 RF 모듈 1129는, 예를 들면, 트랜시버(transceiver), PAM(power amp module), 주파수 필터(frequency filter), LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다. 다른 실시 예에 따르면, 셀룰러 모듈 1121, Wi-Fi 모듈 1123, BT 모듈 1125, GPS 모듈 1127 또는 NFC 모듈 1128 중 적어도 하나는 별개의 RF 모듈을 통하여 RF 신호를 송수신할 수 있다.
상기 SIM 카드 1124는, 예를 들면, 가입자 식별 모듈을 포함하는 카드 및/또는 내장 SIM(embedded SIM)을 포함할 수 있으며, 고유한 식별 정보(예: ICCID (integrated circuit card identifier)) 또는 가입자 정보(예: IMSI (international mobile subscriber identity))를 포함할 수 있다.
상기 메모리 1130(예: 메모리 130)은, 예를 들면, 내장 메모리 1132 또는 외장 메모리 1134를 포함할 수 있다. 상기 내장 메모리 1132는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비-휘발성(non-volatile) 메모리 (예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 SSD(solid state drive) 중 적어도 하나를 포함할 수 있다.
상기 외장 메모리 1134는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 상기 외장 메모리 1134는 다양한 인터페이스를 통하여 상기 전자 장치 1101과 기능적으로 및/또는 물리적으로 연결될 수 있다.
상기 센서 모듈 1140은, 예를 들면, 물리량을 계측하거나 전자 장치 1101의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 상기 센서 모듈 1140은, 예를 들면, 제스처 센서 1140A, 자이로 센서 1140B, 기압 센서 1140C, 마그네틱 센서 1140D, 가속도 센서 1140E, 그립 센서 1140F, 근접 센서 1140G, 컬러 센서 1140H(예: RGB 센서), 생체 센서 1140I, 온/습도 센서 1140J, 조도 센서 1140K, 또는 UV(ultra violet) 센서 1140M 중의 적어도 하나를 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 센서 모듈 1140은, 예를 들면, 후각 센서(E-nose sensor), EMG(electromyography) 센서, EEG(electroencephalogram) 센서, ECG(electrocardiogram) 센서, IR(infrared) 센서, 홍채 센서 및/또는 지문 센서를 포함할 수 있다. 상기 센서 모듈 1140은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어 회로를 더 포함할 수 있다. 어떤 실시 예에서는, 전자 장치 1101은 AP 1110의 일부로서 또는 별도로, 센서 모듈 1140을 제어하도록 구성된 프로세서를 더 포함하여, 상기 AP 1110이 슬립(sleep) 상태에 있는 동안, 센서 모듈 1140을 제어할 수 있다.
상기 입력 장치 1150은, 예를 들면, 터치 패널(touch panel) 1152, (디지털) 펜 센서(pen sensor) 1154, 키(key) 1156, 또는 초음파(ultrasonic) 입력 장치 1158을 포함할 수 있다. 상기 터치 패널 1152는, 예를 들면, 정전식, 감압식, 적외선 방식, 또는 초음파 방식 중 적어도 하나의 방식을 사용할 수 있다. 또한, 상기 터치 패널 1152는 제어 회로를 더 포함할 수도 있다. 상기 터치 패널 1152는 택타일 레이어(tactile layer)를 더 포함하여, 사용자에게 촉각 반응을 제공할 수 있다.
상기 (디지털) 펜 센서 1154는, 예를 들면, 터치 패널의 일부이거나, 별도의 인식용 시트(sheet)를 포함할 수 있다. 상기 키 1156은, 예를 들면, 물리적인 버튼, 광학식 키, 또는 키패드를 포함할 수 있다. 상기 초음파 입력 장치 1158은 초음파 신호를 발생하는 입력 도구를 통해, 전자 장치 1101에서 마이크 (예: 마이크 1188)로 음파를 감지하여 데이터를 확인할 수 있다.
상기 디스플레이 1160(예: 디스플레이 150)은 패널 1162, 홀로그램 장치 1164, 또는 프로젝터 1166을 포함할 수 있다. 상기 패널 1162는, 도 1의 디스플레이 150과 동일 또는 유사한 구성을 포함할 수 있다. 상기 패널 1162는, 예를 들면, 유연하게(flexible), 투명하게(transparent), 또는 착용할 수 있게(wearable) 구현될 수 있다. 상기 패널 1162는 상기 터치 패널 1152와 하나의 모듈로 구성될 수도 있다. 상기 홀로그램 장치 1164는 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 상기 프로젝터 1166은 스크린에 빛을 투사하여 영상을 표시할 수 있다. 상기 스크린은, 예를 들면, 상기 전자 장치 1101의 내부 또는 외부에 위치할 수 있다. 한 실시 예에 따르면, 상기 디스플레이 1160은 상기 패널 1162, 상기 홀로그램 장치 1164, 또는 프로젝터 1166을 제어하기 위한 제어 회로를 더 포함할 수 있다.
상기 인터페이스 1170은, 예를 들면, HDMI(high-definition multimedia interface) 1172, USB 1174, 광 인터페이스(optical interface) 1176, 또는 D-sub(D-subminiature) 1178을 포함할 수 있다. 상기 인터페이스 1170은, 예를 들면, 도 1에 도시된 통신 인터페이스 160에 포함될 수 있다. 추가적으로 또는 대체적으로, 상기 인터페이스 1170은, 예를 들면, MHL(mobile high-definition link) 인터페이스, SD 카드/MMC(multi-media card) 인터페이스, 또는 IrDA(infrared data association) 규격 인터페이스를 포함할 수 있다.
상기 오디오 모듈 1180은, 예를 들면, 소리(sound)와 전기 신호를 쌍방향으로 변환시킬 수 있다. 상기 오디오 모듈 1180의 적어도 일부 구성요소는, 예를 들면, 도 1 에 도시된 입출력 인터페이스 180에 포함될 수 있다. 상기 오디오 모듈 1180은, 예를 들면, 스피커 1182, 리시버 1184, 이어폰 1186, 또는 마이크 1188 등을 통해 입력 또는 출력되는 소리 정보를 처리할 수 있다.
상기 카메라 모듈 1191은, 예를 들면, 정지 영상 및 동영상을 촬영할 수 있는 장치로서, 한 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 센서 또는 후면 센서), 렌즈, ISP(image signal processor), 또는 플래시(예: LED 또는 제논 램프(xenon lamp))를 포함할 수 있다.
상기 전력 관리 모듈 1195는, 예를 들면, 상기 전자 장치 1101의 전력을 관리할 수 있다. 한 실시 예에 따르면, 상기 전력 관리 모듈 1195는 PMIC(power management integrated circuit), 충전 IC(charger integrated circuit), 또는 배터리 또는 연료 게이지(battery or fuel gauge)를 포함할 수 있다. 상기 PMIC는, 유선 및/또는 무선 충전 방식을 가질 수 있다. 무선 충전 방식은, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등을 포함하며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 또는 정류기 등을 더 포함할 수 있다. 상기 배터리 게이지는, 예를 들면, 상기 배터리 1196의 잔량, 충전 중 전압, 전류, 또는 온도를 측정할 수 있다. 상기 배터리 1196은, 예를 들면, 충전식 전지(rechargeable battery) 및/또는 태양 전지(solar battery)를 포함할 수 있다.
상기 인디케이터 1197은 상기 전자 장치 1101 혹은 그 일부(예: AP 1110)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 상기 모터 1198은 전기적 신호를 기계적 진동으로 변환할 수 있고, 진동(vibration), 또는 햅틱(haptic) 효과 등을 발생시킬 수 있다. 도시되지는 않았으나, 상기 전자 장치 1101은 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 상기 모바일 TV 지원을 위한 처리 장치는, 예를 들면, DMB(digital multimedia broadcasting), DVB(digital video broadcasting), 또는 미디어 플로우(media flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
상기 전자 장치의 전술한 구성요소들 각각은 하나 또는 그 이상의 부품(component)으로 구성될 수 있으며, 해당 구성 요소의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 또한, 다양한 실시 예에 따른 전자 장치의 구성 요소들 중 일부가 결합되어 하나의 개체(entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
도 12는 다양한 실시 예에 따른 프로그램 모듈의 블록도를 나타낸다.
도 12를 참조하면, 한 실시 예에 따르면, 상기 프로그램 모듈 1210은 전자 장치(예: 전자 장치 100)에 관련된 자원을 제어하는 운영 체제 및/또는 운영 체제 상에서 구동되는 다양한 어플리케이션(예: 어플리케이션 38)을 포함할 수 있다. 상기 운영 체제는, 예를 들면, 안드로이드(android), iOS, 윈도우즈(windows), 심비안(symbian), 타이젠(tizen), 또는 바다(bada) 등이 될 수 있다.
프로그램 모듈 1210은 OS와 어플리케이션 1270을 포함할 수 있다. OS는 커널 1220, 미들웨어 1230, API 1260을 포함할 수 있다. 상기 프로그램 모듈 1210의 적어도 일부는 전자 장치 상에 프리로드(preload) 되거나, 서버(예: 서버 장치 104)로부터 다운로드 가능하다.
상기 커널 1220은, 예를 들면, 시스템 리소스 매니저 1221 또는 디바이스 드라이버 1223을 포함할 수 있다. 상기 시스템 리소스 매니저 1221은 시스템 리소스의 제어, 할당, 또는 회수 등을 수행할 수 있다. 한 실시 예에 따르면, 상기 시스템 리소스 매니저 1221은 프로세스 관리부, 메모리 관리부, 또는 파일 시스템 관리부 등을 포함할 수 있다. 상기 디바이스 드라이버 1223은, 예를 들면, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 공유 메모리 드라이버, USB 드라이버, 키패드 드라이버, Wi-Fi 드라이버, 오디오 드라이버, 또는 IPC(inter-process communication) 드라이버를 포함할 수 있다.
상기 미들웨어 1230은, 예를 들면, 상기 어플리케이션 1270이 공통적으로 필요로 하는 기능을 제공하거나, 상기 어플리케이션 1270이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 상기 API 1260을 통해 다양한 기능들을 상기 어플리케이션 1270으로 제공할 수 있다. 한 실시 예에 따르면, 상기 미들웨어 1230(예: 미들웨어)은 런타임 라이브러리 1235, 어플리케이션 매니저(application manager) 1241, 윈도우 매니저(window manager) 1242, 멀티미디어 매니저(multimedia manager) 1243, 리소스 매니저(resource manager) 1244, 파워 매니저(power manager) 1245, 데이터베이스 매니저(database manager) 1246, 패키지 매니저(package manager) 1247, 연결 매니저(connectivity manager) 1248, 통지 매니저(notification manager) 1249, 위치 매니저(location manager) 1250, 그래픽 매니저(graphic manager) 1251, 또는 보안 매니저(security manager) 1252 중 적어도 하나를 포함할 수 있다.
상기 런타임 라이브러리 1235는, 예를 들면, 상기 어플리케이션 1270이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 상기 런타임 라이브러리 1235는 입출력 관리, 메모리 관리, 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
상기 어플리케이션 매니저 1241은, 예를 들면, 상기 어플리케이션 1270 중 적어도 하나의 어플리케이션의 생명 주기(life cycle)를 관리할 수 있다. 상기 윈도우 매니저 1242는 화면에서 사용하는 GUI 자원을 관리할 수 있다. 상기 멀티미디어 매니저 1243은 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(codec)을 이용하여 미디어 파일의 인코딩(encoding) 또는 디코딩(decoding)을 수행할 수 있다. 상기 리소스 매니저 1244는 상기 어플리케이션 1270 중 적어도 어느 하나의 어플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
상기 파워 매니저 1245는, 예를 들면, 바이오스(BIOS: basic input/output system) 등과 함께 동작하여 배터리 또는 전원을 관리하고, 전자 장치의 동작에 필요한 전력 정보 등을 제공할 수 있다. 상기 데이터베이스 매니저 1246은 상기 어플리케이션 1270 중 적어도 하나의 어플리케이션에서 사용할 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 상기 패키지 매니저 1247은 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 업데이트를 관리할 수 있다.
상기 연결 매니저 1248은, 예를 들면, Wi-Fi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 상기 통지 매니저 1249는 도착 메시지, 약속, 근접성 알림 등의 사건(event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 상기 위치 매니저 1250은 전자 장치의 위치 정보를 관리할 수 있다. 상기 그래픽 매니저 1251은 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 상기 보안 매니저 1252는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다. 한 실시 예에 따르면, 전자 장치(예: 전자 장치 100)이 전화 기능을 포함한 경우, 상기 미들웨어 1230은 상기 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(telephony manager)를 더 포함할 수 있다.
상기 미들웨어 1230은 전술한 구성요소들의 다양한 기능의 조합을 형성하는 미들웨어 모듈을 포함할 수 있다. 상기 미들웨어 1230은 차별화된 기능을 제공하기 위해 운영 체제의 종류 별로 특화된 모듈을 제공할 수 있다. 또한, 상기 미들웨어 1230은 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다.
상기 API 1260(예: API)은, 예를 들면, API 프로그래밍 함수들의 집합으로, 운영 체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 iOS의 경우, 플랫폼 별로 하나의 API 셋을 제공할 수 있으며, 타이젠(tizen)의 경우, 플랫폼 별로 두 개 이상의 API 셋을 제공할 수 있다.
상기 어플리케이션 1270(예: 어플리케이션 38)은, 예를 들면, 홈 1271, 다이얼러 1272, SMS/MMS 1273, IM(instant message) 1274, 브라우저 1275, 카메라 1276, 알람 1277, 컨택트 1278, 음성 다이얼 1279, 이메일 1280, 달력 1281, 미디어 플레이어 1282, 앨범 1283, 또는 시계 1284, 건강 관리(health care)(예: 운동량 또는 혈당 등을 측정), 또는 환경 정보 제공(예: 기압, 습도, 또는 온도 정보 등을 제공) 등의 기능을 제공할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다.
한 실시 예에 따르면, 상기 어플리케이션 1270은 상기 전자 장치(예: 전자 장치 100)과 외부 전자 장치(예: 전자 장치 102) 사이의 정보 교환을 지원하는 어플리케이션(이하, 설명의 편의 상, "정보 교환 어플리케이션")을 포함할 수 있다. 상기 정보 교환 어플리케이션은, 예를 들면, 상기 외부 전자 장치에 특정 정보를 전달하기 위한 알림 전달(notification relay) 어플리케이션, 또는 상기 외부 전자 장치를 관리하기 위한 장치 관리(device management) 어플리케이션을 포함할 수 있다.
예를 들면, 상기 알림 전달 어플리케이션은 상기 전자 장치의 다른 어플리케이션(예: SMS/MMS 어플리케이션, 이메일 어플리케이션, 건강 관리 어플리케이션, 또는 환경 정보 어플리케이션 등)에서 발생된 알림 정보를 외부 전자 장치(예: 전자 장치 102)로 전달하는 기능을 포함할 수 있다. 또한, 상기 알림 전달 어플리케이션은, 예를 들면, 외부 전자 장치로부터 알림 정보를 수신하여 사용자에게 제공할 수 있다. 상기 장치 관리 어플리케이션은, 예를 들면, 상기 전자 장치와 통신하는 외부 전자 장치(예: 전자 장치 102)의 적어도 하나의 기능(예: 외부 전자 장치 자체(또는 일부 구성 부품)의 턴-온/턴-오프 또는 디스플레이의 밝기(또는 해상도) 조절), 상기 외부 전자 장치에서 동작하는 어플리케이션 또는 상기 외부 전자 장치에서 제공되는 서비스(예: 통화 서비스 또는 메시지 서비스)를 관리 (예: 설치, 삭제, 또는 업데이트)할 수 있다.
한 실시 예에 따르면, 상기 어플리케이션 1270은 상기 외부 전자 장치(예: 전자 장치 102)의 속성(예: 전자 장치의 속성으로서, 전자 장치의 종류가 모바일 의료 기기)에 따라 지정된 어플리케이션(예: 건강 관리 어플리케이션)을 포함할 수 있다. 한 실시 예에 따르면, 상기 어플리케이션 1270은 외부 전자 장치(예: 서버 장치 104 또는 전자 장치 102)로부터 수신된 어플리케이션을 포함할 수 있다. 한 실시 예에 따르면, 상기 어플리케이션 1270은 프리로드 어플리케이션(preloaded application) 또는 서버로부터 다운로드 가능한 제3자 어플리케이션(third party application)을 포함할 수 있다. 도시된 실시 예에 따른 프로그램 모듈 1210의 구성요소들의 명칭은 운영 체제의 종류에 따라서 달라질 수 있다.
다양한 실시 예에 따르면, 상기 프로그램 모듈 1210의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어, 또는 이들 중 적어도 둘 이상의 조합으로 구현될 수 있다. 상기 프로그램 모듈 1210의 적어도 일부는, 예를 들면, 프로세서(예: AP 1110)에 의해 구현(implement)(예: 실행)될 수 있다. 상기 프로그램 모듈 1210의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(sets of instructions) 또는 프로세스 등을 포함할 수 있다.
본 문서에서 사용된 용어 "모듈"은, 예를 들면, 하드웨어, 소프트웨어 또는 펌웨어(firmware) 중 하나 또는 둘 이상의 조합을 포함하는 단위(unit)를 의미할 수 있다. "모듈"은, 예를 들면, 유닛(unit), 로직(logic), 논리 블록(logical block), 부품(component), 또는 회로(circuit) 등의 용어와 바꾸어 사용(interchangeably use)될 수 있다. "모듈"은, 일체로 구성된 부품의 최소 단위 또는 그 일부가 될 수 있다. "모듈"은 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수도 있다. "모듈"은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, "모듈"은, 알려졌거나 앞으로 개발될, 어떤 동작들을 수행하는 ASIC(application-specific integrated circuit) 칩, FPGAs(field-programmable gate arrays) 또는 프로그램 가능 논리 장치(programmable-logic device) 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따른 장치(예: 모듈들 또는 그 기능들) 또는 방법(예: 동작들)의 적어도 일부는, 예컨대, 프로그램 모듈의 형태로 컴퓨터로 읽을 수 있는 저장매체(computer-readable storage media)에 저장된 명령어로 구현될 수 있다. 상기 명령어는, 프로세서(예: 프로세서 120)에 의해 실행될 경우, 상기 하나 이상의 프로세서가 상기 명령어에 해당하는 기능을 수행할 수 있다. 컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 상기 메모리 130이 될 수 있다.
상기 컴퓨터로 판독 가능한 기록 매체는, 하드디스크, 플로피디스크, 마그네틱 매체(magnetic media)(예: 자기테이프), 광기록 매체(optical media)(예: CD-ROM, DVD, 자기-광 매체(magneto-optical media)(예: 플롭티컬 디스크(floptical disk)), 하드웨어 장치(예: ROM, RAM, 또는 플래시 메모리 등) 등을 포함할 수 있다. 또한, 프로그램 명령에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 다양한 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지다.
다양한 실시 예에 따르면, 컴퓨터로 판독 가능한 기록 매체는 적어도 하나의 프로세서에 의해 실행 가능한 적어도 하나의 명령어를 저장하며, 상기 명령어는, 표시된 아이템 선택과 관련된 이벤트를 수신하는 동작, 상기 이벤트에 대응하여 상기 선택된 아이템과 관련되어 출력 가능한 윈도우의 멀티 윈도우 출력 형태를 다르게(예: 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록) 처리하는 동작을 수행하도록 설정될 수 있다.
다양한 실시 예에 따른 모듈 또는 프로그램 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다. 다양한 실시 예에 따른 모듈, 프로그램 모듈 또는 다른 구성요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)한 방법으로 실행될 수 있다. 또한, 일부 동작은 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
그리고 본 문서에 개시된 실시 예는 개시된, 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 발명의 범위를 한정하는 것은 아니다. 따라서, 본 발명의 범위는, 본 발명의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예를 포함하는 것으로 해석되어야 한다.

Claims (20)

  1. 윈도우 운영 방법에 있어서,
    표시된 아이템 선택과 관련된 이벤트를 수신하는 동작;
    상기 이벤트에 대응하여 상기 선택된 아이템과 관련되어 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록 처리하는 동작;을 포함하는 윈도우 운용 방법.
  2. 청구항 1에 있어서,
    상기 수신하는 동작은
    입력 이벤트 발생에 대응하여 적어도 하나의 아이템을 포함하는 윈도우 트레이 또는 최근 실행 리스트를 출력하는 동작;
    상기 윈도우 트레이 또는 최근 실행 리스트에 포함된 아이템 선택과 관련된 이벤트를 수신하는 동작;을 포함하는 윈도우 운용 방법.
  3. 청구항 1에 있어서,
    상기 선택된 아이템의 이동 영역에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하는 동작;을 더 포함하는 윈도우 운용 방법.
  4. 청구항 1에 있어서,
    상기 선택된 아이템과 관련하여 출력 가능한 적어도 하나의 윈도우 출력 형태의 가이드 정보를 표시하는 동작;을 더 포함하는 윈도우 운용 방법.
  5. 청구항 4에 있어서,
    지정된 이벤트 발생에 따라 상기 가이드 정보를 제거하는 동작;을 더 포함하는 윈도우 운용 방법.
  6. 청구항 1에 있어서,
    상기 선택된 아이템의 이동 영역에 대응하여 출력 가능한 윈도우 출력 형태의 가이드 정보를 표시하는 동작;을 더 포함하는 윈도우 운용 방법.
  7. 청구항 6에 있어서,
    상기 선택된 아이템이 가이드 정보 상에 배치된 상태에서 지정된 이벤트 발생을 수신하는 동작;
    상기 지정된 이벤트 발생에 대응하여 상기 선택된 아이템과 관련된 어플리케이션을 실행하는 동작;
    상기 어플리케이션 실행에 따른 정보를 포함하는 윈도우를 상기 가이드 정보에 대응하는 윈도우 형태로 출력하는 동작;을 더 포함하는 윈도우 운용 방법.
  8. 청구항 6에 있어서,
    상기 출력하는 동작은
    상기 이동된 위치의 가이드 정보에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하는 동작;을 포함하는 윈도우 운용 방법.
  9. 청구항 1에 있어서,
    적어도 하나의 멀티 윈도우 형태와 관련된 적어도 하나의 가상 버튼을 포함하는 적어도 하나의 아이템을 출력하는 동작;
    선택된 가상 버튼의 종류에 따라 윈도우 형태를 다르게 출력하는 동작;을 더 포함하는 윈도우 운용 방법.
  10. 청구항 1에 있어서,
    상기 이벤트 종류에 따라 출력 가능한 윈도우의 형태 또는 크기 중 적어도 하나를 조정하는 동작;을 더 포함하는 윈도우 운용 방법.
  11. 전자 장치에 있어서,
    적어도 하나의 아이템을 표시하는 디스플레이;
    상기 아이템 선택 이벤트에 따라 윈도우가 출력될 경우 복수개의 윈도우가 출력되는 환경에서 출력 가능한 윈도우 출력 형태를 지정된 형태로 출력하도록 처리하는 표시 제어 모듈;을 포함하는 전자 장치.
  12. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    입력 이벤트 발생에 대응하여 적어도 하나의 아이템을 포함하는 윈도우 트레이 또는 최근 실행 리스트를 출력하도록 설정된 전자 장치.
  13. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    상기 선택된 아이템의 이동 영역에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하도록 설정된 전자 장치.
  14. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    상기 선택된 아이템과 관련하여 출력 가능한 적어도 하나의 윈도우 출력 형태의 가이드 정보를 표시하도록 설정된 전자 장치.
  15. 청구항 14에 있어서,
    상기 표시 제어 모듈은
    지정된 이벤트 발생에 따라 상기 가이드 정보를 제거하도록 설정된 전자 장치.
  16. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    상기 선택된 아이템의 이동 영역에 대응하여 출력 가능한 윈도우 출력 형태의 가이드 정보를 표시하도록 설정된 전자 장치.
  17. 청구항 16에 있어서,
    상기 표시 제어 모듈은
    상기 선택된 아이템이 가이드 정보 상에 배치된 상태에서 지정된 이벤트 발생을 수신하면 상기 선택된 아이템과 관련된 어플리케이션 실행에 따른 정보를 포함하는 윈도우를 상기 가이드 정보에 대응하는 윈도우 형태로 출력하도록 설정된 전자 장치.
  18. 청구항 16에 있어서,
    상기 표시 제어 모듈은
    상기 이동된 위치의 가이드 정보에 따라 상기 아이템과 관련된 윈도우를 팝업 윈도우, 스플릿 윈도우, 위젯 윈도우 중 적어도 하나로 출력하도록 설정된 전자 장치.
  19. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    적어도 하나의 멀티 윈도우 형태와 관련된 적어도 하나의 가상 버튼을 포함하는 적어도 하나의 아이템을 출력하고, 선택된 가상 버튼의 종류에 따라 해당 아이템과 관련된 윈도우 형태를 다르게 출력하도록 설정된 전자 장치.
  20. 청구항 11에 있어서,
    상기 표시 제어 모듈은
    상기 이벤트 종류에 따라 출력 가능한 윈도우의 형태 또는 크기 중 적어도 하나를 조정하도록 설정된 전자 장치.
KR1020140114103A 2014-08-29 2014-08-29 윈도우 운용 방법 및 이를 지원하는 전자 장치 KR20160026141A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020140114103A KR20160026141A (ko) 2014-08-29 2014-08-29 윈도우 운용 방법 및 이를 지원하는 전자 장치
US14/835,038 US10437408B2 (en) 2014-08-29 2015-08-25 Window management method and electronic device supporting the same
US16/551,118 US11340752B2 (en) 2014-08-29 2019-08-26 Window management method and electronic device supporting the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140114103A KR20160026141A (ko) 2014-08-29 2014-08-29 윈도우 운용 방법 및 이를 지원하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20160026141A true KR20160026141A (ko) 2016-03-09

Family

ID=55402469

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140114103A KR20160026141A (ko) 2014-08-29 2014-08-29 윈도우 운용 방법 및 이를 지원하는 전자 장치

Country Status (2)

Country Link
US (2) US10437408B2 (ko)
KR (1) KR20160026141A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325672A (zh) * 2016-08-18 2017-01-11 暴风集团股份有限公司 利用调度视频海报信息实现收藏该视频链接的方法及系统
WO2021118061A1 (ko) * 2019-12-11 2021-06-17 삼성전자 주식회사 전자 장치 및 이를 이용한 레이아웃 구성 방법
WO2021201490A1 (ko) * 2020-03-31 2021-10-07 삼성전자 주식회사 백 그라운드 어플리케이션의 제어 방법 및 이를 지원하는 전자 장치
US11789589B2 (en) 2019-02-22 2023-10-17 Sony Group Corporation Information processing apparatus and information processing method for dividing display screen for display of plurality of applications

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160037508A (ko) * 2014-09-29 2016-04-06 삼성전자주식회사 디스플레이 장치 및 그의 표시 방법
CN111552416A (zh) * 2015-04-13 2020-08-18 华为技术有限公司 启动任务管理界面的方法、装置及设备
US20170024086A1 (en) * 2015-06-23 2017-01-26 Jamdeo Canada Ltd. System and methods for detection and handling of focus elements
US20170205990A1 (en) * 2016-01-14 2017-07-20 Lenovo (Beijing) Limited Method, system, and apparatus for controlling display regions for an electronic device
CN105809054B (zh) * 2016-01-26 2019-04-23 腾讯科技(北京)有限公司 信息获取方法及装置
KR102542122B1 (ko) * 2016-04-01 2023-06-09 엘지전자 주식회사 영상표시장치
CN105930147B (zh) * 2016-04-13 2020-09-08 北京小米移动软件有限公司 应用功能的启动方法及装置
CN106537319A (zh) * 2016-10-31 2017-03-22 北京小米移动软件有限公司 分屏显示方法及装置
KR20180067855A (ko) * 2016-12-13 2018-06-21 엘지전자 주식회사 이동단말기 및 그 제어 방법
DK180117B1 (en) * 2017-05-15 2020-05-15 Apple Inc. SYSTEMS AND METHODS FOR INTERACTING WITH MULTIPLE APPLICATIONS THAT ARE SIMULTANEOUSLY DISPLAYED ON AN ELECTRONIC DEVICE WITH A TOUCHSENSITIVE DISPLAY
WO2019056176A1 (zh) * 2017-09-19 2019-03-28 深圳传音通讯有限公司 一种用于智能设备的任务的显示方法及显示装置
CN110494835A (zh) * 2017-12-20 2019-11-22 华为技术有限公司 一种控制方法及装置
JP7133771B2 (ja) * 2018-02-13 2022-09-09 パナソニックIpマネジメント株式会社 生体情報表示装置、生体情報表示方法及び生体情報表示プログラム
JP2021144064A (ja) * 2018-06-06 2021-09-24 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラム
KR102599383B1 (ko) * 2018-10-26 2023-11-08 삼성전자 주식회사 분할된 화면 상에서 실행 가능한 어플리케이션 리스트를 디스플레이하는 전자 장치 및 전자 장치의 동작 방법
CN109933255A (zh) * 2019-03-21 2019-06-25 广州视源电子科技股份有限公司 一种页面元素突出显示方法、装置、设备及存储介质
CN109947332A (zh) * 2019-03-21 2019-06-28 广州视源电子科技股份有限公司 一种页面元素突出显示方法、装置、设备及存储介质
CN109917990A (zh) * 2019-03-21 2019-06-21 广州视源电子科技股份有限公司 一种页面元素突出显示方法、装置、设备及存储介质
US11093114B2 (en) 2019-03-29 2021-08-17 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
WO2020205292A1 (en) 2019-03-29 2020-10-08 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
WO2020205291A1 (en) 2019-03-29 2020-10-08 Sony Interactive Entertainment Inc. Context-based user interface menu with selectable actions
DK180318B1 (en) * 2019-04-15 2020-11-09 Apple Inc Systems, methods, and user interfaces for interacting with multiple application windows
US11231847B2 (en) * 2019-05-06 2022-01-25 Apple Inc. Drag and drop for a multi-window operating system
WO2020250777A1 (ja) * 2019-06-14 2020-12-17 ソニー株式会社 表示制御装置、及び表示制御方法
CN112130715B (zh) * 2019-06-25 2022-09-09 华为技术有限公司 一种显示方法与电子设备
JP7233342B2 (ja) * 2019-08-08 2023-03-06 株式会社日立製作所 サービス連携支援システムおよびその方法
US11138912B2 (en) * 2019-10-01 2021-10-05 Microsoft Technology Licensing, Llc Dynamic screen modes on a bendable computing device
EP4087223A4 (en) * 2019-12-31 2023-10-18 LG Electronics, Inc. MOBILE TERMINAL AND METHOD FOR CONTROLLING SAME
KR102446390B1 (ko) 2020-01-03 2022-09-22 삼성전자주식회사 디스플레이 장치 및 디스플레이 장치의 제어 방법
CN113076154B (zh) * 2020-01-03 2023-09-05 华为技术有限公司 多应用下进行分屏的方法、装置以及电子设备
KR20210101858A (ko) * 2020-02-11 2021-08-19 삼성전자주식회사 제스처 인식 기반의 기능 운용 방법 및 이를 지원하는 전자 장치
CN113645351B (zh) * 2020-04-24 2022-10-28 华为技术有限公司 应用界面交互方法、电子设备和计算机可读存储介质
CN111641797B (zh) * 2020-05-25 2022-02-18 北京字节跳动网络技术有限公司 视频通话界面显示控制方法、装置、存储介质及设备
US11381676B2 (en) * 2020-06-30 2022-07-05 Qualcomm Incorporated Quick launcher user interface
US11334221B2 (en) * 2020-09-17 2022-05-17 Microsoft Technology Licensing, Llc Left rail corresponding icon for launching apps within the context of a personal information manager
CN112199017A (zh) * 2020-09-30 2021-01-08 京东方科技集团股份有限公司 分屏交互方法和装置、电子设备和可读存储介质
WO2022098125A1 (en) * 2020-11-06 2022-05-12 Samsung Electronics Co., Ltd. Electronic device and screen control method thereof
US11625148B2 (en) 2021-04-19 2023-04-11 Microsoft Technology Licensing, Llc Intelligent snap assist recommendation model
US20220334686A1 (en) * 2021-04-19 2022-10-20 Microsoft Technology Licensing, Llc Intuitive display of intelligent snap assist recommendations
CN113419660A (zh) * 2021-06-24 2021-09-21 北京达佳互联信息技术有限公司 视频资源处理方法、装置、电子设备及存储介质
CN113744843A (zh) * 2021-09-07 2021-12-03 上海联影医疗科技股份有限公司 医疗影像数据处理方法、装置、计算机设备和存储介质
US11868160B2 (en) * 2022-02-09 2024-01-09 Microsoft Technology Licensing, Llc Just-in-time snap layouts

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2393887A1 (en) * 2002-07-17 2004-01-17 Idelix Software Inc. Enhancements to user interface for detail-in-context data presentation
US7650575B2 (en) * 2003-03-27 2010-01-19 Microsoft Corporation Rich drag drop user interface
US8578290B2 (en) * 2005-08-18 2013-11-05 Microsoft Corporation Docking and undocking user interface objects
JP4362526B2 (ja) * 2007-06-08 2009-11-11 京セラミタ株式会社 操作装置、電子機器及び操作プログラム
US7941428B2 (en) * 2007-06-15 2011-05-10 Huston Jan W Method for enhancing search results
US20090150823A1 (en) * 2007-12-10 2009-06-11 Ati Technologies Ulc Apparatus and Method for Improved Window Management in a Grid Management System
JP4818427B2 (ja) * 2009-12-22 2011-11-16 株式会社東芝 情報処理装置及び画面選択方法
US9116594B2 (en) * 2010-01-19 2015-08-25 Lg Electronics Inc. Mobile terminal and control method thereof
EP2437151B1 (en) * 2010-10-01 2020-07-08 Samsung Electronics Co., Ltd. Apparatus and method for turning e-book pages in portable terminal
US10042546B2 (en) * 2011-01-07 2018-08-07 Qualcomm Incorporated Systems and methods to present multiple frames on a touch screen
KR20130054071A (ko) 2011-11-16 2013-05-24 삼성전자주식회사 다중 어플리케이션을 실행하는 모바일 장치 및 그 방법
US10248278B2 (en) 2011-12-30 2019-04-02 Nokia Technologies Oy Method and apparatus for intuitive multitasking
EP2664983A3 (en) * 2012-05-17 2018-01-03 LG Electronics, Inc. Mobile terminal and control method therefor
KR101957173B1 (ko) 2012-09-24 2019-03-12 삼성전자 주식회사 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
US20140162787A1 (en) * 2012-09-28 2014-06-12 Multimedia Games, Inc. Tournament Gaming System and Method with a Bulk Reader
US9069434B1 (en) * 2012-10-24 2015-06-30 Google Inc. Adjusting sizes of attached windows
KR102172792B1 (ko) 2012-12-06 2020-11-02 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
EP2767896B1 (en) * 2013-02-14 2019-01-16 LG Electronics Inc. Mobile terminal and method of controlling the mobile terminal
US20150199086A1 (en) * 2014-01-13 2015-07-16 Microsoft Corporation Identifying and Launching Items Associated with a Particular Presentation Mode
US20160034157A1 (en) * 2014-07-31 2016-02-04 Microsoft Corporation Region-Based Sizing and Positioning of Application Windows
US10592080B2 (en) * 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325672A (zh) * 2016-08-18 2017-01-11 暴风集团股份有限公司 利用调度视频海报信息实现收藏该视频链接的方法及系统
US11789589B2 (en) 2019-02-22 2023-10-17 Sony Group Corporation Information processing apparatus and information processing method for dividing display screen for display of plurality of applications
WO2021118061A1 (ko) * 2019-12-11 2021-06-17 삼성전자 주식회사 전자 장치 및 이를 이용한 레이아웃 구성 방법
WO2021201490A1 (ko) * 2020-03-31 2021-10-07 삼성전자 주식회사 백 그라운드 어플리케이션의 제어 방법 및 이를 지원하는 전자 장치

Also Published As

Publication number Publication date
US10437408B2 (en) 2019-10-08
US11340752B2 (en) 2022-05-24
US20160062552A1 (en) 2016-03-03
US20190377459A1 (en) 2019-12-12

Similar Documents

Publication Publication Date Title
US11340752B2 (en) Window management method and electronic device supporting the same
KR102391772B1 (ko) 터치 감응 디스플레이를 포함하는 전자 장치 및 이 전자 장치를 동작하는 방법
US10282019B2 (en) Electronic device and method for processing gesture input
KR102528389B1 (ko) 전자 장치 및 전자 장치에서의 노티피케이션 처리 방법
EP3329355B1 (en) Screen operating method and electronic device supporting the same
US11093049B2 (en) Electronic device and method for controlling display in electronic device
KR20170116883A (ko) 플렉서블 디바이스 및 그 동작 방법
KR20180098080A (ko) 멀티태스킹을 위한 인터페이스 제공 방법 및 이를 구현하는 전자 장치
KR20160026580A (ko) 화면 확대 제공 방법 및 그 전자 장치
US20170160884A1 (en) Electronic device and method for displaying a notification object
KR20170030349A (ko) 입력의 압력을 감지하는 전자 장치 및 그 동작 방법
KR20170127809A (ko) 전자 장치 및 전자 장치에서의 정보 제공 방법
KR20160034135A (ko) 터치 입력을 처리하는 전자 장치 및 방법
KR20170009008A (ko) 이미지를 표시하는 전자 장치 및 그 제어 방법
US20170017373A1 (en) Electronic device and method for controlling the same
EP3029559A1 (en) Electro device and method for processing touch input
KR20180051002A (ko) 터치 스크린을 이용하는 전자 장치에서 애플리케이션의 실행을 제어하는 방법과 이를 위한 전자 장치
EP3131000A1 (en) Method and electronic device for processing user input
KR20180019907A (ko) 전자 장치 및 그의 운용 제공 방법
EP3336671A1 (en) Electronic device and display method of electronic device
KR102332674B1 (ko) 콘텐츠 변경 알림 방법 및 장치
KR20160109466A (ko) 화면 제어 방법 및 그 방법을 처리하는 전자 장치
KR20160039334A (ko) 화면 구성 방법, 전자 장치 및 저장 매체
KR20160026252A (ko) 화면 확대 방법, 전자 장치 및 저장 매체
KR20170030790A (ko) 컨텐츠 영역 획득 방법 및 이를 지원하는 전자 장치

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X601 Decision of rejection after re-examination
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2021101002025; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20210803

Effective date: 20211029