KR20190142362A - 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들 - Google Patents

터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR20190142362A
KR20190142362A KR1020197034250A KR20197034250A KR20190142362A KR 20190142362 A KR20190142362 A KR 20190142362A KR 1020197034250 A KR1020197034250 A KR 1020197034250A KR 20197034250 A KR20197034250 A KR 20197034250A KR 20190142362 A KR20190142362 A KR 20190142362A
Authority
KR
South Korea
Prior art keywords
application
touch
contact
sensitive display
applications
Prior art date
Application number
KR1020197034250A
Other languages
English (en)
Other versions
KR102278004B1 (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
Priority claimed from DKPA201770562A external-priority patent/DK180117B1/en
Application filed by 애플 인크. filed Critical 애플 인크.
Priority to KR1020217021672A priority Critical patent/KR102428753B1/ko
Publication of KR20190142362A publication Critical patent/KR20190142362A/ko
Application granted granted Critical
Publication of KR102278004B1 publication Critical patent/KR102278004B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/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
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • 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
    • G06F3/04817Interaction 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 using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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

Landscapes

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

Abstract

터치 감응 디바이스들을 이용하여 멀티태스킹하기 위한 시스템들 및 방법들이 개시된다. 예시적인 방법은: 터치 감응형 디스플레이(touch-sensitive display, TSD)의 실질적으로 전부를 점유하는 디스플레이 영역에 애플리케이션들의 제1 세트를 디스플레이하는 단계를 포함한다. 애플리케이션들의 제1 세트를 디스플레이하는 동안: 디스플레이 영역의 제1 부분에 오버레이하는 도크를 디스플레이하는 단계; 도크 내에 디스플레이된 제1 어포던스 위에서의 접촉을 검출하는 단계 - 제1 어포던스는 애플리케이션들의 제2 세트와 연관됨 -; 도크로부터 멀어지는 접촉의 이동을 검출하는 단계. 접촉이 제1 부분과는 상이한 디스플레이 영역의 제2 부분 위에 있는 동안 TSD로부터의 접촉의 리프트오프를 검출할 시, 본 방법은: 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 (i) 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계를 추가로 포함한다.

Description

터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들
본 명세서의 실시예들은 일반적으로 터치 감응형 디스플레이들을 갖는 전자 디바이스들에 관한 것으로, 보다 구체적으로는, 터치 감응형 디스플레이를 갖는 전자 디바이스(예컨대, 터치 감응형 디스플레이를 갖는 휴대용 다기능 디바이스) 상에서 멀티태스킹하기 위한 시스템들 및 방법들에 관한 것이다.
터치 감응형 디스플레이들을 갖는 핸드헬드 전자 디바이스들은 유비쿼터스(ubiquitous)이다. 이들 디바이스들이 원래 정보 소비(예컨대, 웹 브라우징) 및 통신(예컨대, 이메일)을 위해 설계되었지만, 이들은 사용자의 주 컴퓨팅 디바이스들로서 데스크톱 및 랩톱 컴퓨터들을 신속하게 대체하고 있다. 데스크톱 또는 랩톱 컴퓨터들을 사용할 때, 이들 사용자는 상이한 실행중인 애플리케이션들(예를 들어, 문서로부터 이메일로의 텍스트 잘라내기-및-붙여넣기)에 액세스하고 이들을 사용함으로써 일상적으로 멀티태스킹할 수 있다. 핸드헬드 전자 디바이스들을 위한 새로운 특징들 및 애플리케이션들의 범주에서 엄청난 성장이 있었지만, 핸드헬드 전자 디바이스들 상의 애플리케이션들 사이에서 멀티태스킹하고 스와핑하는 능력은 데스크톱 또는 랩톱 컴퓨터들의 것들과는 전적으로 상이한 입력 메커니즘들을 요구한다.
더욱이, 멀티태스킹에 대한 필요성은, 핸드헬드 전자 디바이스들들이 전통적인 데스크톱 및 랩톱 컴퓨터들보다 더 작은 스크린들을 갖기 때문에 핸드헬드 전자 디바이스들에서 특히 절실하다. 일부 종래의 핸드헬드 전자 디바이스들은 핸드헬드 전자 디바이스 상에서 데스크톱 컴퓨터 인터페이스를 재생성함으로써 이러한 필요성을 해결하려고 시도한다. 그러나, 이러한 시도된 해결책들은 (i) 데스크톱 컴퓨터들과 핸드헬드 전자 디바이스들 사이의 스크린 크기의 상당한 차이들, 및 (ii) 데스크톱 컴퓨터들의 키보드 및 마우스 상호작용과, 터치 감응형 디스플레이들을 갖는 핸드헬드 전자 디바이스들의 터치 및 제스처 입력들의 것들 사이의 상당한 차이들을 고려하는 데 실패한다. 다른 시도된 해결책들은 데스크톱 또는 랩톱 컴퓨터들 상에 제공된 것들보다 훨씬 덜 사용자-친화적인, 복잡한 입력 시퀀스들 및 메뉴 계층구조들을 요구한다. 이와 같이, 핸드헬드 전자 디바이스들 상의 다수의 기능들 또는 애플리케이션들에 동시에 액세스하기 위한 직관적이고 사용하기 쉬운 시스템들 및 방법들을 제공하는 것이 바람직하다.
본 명세서에 기술된 실시예들은 핸드헬드 전자 디바이스 상에서 멀티태스킹하기 위한 직관적이고 끊김없는 상호작용들을 제공하는 시스템들, 방법들, 및 그래픽 사용자 인터페이스들에 대한 필요성을 해결한다. 그러한 방법들 및 시스템들은 선택적으로 종래의 터치 입력들 또는 제스처들을 보완하거나 대체할 수 있다.
(A1) 일부 실시예들에 따르면, 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112))를 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다. 본 방법은 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 하나 이상의 애플리케이션들의 제1 세트를 디스플레이하는 단계를 포함한다. 하나 이상의 애플리케이션들의 제1 세트를 디스플레이하는 동안, 본 방법은 또한: (i) 디스플레이 영역의 제1 부분에 오버레이(overlay)하는 도크(dock)를 디스플레이하는 단계, (ii) 도크 내에 디스플레이된 제1 어포던스 위에서의 터치 감응형 디스플레이 상의 접촉을 검출하는 단계 - 제1 어포던스는 하나 이상의 애플리케이션들의 제2 세트와 연관됨 -, 및 (iii) 도크로부터 멀어지는 접촉의 이동을 검출하는 단계를 포함한다. 접촉이 제1 부분과는 상이한 디스플레이 영역의 제2 부분 위에 있는 동안 터치 감응형 디스플레이로부터의 접촉의 리프트오프를 검출할 시, 본 방법은: 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 (i) 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계를 추가로 포함한다. 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 2개 이상의 애플리케이션들을 동작시키기 위해 비효율적이고 시간-소모적인 상호작용들을 채용해야 한다. 사용자가 단일의 간단한 제스처(예컨대, 단일 손가락을 사용하여 도크로부터 그리고 메인 디스플레이 영역 상으로 어포던스를 드래그함)를 사용하도록 하는 것은, 사용자들이 2개 이상의 애플리케이션들이 동시에 디스플레이되고 동작되는 모드를 용이하고 효율적으로 활성화할 수 있게 한다. 사용자들이 이러한 모드를 용이하고 효율적으로 활성화할 수 있게 하는 것은, (예컨대, 사용자들이 단일 제스처를 사용하여 모드를 활성화할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 2개 이상의 애플리케이션들에 액세스하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
(A1.5) 일부 실시예들에서, 접촉의 리프트오프를 검출하기 전에: 접촉이 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 또는 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부와 경계를 이루는 터치 감응형 디스플레이의 에지로부터의 임계 거리 내로 이동한 후, 하나 이상의 애플리케이션들의 제1 세트를 크기조정(resize)하여, 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 디스플레이 영역의 제2 부분을 드러낸다.
(A2) A1의 방법의 일부 실시예들에서, 본 방법은: 접촉이 도크로부터 적어도 임계 거리만큼 멀리 이동한 후, 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여, 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 디스플레이 영역의 제2 부분을 드러내는 단계를 포함한다. 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 터치 감응형 디스플레이 상의 소정 상호작용들로부터 야기될 변화들을 인식하지 못할 수 있다. 명확한 시각적 피드백(예컨대, 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여 디스플레이 영역의 제2 부분을 드러내는 것)은 사용자가 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A3) A1.5 또는 A2 중 어느 하나의 방법의 일부 실시예들에서, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 (i) 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계는: 디스플레이 영역의 제2 부분에 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계, 및 디스플레이 영역의 제2 부분에 인접한 디스플레이 영역의 나머지 부분에 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부를 디스플레이하는 단계를 포함한다.
(A4) A1 내지 A3 중 어느 하나의 방법의 일부 실시예들에서, 본 방법은, 접촉의 리프트오프를 검출하기 전에: 접촉이 도크로부터 임계 거리만큼 멀리 이동할 때까지 접촉에 근접하게 어포던스의 표현을 디스플레이하는 단계; 및 접촉이 도크로부터 적어도 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 어포던스의 표현을 디스플레이하는 것을 중지하고, 접촉에 근접하게 제2 애플리케이션과 연관된 콘텐츠의 썸네일을 디스플레이하는 단계를 추가로 포함한다. 이러한 방식으로, 사용자는 그들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 인식하고 이해하는 것을 돕는 추가적인 시각적 피드백을 제공받는다. 이러한 추가적인 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 더 잘 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 이차 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았으면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A5) A4의 방법의 일부 실시예들에서, 본 방법은: 접촉이 제1 부분 또는 제2 부분의 상부 상에서 각각 이동됨에 따라, 제1 부분 또는 제2 부분의 디스플레이 크기와 매칭되도록 썸네일을 크기조정하는 단계를 추가로 포함한다. 이러한 방식으로, 사용자는 그들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 인식하고 이해하는 것을 돕는 추가의 시각적 피드백을 제공받는다. 이러한 추가의 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 더 잘 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 이차 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았으면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A6) 청구항 A1 내지 A5 중 어느 하나의 방법의 일부 실시예들에서, 도크를 디스플레이하는 단계는: 터치 감응형 디스플레이 상의 초기 접촉을 검출하는 단계; 및 터치 감응형 디스플레이의 하부 부분에 실질적으로 수직인 방향으로의 초기 접촉의 이동을 검출하는 것에 응답하여, 터치 감응형 디스플레이의 제1 부분에 도크를 디스플레이하는 단계를 포함한다. 도크를 활성화하기 위해 사용자가 간단하고 사용하기 쉽고 반복가능한 제스처를 채용할 수 있게 하는 것은, 사용자 인터페이스가 보다 효율적으로 동작하도록 만들어지는 것을 보장하는 데 도움을 주는데, 이는 사용자가 애플리케이션-특정 어포던스들을 검색하는 데 시간을 낭비할 필요가 없고, 대신에 신속하게 도크에 액세스할 수 있고 도크를 사용해 애플리케이션-특정 어포던스들을 열 수 있기 때문이다. 이는 또한 (이하에서 더 상세히 논의되는 바와 같이) 사용자가 전자 디바이스와의 지속적인 상호작용을 갖는 것을 보장하는 데 도움을 주는데, 이는 그들이, 도크에 액세스하는 것으로부터, 사용자가 2개의 상이한 애플리케이션들과 동시에 상호작용할 수 있는 분할-뷰 동작 모드(split-view mode of operation)를 활성화하는 것으로 유동적으로 이동할 수 있기 때문이다.
(A6.1) A1 내지 A4 중 어느 하나의 방법의 일부 실시예들에서, 본 방법은, 접촉의 리프트오프를 검출하기 전에: 접촉이 도크로부터 임계 거리만큼 멀리 이동할 때까지 접촉에 근접하게 제1 어포던스의 표현을 디스플레이하는 단계; 및 접촉이 도크로부터 적어도 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 접촉에 근접하게 제1 어포던스의 표현을 둘러싸는 사용자 인터페이스 객체를 디스플레이하는 단계를 포함한다.
(A6.2) A6.1의 방법의 일부 실시예들에서, 사용자 인터페이스 객체는 제1 형상을 갖고, 본 방법은, 접촉의 리프트오프를 검출하기 전에: 접촉이 제1 부분 또는 제2 부분의 상부 상에서 각각 이동됨에 따라 사용자 인터페이스 객체를 제2 형상 또는 제3 형상을 갖도록 수정하는 단계를 추가로 포함하며, 제1 형상은 제2 및 제3 형상들과는 별개이다.
(A7) 청구항 A1 내지 A6 중 어느 하나의 방법의 일부 실시예들에서, 제1 세트는 하나의 제1 애플리케이션을 포함하고, 제2 세트는 하나의 제2 애플리케이션을 포함하고, 어포던스는 하나의 제2 애플리케이션과 연관되고, (예컨대, 접촉이 하나의 제1 애플리케이션과 경계를 이루는 터치 감응형 디스플레이의 에지의 임계 거리 내에 위치되는 동안) 접촉의 리프트오프를 검출할 시, 제1 및 제2 애플리케이션들은 디스플레이 영역에서 나란히 디스플레이된다. 제1 세트가 하나의 제1 애플리케이션을 포함하고 제2 세트가 하나의 제2 애플리케이션을 포함하는 경우들에서, 컴퓨팅 시스템들의 사용자들은, 제2 애플리케이션에 대응하는 어포던스를 디스플레이의 제2 부분 위로 간단히 드래그함으로써 제1 애플리케이션 및 제2 애플리케이션이 함께 디스플레이되는 분할-뷰 모드를 활성화할 수 있다. 명확한 시각적 피드백(예컨대, 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 접촉을 해제하는 것이 제1 및 제2 애플리케이션들을 포함하는 분할-뷰 모드를 활성화할 것임을 사용자들이 이해할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A7.1) A7의 방법의 일부 실시예들에서, 접촉이 하나의 제1 애플리케이션 위에 위치되는 동안 접촉의 리프트오프를 검출할 시, 제2 애플리케이션은 디스플레이 영역에서 제1 애플리케이션에 오버레이하면서 디스플레이된다.
(A8) A1 내지 A7 중 어느 하나의 방법의 일부 실시예들에서, 제1 세트는 적어도 제1 애플리케이션 및 제2 애플리케이션을 포함하고, 제2 세트는 하나의 제3 애플리케이션을 포함하고, 어포던스는 하나의 제3 애플리케이션과 연관된다. 제1 세트가 제1 애플리케이션 및 제2 애플리케이션을 포함하고 제2 세트가 하나의 제2 애플리케이션을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은, 제3 애플리케이션에 대응하는 어포던스를 디스플레이 상으로 간단히 드래그함으로써 제1 애플리케이션 및 제2 애플리케이션이 함께 디스플레이되는 분할-뷰 모드에 새로운 애플리케이션을 추가할 수 있다. 명확한 시각적 피드백(예컨대, 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A9) A8의 방법의 일부 실시예들에서, 본 방법은, 접촉의 리프트오프가 제2 애플리케이션 위에서 발생한다는 결정에 따라, 터치 감응형 디스플레이 상에서 제2 애플리케이션을 제3 애플리케이션으로 대체하는 단계를 추가로 포함한다. 이러한 방식으로, 사용자들은 분할-뷰 모드에서 제2 애플리케이션을 제3 애플리케이션으로 대체하는 능력을 제공받음으로써, 지속적인 상호작용을 가능하게 하며, 여기서 사용자는 제1 애플리케이션과 동시에 보여질 새로운 애플리케이션에서 신속하고 용이하게 대체할 수 있다.
(A9.1) A9의 방법의 일부 실시예들에서, 본 방법은: 접촉이 하나의 제1 애플리케이션 위에 위치되는 동안 접촉의 리프트오프를 검출할 시, 제2 애플리케이션이 디스플레이 영역에서 제1 애플리케이션에 오버레이하면서 디스플레이되는 것을 추가로 포함한다.
(A10) A1 내지 A9 중 어느 하나의 방법의 일부 실시예들에서, 제1 세트는 적어도 2개의 고정(pin)된 애플리케이션들의 제1 그룹을 포함하고, 제2 세트는 적어도 2개의 고정된 애플리케이션들의 제2 그룹을 포함하고, 어포던스는 적어도 2개의 고정된 애플리케이션들의 제2 그룹과 연관된다. 제1 및 제2 세트들이 각각 고정된 애플리케이션들의 그룹들을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은, 제2 그룹에 대응하는 어포던스를 디스플레이 상으로 간단히 드래그함으로써, 고정된 애플리케이션들의 새로운 그룹을 분할-뷰 모드에 추가할 수 있다. 명확한 시각적 피드백(예컨대, 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A11) A10의 방법의 일부 실시예들에서, 본 방법은: 접촉의 리프트오프가 애플리케이션들의 제1 그룹 위에서 발생한다는 결정에 따라, 적어도 2개의 고정된 애플리케이션들의 제1 그룹을 적어도 2개의 고정된 애플리케이션들의 제2 그룹으로 대체하는 단계를 추가로 포함한다. 이러한 방식으로, 사용자들은 고정된 애플리케이션들의 제1 그룹을 고정된 애플리케이션들의 제2 그룹으로 신속하게 전환하는 능력을 제공받음으로써, 지속적인 상호작용을 가능하게 하며, 여기서 사용자는 고정된 애플리케이션들의 새로운 그룹들에서 디스플레이 상으로 신속하고 용이하게 대체할 수 있다.
(A12) 청구항 A1 내지 A11 중 어느 하나의 방법의 일부 실시예들에서, 하나 이상의 애플리케이션들의 제1 세트는 제1 애플리케이션의 인스턴스를 포함하고, 하나 이상의 애플리케이션들의 제2 세트는 제1 애플리케이션의 추가 인스턴스를 포함하고, 인스턴스 및 추가 인스턴스는 제1 애플리케이션의 별개의 인스턴스들이다. 제1 및 제2 세트들이 각각 동일한 제1 애플리케이션의 상이한 인스턴스들을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은 단일 애플리케이션의 2개의 상이한 인스턴스들을 서로의 옆에 고정할 수 있다. 2개의 상이한 인스턴스들을 함께 고정할 수 있게 하는 것은 사용자들에게 개선된 인간-기계 인터페이스를 제공한다(예컨대, 사용자들이 단일 애플리케이션의 상이한 특징들과 동시에 상호작용할 수 있는 것을 보장함으로써, 예컨대, 예를 들어, 메시징 애플리케이션에서 메시지를 편집하면서 또한 그 동일한 메시징 애플리케이션에서 상이한 메시지로부터의 콘텐츠를 복사하는 것). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(A13) 또 다른 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는 터치 감응형 디스플레이, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 하나 이상의 프로그램들은, 하나 이상의 프로세서들에 의해 실행될 때, 전자 디바이스로 하여금 A1 내지 A12 중 어느 하나에 기술된 방법을 수행하게 한다.
(A14) 추가 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는: 터치 감응형 디스플레이 및 A1 내지 A12 중 어느 하나에 기술된 방법을 수행하기 위한 수단을 포함한다.
(A15) 또 하나의 추가 양태에서, 비일시적 컴퓨터 판독가능 저장 매체가 제공된다. 비일시적 컴퓨터 판독가능 저장 매체는 실행가능한 명령어들을 저장하며, 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 A1 내지 A12 중 어느 하나에 기술된 방법을 수행하게 한다.
(A16) 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스가 제공된다. 그래픽 사용자 인터페이스는 A1 내지 A12 중 어느 하나에 기술된 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함한다.
(B1) 일부 실시예들에 따르면, 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112))를 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다. 본 방법은 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 디스플레이하는 단계를 포함한다. 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 디스플레이하는 동안, 본 방법은 또한 제2 애플리케이션의 에지 근처에 어포던스를 디스플레이하는 단계, 및 터치 감응형 디스플레이를 가로지르는 방향으로 이동하는 어포던스 위에서의 접촉을 검출하는 단계를 포함한다. 방향이 제1 방향이라는 결정에 따라, 본 방법은: 디스플레이 영역의 실질적으로 전부를 점유하도록 제1 애플리케이션을 크기조정하는 단계, 및 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이하는 단계를 추가로 포함한다. 방향이 제1 방향에 실질적으로 수직인 제2 방향이라는 결정에 따라, 본 방법은 제2 애플리케이션을 디스플레이 영역 내에서 이동시키는 단계를 포함한다. 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 2개 이상의 애플리케이션들을 동작시키기 위해 비효율적이고 시간-소모적인 상호작용들을 채용해야 한다. 사용자가 핸들과 상호작용하여 슬라이드-오버 모드를 활성화하거나 또는 디스플레이 영역 내에서 특정 애플리케이션을 이동시킬 수 있게 하는 것은, 사용자들이 애플리케이션들을 이리저리 용이하게 그리고 효율적으로 이동시킬 수 있게 하고 나란한 뷰 또는 슬라이드-오버 뷰 사이에서 전환할 수 있게 한다. 사용자들이 애플리케이션들을 이리저리 용이하게 그리고 효율적으로 이동시킬 수 있게 하고 동시에 2개 이상의 애플리케이션들을 사용하는 상이한 모드들 사이에서 전환할 수 있게 하는 것은, (예를 들어, 사용자들이, 예컨대 나란한 뷰를 사용하거나 또는 슬라이드-오버/오버레이 모드를 사용하여, 동시에 2개 이상의 애플리케이션들과 상호작용하는 방식을 선택할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 2개 이상의 애플리케이션들과의 동시 상호작용들을 맞춤화하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
(B2) B1의 방법의 일부 실시예들에서, 본 방법은 제2 애플리케이션이 크기조정된 제1 애플리케이션에 오버레이하는 동안, 제1 애플리케이션에서 사용자 입력을 검출하는 단계; 및 제1 애플리케이션을 통해 사용자 입력에 응답하는 단계를 추가로 포함한다. 제2 애플리케이션이 제1 애플리케이션의 상부 상에 오버레이되는 동안에도, 사용자들이 제1 애플리케이션과 상호작용할 수 있게 하는 것은, 사용자들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 맞춤화할 수 있게 한다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 그들의 맞춤화된 선택들은 그들이, 디폴트 배열 작업을 해야 하는 대신에, 다양한 특징들을 더 효율적으로 사용할 수 있게 할 것이다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
(B3) B2의 방법의 일부 실시예들에서, 본 방법은, 방향이 제1 방향이라는 결정 후에, 제1 및 제2 애플리케이션들과는 별개인 제3 애플리케이션을 열라는 요청에 응답하여, (i) 제1 애플리케이션에 의해 이전에 점유된 디스플레이 영역의 일부분에 제3 애플리케이션을 디스플레이하고, (ii) 제3 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이하는 단계를 포함한다. 오버레이된 애플리케이션이 사용자들이 새로운 애플리케이션을 연 후에 디스플레이된 상태로 유지될 수 있게 하는 것은, 전자 디바이스의 특징들(예컨대, 오버레이된 애플리케이션이 디스플레이된 상태로 유지되지 않았다면 다시 재개(re-open)되어야 할 수 있는, 오버레이된 애플리케이션을 통해 사용자에 의해 액세스되는 특징들)과의 지속적인 상호작용이 유지되는 것을 보장하는 데 도움을 준다. 사용자들은 또한 오버레이된 애플리케이션의 특징들을 재개해야 하는 것을 피할 수 있기 때문에, 디바이스의 작동성이 개선되고 인간-기계 인터페이스는 또한 더 효율적으로 동작하도록 만들어진다.
(B4) B1 내지 B3 중 어느 하나의 방법의 일부 실시예들에서, 제2 애플리케이션은 터치 감응형 디스플레이의 제1 에지와 경계를 이루는 것으로서 초기에 디스플레이되고, 제2 애플리케이션을 디스플레이 영역 내에서 이동시키는 단계는: (i) 제2 애플리케이션이 터치 감응형 디스플레이의 제1 에지에 대향하는 제2 에지와 경계를 이룰 때까지 제2 애플리케이션을 제2 방향으로 이동시키고; (ii) 제1 애플리케이션이 터치 감응형 디스플레이의 제1 에지와 경계를 이루도록, 제2 애플리케이션에 의해 점유된 일부분과 별개인 디스플레이 영역의 나머지 부분에 제1 애플리케이션을 디스플레이하는 단계를 포함한다. 사용자들이 어포던스(예컨대, 오버레이된 애플리케이션 위에 디스플레이되는 핸들)를 드래그함으로써 애플리케이션을 이리저리 이동시킬 수 있게 하는 것은, 사용자들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 사용자들이 맞춤화할 수 있게 하는 데 도움을 준다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은, 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 각각의 애플리케이션이 디스플레이되어야 하는 위치에 대한 그들의 맞춤화된 선택들은, 그들이 디폴트 배열 작업을 해야 하는 대신에 다양한 특징들을 더 효율적으로 사용할 수 있게 한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
(B5) B4의 방법의 일부 실시예들에서, 제2 애플리케이션이 제2 에지와 경계를 이룰 때까지 제2 애플리케이션을 이동시키기 전에, 제2 애플리케이션에 의해 점유된 부분의 미리보기가 제1 애플리케이션 옆에 드러난다. 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 터치 감응형 디스플레이 상의 소정 상호작용들로부터 야기될 변화들을 인식하지 못할 수 있다. 명확한 시각적 피드백(예컨대, 제2 애플리케이션이 어디로 이동할지의 미리보기를 보여줌)은 사용자들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
(B6) B1 내지 B5 중 어느 하나의 방법의 일부 실시예들에서, 제1 방향은 제2 애플리케이션의 에지에 대한 하향 방향이고, 제2 방향은 하향 방향에 실질적으로 수직인 측방향이다. 사용자들이 핸들을 상이한 방향들로 이동시킬 수 있게 하는 것은, 그들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 유연하게 맞춤화하는 추가적이고 간단한 방식들을 사용자들에게 제공하는 데 도움을 준다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은, 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 각각의 애플리케이션이 디스플레이되어야 하는 위치에 대한 그들의 맞춤화된 선택들은, 그들이 디폴트 배열 작업을 해야 하는 대신에 다양한 특징들을 더 효율적으로 사용할 수 있게 한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
(B7) B1 내지 B6 중 어느 하나의 방법의 일부 실시예들에서, 본 방법은, 어포던스를 디스플레이하기 전에, 제2 애플리케이션의 에지에서 사용자 입력을 검출하고, 사용자 입력을 검출하는 것에 응답하여 어포던스를 디스플레이하는 단계를 포함한다. 이러한 방식으로, 사용자들은 핸들의 디스플레이를 활성화하는 데 사용되는 간단한 제스처를 제공받음으로써, (예컨대, 핸들이 사용자에 의해 필요해질 때에만 디스플레이되는 것을 보장함으로써) 디바이스의 작동성을 향상시킨다.
(B8) B7의 방법의 일부 실시예들에서, 사용자 입력은 제2 애플리케이션의 에지에서의 접촉 및 터치 감응형 디스플레이를 가로지르는 제1 방향으로의 접촉의 이동을 포함한다. 위에서 논의된 바와 같이, 이는 핸들의 디스플레이를 활성화하는 데 사용되는 간단한 제스처를 사용자들에게 제공함으로써, (예컨대, 핸들이 사용자에 의해 필요해질 때에만 디스플레이되는 것을 보장함으로써) 디바이스의 작동성을 향상시킨다.
(B8.1) 청구항 B1 내지 B8 중 어느 하나의 방법의 일부 실시예들에서, 제1 애플리케이션을 크기조정하고 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이한 후에: 어포던스 위에서의 추가 접촉 및 제1 방향에 반대인 제3 방향으로의 추가 접촉의 이동을 검출하는 단계; 추가 접촉이 제3 방향으로 임계 거리만큼 이동했음을 검출하는 것에 응답하여, 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이하는 것을 중지하고, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 재디스플레이하는 단계.
(B8.2) 청구항 B1 내지 B8 중 어느 하나의 방법의 일부 실시예들에서, 본 방법은, 제1 애플리케이션을 크기조정하고 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이한 후에: 어포던스 위에서의 추가 접촉 및 제1 방향으로의 추가 접촉의 이동을 검출하는 단계; 추가 접촉이 터치 감응형 디스플레이를 가로질러 제2 임계 거리만큼 이동했음을 검출하는 것에 응답하여, 제2 애플리케이션에 대응하는 어포던스의 표현을 갖는 사용자 인터페이스 객체가 디스플레이될 때까지 추가 접촉의 이동에 따라 제2 애플리케이션과 연관된 콘텐츠를 스케일 다운(scale down)하는 단계를 추가로 포함한다.
(B8.3) B8.2의 방법의 일부 실시예들에서, 추가 접촉이 도크 위로 이동하고 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라, 제2 애플리케이션을 해제(dismiss)하고, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 제1 애플리케이션을 디스플레이하는 단계; 및 추가 접촉이 터치 감응형 디스플레이의 에지의 임계 거리 내로 이동하고 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 재디스플레이하는 단계.
(B9) B1 내지 B8 중 어느 하나의 방법의 일부 실시예들에서, 디스플레이 영역에 제1 및 제2 애플리케이션들을 디스플레이하는 단계는 디스플레이 영역에서 나란히 제1 및 제2 애플리케이션들을 동시에 디스플레이하는 단계를 포함한다.
(B10) 또 다른 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는 터치 감응형 디스플레이, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 하나 이상의 프로그램들은, 하나 이상의 프로세서들에 의해 실행될 때, 전자 디바이스로 하여금 B1 내지 B9 중 어느 하나에 기술된 방법을 수행하게 한다.
(B11) 추가 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는: 터치 감응형 디스플레이 및 B1 내지 B9 중 어느 하나에 기술된 방법을 수행하기 위한 수단을 포함한다.
(B12) 또 하나의 추가 양태에서, 비일시적 컴퓨터 판독가능 저장 매체가 제공된다. 비일시적 컴퓨터 판독가능 저장 매체는 실행가능한 명령어들을 저장하며, 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 B1 내지 B9 중 어느 하나에 기술된 방법을 수행하게 한다.
(B13) 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스가 제공된다. 그래픽 사용자 인터페이스는 B1 내지 B9 중 어느 하나에 기술된 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함한다.
(C1) 일부 실시예들에 따르면, 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112)) 및 하나 이상의 프로세서들을 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다. 본 방법은 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하는 단계를 포함한다. 본 방법은 애플리케이션-스위처 사용자 인터페이스(application-switcher user interface)를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하는 단계를 추가로 포함한다. 사용자 입력을 수신하는 것에 응답하여, 본 방법은 터치 감응형 디스플레이 상에 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 단계를 추가로 포함하며, 여기서 애플리케이션-스위처 사용자 인터페이스는 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고, 각각의 표현들은 적어도 2개의 애플리케이션들을 갖는 디스플레이 영역의 표현을 포함한다.
(C2) C1의 방법의 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 단계는 전자 디바이스 상에서 이용가능한 애플리케이션들에 대응하는 복수의 어포던스들을 포함하는 도크를 디스플레이하는 단계를 포함한다. 일부 실시예들에서, 본 방법은 추가로: (i) 도크에 포함된 복수의 어포던스들 중 하나의 어포던스 위에서의 접촉을 검출하는 단계; (ii) 디스플레이 영역의 표현을 향하는 접촉의 이동을 검출하는 단계; 및 (iii) 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 접촉의 리프트오프를 검출할 시, 본 방법은 디스플레이 영역의 표현에 제1 애플리케이션을 디스플레이하는 것을 중지하고, 대신에 디스플레이 영역의 표현 내에 어포던스에 대응하는 추가 애플리케이션을 디스플레이하는 단계를 추가로 포함한다.
(C3) C1 또는 C2의 방법의 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 동안, 본 방법은 추가로: (i) 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 추가 사용자 입력을 검출하는 단계; (ii) 추가 사용자 입력을 검출하는 것에 응답하여, 제1 애플리케이션의 적어도 일부분 위에 해제 어포던스를 디스플레이하는 단계; 및 (iii) 해제 어포던스의 선택을 검출할 시, 제1 애플리케이션을 닫고, 애플리케이션-스위처 사용자 인터페이스에 제1 애플리케이션 이외의 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이하는 단계를 포함한다.
(C4) C1 내지 C3의 방법의 일부 실시예들에서, 본 방법은 추가로: (i) 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 접촉을 검출하는 단계; (ii) 디스플레이 영역의 표현으로부터 멀어지는 접촉의 이동을 검출하는 단계; 및 (iii) 접촉이 애플리케이션-스위처 사용자 인터페이스 내의 미리정의된 영역으로 이동했음을 검출할 시, 표현에 제1 애플리케이션을 디스플레이하는 것을 중지하고, 애플리케이션-스위처 사용자 인터페이스에 제1 애플리케이션 이외의 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이하는 단계를 포함한다.
(C5) C4의 방법의 일부 실시예들에서, 도크가 적어도 애플리케이션-스위처 사용자 인터페이스의 미리정의된 영역에 오버레이하면서 디스플레이되고, 도크는 전자 디바이스 상에서 이용가능한 복수의 애플리케이션들에 대응하는 어포던스들을 포함한다.
(C6) C1 내지 C5 중 어느 하나의 방법의 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 것은, 디스플레이 영역의 크기를, 표현과 연관된 미리정의된 크기에 도달할 때까지, 점진적으로 감소시키는 것을 포함한다.
(C7) 임의의 전술한 청구항의 방법의 일부 실시예들에서, 각각의 표현들은 오버레이된 애플리케이션과 연관되는 추가 애플리케이션의 추가 표현을 포함하고, 추가 표현은 오버레이된 애플리케이션을 보여주지 않는다.
(C8) 임의의 전술한 청구항의 방법의 일부 실시예들에서, 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하는 단계는 디스플레이 영역에서 나란히 적어도 2개의 애플리케이션들을 동시에 디스플레이하는 단계를 포함하고, 적어도 2개의 애플리케이션들을 갖는 디스플레이 영역의 표현을 디스플레이하는 단계는 디스플레이 영역의 표현에서 나란히 적어도 2개의 애플리케이션들을 동시에 디스플레이하는 단계를 포함한다.
(C9) 또 다른 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는 터치 감응형 디스플레이, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 하나 이상의 프로그램들은, 하나 이상의 프로세서들에 의해 실행될 때, 전자 디바이스로 하여금 C1 내지 C8 중 어느 하나에 기술된 방법을 수행하게 한다.
(C10) 추가 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는: 터치 감응형 디스플레이 및 C1 내지 C8 중 어느 하나에 기술된 방법을 수행하기 위한 수단을 포함한다.
(C11) 또 하나의 추가 양태에서, 비일시적 컴퓨터 판독가능 저장 매체가 제공된다. 비일시적 컴퓨터 판독가능 저장 매체는 실행가능한 명령어들을 저장하며, 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 C1 내지 C8 중 어느 하나에 기술된 방법을 수행하게 한다.
(C12) 또 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치가 제공된다. 정보 프로세싱 장치는 C1 내지 C8 중 어느 하나에 기술된 방법을 수행하기 위한 수단을 포함한다.
(C13) 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스가 제공된다. 그래픽 사용자 인터페이스는 C1 내지 C8 중 어느 하나에 기술된 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함한다.
(D1) 일부 실시예들에 따르면, 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 방법이 제공된다. 예를 들어, 메일 애플리케이션의 제1 인스턴스(예컨대, 받은편지함을 디스플레이하는 것)는 스크린의 일 측 상에 열려 있는 반면, 동일한 메일 애플리케이션의 제2 인스턴스(예컨대, 개별 이메일 답장을 디스플레이함)는 스크린의 다른 측 상에 열려 있다. 인스턴스는, 통상적으로 컴퓨터 프로그램의 런타임 동안 존재하는 객체의 구체적인 단일 어커런스이며, 예를 들어, 프로그램 또는 애플리케이션이 실행될 때마다 그것은 그 프로그램의 인스턴스이다. 일부 실시예들에서, 방법은 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112)) 및 하나 이상의 프로세서들을 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다. 이 실시예에서, 초기에, 애플리케이션의 제1 인스턴스가 터치 감응형 디스플레이의 실질적으로 전부 상에 디스플레이된다. 이어서, 애플리케이션의 제1 인스턴스 내에 디스플레이된 어포던스 위에서 접촉이 검출된다. 이어서, 접촉의 이동이 터치 감응형 디스플레이를 가로질러 검출된다. 접촉이 터치 감응형 디스플레이를 가로질러 그리고 터치 감응형 디스플레이의 미리정의된 부분 내로 이동한 후에 접촉의 리프트오프를 검출할 시, 전자 디바이스에 대한 분할-뷰 동작 모드를 활성화하며, 분할-뷰 동작 모드는 (i) 어포던스와 연관된 콘텐츠와 함께 디스플레이되는 애플리케이션의, 제1 인스턴스와 별개인, 제2 인스턴스, 및 (ii) 애플리케이션의 제1 인스턴스의 적어도 일부분을 동시에 디스플레이하는 것을 포함하고, 여기서 제2 인스턴스 및 제1 인스턴스의 일부분은 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 것으로서 디스플레이된다.
일부 실시예들에서, 애플리케이션의 제1 및 제2 인스턴스들은 전자 디바이스의 하나 이상의 프로세서들 상에서 실행되는 별개의 실행가능한 프로세스들이다(예컨대, 둘 모두 개별적으로 전자 디바이스의 하나 이상의 프로세서들 상에서 실행되고 있는, 애플리케이션의 2개의 별개의 인스턴스화들). 달리 말하면, 리프트오프를 검출한 후에, 애플리케이션의 제2 인스턴스는 인스턴스화되고 이어서 애플리케이션의 제1 인스턴스와 나란히 디스플레이되며, 이에 의해 사용자가 제1 인스턴스로부터의 콘텐츠를 용이하게/편리하게 보고 사용할 수 있으면서 또한 제2 인스턴스와 상호작용할 수 있게 한다.
일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 애플리케이션 내의 다른 특징들을 열도록 선택한 후에 애플리케이션의 소정 특징들에의 액세스를 잃는다(예컨대, 사용자들은 수신된 이메일에 답장하기 위한 옵션을 선택한 후에 그 수신된 이메일을 볼 수 없을 수 있다). 단일 애플리케이션의 다수의 인스턴스들을 여는 것은 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 한다. 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 하는 것은 (예컨대, 사용자들이, 이들 소정 특징들이 닫힌 후에 그것들을 재개하기 위해 다수의 입력들을 제공할 필요 없이, 이들 소정 특징들을 사용할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 이들 소정 특징들이 닫혔거나 더 이상 디스플레이되지 않은 후 이들 소정 특징들을 재개하거나 이들에 액세스하는 방법을 알아내기 위해 다수의 제스처들 또는 입력들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
(D2) D1의 방법의 일부 실시예들에서, 분할-뷰 모드를 활성화하기 전에, 시스템은 (i) 접촉이 터치 감응형 디스플레이를 가로질러 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음, 및 (ii) 접촉이 터치 감응형 디스플레이의 미리정의된 부분으로 이동했음 중 적어도 하나를 검출한다. 다시 말하면, 일부 실시예들에서, 시스템은 접촉이 터치 감응형 디스플레이를 가로질러 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했는지 여부를 결정하지만, 다른 실시예들에서, 시스템은 접촉이 터치 감응형 디스플레이의 미리정의된 부분(예컨대, 스크린의 우측 1/3 내지 절반)으로 이동했는지 여부를 결정한다. 또 다른 실시예들에서, 시스템은 이들 이동들 중 어느 하나가 발생했는지 여부를 결정하는 반면, 다른 실시예들에서, 시스템은 이들 이동들 둘 모두가 발생했는지 여부를 결정한다. 접촉이 적어도 임계 거리만큼 또는 스크린의 미리정의된 부분으로 이동했음을 검출하는 것에 응답하여, (i) 애플리케이션의 제1 인스턴스는 터치 감응형 디스플레이의 제1 부분을 점유하도록 크기조정되고, (ii) 제1 부분에 인접하게 터치 감응형 디스플레이의 미리정의된 부분이 드러난다. 이러한 방식으로, 컴퓨팅 시스템들의 사용자들은, 분할-뷰 모드가 어떻게 보일 것인지에 대한 시각적 미리보기를 그들에게 제공하기 위해, 디스플레이의 제2 부분을 드러내는 미리보기를 제공받는다. 이는, 사용자들이 미리보기를 본 후에 분할-뷰 모드를 활성화할지에 대한 결정을 할 수 있기 때문에, 디바이스의 작동성을 향상시키며, 이에 의해 사용자들이 분할-뷰 모드를 활성화하는 방법을 발견할 수 있도록 보장하고 사용자들이 그것을 활성화하기 전에 그러한 모드를 미리 볼 수 있도록 보장한다.
(D3) D2의 방법의 일부 실시예들에서, 분할-뷰 동작 모드를 활성화하는 것은 터치 감응형 디스플레이의 미리정의된 부분에 애플리케이션의 제2 인스턴스를 디스플레이하는 것을 포함한다.
(D4) D1의 방법의 일부 실시예들에서, 터치 감응형 디스플레이를 가로지르는 접촉의 이동을 검출하기 전에, 어포던스와 연관된 콘텐츠의 미리보기가 접촉 아래에 디스플레이된다. 일부 실시예들에서, 미리보기는, 접촉이 미리결정된 기간(예컨대, 1 또는 2초) 동안 어포던스 위에서 유지된 후에만, 디스플레이된다. 다른 실시예들에서, 미리보기는, 접촉의 세기가 세기 임계치(예컨대, 세게 또는 깊게 누르기)를 초과한 후에만 디스플레이된다.
(D5) D4의 방법의 일부 실시예들에서, 애플리케이션은 이메일 애플리케이션이고, 어포던스는 이메일 애플리케이션의 제1 인스턴스에 디스플레이된 메시지의 표현이고, 미리보기는, 접촉이 미리정의된 세기 임계치보다 큰 접촉의 세기를 갖는다는 것을 검출할 시에, 디스플레이된다.
(D6) D4의 방법의 일부 실시예들에서, 애플리케이션은 이메일 애플리케이션이고, 어포던스는 이메일 애플리케이션의 제1 인스턴스에 디스플레이된 메시지의 표현이고, 미리보기는, 접촉이 미리정의된 시간량 초과(예컨대, 1, 2, 또는 3초) 동안 터치 감응형 디스플레이 상의 어포던스 상에서 유지됨을 검출할 시에, 디스플레이된다.
(D7) D1 내지 D4의 방법들의 일부 실시예들에서, 애플리케이션은 이메일 애플리케이션이고, 어포던스 위에서의 접촉은 이메일 애플리케이션의 제1 인스턴스에 디스플레이된 링크(예컨대, 답장하기, 전체 답장하기, 또는 새 메시지 작성하기 링크) 위에서의 접촉이다.
(D8) 또 다른 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는 터치 감응형 디스플레이, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 하나 이상의 프로그램들은, 하나 이상의 프로세서들에 의해 실행될 때, 전자 디바이스로 하여금 D1 내지 D7 중 어느 하나에 기술된 방법을 수행하게 한다.
(D9) 추가 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는: 터치 감응형 디스플레이 및 D1 내지 D7 중 어느 하나에 기술된 방법을 수행하기 위한 수단을 포함한다.
(D10) 또 하나의 추가 양태에서, 비일시적 컴퓨터 판독가능 저장 매체가 제공된다. 비일시적 컴퓨터 판독가능 저장 매체는 실행가능한 명령어들을 저장하며, 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 D1 내지 D7 중 어느 하나에 기술된 방법을 수행하게 한다.
(D11) 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스가 제공된다. 그래픽 사용자 인터페이스는 D1 내지 D7 중 어느 하나에 기술된 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함한다.
(E1) 일부 실시예들에 따르면, 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112))를 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다. 본 방법은: 터치 감응형 디스플레이 상에 콘텐츠를 디스플레이하는 단계, 및 터치 감응형 디스플레이의 에지에 실질적으로 수직인 방향으로의 접촉의 이동을 검출하는 단계를 포함한다. 본 방법은 또한 접촉의 이동이 제1 이동-기반 임계치를 충족한다고 결정할 시에(예컨대, 접촉이 에지로부터 제1 임계 거리를 넘어 이동했음), 콘텐츠의 적어도 일부분에 오버레이하는 도크를 디스플레이하는 단계를 포함하며, 도크는, 선택될 때 전자 디바이스로 하여금 전자 디바이스 상에서 이용가능한 각각의 애플리케이션을 열게 하는, 복수의 어포던스들을 포함한다. 도크를 디스플레이하는 동안 그리고 접촉이 제2 이동-기반 임계치를 충족한다는 결정에 따라(예컨대, 접촉이 에지로부터 제1 임계 거리보다 큰 제2 임계 거리를 넘어 이동했음), 본 방법은 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 선택가능한 표현들을 포함하는 애플리케이션-스위처 사용자 인터페이스를 활성화하는 단계를 추가로 포함한다. 도크 및 이어서 애플리케이션-스위처 사용자 인터페이스를 활성화하는 데 사용되는 단일 제스처를 제공함으로써, 디바이스의 작동성이 향상되고 인간-기계 인터페이스는 더 효율적으로 동작하도록 만들어진다(예컨대, 개별적으로 도크에 액세스하고 이어서 얼마 후의 시점에 애플리케이션-스위처 사용자 인터페이스에 액세스하기 위해 다수의, 비효율적이고, 시간-낭비적인 입력들을 채용해야 하는 것 대신에, 사용자들은 도크 및 애플리케이션-스위치 사용자 인터페이스를 활성화하기 위한 단일 입력을 제공할 수 있기 때문임).
(E1.5) E1의 방법의 일부 실시예들에서, 제1 및 제2 이동-기반 임계치는 거리 임계치들, 속도 임계치들, 또는 가속도 임계치들로 이루어진 그룹으로부터 선택된다.
(E2) 또 다른 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는 터치 감응형 디스플레이, 하나 이상의 프로세서들, 및 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 하나 이상의 프로그램들은, 하나 이상의 프로세서들에 의해 실행될 때, 전자 디바이스로 하여금 E1 또는 E1.5에 기술된 방법을 수행하게 한다.
(E3) 추가 양태에서, 전자 디바이스가 제공되고, 전자 디바이스는: 터치 감응형 디스플레이 및 E1 또는 E1.5에 기술된 방법을 수행하기 위한 수단을 포함한다.
(E4) 또 하나의 추가 양태에서, 비일시적 컴퓨터 판독가능 저장 매체가 제공된다. 비일시적 컴퓨터 판독가능 저장 매체는 실행가능한 명령어들을 저장하며, 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 전자 디바이스로 하여금 E1 또는 E1.5에 기술된 방법을 수행하게 한다.
(E5) 다른 양태에서, 터치 감응형 디스플레이를 갖는 전자 디바이스 상의 그래픽 사용자 인터페이스가 제공된다. 그래픽 사용자 인터페이스는 E1 또는 E1.5에 기술된 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함한다.
전술된 다양한 실시예들이 본 명세서에 기술된 임의의 다른 실시예들과 조합될 수 있음에 주목한다. 본 명세서에 기술된 특징들 및 이점들은 모두를 포함하는 것은 아니며, 특히, 많은 추가적인 특징들 및 이점들이 도면, 명세서 및 청구범위를 고려하여 당업자에게 명백할 것이다. 그에 부가하여, 본 명세서에 사용된 표현은 주로 이해의 편의 및 설명을 위해 선택되었고, 본 발명의 요지를 상세히 기술하거나 제한하기 위해 선택되지 않았을 수 있다는 것에 주목해야 한다.
기술된 다양한 실시예들의 더 나은 이해를 위해, 유사한 도면 부호들이 도면들 전체에 걸쳐 대응하는 부분들을 나타내는 아래의 도면들과 관련하여, 아래의 발명을 실시하기 위한 구체적인 내용 섹션이 참고되어야 한다.
도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이를 갖는 컴퓨팅 디바이스의 고레벨 블록도이다.
도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들의 블록도이다.
도 1c는 일부 실시예들에 따른, 터치 감응형 디스플레이를 갖는 휴대용 다기능 디바이스의 개략도이다.
도 1d는 일부 실시예들에 따른, 디스플레이와는 별개인 터치 감응형 표면을 갖는 컴퓨팅 디바이스를 예시하기 위해 사용되는 개략도이다.
도 2는 일부 실시예들에 따른, 애플리케이션들의 메뉴를 위한 사용자 인터페이스를 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도이다.
도 3a 내지 도 3c는 일부 실시예들에 따른 동적 세기 임계치들의 예들을 예시한다.
도 4a 내지 도 4ar은 일부 실시예들에 따른, 다수의 애플리케이션들과 동시에 상호작용하기 위한 사용자 인터페이스들(및 다수의 애플리케이션들과의 동시 상호작용들이 이용가능한 분할-뷰 모드를 활성화하기 위해 사용되는 제스처들)을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 5a 내지 도 5o는 일부 실시예들에 따른, 분할-뷰 모드(여기서 2개의 애플리케이션들이 함께 고정되고 디스플레이 상에서 나란히 디스플레이됨)와 슬라이드 오버 모드(여기서 하나의 애플리케이션이 디스플레이 상에서 다른 애플리케이션에 오버레이하는 것으로 디스플레이됨) 사이에서 전환하기 위한 사용자 인터페이스들을 예시하는 데 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 6a 내지 도 6q는, 일부 실시예들에 따른, 먼저 도크를 활성화하고 이어서 디스플레이 상의 애플리케이션-스위처 사용자 인터페이스를 활성화하는 것을 허용하는 연속 제스처를 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 7a 내지 도 7l은 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 예시적인 사용자 인터페이스들 및 제스처들을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 8a 내지 도 8c는 일부 실시예들에 따른, 어포던스를 도크 밖으로 드래그함으로써 분할-뷰 모드(여기서 다수의 애플리케이션들이 동시에 디스플레이되고 사용을 위해 이용가능함)를 활성화하는 방법의 흐름도 표현이다.
도 9a 내지 도 9c는 일부 실시예들에 따른, 분할-뷰 모드(여기서 2개의 애플리케이션들이 함께 고정되고 디스플레이 상에서 나란히 디스플레이됨)와 슬라이드 오버 모드(여기서 하나의 애플리케이션이 디스플레이 상에서 다른 애플리케이션에 오버레이하는 것으로 디스플레이됨) 사이에서 전환하기 위한 단일 어포던스와 상호작용하는 방법의 흐름도 표현이다.
도 10a 내지 도 10c는 일부 실시예들에 따른, 함께 고정되는 애플리케이션들의 표현들을 디스플레이하기 위해 애플리케이션-스위처 사용자 인터페이스를 이용하는 방법의 흐름도 표현이다.
도 11a 및 도 11b는 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 방법(1100)을 도시하는 흐름도들이다.
도 12는 먼저 도크를 활성화하고 이어서 디스플레이 상의 애플리케이션-스위처 사용자 인터페이스를 활성화하는 것을 허용하는 연속 제스처를 이용하는 방법의 흐름도 표현이다.
도 1a 내지 도 1d 및 도 2는 예시적인 디바이스들의 설명을 제공한다. 도 3a 내지 도 3c는 동적 세기 임계치들의 예들을 도시한다. 도 4a 내지 도 4aa는 다수의 애플리케이션들과 동시에 상호작용하기 위한 사용자 인터페이스들(및 다수의 애플리케이션들과의 동시 상호작용들이 이용가능한 분할-뷰 모드를 활성화하기 위해 사용되는 제스처들)을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이며, 이들 도면은 도 8a 내지 도 8c에 도시된 방법들/프로세스들을 예시하기 위해 사용된다. 도 5a 내지 도 5o는 일부 실시예들에 따른, 분할-뷰 모드(여기서 2개의 애플리케이션들이 함께 고정되고 디스플레이 상에서 나란히 디스플레이됨)와 슬라이드 오버 모드(여기서 하나의 애플리케이션이 디스플레이 상에서 다른 애플리케이션에 오버레이하는 것으로 디스플레이됨) 사이에서 전환하기 위한 사용자 인터페이스들을 예시하는 데 사용되는 터치 감응형 디스플레이의 개략도들이며, 이들 도면은 도 9a 및 도 9b의 방법들/프로세스들을 예시하기 위해 사용된다. 도 6a 내지 도 6q는, 일부 실시예들에 따른, 먼저 도크를 활성화하고 이어서 디스플레이 상의 애플리케이션-스위처 사용자 인터페이스를 활성화하는 것을 허용하는 연속 제스처를 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이며, 이들 도면은 도 10a 내지 도 10c 및 도 12의 방법들/프로세스들을 예시하기 위해 사용된다. 도 7a 내지 도 7l은 단일 애플리케이션의 다수의 인스턴스들(예컨대, 단일 이메일 애플리케이션의, 다수의 별개의 실행가능한 인스턴스들)과 동시에 상호작용하기 위한 사용자 인터페이스들을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이며, 이들 도면은 도 11a 및 도 11b의 방법들/프로세스들을 예시하기 위해 사용된다.
예시적인 디바이스
이제, 실시예들이 상세하게 참조될 것이며, 그 실시예들의 예들이 첨부 도면들에 예시된다. 하기의 상세한 설명에서, 많은 구체적인 상세사항들이 다양하게 기술된 실시예들의 완전한 이해를 제공하기 위해 기재된다. 그러나, 다양하게 기술된 실시예들이 이들 구체적인 상세사항들 없이 실시될 수 있다는 것은 당업자에게 명백할 것이다. 다른 예들에서, 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 실시예들의 양태들을 불필요하게 모호하게 하지 않기 위해 상세히 기술되지 않았다.
일부 예들에서, 용어들, 제1, 제2 등이 본 명세서에서 다양한 요소들을 기술하는 데 사용되지만, 이들 요소들은 이들 용어들에 의해 제한되어서는 안 된다는 것이 또한 이해될 것이다. 이러한 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들면, 다양하게 기술된 실시예들의 범주로부터 벗어남이 없이, 제1 접촉이 제2 접촉으로 지칭될 수 있고, 유사하게, 제2 접촉이 제1 접촉으로 지칭될 수 있다. 제1 접촉 및 제2 접촉은 둘 다 접촉이지만, 그들이 동일한 접촉인 것은 아니다.
본 명세서에서 다양하게 기술된 실시예들의 설명에 사용되는 용어는 특정 실시예들을 기술하는 목적만을 위한 것이고, 제한하려는 의도는 아니다. 다양한 기술된 실시예들의 설명 및 첨부된 청구범위에 사용되는 바와 같이, 단수의 형태("a", "an", 및 "the")는 문맥상 명백히 달리 나타내지 않는다면 복수의 형태도 마찬가지로 포함하려는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 연관된 항목들 중 하나 이상의 항목의 임의의 그리고 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 용어들 "포함한다(include)", "포함하는(including)", "포함한다(comprise)", 및/또는 "포함하는(comprising)"은, 본 명세서에서 사용될 때, 언급된 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않음이 추가로 이해될 것이다.
본 명세서에서 사용되는 바와 같이, "~는 경우(if)"라는 용어는, 선택적으로, 문맥에 따라 "~할 때(when)" 또는 "~ 시(upon)" 또는 "결정하는 것에 응답하여(in response to determining)" 또는 "검출하는 것에 응답하여(in response to detecting)"를 의미하는 것으로 해석된다. 유사하게, 구문 "결정된 경우" 또는 "[진술된 상태 또는 이벤트가] 검출된 경우"는, 선택적으로, 문맥에 따라 "결정 시" 또는 "결정하는 것에 응답하여" 또는 "[진술된 상태 또는 이벤트] 검출 시" 또는 "[진술된 상태 또는 이벤트를] 검출하는 것에 응답하여"를 의미하는 것으로 해석된다.
본 명세서의 개시내용은 터치 감응형 디스플레이의 특정 부분 또는 특정 사용자 인터페이스 요소 상에서, 그것에서, 그 위에서, 그의 상부에서, 또는 실질적으로 그 내부에서 터치 입력을 검출하는 것을 상호교환가능하게 지칭한다. 본 명세서에 사용되는 바와 같이, 특정 사용자 인터페이스 요소"에서" 검출되는 터치 입력이 또한, 문맥에 따라, 그 동일한 사용자 인터페이스 요소 "상에서", "그 위에서", "그의 상부에서", 또는 "실질적으로 그 내부에서" 검출될 수 있다. 일부 실시예들에서 그리고 아래에서 더욱 상세하게 논의되는 바와 같이, 터치 입력들을 검출하기 위한 원하는 민감도 레벨들은 전자 디바이스의 사용자에 의해 구성된다(예컨대, 사용자는, 터치 입력이 완전히 사용자 인터페이스 요소 내에 있을 때에만 터치 입력이 검출되어야 한다고 결정(및 그렇게 동작하도록 전자 디바이스를 구성)할 수 있다).
전자 디바이스들, 그러한 디바이스들에 대한 사용자 인터페이스들, 및 그러한 디바이스들을 사용하기 위한 연관된 프로세스들의 실시예들이 기술된다. 일부 실시예들에서, 디바이스는 PDA 및/또는 음악 재생기 기능들과 같은 다른 기능들을 또한 포함하는, 이동 전화기와 같은, 휴대용 통신 디바이스이다. 휴대용 다기능 디바이스들의 예시적인 실시예들은 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.(Apple Inc.)로부터의 아이폰(iPhone)®, 아이팟 터치(iPod Touch)®, 및 아이패드(iPad)® 디바이스들을 제한 없이 포함한다. 터치 감응형 표면들(예컨대, 터치 감응형 디스플레이들 및/또는 터치 패드들)을 갖는 랩톱들 또는 태블릿 컴퓨터들과 같은 다른 휴대용 전자 디바이스들이 선택적으로 사용된다. 일부 실시예들에서, 디바이스는 휴대용 통신 디바이스가 아니라, 터치 감응형 표면(예를 들어, 터치 감응형 디스플레이 및/또는 터치 패드)을 갖는 데스크톱 컴퓨터임이 또한 이해되어야 한다.
이하의 논의에서, 디스플레이 및 터치 감응형 표면을 포함하는 전자 디바이스가 기술된다. 그러나, 전자 디바이스가 선택적으로 물리적 키보드, 마우스 및/또는 조이스틱과 같은 하나 이상의 다른 물리적 사용자 인터페이스 디바이스들을 포함한다는 것이 이해되어야 한다.
디바이스는 전형적으로, 그리기 애플리케이션, 프레젠테이션 애플리케이션, 워드 프로세싱 애플리케이션, 웹사이트 제작 애플리케이션, 디스크 저작 애플리케이션, 스프레드시트 애플리케이션, 게임 애플리케이션, 전화 애플리케이션, 화상 회의 애플리케이션, 이메일 애플리케이션, 인스턴트 메시징 애플리케이션, 피트니스 애플리케이션, 사진 관리 애플리케이션, 디지털 카메라 애플리케이션, 디지털 비디오 카메라 애플리케이션, 웹 브라우징 애플리케이션, 디지털 음악 재생기 애플리케이션, 및/또는 디지털 비디오 재생기 애플리케이션 중 하나 이상과 같은 다양한 애플리케이션들을 지원한다.
디바이스 상에서 실행되는 다양한 애플리케이션들은, 선택적으로, 터치 감응형 표면과 같은 적어도 하나의 보편적인 물리적 사용자 인터페이스 디바이스를 사용한다. 터치 감응형 표면의 하나 이상의 기능들뿐만 아니라 디바이스 상에 디스플레이되는 대응하는 정보는, 선택적으로, 하나의 애플리케이션으로부터 다음 애플리케이션으로 그리고/또는 개개의 애플리케이션 내에서 조정되고/되거나 변경된다. 이러한 방식으로, 디바이스의 (터치 감응형 표면과 같은) 보편적인 물리적 아키텍처는, 선택적으로, 사용자에게 직관적이고 투명한 사용자 인터페이스들을 이용하여 다양한 애플리케이션들을 지원한다.
이제, 터치 감응형 디스플레이들을 갖는 휴대용 전자 디바이스들의 실시예들에 주목한다. 도 1a는 일부 실시예들에 따른, 터치 감응형 디스플레이(112)를 갖는 휴대용 다기능 디바이스(100)(본 명세서에서 전자 디바이스(100) 또는 디바이스(100)로도 상호교환가능하게 지칭됨)를 예시하는 블록도이다. 터치 감응형 디스플레이(112)는 때때로 편의상 "터치 스크린"이라고 지칭되고, 때때로 터치 감응형 디스플레이 시스템으로 알려져 있거나 또는 그렇게 지칭된다. 디바이스(100)는 메모리(102)(선택적으로, 하나 이상의 컴퓨터 판독 가능 저장 매체들을 포함함), 제어기(120), 하나 이상의 프로세싱 유닛들(CPU)(122), 주변기기 인터페이스(118), RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 입/출력(I/O) 서브시스템(106), 다른 입력 또는 제어 디바이스들(116), 및 외부 포트(124)를 포함한다. 디바이스(100)는 선택적으로 하나 이상의 광학 센서들(164)을 포함한다. 디바이스(100)는 선택적으로 디바이스(100) 상의 접촉들의 세기를 검출하기 위한 하나 이상의 세기 센서들(165)(예를 들어, 디바이스(100)의 터치 감응형 디스플레이 시스템(112)과 같은 터치 감응형 표면)을 포함한다. 디바이스(100)는 선택적으로 디바이스(100) 상의 촉각적 출력들을 생성하기 위한(예컨대, 디바이스(100)의 터치 감응형 디스플레이 시스템(112) 또는 디바이스(100)의 터치패드와 같은 터치 감응형 표면 상의 촉각적 출력들을 생성하기 위한) 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 이들 컴포넌트는 선택적으로 하나 이상의 통신 버스들 또는 신호 라인들(103)을 통해 통신한다.
명세서 및 청구범위에 사용되는 바와 같이, "촉각적 출력"이라는 용어는 디바이스의 이전 위치에 대한 디바이스의 물리적 변위, 디바이스의 다른 컴포넌트(예컨대, 하우징)에 대한 디바이스의 컴포넌트(예컨대, 터치 감응형 표면)의 물리적 변위, 또는 사용자의 촉각을 이용하여 사용자에 의해 검출될 디바이스의 질량 중심에 대한 컴포넌트의 변위를 지칭한다. 예컨대, 디바이스 또는 디바이스의 컴포넌트가 터치에 민감한 사용자의 표면(예컨대, 사용자의 손의 손가락, 손바닥, 또는 다른 부위)과 접촉하는 상황에서, 물리적 변위에 의해 생성된 촉각적 출력은 사용자에 의해 디바이스 또는 디바이스의 컴포넌트의 물리적 특성들의 인지된 변화에 대응하는 촉감(tactile sensation)으로서 해석될 것이다. 예를 들어, 터치 감응형 표면(예를 들어, 터치 감응형 디스플레이 또는 트랙패드)의 이동은, 선택적으로, 물리적 액추에이터 버튼의 "다운 클릭(down click)" 또는 "업 클릭(up click)"으로서 사용자에 의해 해석된다. 일부 경우들에서, 사용자는 사용자의 이동에 의해 물리적으로 눌리는(예컨대, 변위되는) 터치 감응형 표면과 연관된 물리적 액추에이터 버튼의 이동이 없는 경우에도 "다운 클릭" 또는 "업 클릭"과 같은 촉감을 느낄 것이다. 다른 예로서, 터치 감응형 표면의 이동은, 선택적으로, 터치 감응형 표면의 평활도(smoothness)에서의 변화가 존재하지 않는 경우에도, 터치 감응형 표면의 "조도(roughness)"로서 사용자에 의해 해석 또는 감지된다. 사용자에 의한 터치의 이러한 해석들이 사용자의 개별화된 감각 인지(sensory perception)에 영향을 받기 쉬울 것이지만, 대다수의 사용자들에게 보편적인 많은 터치 감각 인지가 있다. 따라서, 촉각적 출력이 사용자의 특정 감각 인지(예컨대, "업 클릭", "다운 클릭", "거칠기")에 대응하는 것으로서 기술될 때, 달리 언급되지 않는다면, 생성된 촉각적 출력은 전형적인(또는 평균적인) 사용자에 대한 기술된 감각 인지를 생성할 디바이스 또는 그의 컴포넌트의 물리적 변위에 대응한다.
디바이스(100)는 휴대용 다기능 디바이스의 일례일 뿐이고, 디바이스(100)는, 선택적으로, 도시된 것보다 더 많거나 더 적은 컴포넌트들을 갖거나, 선택적으로, 둘 이상의 컴포넌트들을 조합하거나, 또는 선택적으로 컴포넌트들의 상이한 구성 또는 배열을 갖는다는 것이 이해되어야 한다. 도 1a에 도시된 다양한 컴포넌트들은 하나 이상의 신호 프로세싱 및/또는 주문형 집적 회로(application specific integrated circuit)들을 비롯한, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어 양측 모두의 조합으로 구현된다.
메모리(102)는 선택적으로 고속 랜덤 액세스 메모리(예컨대, DRAM, SRAM, DDR RAM 또는 다른 랜덤 액세스 솔리드 스테이트 메모리 디바이스들)를 포함하며, 또한 선택적으로 하나 이상의 자기 디스크 저장 디바이스, 플래시 메모리 디바이스, 또는 다른 비휘발성 솔리드 스테이트 메모리 디바이스와 같은 비휘발성 메모리를 포함한다. 메모리(102)는 선택적으로 프로세서(들)(122)로부터 원격으로 위치된 하나 이상의 저장 디바이스들을 포함한다. CPU(122) 및 주변기기 인터페이스(118)와 같은, 디바이스(100)의 다른 컴포넌트들에 의한 메모리(102)에의 액세스는 선택적으로 제어기(120)에 의해 제어된다.
주변기기 인터페이스(118)는 디바이스의 입력 및 출력 주변기기들을 CPU(122) 및 메모리(102)에 결합하는 데 사용될 수 있다. 하나 이상의 프로세서들(122)은 디바이스(100)에 대한 다양한 기능들을 수행하기 위해 그리고 데이터를 프로세싱하기 위해 메모리(102)에 저장된 다양한 소프트웨어 프로그램들 및/또는 명령어들의 세트들을 구동 또는 실행시킨다.
일부 실시예들에서, 주변기기 인터페이스(118), CPU(122) 및 제어기(120)는 선택적으로 칩(104)과 같은 단일 칩 상에 구현된다. 일부 다른 실시예들에서, 이들은 선택적으로 별개의 칩들 상에 구현된다.
RF(radio frequency) 회로부(108)는 전자기 신호들이라고도 지칭되는 RF 신호들을 수신 및 전송한다. RF 회로부(108)는 전기 신호들을 전자기 신호들로/로부터 변환하고, 전자기 신호들을 통해 통신 네트워크들 및 다른 통신 디바이스들과 통신한다. RF 회로부(108)는, 선택적으로, 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 프로세서, CODEC 칩셋, SIM(subscriber identity module) 카드, 메모리 등을 포함하지만 이들로 제한되지 않는, 이러한 기능들을 수행하기 위한 잘 알려진 회로부를 포함한다. RF 회로부(108)는, 선택적으로, 네트워크들, 예컨대 월드 와이드 웹(WWW)으로도 지칭되는 인터넷, 인트라넷, 및/또는 무선 네트워크, 예컨대 셀룰러 전화 네트워크, 무선 LAN(local area network) 및/또는 MAN(metropolitan area network), 및 다른 디바이스들과 무선 통신에 의해 통신한다. 무선 통신은, 선택적으로, GSM(Global System for Mobile Communications), EDGE(Enhanced Data GSM Environment), HSDPA(high-speed downlink packet access), HSUPA(high-speed uplink packet access), EV-DO(Evolution, Data-Only), HSPA, HSPA+, DC-HSPDA(Dual-Cell HSPA), LTE(long term evolution), NFC(near field communication), W-CDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access), 블루투스(Bluetooth), 및/또는 Wi-Fi(Wireless Fidelity)(예컨대, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n)를 포함하지만 이들로 제한되지는 않는 복수의 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 이용한다.
오디오 회로부(110), 스피커(111), 및 마이크로폰(113)은 사용자와 디바이스(100) 사이에서 오디오 인터페이스를 제공한다. 오디오 회로부(110)는 주변기기 인터페이스(118)로부터 오디오 데이터를 수신하고, 그 오디오 데이터를 전기 신호로 변환하고, 그 전기 신호를 스피커(111)에 송신한다. 스피커(111)는 전기 신호를 사람이 들을 수 있는 음파로 변환한다. 오디오 회로부(110)는 또한 마이크로폰(113)에 의해 음파로부터 변환된 전기 신호들을 수신한다. 오디오 회로부(110)는 전기 신호를 오디오 데이터로 변환하고, 프로세싱을 위해 오디오 데이터를 주변기기 인터페이스(118)에 송신한다. 오디오 데이터는, 선택적으로, 주변기기 인터페이스(118)에 의해 메모리(102) 및/또는 RF 회로부(108)로부터 인출되고/되거나 이로 송신된다. 일부 실시예들에서, 오디오 회로부(110)는 또한 헤드셋 잭을 포함한다. 헤드셋 잭은 출력-전용 헤드폰들, 또는 출력(예컨대, 한쪽 또는 양쪽 귀용 헤드폰) 및 입력(예컨대, 마이크로폰) 양쪽 모두를 갖는 헤드셋과 같은 분리가능한 오디오 입/출력 주변기기들과 오디오 회로부(110) 사이의 인터페이스를 제공한다.
I/O 서브시스템(106)은 터치 스크린(112) 및 다른 입력 제어 디바이스들(116)과 같은, 디바이스(100) 상의 입/출력 주변기기들을 주변기기 인터페이스(118)에 연결한다. I/O 서브시스템(106)은 선택적으로 디스플레이 제어기(156), 광학 센서 제어기(158), 세기 센서 제어기(159), 햅틱 피드백 제어기(161) 및 다른 입력 또는 제어 디바이스들을 위한 하나 이상의 입력 제어기들(160)을 포함한다. 하나 이상의 입력 제어기들(160)은 다른 입력 또는 제어 디바이스들(116)로부터/로 전기 신호들을 수신/전송한다. 다른 입력 제어 디바이스들(116)은 선택적으로 물리적 버튼들(예컨대, 푸시 버튼(push button), 로커 버튼(rocker button) 등), 다이얼, 슬라이더 스위치, 조이스틱, 클릭 휠 등을 포함한다. 일부 대안의 실시예들에서, 입력 제어기(들)(160)는, 선택적으로, 키보드, 적외선 포트, USB 포트, 및 마우스와 같은 포인터 디바이스 중 임의의 것에 결합된다(또는 어떤 것에도 결합되지 않는다). 하나 이상의 버튼들은 선택적으로 스피커(111) 및/또는 마이크로폰(113)의 볼륨 제어를 위한 업/다운 버튼을 포함한다. 하나 이상의 버튼들은 선택적으로 푸시 버튼을 포함한다.
터치 감응형 디스플레이(112)는 디바이스와 사용자 사이의 입력 인터페이스 및 출력 인터페이스를 제공한다. 디스플레이 제어기(156)는 터치 스크린(112)으로부터/으로 전기 신호들을 수신하고/하거나 전송한다. 터치 스크린(112)은 사용자에게 시각적 출력을 디스플레이한다. 시각적 출력은 선택적으로 그래픽, 텍스트, 아이콘, 비디오 및 이들의 임의의 조합(총칭하여 "그래픽"으로 지칭됨)을 포함한다. 일부 실시예들에서, 시각적 출력의 일부 또는 전부가 사용자 인터페이스 객체들에 대응한다.
터치 스크린(112)은 햅틱 및/또는 촉각적 접촉에 기초하는 사용자로부터의 입력을 수용하는 터치 감응형 표면, 센서 또는 센서들의 세트를 갖는다. 터치 스크린(112) 및 디스플레이 제어기(156)는 (메모리(102) 내의 임의의 연관된 모듈들 및/또는 명령어들의 세트들과 함께) 터치 스크린(112) 상의 접촉(및 접촉의 임의의 이동 또는 중단)을 검출하고, 검출된 접촉을 터치 스크린(112) 상에 디스플레이되는 사용자 인터페이스 객체들(예컨대, 하나 이상의 소프트 키들, 아이콘들, 웹 페이지들 또는 이미지들)과의 상호작용으로 변환한다. 예시적인 실시예에서, 터치 스크린(112)과 사용자 사이의 접촉 지점은 사용자의 손가락 아래의 영역에 대응한다.
터치 스크린(112)은 선택적으로 LCD(liquid crystal display) 기술, LPD(light emitting polymer display) 기술, 또는 LED(light emitting diode) 기술, 또는 OLED(organic light emitting diode) 기술을 이용하지만, 다른 실시예들에서는 다른 디스플레이 기술들이 이용된다. 터치 스크린(112) 및 디스플레이 제어기(156)는, 선택적으로, 용량성, 저항성, 적외선, 및 표면 음향파 기술들뿐만 아니라 다른 근접 센서 어레이들, 또는 터치 스크린(112)과의 하나 이상의 접촉 지점을 결정하기 위한 다른 요소들을 포함하지만 이들로 한정되지 않는, 현재 공지되어 있거나 추후에 개발되는 복수의 터치 감지 기술 중 임의의 것을 사용하여, 접촉 및 그의 임의의 이동 또는 중단을 검출한다. 예시적인 실시예에서, 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크.로부터의 아이폰®, 아이팟 터치®, 및 아이패드®에서 발견되는 것과 같은 투영형 상호 용량 감지 기술(projected mutual capacitance sensing technology)이 이용된다.
터치 스크린(112)은, 선택적으로, 400 dpi를 초과하는 비디오 해상도를 갖는다. 일부 실시예들에서, 터치 스크린(112)은 적어도 600 dpi의 비디오 해상도를 갖는다. 다른 실시예들에서, 터치 스크린(112)은 적어도 1000 dpi의 비디오 해상도를 갖는다. 사용자는 선택적으로, 스타일러스 또는 손가락과 같은 임의의 적합한 물체 또는 손가락(digit)을 사용하여 터치 스크린(112)과 접촉한다. 일부 실시예들에서, 사용자 인터페이스는, 주로 손가락 기반 접촉들 및 제스처들과 협업하도록 설계된다. 일부 실시예들에서, 디바이스는 손가락 기반 입력을 사용자가 원하는 액션들을 수행하기 위한 정밀한 포인터/커서 위치 또는 커맨드로 변환한다.
일부 실시예들에서, 터치 스크린 이외에, 디바이스(100)는, 선택적으로, 특정 기능들을 활성화 또는 비활성하기 위한 터치패드(도시되지 않음)를 포함한다. 일부 실시예들에서, 터치패드는, 터치 스크린과는 달리, 시각적 출력을 디스플레이하지 않는 디바이스의 터치 감응형 영역이다. 터치패드는, 선택적으로, 터치 스크린(112)과는 별개인 터치 감응형 표면 또는 터치 스크린에 의해 형성된 터치 감응형 표면의 연장부이다.
디바이스(100)는 또한 다양한 컴포넌트들에 전력을 공급하기 위한 전력 시스템(162)을 포함한다. 전력 시스템(162)은, 선택적으로, 전력 관리 시스템, 하나 이상의 전원들(예컨대, 배터리, 교류 전류(alternating current, AC)), 재충전 시스템, 전력 고장 검출 회로, 전력 변환기 또는 인버터, 전력 상태 표시자(예컨대, 발광 다이오드(LED)), 및 휴대용 디바이스들 내에서의 전력의 생성, 관리 및 분배와 연관된 임의의 다른 컴포넌트들을 포함한다.
디바이스(100)는 또한 선택적으로 하나 이상의 광학 센서들(164)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 광학 센서 제어기(158)에 결합된 광학 센서를 도시한다. 광학 센서(164)는 선택적으로 CCD(charge-coupled device) 또는 CMOS(complementary metal-oxide semiconductor) 포토트랜지스터들을 포함한다. 광학 센서(164)는 하나 이상의 렌즈들을 통해 투영되는, 주변환경으로부터의 광을 수광하고, 그 광을 이미지를 표현하는 데이터로 변환한다. 이미징 모듈(143)(카메라 모듈로도 지칭됨)과 함께, 광학 센서(164)는 선택적으로, 정지 이미지들 또는 비디오를 캡처한다. 일부 실시예들에서, 광학 센서는 디바이스 전면 상의 터치 스크린(112)의 반대편인 디바이스(100)의 배면 상에 위치되어, 터치 감응형 디스플레이가 정지 및/또는 비디오 이미지 획득을 위한 뷰파인더로서 사용될 수 있게 한다. 일부 실시예들에서, 다른 광학 센서가 디바이스의 전면 상에 위치되어, 사용자가 터치 감응형 디스플레이 상에서 다른 화상 회의 참여자들을 보는 동안, 사용자의 이미지가 화상 회의를 위해 선택적으로 획득되게 한다.
디바이스(100)는, 또한, 선택적으로, 하나 이상의 접촉 세기 센서들(165)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 세기 센서 제어기(159)에 결합된 접촉 세기 센서를 도시한다. 접촉 세기 센서(165)는, 선택적으로, 하나 이상의 압전 저항 스트레인 게이지, 용량성 힘 센서, 전기적 힘 센서, 압전 힘 센서, 광학적 힘 센서, 용량성 터치 감응형 표면, 또는 다른 세기 센서들(예컨대, 터치 감응형 표면 상의 접촉의 힘(또는 압력)을 측정하는 데 사용되는 센서들)을 포함한다. 접촉 세기 센서(165)는 주변환경으로부터 접촉 세기 정보(예컨대, 압력 정보 또는 압력 정보에 대한 대용물)를 수신한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 터치 감응형 표면(예컨대, 터치 감응형 디스플레이 시스템(112))과 함께 위치(collocate)되거나 그에 근접한다. 일부 실시예들에서, 적어도 하나의 접촉 세기 센서는 디바이스(100)의 전면 상에 위치된 터치 스크린(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.
디바이스(100)는 또한 선택적으로 하나 이상의 근접 센서들(166)을 포함한다. 도 1a는 주변기기 인터페이스(118)에 결합된 근접 센서(166)를 도시한다. 대안적으로, 근접 센서(166)는 I/0 서브시스템(106) 내의 입력 제어기(160)에 결합된다. 일부 실시예들에서, 근접 센서는 다기능 디바이스가 사용자의 귀 근처에 위치될 때(예컨대, 사용자가 전화 통화를 하고 있을 때) 터치 스크린(112)을 끄고 디스에이블시킨다.
디바이스(100)는, 또한, 선택적으로, 하나 이상의 촉각적 출력 생성기들(167)을 포함한다. 도 1a는 I/O 서브시스템(106) 내의 햅틱 피드백 제어기(161)에 결합된 촉각적 출력 생성기를 도시한다. 촉각적 출력 생성기(167)는, 선택적으로, 스피커들 또는 다른 오디오 컴포넌트들과 같은 하나 이상의 전자음향 디바이스들 및/또는 모터, 솔레노이드, 전기활성 중합체, 압전 액추에이터, 정전 액추에이터, 또는 다른 촉각적 출력 생성 컴포넌트(예컨대, 전기 신호들을 디바이스 상의 촉각적 출력들로 변환하는 컴포넌트)와 같은, 에너지를 선형 모션(linear motion)으로 변환하는 전자기계 디바이스들을 포함한다. 접촉 세기 센서(165)는 햅틱 피드백 모듈(133)로부터 촉각적 피드백 생성 명령어들을 수신하여 디바이스(100)의 사용자에 의해 감지될 수 있는 디바이스(100) 상의 촉각적 출력들을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기는 터치 감응형 표면(예컨대, 터치 감응형 디스플레이 시스템(112))과 함께 위치되거나 그에 근접하며, 선택적으로, 터치 감응형 표면을 수직으로(예컨대, 디바이스(100)의 표면 내/외로) 또는 측방향으로(예컨대, 디바이스(100)의 표면과 동일한 평면에서 전후로) 이동시킴으로써 촉각적 출력을 생성한다. 일부 실시예들에서, 적어도 하나의 촉각적 출력 생성기 센서는 디바이스(100)의 전면 상에 위치된 터치 감응형 디스플레이(112)의 반대편인 디바이스(100)의 배면 상에 위치된다.
디바이스(100)는 또한 선택적으로 하나 이상의 가속도계들(168)을 포함한다. 도 1a는 주변기기 인터페이스(118)에 결합된 가속도계(168)를 도시한다. 대안적으로, 가속도계(168)는 선택적으로 I/O 서브시스템(106) 내의 입력 제어기(160)에 결합된다. 일부 실시예들에서, 하나 이상의 가속도계로부터 수신된 데이터의 분석에 기초하여 터치 감응형 디스플레이 상에 세로보기(portrait view) 또는 가로보기(landscape view)로 정보가 디스플레이된다. 디바이스(100)는, 선택적으로, 가속도계(들)(168) 외에도, 자력계(도시되지 않음), 및 디바이스(100)의 위치 및 배향(예컨대, 세로 또는 가로)에 관한 정보를 획득하기 위한 GPS(또는 GLONASS 또는 다른 글로벌 내비게이션 시스템) 수신기(도시되지 않음)를 포함한다.
일부 실시예들에서, 메모리(102)에 저장된 소프트웨어 컴포넌트들은 운영 체제(126), 통신 모듈(또는 명령어들의 세트)(128), 접촉/모션 모듈(또는 명령어들의 세트)(130), 그래픽 모듈(또는 명령어들의 세트)(132), 텍스트 입력 모듈(또는 명령어들의 세트)(134), GPS 모듈(또는 명령어들의 세트)(135), 및 애플리케이션들(또는 명령어들의 세트들)(136)을 포함한다. 게다가, 일부 실시예들에서, 메모리(102)는 도 1a에 도시된 바와 같이 디바이스/글로벌 내부 상태(157)를 저장한다. 디바이스/글로벌 내부 상태(157)는, 존재하는 경우, 어느 애플리케이션들이 현재 활성 상태인지를 나타내는 활성 애플리케이션 상태; 어떤 애플리케이션들, 뷰들 또는 다른 정보가 터치 감응형 디스플레이(112)의 다양한 영역들을 점유하는지를 나타내는 디스플레이 상태; 디바이스의 다양한 센서들 및 입력 제어 디바이스들(116)로부터 획득된 정보를 포함하는 센서 상태; 및 디바이스의 위치 및/또는 자세(예컨대, 디바이스의 배향)에 관한 위치 정보 중 하나 이상을 포함한다. 일부 실시예들에서, 디바이스/글로벌 내부 상태(157)는 멀티태스킹 모듈(180)과 통신하여, 멀티태스킹 모드(공유 스크린 뷰, 공유 스크린 모드, 또는 멀티태스크 모드로도 지칭됨)에서 활성화되는 애플리케이션들을 추적한다. 이러한 방식으로, 디바이스(100)가 세로 디스플레이 모드로부터 가로 디스플레이 모드로 회전되는 경우, 멀티태스킹 모듈(180)은, 세로로부터 가로로 전환한 후에 멀티태스킹 모드를 재활성화하기 위해, 디바이스/글로벌 내부 상태(157)로부터 멀티태스킹 상태 정보(예컨대, 멀티태스킹 모드에서의 각각의 애플리케이션에 대한 디스플레이 영역들)를 인출할 수 있다. 멀티태스킹 모드에서의 상태 기반(stateful) 애플리케이션 거동의 추가 실시예들이 아래의 도 43a 내지 도 45c를 참조하여 논의된다.
운영 체제(126)(예컨대, 다윈(Darwin), RTXC, 리눅스(LINUX), 유닉스(UNIX), OS X, 윈도우(WINDOWS), 또는 VxWorks와 같은 임베디드 운영 체제)는 일반적인 시스템 태스크들(예컨대, 메모리 관리, 저장 디바이스 제어, 전력 관리 등)을 제어 및 관리하기 위한 다양한 소프트웨어 컴포넌트들 및/또는 드라이버들을 포함하고, 다양한 하드웨어 및 소프트웨어 컴포넌트들 사이의 통신을 용이하게 한다.
통신 모듈(128)은 하나 이상의 외부 포트들(124)을 통한 다른 디바이스들과의 통신을 용이하게 하고, 또한 RE 회로부(108) 및/또는 외부 포트(124)에 의해 수신되는 데이터를 처리하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 외부 포트(124)(예컨대, USB(Universal Serial Bus), 파이어와이어(FIREWIRE) 등)는 다른 디바이스들에 직접적으로 또는 네트워크(예컨대, 인터넷, 무선 LAN 등)를 통해 간접적으로 결합하도록 구성된다. 일부 실시예들에서, 외부 포트는 애플 인크.로부터의 아이팟 디바이스들의 일부 실시예들 상에서 사용되는 30-핀 커넥터와 동일하거나 유사하고/하거나 호환가능한 멀티 핀(예컨대, 30-핀) 커넥터이다. 다른 실시예들에서, 외부 포트는 애플 인크.로부터의 라이트닝(LIGHTNING) 커넥터들에서 사용되는 8-핀 커넥터와 동일하거나 유사하고/하거나 호환가능한 멀티 핀(예컨대, 8-핀) 커넥터이다.
접촉/모션 모듈(130)은, 선택적으로, (디스플레이 제어기(156)와 함께) 터치 스크린(112), 및 다른 터치 감응형 디바이스들(예컨대, 터치패드 또는 물리적 클릭 휠)과의 접촉을 검출한다. 접촉/모션 모듈(130)은 접촉이 발생했는지를 결정하는 것(예컨대, 손가락-다운 이벤트(finger-down event)를 검출하는 것), 접촉의 세기(예컨대, 접촉의 힘 또는 압력, 또는 접촉의 힘 또는 압력을 대체하는 것)를 결정하는 것, 접촉의 이동이 있는지를 결정하고 터치 감응형 표면을 가로지르는 이동을 추적하는 것(예컨대, 하나 이상의 손가락-드래그 이벤트(finger-dragging event)들을 검출하는 것), 및 접촉이 중지되었는지를 결정하는 것(예컨대, 손가락-업 이벤트(finger-up event) 또는 접촉 중단을 검출하는 것)과 같은, 접촉의 검출에 관련된 다양한 동작들을 수행하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 접촉/모션 모듈(130)은 터치 감응형 표면으로부터 접촉 데이터를 수신한다. 일련의 접촉 데이터에 의해 표현되는 접촉 지점의 이동을 결정하는 것은, 선택적으로, 접촉 지점의 속력(크기), 속도(크기 및 방향), 및/또는 가속도(크기 및/또는 방향의 변화)를 결정하는 것을 포함한다. 이 동작들은, 선택적으로, 단일 접촉들(예컨대, 한 손가락 접촉들)에 또는 다수의 동시 접촉들(예컨대, "멀티터치"/다수의 손가락 접촉들)에 적용된다. 일부 실시예들에서, 접촉/모션 모듈(130) 및 디스플레이 제어기(156)는 터치패드 상의 접촉을 검출한다.
일부 실시예들에서, 접촉/모션 모듈(130)은 하나 이상의 세기 임계치들의 세트를 이용하여, 동작이 사용자에 의해 수행되었는지 여부를 결정한다(예컨대, 사용자가 어포던스를 선택했거나 그 위를 "클릭"했는지 여부를 결정한다). 일부 실시예들에서, 적어도 세기 임계치들의 서브세트가 소프트웨어 파라미터들에 따라 결정된다(예컨대, 세기 임계치들은 특정 물리적 액추에이터들의 활성화 임계치들에 의해 결정되지 않으며, 디바이스(100)의 물리적 하드웨어를 변경함이 없이 조정될 수 있다). 예를 들면, 트랙패드 또는 터치 감응형 디스플레이의 마우스 "클릭" 임계치는 트랙패드 또는 터치 감응형 디스플레이 하드웨어를 변경함이 없이 넓은 범위의 미리정의된 임계값들 중 임의의 것으로 설정될 수 있다. 추가로, 일부 구현예들에서, 디바이스의 사용자는 (예컨대, 개별 세기 임계치들을 조정함으로써 그리고/또는 복수의 세기 임계치들을 시스템 레벨 클릭 "세기" 파라미터로 한꺼번에 조정함으로써) 세기 임계치들의 세트 중 하나 이상을 조정하기 위한 소프트웨어 설정들을 제공받는다.
접촉/모션 모듈(130)은, 선택적으로, 사용자에 의한 제스처 입력을 검출한다. 터치 감응형 표면 상에서의 상이한 제스처들은 상이한 접촉 패턴들(예컨대, 검출된 접촉들의 상이한 모션들, 타이밍들, 및/또는 세기들)을 갖는다. 따라서, 제스처는, 선택적으로, 특정 접촉 패턴을 검출함으로써 검출된다. 예를 들어, 손가락 탭 제스처(finger tap gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 손가락-다운 이벤트와 동일한 위치(또는 실질적으로 동일한 위치)에서(예컨대, 아이콘의 위치에서) 손가락-업(리프트오프(liftoff)) 이벤트를 검출하는 것을 포함한다. 다른 예로서, 터치 감응형 표면 상에서 손가락 스와이프 제스처(finger swipe gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 하나 이상의 손가락-드래깅 이벤트를 검출하고, 일부 실시예들에서, 그에 후속하여 손가락-업(리프트오프) 이벤트를 검출하는 것을 포함한다.
그래픽 모듈(132)은, 디스플레이되는 그래픽의 시각적 효과(예컨대, 밝기, 투명도, 채도, 콘트라스트 또는 다른 시각적 속성)를 변경하기 위한 컴포넌트들을 포함하는, 터치 스크린(112) 또는 다른 디스플레이 상에서 그래픽을 렌더링 및 디스플레이하기 위한 다양한 공지된 소프트웨어 컴포넌트들을 포함한다. 본 명세서에서 사용되는 바와 같이, "그래픽"이라는 용어는, 텍스트, 웹 페이지들, 아이콘들(예컨대, 소프트 키들을 포함하는 사용자 인터페이스 객체들), 디지털 이미지들, 비디오들, 애니메이션들 등을 제한 없이 포함하는, 사용자에게 디스플레이될 수 있는 임의의 객체를 포함한다.
일부 실시예들에서, 그래픽 모듈(132)은 사용될 그래픽을 표현하는 데이터를 저장한다. 각각의 그래픽에는, 선택적으로, 대응하는 코드가 할당된다. 그래픽 모듈(132)은, 필요한 경우 좌표 데이터 및 다른 그래픽 속성 데이터와 함께, 디스플레이될 그래픽을 특정하는 하나 이상의 코드들을 애플리케이션들 등으로부터 수신하며, 이어서 스크린 이미지 데이터를 생성하여 디스플레이 제어기(156)에 출력한다. 일부 실시예들에서, 그래픽 모듈(132)은 각각의 애플리케이션(136)(도 1b)의 멀티태스킹 데이터(176)와 함께 저장된 그래픽을 인출한다. 일부 실시예들에서, 멀티태스킹 데이터(176)는 상이한 크기들의 다수의 그래픽을 저장하므로, 공유 스크린 모드에 있는 동안 애플리케이션은 빠르게 크기조정할 수 있다(크기조정 애플리케이션들은 도 6a 내지 도 6j, 도 37a 내지 도 37g, 및 도 40a 내지 도 40d를 참조하여 이하에서 더 상세히 논의된다).
햅틱 피드백 모듈(133)은 디바이스(100)와의 사용자 상호작용들에 응답하여 디바이스(100) 상의 하나 이상의 위치들에서 촉각적 출력들을 생성하기 위하여 촉각적 출력 생성기(들)(167)에 의해 이용되는 명령어들을 생성하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다.
선택적으로 그래픽 모듈(132)의 컴포넌트인 텍스트 입력 모듈(134)은 다양한 애플리케이션들(예컨대, 연락처 모듈(137), 이메일 클라이언트 모듈(140), IM 모듈(141), 브라우저 모듈(147), 및 텍스트 입력을 필요로 하는 임의의 다른 애플리케이션)에 텍스트를 입력하기 위한 소프트 키보드들을 제공한다.
GPS 모듈(135)은 디바이스의 위치를 결정하고, 이 정보를 다양한 애플리케이션들에서의 사용을 위해 (예컨대, 위치 기반 다이얼링에서 사용하기 위해 전화(138)에, 사진/비디오 메타데이터로서 카메라(143)에, 그리고 날씨 위젯들, 지역 옐로 페이지 위젯들 및 지도/내비게이션 위젯들과 같은 위치 기반 서비스들을 제공하는 애플리케이션들에) 제공한다.
애플리케이션들("앱(app)들")(136)은, 선택적으로, 하기의 모듈들(또는 명령어들의 세트들), 또는 이들의 서브세트 또는 수퍼세트(superset)를 포함한다:
Figure pct00001
연락처 모듈(137)(때때로 주소록 또는 연락처 목록으로 지칭됨);
Figure pct00002
전화 모듈(138);
Figure pct00003
화상 회의 모듈(139);
Figure pct00004
이메일 클라이언트 모듈(140);
Figure pct00005
인스턴트 메시징(IM) 모듈(141);
Figure pct00006
피트니스 모듈(142);
Figure pct00007
정지 및/또는 비디오 이미지들을 위한 카메라 모듈(143);
Figure pct00008
이미지 관리 모듈(144);
Figure pct00009
브라우저 모듈(147);
Figure pct00010
캘린더 모듈(148);
Figure pct00011
날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4), 사전 위젯(149-5), 및 사용자에 의해 획득되는 다른 위젯들뿐 아니라 사용자-생성 위젯들(149-6) 중 하나 이상을 선택적으로 포함하는 위젯 모듈들(149);
Figure pct00012
검색 모듈(151);
Figure pct00013
선택적으로 비디오 재생기 모듈 및 음악 재생기 모듈로 구성된 비디오 및 음악 재생기 모듈(152);
Figure pct00014
메모 모듈(153);
Figure pct00015
지도 모듈(154); 및/또는
Figure pct00016
온라인 비디오 모듈(155).
선택적으로 메모리(102)에 저장된 다른 애플리케이션들(136)의 예들은 다른 워드 프로세싱 애플리케이션들, 다른 이미지 편집 애플리케이션들, 그리기 애플리케이션들, 프레젠테이션 애플리케이션들, 웹사이트 제작 애플리케이션들, 디스크 저작 애플리케이션들, 스프레드시트 애플리케이션들, JAVA 인에이블형 애플리케이션들, 암호화, 디지털 저작권 관리, 음성 인식, 사용자-생성 위젯들(149-6)을 만들기 위한 위젯 생성기 모듈, 및 음성 복제를 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 연락처 모듈(137)은, 선택적으로, 하기를 비롯한, 주소록 또는 연락처 목록(예컨대, 메모리(102) 또는 메모리(370) 내의 연락처 모듈(137)에 저장됨)을 관리하는 데 사용된다: 이름(들)을 주소록에 추가하는 것; 주소록으로부터 이름(들)을 삭제하는 것; 전화번호(들), 이메일 주소(들), 물리적 주소(들) 또는 다른 정보를 이름과 연관시키는 것; 이미지를 이름과 연관시키는 것; 이름들을 분류 및 정렬하는 것; 전화 모듈(138), 화상 회의 모듈(139), 이메일 클라이언트 모듈(140) 또는 IM 모듈(141)에 의한 통신을 개시하고/하거나 용이하게 하기 위해 전화번호들 또는 이메일 주소들을 제공하는 것 등.
RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 텍스트 입력 모듈(134)과 함께, 전화 모듈(138)은, 선택적으로, 전화번호에 대응하는 문자들의 시퀀스를 입력하고, 주소록(137) 내의 하나 이상의 전화번호에 액세스하고, 입력된 전화번호를 수정하고, 개별 전화번호를 다이얼링하고, 대화를 하고, 대화가 완료된 때 연결해제하거나 끊는 데 사용된다. 전술한 바와 같이, 무선 통신은 선택적으로 복수의 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 사용한다.
RF 회로부(108), 오디오 회로부(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 광학 센서(164), 광학 센서 제어기(158), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 연락처 목록(137) 및 전화 모듈(138)과 함께, 화상회의 모듈(139)은 사용자 지시들에 따라 사용자와 한 명 이상의 다른 참여자들 사이의 화상 회의를 개시, 수행 및 종료하도록 하는 실행가능한 명령어들을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 이메일 클라이언트 모듈(140)은 사용자 지시들에 응답하여 이메일을 작성, 전송, 수신, 및 관리하도록 하는 실행가능한 명령어들을 포함한다. 이미지 관리 모듈(144)과 함께, 이메일 클라이언트 모듈(140)은 카메라 모듈(143)로 촬영된 정지 또는 비디오 이미지들을 갖는 이메일을 생성 및 전송하는 것을 매우 용이하게 한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 인스턴트 메시징 모듈(141)은, 인스턴트 메시지에 대응하는 문자들의 시퀀스를 입력하고, 이전에 입력된 문자들을 수정하고, (예를 들어, 전화 기반 인스턴트 메시지들을 위한 단문자 메시지 서비스(Short Message Service, SMS) 또는 멀티미디어 메시지 서비스(Multimedia Message Service, MMS) 프로토콜을 이용하거나, 인터넷 기반 인스턴트 메시지들을 위한 XMPP, SIMPLE 또는 IMPS를 이용하여) 개별 인스턴트 메시지를 송신하고, 인스턴트 메시지들을 수신하고, 수신된 인스턴트 메시지들을 보도록 하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 송신 및/또는 수신된 인스턴트 메시지들은 선택적으로 그래픽, 사진, 오디오 파일, 비디오 파일 및/또는 MMS 및/또는 EMS(Enhanced Messaging Service)에서 지원되는 바와 같은 다른 첨부물들을 포함한다. 본 명세서에 사용되는 바와 같이, "인스턴트 메시징"은 전화-기반 메시지들(예를 들어, SMS 또는 MMS를 이용하여 전송된 메시지들) 및 인터넷-기반 메시지들(예를 들어, XMPP, SIMPLE 또는 IMPS를 이용하여 전송된 메시지들) 양쪽 모두를 지칭한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 지도 모듈(154), 및 비디오 및 음악 재생기 모듈(146)과 함께, 피트니스 모듈(142)은 (예컨대, 시간, 거리, 및/또는 열량 소비 목표와 함께) 운동들을 고안하고, 운동 센서들(시계 또는 보수계와 같은 스포츠 디바이스들)과 통신하고, 운동 센서 데이터를 수신하고, 운동을 모니터링하는 데 사용되는 센서들을 교정하고, 운동을 위한 음악을 선택 및 재생하고, 운동 데이터를 디스플레이, 저장 및 송신하도록 하는 실행가능한 명령어들을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 광학 센서(들)(164), 광학 센서 제어기(158), 접촉 모듈(130), 그래픽 모듈(132) 및 이미지 관리 모듈(144)과 함께, 카메라 모듈(143)은, 정지 이미지들 또는 비디오(비디오 스트림을 포함함)를 캡처하고 이들을 메모리(102) 내에 저장하거나, 정지 이미지 또는 비디오의 특성들을 수정하거나, 또는 메모리(102)로부터 정지 이미지 또는 비디오를 삭제하도록 하는 실행가능한 명령어들을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 카메라 모듈(143)과 함께, 이미지 관리 모듈(144)은 정지 및/또는 비디오 이미지들을 배열하거나, 수정(예컨대, 편집)하거나, 또는 달리 조작하고, 라벨링하고, 삭제하고, (예컨대, 디지털 슬라이드 쇼 또는 앨범에) 제시하고, 저장하도록 하는 실행가능한 명령어들을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 브라우저 모듈(147)은, 웹 페이지들 또는 이들의 부분들은 물론 웹 페이지들에 링크된 첨부물들 및 다른 파일들을 검색하고, 그에 링크하며, 수신하고, 디스플레이하는 것을 포함하는, 사용자 지시들에 따라 인터넷을 브라우징하도록 하는 실행가능한 명령어들을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 캘린더 모듈(148)은 사용자 지시들에 따라 캘린더들 및 캘린더들과 연관된 데이터(예컨대, 캘린더 엔트리들, 할 일 목록들 등)를 생성, 디스플레이, 수정, 및 저장하도록 하는 실행가능한 명령어들을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 모듈들(149)은 선택적으로 사용자에 의해 다운로드되어 사용되거나(예컨대, 날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4) 및 사전 위젯(149-5)) 또는 사용자에 의해 생성되는(예컨대, 사용자-생성 위젯(149-6)) 미니 애플리케이션들이다. 일부 실시예들에서, 위젯은 HTML(Hypertext Markup Language) 파일, CSS(Cascading Style Sheets) 파일 및 자바스크립트(JavaScript) 파일을 포함한다. 일부 실시예들에서, 위젯은 XML(Extensible Markup Language) 파일 및 자바스크립트 파일(예컨대, 야후(Yahoo)! 위젯들)을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 생성기 모듈(도시되지 않음)은 사용자에 의해 위젯들을 생성(예를 들면, 웹페이지의 사용자-특정된 부분을 위젯으로 변환)하는 데 선택적으로 사용된다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 검색 모듈(151)은 사용자 지시들에 따라 하나 이상의 검색 기준(예컨대, 하나 이상의 사용자-특정된 검색 용어)에 매칭되는 메모리(102) 내의 텍스트, 음악, 사운드, 이미지, 비디오, 및/또는 다른 파일들을 검색하도록 하는 실행가능한 명령어들을 포함한다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108) 및 브라우저 모듈(147)과 함께, 비디오 및 음악 재생기 모듈(152)은, 사용자가 MP3 또는 AAC 파일들과 같은 하나 이상의 파일 포맷으로 저장된 녹음된 음악 및 다른 사운드 파일들을 다운로드 및 재생할 수 있도록 하는 실행가능한 명령어들, 및 비디오들을 (예컨대, 터치 스크린(112) 상에서 또는 외부 포트(124)를 통해 외부의 연결된 디스플레이 상에서) 디스플레이하거나, 상영하거나, 또는 달리 재생하도록 하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 디바이스(100)는 선택적으로 애플 인크.로부터의 아이팟과 같은 MP3 플레이어의 기능을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 메모 모듈(153)은 사용자 지시들에 따라 메모들, 할 일 목록들 등을 생성 및 관리하도록 하는 실행가능한 명령어들을 포함한다.
RF 회로부(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 및 브라우저 모듈(147)과 함께, 지도 모듈(154)은, 선택적으로, 사용자 지시들에 따라 지도들 및 지도들과 연관된 데이터(예컨대, 운전 길 안내; 특정 위치에서의 또는 그 인근의 상점들 및 다른 관심 지점들에 관한 데이터; 및 다른 위치 기반 데이터)를 수신, 디스플레이, 수정, 및 저장하도록 하는 실행가능한 명령어들을 포함한다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로부(110), 스피커(111), RF 회로부(108), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140) 및 브라우저 모듈(147)과 함께, 온라인 비디오 모듈(155)은 사용자가 H.264와 같은 하나 이상의 파일 포맷의 온라인 비디오들에 액세스하고, 그들을 브라우징하고, (예컨대, 스트리밍 및/또는 다운로드에 의해) 수신하고, (예컨대, 터치 스크린 상에서 또는 외부 포트(124)를 통해 외부의 연결된 디스플레이 상에서) 재생하고, 특정한 온라인 비디오로의 링크와 함께 이메일을 전송하고, 달리 관리하게 하는 명령어들을 포함한다. 일부 실시예들에서, 이메일 클라이언트 모듈(140)보다는 오히려 인스턴트 메시징 모듈(141)이 특정 온라인 비디오로의 링크를 전송하는 데 사용된다.
도 1a에 도시된 바와 같이, 휴대용 다기능 디바이스(100)는 또한 디바이스(100) 상의 멀티태스킹 동작들을 관리하기 위한 멀티태스킹 모듈(180)을 포함한다(예컨대, 동시에 디스플레이된 애플리케이션들을 위한 적절한 디스플레이 영역들을 결정하기 위해 그래픽 모듈(132)과 통신함). 멀티태스킹 모듈(180)은, 선택적으로, 하기의 모듈들(또는 명령어들의 세트들), 또는 이들의 서브세트 또는 수퍼세트를 포함한다:
Figure pct00017
애플리케이션 선택기(182);
Figure pct00018
호환성 모듈(184);
Figure pct00019
PIP(picture-in-picture)/오버레이 모듈(186); 및
Figure pct00020
사용자의 멀티태스킹 이력에 관한 정보를 저장하기 위한 멀티태스킹 이력(188)(예컨대, 멀티태스킹 모드에서 통상적으로-사용되는 애플리케이션들, 멀티태스킹 모드에 있는 동안 애플리케이션들에 대한 최근 디스플레이 영역들, 분할-뷰/멀티태스킹 모드에서 디스플레이하기 위해 함께 고정되는 애플리케이션들 등).
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 접촉 세기 센서(들)(165)와 함께, 애플리케이션 선택기(182)는 애플리케이션들(예컨대, 애플리케이션들(136) 중 하나 이상)에 대응하는 어포던스들을 디스플레이하고, 디바이스(100)의 사용자들이 멀티태스킹/분할-뷰 모드(예컨대, 하나 초과의 애플리케이션이 동시에 터치 스크린(112) 상에서 디스플레이되고 활성인 모드)에서 사용하기 위한 어포던스들을 선택하게 하는 실행가능한 명령어들을 포함한다. 일부 실시예들에서, 애플리케이션 선택기(182)는 도크(예를 들어, 후술되는 도크(408))이다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 애플리케이션 선택기(182)와 함께, 호환성 모듈(184)은 (예컨대, 도 1b에 도시된 바와 같이, 각각의 애플리케이션(136)에 대한 멀티태스킹 데이터(176)와 함께 저장된 플래그와 같은 플래그를 체크함으로써) 특정 애플리케이션이 멀티태스킹 모드와 호환가능한지 여부를 결정하게 하는 실행가능한 명령어들을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 접촉 세기 센서(들)(165), PIP/오버레이 모듈(186)은 다른 애플리케이션에 오버레이하는 것으로서 디스플레이될 애플리케이션들에 대한 감소된 크기들을 결정하고, 감소된 크기의 애플리케이션을 디스플레이하기 위한 터치 스크린(112) 상의 적절한 위치(예컨대, 축소된 크기의 애플리케이션에 의해 오버레이될 활성 애플리케이션 내의 중요한 콘텐츠를 피하는 위치)를 결정하게 하는 실행가능한 명령어들을 포함한다.
앞서 식별된 모듈들 및 애플리케이션들 각각은 전술된 하나 이상의 기능들 및 본 출원에 기술되는 방법들(예컨대, 본 명세서에 기술되는 컴퓨터 구현 방법들 및 다른 정보 프로세싱 방법들)을 수행하기 위한 실행가능 명령어들의 세트에 대응한다. 이들 모듈들(예컨대, 명령어들의 세트들)은 개별 소프트웨어 프로그램들, 절차들 또는 모듈들로서 구현될 필요가 없으며, 이에 따라 이들 모듈들의 다양한 서브세트들은, 선택적으로, 다양한 실시예들에서 조합되거나 다른 방식으로 재배열된다. 일부 실시예들에서, 메모리(102)는 선택적으로, 앞서 식별된 모듈들 및 데이터 구조들의 서브세트를 저장한다. 또한, 메모리(102)는, 선택적으로, 전술되지 않은 추가의 모듈들 및 데이터 구조들을 저장한다.
일부 실시예들에서, 디바이스(100)는 디바이스 상의 미리정의된 세트의 기능들의 동작이 터치 스크린 및/또는 터치패드를 통해 전용으로 수행되는 디바이스이다. 터치 스크린 및/또는 터치패드를 디바이스(100)의 동작을 위한 주 입력 제어 디바이스로서 사용함으로써, 디바이스(100) 상의 (푸시 버튼들, 다이얼들 등과 같은) 물리적 입력 제어 디바이스들의 수가 선택적으로 감소된다.
전적으로 터치 스크린 및/또는 터치패드를 통해 수행되는 미리정의된 세트의 기능들은, 선택적으로, 사용자 인터페이스들 간의 내비게이션을 포함한다. 일부 실시예들에서, 터치패드는, 사용자에 의해 터치될 때, 디바이스(100)를 디바이스(100) 상에 디스플레이되는 임의의 사용자 인터페이스로부터 메인, 홈 또는 루트 메뉴로 내비게이팅한다. 일부 실시예들에서, "메뉴 버튼"이 터치 패드를 사용하여 구현된다. 일부 다른 실시예들에서, 메뉴 버튼은 터치패드 대신에 물리적 푸시 버튼 또는 다른 물리적 입력 제어 디바이스이다.
도 1b는 일부 실시예들에 따른, 이벤트 처리를 위한 예시적인 컴포넌트들을 예시하는 블록도이다. 일부 실시예들에서, (도 1a에서의) 메모리(102)는 (예컨대, 운영 체제(126)에서의) 이벤트 분류기(170) 및 휴대용 다기능 디바이스(100)(도 1a)의 애플리케이션들(136) 중에서 선택된 각각의 애플리케이션(136-1)(예컨대, 애플리케이션들(136)로 메모리(102)에 저장된 전술한 애플리케이션들 중 임의의 것)을 포함한다.
이벤트 분류기(170)는 이벤트 정보를 수신하고, 이벤트 정보를 전달할 애플리케이션(136-1), 및 애플리케이션(136-1)의 애플리케이션 뷰(175)를 결정한다. 이벤트 분류기(170)는 이벤트 모니터(171) 및 이벤트 디스패처 모듈(event dispatcher module)(174)을 포함한다. 일부 실시예들에서, 애플리케이션(136-1)은 애플리케이션이 활성이거나 실행 중일 때 터치 감응형 디스플레이(112) 상에 디스플레이되는 현재 애플리케이션 뷰(들)를 나타내는 애플리케이션 내부 상태(192)를 포함한다. 일부 실시예들에서, 디바이스/글로벌 내부 상태(157)는 이벤트 분류기(170)에 의해 어느 애플리케이션(들)이 현재 활성인지 결정하는 데 이용되며, 애플리케이션 내부 상태(192)는 이벤트 분류기(170)에 의해 이벤트 정보를 전달할 애플리케이션 뷰들(175)을 결정하는 데 이용된다.
일부 실시예들에서, 애플리케이션 내부 상태(192)는 애플리케이션(136-1)이 실행을 재개할 때 이용될 재개 정보, 애플리케이션(136-1)에 의해 디스플레이되고 있거나 디스플레이될 준비가 된 정보를 나타내는 사용자 인터페이스 상태 정보, 사용자가 애플리케이션(136-1)의 이전 상태 또는 뷰로 되돌아가는 것을 가능하게 하기 위한 상태 큐(queue), 및 사용자에 의해 취해진 이전 액션들의 재실행(redo)/실행취소(undo) 큐 중 하나 이상과 같은 추가 정보를 포함한다. 일부 실시예들에서, 애플리케이션 내부 상태(192)는 멀티태스킹 모듈(180)에 의해 멀티태스킹 동작들을 용이하게 하는 것을 돕는 데 이용된다(예컨대, 멀티태스킹 모듈(180)은 이전에 해제된 측의 애플리케이션을 재디스플레이하기 위해 애플리케이션 내부 상태(192)로부터 재개 정보를 인출한다).
일부 실시예들에서, 각각의 애플리케이션(136-1)은 멀티태스킹 데이터(176)를 저장한다. 일부 실시예들에서, 멀티태스킹 데이터(176)는 호환성 플래그(예컨대, 특정 애플리케이션이 멀티태스킹 모드와 호환가능한지 여부를 결정하기 위해 호환성 모듈(184)에 의해 액세스되는 플래그), 멀티태스킹 모드(예컨대, 1/4, 1/3, 1/2, 또는 풀스크린)에서 애플리케이션(136-1)을 디스플레이하기 위한 호환가능한 크기들의 목록, 및 다양한 크기의 그래픽(예컨대, 호환가능한 크기들의 목록 내의 각각의 크기에 대한 상이한 그래픽)을 포함한다.
이벤트 모니터(171)는 주변기기 인터페이스(118)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트(예를 들어, 다중 터치 제스처의 일부로서 터치 감응형 디스플레이(112) 상에서의 사용자 터치)에 대한 정보를 포함한다. 주변기기 인터페이스(118)는 I/O 서브시스템(106) 또는 센서, 예컨대, 근접 센서(166), 가속도계(들)(168), 및/또는 (오디오 회로부(110)를 통한) 마이크로폰(113)으로부터 수신하는 정보를 송신한다. 주변기기 인터페이스(118)가 I/O 서브시스템(106)으로부터 수신하는 정보는 터치 감응형 디스플레이(112) 또는 터치 감응형 표면으로부터의 정보를 포함한다.
일부 실시예들에서, 이벤트 모니터(171)는 요청들을 미리결정된 간격으로 주변기기 인터페이스(118)에 전송한다. 이에 응답하여, 주변기기 인터페이스(118)는 이벤트 정보를 송신한다. 다른 실시예들에서, 주변기기 인터페이스(118)는 중요한 이벤트(예컨대, 미리결정된 잡음 임계치를 초과하는 입력 및/또는 미리결정된 지속기간 초과 동안의 입력을 수신하는 것)가 있을 때에만 이벤트 정보를 송신한다.
일부 실시예들에서, 이벤트 분류기(170)는 또한 히트 뷰(hit view) 결정 모듈(172) 및/또는 활성 이벤트 인식기 결정 모듈(173)을 포함한다.
히트 뷰 결정 모듈(172)은 터치 감응형 디스플레이(112)가 하나 초과의 뷰를 디스플레이할 때 하나 이상의 뷰들 내에서 서브이벤트가 발생한 곳을 결정하기 위한 소프트웨어 절차들을 제공한다. 뷰들은 사용자가 디스플레이 상에서 볼 수 있는 제어부들 및 다른 요소들로 구성된다.
애플리케이션과 연관된 사용자 인터페이스의 다른 양태는 본 명세서에서 때때로 애플리케이션 뷰들 또는 사용자 인터페이스 창(user interface window)들로 지칭되는 한 세트의 뷰들인데, 여기서 정보가 디스플레이되고 터치 기반 제스처가 발생한다. 터치가 검출되는 (개개의 애플리케이션의) 애플리케이션 뷰들은 선택적으로 애플리케이션의 프로그램 또는 뷰 계층구조 내의 프로그램 레벨들에 대응한다. 예를 들어, 터치가 검출되는 최하위 레벨의 뷰는 선택적으로 히트 뷰로 지칭되고, 적절한 입력들로서 인식되는 이벤트들의 세트는, 선택적으로, 터치 기반 제스처를 시작하는 초기 터치의 히트 뷰에 적어도 부분적으로 기초하여 결정된다.
히트 뷰 결정 모듈(172)은 터치 기반 제스처의 서브이벤트들에 관련된 정보를 수신한다. 애플리케이션이 계층구조에서 조직화된 다수의 뷰들을 갖는 경우, 히트 뷰 결정 모듈(172)은 히트 뷰를, 서브이벤트를 처리해야 하는 계층구조 내의 최하위 뷰로서 식별한다. 대부분의 상황들에서, 히트 뷰는 개시되는 서브이벤트(예컨대, 이벤트 또는 잠재적 이벤트를 형성하는 서브이벤트들의 시퀀스에서의 제1 서브이벤트)가 발생하는 최하위 레벨 뷰이다. 일단 히트 뷰가 히트 뷰 결정 모듈에 의해 식별되면, 히트 뷰는 전형적으로 그것이 히트 뷰로서 식별되게 하는 것과 동일한 터치 또는 입력 소스에 관련된 모든 서브이벤트들을 수신한다.
활성 이벤트 인식기 결정 모듈(173)은 뷰 계층구조 내에서 어느 뷰 또는 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는지를 결정한다. 일부 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 히트 뷰만이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 활성 이벤트 인식기 결정 모듈(173)은 서브이벤트의 물리적 위치를 포함하는 모든 뷰들이 적극 참여 뷰(actively involved view)들인 것으로 결정하고, 그에 따라 모든 적극 참여 뷰들이 서브이벤트들의 특정 시퀀스를 수신해야 하는 것으로 결정한다. 다른 실시예들에서, 터치 서브이벤트들이 전적으로 하나의 특정 뷰와 연관된 영역으로 한정되었더라도, 계층구조 내의 상위 뷰들은 여전히 적극 참여 뷰들로서 유지될 것이다.
이벤트 디스패처 모듈(174)은 이벤트 정보를 이벤트 인식기(예컨대, 이벤트 인식기(178))에 디스패치한다. 활성 이벤트 인식기 결정 모듈(173)을 포함하는 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 정보를 활성 이벤트 인식기 결정 모듈(173)에 의해 결정된 이벤트 인식기에 전달한다. 일부 실시예들에서, 이벤트 디스패처 모듈(174)은 이벤트 큐 내에 이벤트 정보를 저장하는데, 이벤트 정보는 개개의 이벤트 수신기(181)에 의해 인출된다.
일부 실시예들에서, 운영 체제(126)는 이벤트 분류기(170)를 포함한다. 대안적으로, 애플리케이션(136-1)은 이벤트 분류기(170)를 포함한다. 또 다른 실시예들에서, 이벤트 분류기(170)는 독립형 모듈이거나, 또는 접촉/모션 모듈(130)과 같이 메모리(102)에 저장되는 다른 모듈의 일부이다.
일부 실시예들에서, 애플리케이션(136-1)은 복수의 이벤트 핸들러들(177) 및 하나 이상의 애플리케이션 뷰들(175)을 포함하며, 이들의 각각은 애플리케이션의 사용자 인터페이스의 각각의 뷰 내에 발생하는 터치 이벤트들을 처리하기 위한 명령어들을 포함한다. 애플리케이션(136-1)의 각각의 애플리케이션 뷰(175)는 하나 이상의 이벤트 인식기들(180)을 포함한다. 전형적으로, 개개의 애플리케이션 뷰(175)는 복수의 이벤트 인식기들(180)을 포함한다. 다른 실시예들에서, 이벤트 인식기들(180) 중 하나 이상은 사용자 인터페이스 키트(도시되지 않음) 또는 애플리케이션(136-1)이 방법들 및 다른 속성들을 물려받는 상위 레벨 객체와 같은 별개의 모듈의 일부이다. 일부 실시예들에서, 각각의 이벤트 핸들러(177)는 데이터 업데이터(177-1), 객체 업데이터(177-2), GUI 업데이터(177-3), 및/또는 이벤트 분류기(170)로부터 수신된 이벤트 데이터(179) 중 하나 이상을 포함한다. 이벤트 핸들러(177)는 선택적으로 데이터 업데이터(177-1), 객체 업데이터(177-2) 또는 GUI 업데이터(177-3)를 이용하거나 호출하여 애플리케이션 내부 상태(192)를 업데이트한다. 대안적으로, 애플리케이션 뷰들(175) 중 하나 이상은 하나 이상의 개개의 이벤트 핸들러들(177)을 포함한다. 또한, 일부 실시예들에서, 데이터 업데이터(177-1), 객체 업데이터(177-2), 및 GUI 업데이터(177-3) 중 하나 이상은 개개의 애플리케이션 뷰(175) 내에 포함된다.
개개의 이벤트 인식기(178)는 이벤트 분류기(170)로부터 이벤트 정보(예컨대, 이벤트 데이터(179))를 수신하고 그 이벤트 정보로부터 이벤트를 식별한다. 이벤트 인식기(178)는 이벤트 수신기(181) 및 이벤트 비교기(183)를 포함한다. 일부 실시예들에서, 이벤트 인식기(178)는 또한 적어도 메타데이터(189) 및 이벤트 전달 명령어들(190)(선택적으로 서브이벤트 전달 명령어들을 포함함)의 서브세트를 포함한다.
이벤트 수신기(181)는 이벤트 분류기(170)로부터 이벤트 정보를 수신한다. 이벤트 정보는 서브이벤트, 예를 들어 터치 또는 터치 이동에 관한 정보를 포함한다. 서브이벤트에 따라서, 이벤트 정보는 또한 서브이벤트의 위치와 같은 추가 정보를 포함한다. 서브이벤트가 터치의 모션과 관련되는 경우, 이벤트 정보는 또한 선택적으로 서브이벤트의 속력 및 방향을 포함한다. 일부 실시예들에서, 이벤트들은 하나의 배향으로부터 다른 배향으로(예컨대, 세로로부터 가로로, 또는 그 반대로)의 디바이스의 회전을 포함하며, 이벤트 정보는 디바이스의 현재 배향(디바이스 자세로도 지칭됨)에 관한 대응하는 정보를 포함한다.
이벤트 비교기(183)는 이벤트 정보를 미리정의된 이벤트 또는 서브이벤트 정의들과 비교하고, 그 비교에 기초하여, 이벤트 또는 서브이벤트를 결정하거나, 이벤트 또는 서브이벤트의 상태를 결정 또는 업데이트한다. 일부 실시예들에서, 이벤트 비교기(183)는 이벤트 정의들(185)을 포함한다. 이벤트 정의들(185)은 이벤트들(예컨대, 서브이벤트들의 미리정의된 시퀀스들), 예를 들어 이벤트 1(187-1), 이벤트 2(187-2) 등의 정의들을 포함한다. 일부 실시예들에서, 이벤트(187) 내의 서브이벤트들은, 예를 들어, 터치 시작, 터치 종료, 터치 이동, 터치 취소, 및 다중 터치를 포함한다. 일례에서, 이벤트 1(187-1)에 대한 정의는 디스플레이된 객체 상에의 더블 탭이다. 더블 탭은, 예를 들면 미리결정된 페이즈(phase) 동안의 디스플레이된 객체 상의 제1 터치(터치 시작), 미리결정된 페이즈 동안의 제1 리프트오프(터치 종료), 미리결정된 페이즈 동안의 디스플레이된 객체 상의 제2 터치(터치 시작), 및 미리결정된 페이즈 동안의 제2 리프트오프(터치 종료)를 포함한다. 다른 예에서, 이벤트 2(187-2)에 대한 정의는 디스플레이된 객체 상에의 드래깅이다. 드래깅은, 예를 들어 미리결정된 페이즈 동안의 디스플레이된 객체 상에서의 터치(또는 접촉), 터치 감응형 디스플레이(112)를 가로지르는 터치의 이동, 및 터치의 리프트 오프(터치 종료)를 포함한다. 일부 실시예들에서, 이벤트는 또한 하나 이상의 연관된 이벤트 핸들러들(177)에 대한 정보를 포함한다.
일부 실시예들에서, 이벤트 정의(186)는 개개의 사용자 인터페이스 객체에 대한 이벤트의 정의를 포함한다. 일부 실시예들에서, 이벤트 비교기(183)는 어느 사용자 인터페이스 객체가 서브이벤트와 연관되는지 결정하도록 히트 테스트(hit test)를 수행한다. 예를 들어, 3개의 사용자 인터페이스 객체들이 터치 감응형 디스플레이(112) 상에 디스플레이된 애플리케이션 뷰에서, 터치 감응형 디스플레이(112) 상에서 터치가 검출되는 경우, 이벤트 비교기(183)는 3개의 사용자 인터페이스 객체들 중 어느 것이 터치(서브이벤트)와 연관되어 있는지를 결정하도록 히트 테스트를 수행한다. 각각의 디스플레이된 객체가 개개의 이벤트 핸들러(177)와 연관되는 경우, 이벤트 비교기는 어느 이벤트 핸들러(177)가 활성화되어야 하는지 결정하는 데 히트 테스트의 결과를 이용한다. 예를 들어, 이벤트 비교기(183)는 히트 테스트를 트리거하는 객체 및 서브이벤트와 연관된 이벤트 핸들러를 선택한다.
일부 실시예들에서, 개개의 이벤트(187)에 대한 정의는 또한 서브이벤트들의 시퀀스가 이벤트 인식기의 이벤트 유형에 대응하는지 대응하지 않는지 여부가 결정된 후까지 이벤트 정보의 전달을 지연시키는 지연된 동작들을 포함한다.
개개의 이벤트 인식기(178)가 일련의 서브이벤트들이 이벤트 정의들(185) 내의 이벤트들 중 어떠한 것과도 매칭되지 않는 것으로 결정하면, 개개의 이벤트 인식기(178)는 이벤트 불가능, 이벤트 실패, 또는 이벤트 종료 상태에 진입하고, 그 후 개개의 이벤트 인식기는 터치 기반 제스처의 후속적인 서브이벤트들을 무시한다. 이러한 상황에서, 만일 있다면, 히트 뷰에 대해 활성 상태로 유지되는 다른 이벤트 인식기들이 진행 중인 터치 기반 제스처의 서브이벤트들을 계속해서 추적 및 프로세싱한다.
일부 실시예들에서, 개개의 이벤트 인식기(178)는 이벤트 전달 시스템이 어떻게 적극 참여 이벤트 인식기들에 대한 서브이벤트 전달을 수행해야 하는지를 나타내는 구성가능한 속성들, 플래그들, 및/또는 목록들을 갖는 메타데이터(189)를 포함한다. 일부 실시예들에서, 메타데이터(189)는 이벤트 인식기들이 어떻게 서로 상호작용하는지, 또는 상호작용하게 되는지를 나타내는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다. 일부 실시예들에서, 메타데이터(189)는, 서브이벤트들이 뷰 또는 프로그램 계층구조에서의 다양한 레벨들에 전달되는지 여부를 나타내는 구성가능한 속성들, 플래그들, 및/또는 목록들을 포함한다.
일부 실시예들에서, 개개의 이벤트 인식기(178)는 이벤트의 하나 이상의 특정 서브이벤트들이 인식될 때 이벤트와 연관된 이벤트 핸들러(177)를 활성화한다. 일부 실시예들에서, 개개의 이벤트 인식기(178)는 이벤트와 연관된 이벤트 정보를 이벤트 핸들러(177)에 전달한다. 이벤트 핸들러(177)를 활성화하는 것은 개개의 히트 뷰에 서브이벤트들을 전송(및 지연 전송)하는 것과는 별개이다. 일부 실시예들에서, 이벤트 인식기(178)는 인식된 이벤트와 연관된 플래그를 보내고, 그 플래그와 연관된 이벤트 핸들러(177)는 그 플래그를 캐치하고 미리정의된 프로세스를 수행한다.
일부 실시예들에서, 이벤트 전달 명령어들(190)은 이벤트 핸들러를 활성화하지 않으면서 서브이벤트에 관한 이벤트 정보를 전달하는 서브이벤트 전달 명령어들을 포함한다. 대신에, 서브이벤트 전달 명령어들은 일련의 서브이벤트들과 연관된 이벤트 핸들러들에 또는 적극 참여 뷰들에 이벤트 정보를 전달한다. 일련의 서브이벤트들 또는 적극 참여 뷰들과 연관된 이벤트 핸들러들은 이벤트 정보를 수신하고 미리결정된 프로세스를 수행한다.
일부 실시예들에서, 데이터 업데이터(177-1)는 애플리케이션(136-1)에서 이용되는 데이터를 생성 및 업데이트한다. 예를 들어, 데이터 업데이터(177-1)는 연락처 모듈(137)에서 이용되는 전화번호를 업데이트하거나, 비디오 및 음악 재생기 모듈(145)에서 이용되는 비디오 파일을 저장한다. 일부 실시예들에서, 객체 업데이터(177-2)는 애플리케이션(136-1)에서 이용되는 객체들을 생성 및 업데이트한다. 예를 들어, 객체 업데이터(177-2)는 새로운 사용자 인터페이스 객체를 생성하거나, 또는 사용자 인터페이스 객체의 위치를 업데이트한다. GUI 업데이터(177-3)는 GUI를 업데이트한다. 예를 들어, GUI 업데이터(177-3)는 터치 감응형 디스플레이 상의 디스플레이를 위해 디스플레이 정보를 준비하고 이를 그래픽 모듈(132)에 전송한다. 일부 실시예들에서, GUI 업데이터(177-3)는 멀티태스킹 모드에서 디스플레이되는 다양한 애플리케이션들의 크기조정을 용이하게 하기 위해 멀티태스킹 모듈(180)과 통신한다.
일부 실시예들에서, 이벤트 핸들러(들)(177)는 데이터 업데이터(177-1), 객체 업데이터(177-2), 및 GUI 업데이터(177-3)를 포함하거나 이들에 액세스한다. 일부 실시예들에서, 데이터 업데이터(177-1), 객체 업데이터(177-2), 및 GUI 업데이터(177-3)는 개개의 애플리케이션(136-1) 또는 애플리케이션 뷰(175)의 단일 모듈 내에 포함된다. 다른 실시예들에서, 이들은 2개 이상의 소프트웨어 모듈들 내에 포함된다.
터치 감응형 디스플레이 상의 사용자 터치들의 이벤트 처리에 관하여 전술한 논의는 또한 입력 디바이스들을 갖는 다기능 디바이스들(100)을 동작시키기 위한 다른 형태들의 사용자 입력들에도 적용되지만, 그 모두가 터치 스크린들 상에서 개시되는 것이 아니라는 것을 이해해야 한다. 예를 들어, 단일 또는 다수의 키보드 누르기 또는 유지(hold)와 선택적으로 조화된 마우스 이동 및 마우스 버튼 누르기; 터치 패드 상에서의, 탭, 드래그, 스크롤 등과 같은 접촉 이동들; 펜 스타일러스 입력들; 디바이스의 이동; 구두 명령어들; 검출된 눈 이동들; 생체측정 입력들; 및/또는 이들의 임의의 조합은, 인식될 이벤트를 정의하는 서브이벤트들에 대응하는 입력들로서 선택적으로 이용된다.
도 1c는 일부 실시예들에 따른, 터치 감응형 디스플레이(예컨대, 터치 스크린(112))를 갖는 휴대용 다기능 디바이스(예컨대, 휴대용 다기능 디바이스(100))의 개략도이다. 터치 감응형 디스플레이는 선택적으로 사용자 인터페이스(UI)(201a) 내에 하나 이상의 그래픽을 디스플레이한다. 이러한 실시예에서뿐만 아니라 후술되는 다른 실시예들에서, 사용자는, 예를 들어 하나 이상의 손가락들 또는 하나 이상의 스타일러스들을 이용하여, 스크린 상에서 제스처를 행함으로써 그래픽들 중 하나 이상을 선택할 수 있다. 일부 실시예들에서, 하나 이상의 그래픽들의 선택은 사용자가 하나 이상의 그래픽들과의 접촉을 중단할 때 (예컨대, 손가락을 스크린에서 리프트오프함으로써) 발생한다. 일부 실시예들에서, 제스처는 선택적으로, 디바이스(100)와 접촉한 손가락의 하나 이상의 탭 제스처들(예컨대, 스크린 상의 터치들 및 그에 뒤이은 리프트오프들의 시퀀스), 하나 이상의 스와이프 제스처들(스크린의 표면을 따른 제스처 동안의 연속 접촉, 예컨대, 좌측에서 우측으로의, 우측에서 좌측으로의, 상향으로의 그리고/또는 하향으로의), 및/또는 롤링(예컨대, 우측에서 좌측으로의, 좌측에서 우측으로의, 상향으로의 그리고/또는 하향으로의)을 포함한다. 일부 구현예들 또는 상황들에서, 그래픽과 부주의하여 접촉되면 그 그래픽은 선택되지 않는다. 예를 들면, 애플리케이션을 개시하기 위한 제스처가 탭 제스처일 때, 애플리케이션 어포던스(예컨대, 아이콘) 위를 스윕(sweep)하는 스와이프 제스처는 선택적으로, 대응하는 애플리케이션을 개시하지(예컨대, 열지) 않는다.
디바이스(100)는 또한 선택적으로 "홈" 또는 메뉴 버튼(204)과 같은 하나 이상의 물리적 버튼들을 포함한다. 전술된 바와 같이, 메뉴 버튼(204)은 선택적으로, 디바이스(100) 상에서 선택적으로 실행되는 애플리케이션들의 세트 내의 임의의 애플리케이션(136)으로 내비게이팅하는 데 사용된다. 대안적으로, 일부 실시예들에서, 메뉴 버튼은 터치 스크린(112) 상에 디스플레이된 GUI에서 소프트 키로서 구현된다. 홈 버튼(204)의 추가적인 상세사항들 및 대안적인 구성들이 또한 아래의 도 5j를 참조하여 아래에 제공된다.
일 실시예에서, 디바이스(100)는 터치 스크린(112), 메뉴 버튼(204), 디바이스의 전원을 온/오프하고 디바이스를 잠그기 위한 푸시 버튼(206), 볼륨 조절 버튼(들)(208), 가입자 식별 모듈(SIM) 카드 슬롯(210), 헤드셋 잭(212), 및 도킹/충전 외부 포트(124)를 포함한다. 푸시 버튼(206)은 선택적으로, 버튼을 누르고 버튼을 미리정의된 시간 간격 동안 누른 상태로 유지함으로써 디바이스의 전원을 온/오프시키고/시키거나; 버튼을 누르고 미리정의된 시간 간격이 경과하기 전에 버튼을 누름해제함으로써 디바이스를 잠그고/잠그거나; 디바이스를 잠금해제하거나 잠금해제 프로세스를 개시하는 데 사용된다. 대안적인 실시예에서, 디바이스(100)는 또한 마이크로폰(113)을 통해 일부 기능들의 활성화 또는 비활성화를 위한 구두 입력을 수용한다. 디바이스(100)는 또한, 선택적으로, 터치 스크린(112) 상에서의 접촉들의 세기를 검출하기 위한 하나 이상의 접촉 세기 센서들(165) 및/또는 디바이스(100)의 사용자를 위해 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기들(167)을 포함한다.
도 1d는 디스플레이(194)(예컨대, 터치 스크린(112))와는 별개인 터치 감응형 표면(195)(예컨대, 태블릿 또는 터치패드)을 갖는 디바이스(예컨대, 도 1a의 디바이스(100)) 상의 사용자 인터페이스를 예시하기 위해 사용되는 개략도이다. 일부 실시예들에서, 터치 감응형 표면(195)은, 터치 감응형 표면(195) 상의 접촉들의 세기를 검출하기 위한 하나 이상의 접촉 세기 센서들(예컨대, 접촉 세기 센서(들)(359) 중 하나 이상) 및/또는 터치 감응형 표면(195)의 사용자에 대한 촉각적 출력들을 생성하기 위한 하나 이상의 촉각적 출력 생성기(들)(357)를 포함한다.
후속하는 예들 중 일부가 (터치 감응형 표면과 디스플레이가 조합된) 터치 스크린(112) 상의 입력들을 참조하여 제공될 것이지만, 일부 실시예들에서, 디바이스는 도 1d에 도시된 바와 같이 디스플레이와 별개인 터치 감응형 표면 상의 입력들을 검출한다. 일부 실시예들에서, 터치 감응형 표면(예컨대, 도 1d의 195)은 디스플레이(예컨대, 194) 상의 주축(예컨대, 도 1d의 198)에 대응하는 주축(예컨대, 도 1d의 199)을 갖는다. 이러한 실시예들에 따르면, 디바이스는 디스플레이 상의 각각의 위치들에 대응하는 위치들(예컨대, 도 1d에서, 197-1은 196-1에 대응하고, 197-2는 196-2에 대응함)에서 터치 감응형 표면(195)과의 접촉들(예컨대, 도 1d의 197-1 및 197-2)을 검출한다. 이러한 방식으로, 터치 감응형 표면(예컨대, 도 1d의 195) 상에서 디바이스에 의해 검출된 사용자 입력들(예컨대, 접촉들(197-1, 197-2) 및 그의 이동들)은 터치 감응형 표면이 디스플레이와 별개일 때 디바이스에 의해 다기능 디바이스의 디스플레이(예컨대, 도 1d의 194) 상의 사용자 인터페이스를 조작하는 데 사용된다. 유사한 방법들이, 선택적으로, 본 명세서에 기술된 다른 사용자 인터페이스들에 이용된다는 것이 이해되어야 한다.
추가로, 하기의 예들이 손가락 입력들(예컨대, 손가락 접촉들, 손가락 탭 제스처들, 손가락 스와이프 제스처들)을 주로 참조하여 주어지는 반면, 일부 실시예들에서, 손가락 입력들 중 하나 이상은 다른 입력 디바이스로부터의 입력(예컨대, 마우스 기반 입력 또는 스타일러스 입력)으로 대체된다는 것이 이해되어야 한다. 예컨대, 스와이프 제스처는, 선택적으로, 마우스 클릭(예컨대, 접촉 대신) 및 뒤이은 스와이프의 경로를 따른 커서의 이동(예컨대, 접촉의 이동 대신)으로 대체된다. 다른 예로서, (예컨대, 접촉의 검출에 이어 접촉을 검출하는 것을 중지하는 것 대신에) 커서가 탭 제스처의 위치 위에 위치되어 있는 동안에 탭 제스처가 선택적으로 마우스 클릭으로 대체된다. 유사하게, 다수의 사용자 입력들이 동시에 검출되는 경우, 다수의 컴퓨터 마우스들이 선택적으로 동시에 사용되거나, 또는 마우스와 손가락 접촉들이 선택적으로 동시에 사용된다는 것이 이해되어야 한다.
본 명세서에 사용되는 바와 같이, 용어 "포커스 선택자(focus selector)"는 사용자가 상호작용하고 있는 사용자 인터페이스의 현재 부분을 나타내는 입력 요소를 지칭한다. 커서 또는 다른 위치 마커(location marker)를 포함하는 일부 구현예들에서, 커서는 "포커스 선택자"로서 작용하여, 커서가 특정 사용자 인터페이스 요소(예컨대, 버튼, 창, 슬라이더 또는 다른 사용자 인터페이스 요소) 위에 있는 동안 터치 감응형 표면(예컨대, 도 1d의 터치 감응형 표면(195)(터치 감응형 표면(195)은 일부 실시예들에서 터치패드임)) 상에서 입력(예컨대, 누르기 입력)이 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되게 된다. 터치 스크린 디스플레이 상의 사용자 인터페이스 요소들과의 직접적인 상호작용을 가능하게 하는 터치 스크린 디스플레이(예컨대, 도 1a의 터치 감응형 디스플레이 시스템(112) 또는 터치 스크린(112))을 포함하는 일부 구현예들에서, 터치 스크린 상에서 검출된 접촉은 "포커스 선택자"로서 작용하여, 입력(예컨대, 접촉에 의한 누르기 입력)이 터치 스크린 디스플레이 상에서 특정 사용자 인터페이스 요소(예컨대, 버튼, 윈도우, 슬라이더 또는 다른 사용자 인터페이스 요소)의 위치에서 검출될 때, 특정 사용자 인터페이스 요소가 검출된 입력에 따라 조정되게 된다. 일부 구현예들에서, (예컨대, 탭 키 또는 화살표 키들을 사용하여 포커스를 하나의 버튼으로부터 다른 버튼으로 이동시킴으로써) 터치 스크린 디스플레이 상의 대응하는 커서의 이동 또는 접촉의 이동 없이 포커스가 사용자 인터페이스의 하나의 영역으로부터 사용자 인터페이스의 다른 영역으로 이동되며; 이러한 구현예들에서, 포커스 선택자는 사용자 인터페이스의 상이한 영역들 사이에서의 포커스의 이동에 따라 움직인다. 포커스 선택자가 가지는 특정 형태와 무관하게, 포커스 선택자는 일반적으로 (예컨대, 사용자가 상호작용하고자 하는 사용자 인터페이스의 요소를 디바이스에 나타내는 것에 의해) 사용자 인터페이스와의 사용자의 의도된 상호작용을 전달하기 위해 사용자에 의해 제어되는 사용자 인터페이스 요소(또는 터치 스크린 디스플레이 상의 접촉)이다. 예를 들어, 터치 감응형 표면(예컨대, 터치 패드 또는 터치 감응형 디스플레이) 상에서 누르기 입력이 검출되는 동안 각자의 버튼 위의 포커스 선택자(예컨대, 커서, 접촉 또는 선택 상자)의 위치는 (디바이스의 디스플레이 상에 보여지는 다른 사용자 인터페이스 요소들과 달리) 사용자가 각자의 버튼을 활성화시키려고 하고 있다는 것을 나타낼 것이다.
명세서 및 청구범위에서 사용되는 바와 같이, 터치 감응형 표면 상의 접촉의 "세기"라는 용어는 터치 감응형 표면 상의 접촉(예컨대, 손가락 접촉 또는 스타일러스 접촉)의 힘 또는 압력(단위 면적 당 힘), 또는 터치 감응형 표면 상의 접촉의 힘 또는 압력에 대한 대체물(대용물)을 지칭한다. 접촉의 세기는, 적어도 4개의 구별되는 값들을 포함하고 더 전형적으로는 수백 개(예컨대, 적어도 256개)의 구별되는 값들을 포함하는 일정 범위의 값들을 갖는다. 접촉의 세기는 다양한 접근법들, 및 다양한 센서들 또는 센서들의 조합들을 이용하여, 선택적으로 결정(또는 측정)된다. 예를 들어, 터치 감응형 표면 아래의 또는 그에 인접한 하나 이상의 힘 센서들은 터치 감응형 표면 상의 다양한 지점들에서 힘을 측정하는 데 선택적으로 사용된다. 일부 구현예들에서, 다수의 힘 센서들로부터의 힘 측정치들이 접촉의 추정되는 힘을 결정하기 위해 조합(예컨대, 가중 평균 또는 합산)된다. 유사하게, 스타일러스의 압력 감응형 팁(tip)이 터치 감응형 표면 상의 스타일러스의 압력을 결정하는 데 선택적으로 사용된다. 대안적으로, 터치 감응형 표면 상에서 검출된 접촉 면적의 크기 및/또는 그에 대한 변화들, 접촉 부근의 터치 감응형 표면의 정전용량 및/또는 그에 대한 변화들, 및/또는 접촉 부근의 터치 감응형 표면의 저항 및/또는 그에 대한 변화들은 터치 감응형 표면 상의 접촉의 힘 또는 압력에 대한 대체물로서 선택적으로 이용된다. 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 세기 임계치가 초과되었는지 여부를 결정하는 데 직접 이용된다(예컨대, 세기 임계치는 대체 측정치들에 대응하는 단위로 기술된다). 일부 구현예들에서, 접촉 힘 또는 압력에 대한 대체 측정치들은 추정된 힘 또는 압력으로 변환되고, 추정된 힘 또는 압력은 세기 임계치가 초과되었는지 여부를 결정하기 위해 이용된다(예컨대, 세기 임계치는 압력의 단위로 측정된 압력 임계치이다). 사용자 입력의 속성으로서 접촉의 세기를 사용하는 것은 그렇지 않았으면 어포던스들을 (예컨대, 터치 감응형 디스플레이 상에) 디스플레이하고 그리고/또는 (예컨대, 터치 감응형 디스플레이, 터치 감응형 표면, 또는 노브(knob) 또는 버튼과 같은 물리적/기계적 제어부를 통해) 사용자 입력을 수신하기 위한 제한된 실면적을 갖는 감소된 크기의 디바이스 상에서 사용자에 의해 용이하게 액세스 가능하지 않을 수 있는 부가적인 디바이스 기능에의 사용자 액세스를 가능하게 한다.
일부 실시예들에서, 접촉/모션 모듈(130)은 동작이 사용자에 의해 수행되었는지 여부를 결정하기 위해(예컨대, 사용자가 아이콘에 대해 "클릭"했는지 여부를 결정하기 위해) 하나 이상의 세기 임계치들의 세트를 이용한다. 일부 실시예들에서, 적어도 세기 임계치들의 서브세트가 소프트웨어 파라미터들에 따라 결정된다(예컨대, 세기 임계치들은 특정 물리적 액추에이터들의 활성화 임계치들에 의해 결정되지 않으며, 휴대용 컴퓨팅 시스템(100)의 물리적 하드웨어를 변경함이 없이 조정될 수 있다). 예를 들어, 트랙패드 또는 터치 스크린 디스플레이의 마우스 "클릭" 임계치는 트랙패드 또는 터치 스크린 디스플레이 하드웨어를 변경함이 없이 넓은 범위의 미리정의된 임계 값들 중 임의의 것으로 설정될 수 있다. 추가로, 일부 구현예들에서, 디바이스의 사용자는 (예컨대, 개별적인 세기 임계치들을 조정함으로써 그리고/또는 복수의 세기 임계치들을 시스템 레벨 클릭 "세기" 파라미터로 한꺼번에 조정함으로써) 세기 임계치들의 세트의 하나 이상의 세기 임계치를 조정하기 위한 소프트웨어 설정들을 제공받는다.
명세서 및 청구범위에서 사용되는 바와 같이, 접촉의 "특성 세기"라는 용어는 접촉의 하나 이상의 세기들에 기초한 접촉의 특성을 지칭한다. 일부 실시예들에서, 특성 세기는 다수의 세기 샘플들에 기초한다. 특성 세기는, 선택적으로, 미리정의된 수의 세기 샘플들, 또는 (예컨대, 접촉을 검출한 이후에, 접촉의 리프트 오프를 검출하기 이전에, 접촉의 이동의 시작을 검출하기 이전 또는 이후에, 접촉의 종료를 검출하기 이전에, 접촉의 세기의 증가를 검출하기 이전 또는 이후에, 그리고/또는 접촉의 세기의 감소를 검출하기 이전 또는 이후에) 미리정의된 이벤트에 대해 미리결정된 기간(예컨대, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 초) 동안 수집된 세기 샘플들의 세트에 기초한다. 접촉의 특성 세기는, 선택적으로, 접촉의 세기들의 최대 값, 접촉의 세기들의 중간 값(mean value), 접촉의 세기들의 평균값(average value), 접촉의 세기들의 상위 10 백분위 값(top 10 percentile value), 접촉의 세기들의 최대 값의 절반의 값, 접촉의 세기들의 최대값의 90 퍼센트의 값 등 중 하나 이상에 기초한다. 일부 실시예들에서, 접촉의 지속기간은 (예컨대, 특성 세기가 시간의 경과에 따른 접촉의 세기의 평균일 때) 특성 세기를 결정하는 데 사용된다. 일부 실시예들에서, 동작이 사용자에 의해 수행되었는지 여부를 결정하기 위해, 특성 세기가 하나 이상의 세기 임계치들의 세트와 비교된다. 예를 들어, 하나 이상의 세기 임계치들의 세트는 제1 세기 임계치 및 제2 세기 임계치를 포함할 수 있다. 이 예에서, 제1 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제1 동작이 행해지고, 제1 세기 임계치를 초과하지만 제2 세기 임계치를 초과하지 않는 특성 세기를 갖는 접촉의 결과, 제2 동작이 행해지며, 제2 세기 임계치 초과의 특성 세기를 갖는 접촉의 결과, 제3 동작이 행해진다. 일부 실시예들에서, 특성 세기와 하나 이상의 세기 임계치들 간의 비교는, 제1 동작 또는 제2 동작을 수행할지를 결정하기 위해 사용되기보다는, 하나 이상의 동작들을 수행할지의 여부(예컨대, 개개의 옵션을 수행할지 아니면 개개의 동작을 수행하는 것을 보류할지)를 결정하기 위해 사용된다.
일부 실시예들에서, 특성 세기를 결정하기 위해 제스처의 일부분이 식별된다. 예를 들어, 터치 감응형 표면은 시작 위치로부터 전이하여 종료 위치(이 지점에서 접촉의 세기가 증가함)에 도달하는 연속적인 스와이프 접촉(예컨대, 드래그 제스처)을 수신할 수 있다. 이 예에서, 종료 위치에서의 접촉의 특성 세기는 스와이프 접촉 전체가 아니라 연속적인 스와이프 접촉의 일부분에만(예컨대, 종료 위치에서의 스와이프 접촉의 부분에만) 기초할 수 있다. 일부 실시예들에서, 접촉의 특성 세기를 결정하기 전에 스와이프 접촉의 세기들에 평활화 알고리즘(smoothing algorithm)이 적용될 수 있다. 예를 들어, 평활화 알고리즘은, 선택적으로, 비가중 이동 평균(unweighted sliding-average) 평활화 알고리즘, 삼각(triangular) 평활화 알고리즘, 메디안 필터(median filter) 평활화 알고리즘, 및/또는 지수(exponential) 평활화 알고리즘 중 하나 이상을 포함한다. 일부 상황들에서, 이 평활화 알고리즘들은 특성 세기를 결정하기 위해 스와이프 접촉의 세기들에서의 좁은 급등(spike)들 또는 급감(dip)들을 제거한다.
일부 실시예들에서, 하나 이상의 미리정의된 세기 임계치들은 특정 입력이 세기-기반 기준을 충족하는지 여부를 결정하는 데 사용된다. 예를 들어, 하나 이상의 미리정의된 세기 임계치들은 (i) 접촉 검출 세기 임계치(IT0), (ii) 가볍게 누르기 세기 임계치(ITL), (iii) 깊게 누르기 세기 임계치(ITD)(예컨대, 적어도 초기에 IL보다 더 높음), 및/또는 (iv) 하나 이상의 다른 세기 임계치들(예컨대, IL보다 낮은 세기 임계치 IH)을 포함한다. 본 명세서에 사용되는 바와 같이, ITL 및 IL은 동일한 가볍게 누르기 세기 임계치를 지칭하고, ITD 및 ID는 동일한 깊게 누르기 세기 임계치를 지칭하고, ITH 및 IH는 동일한 세기 임계치를 지칭한다. 일부 실시예들에서, 가볍게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 깊게 누르기 세기 임계치는, 디바이스가 물리적 마우스의 버튼 또는 트랙패드를 클릭하는 것과 전형적으로 연관된 동작들과는 상이한 동작들을 수행하게 될 세기에 대응한다. 일부 실시예들에서, 접촉이 가볍게 누르기 세기 임계치 미만의(예컨대, 그리고 공칭 접촉-검출 세기 임계치(IT0)(이 미만에서는 접촉이 더 이상 검출되지 않음) 초과의) 특성 세기로 검출될 때, 디바이스는 가볍게 누르기 세기 임계치 또는 깊게 누르기 세기 임계치와 연관된 동작을 수행하지 않고 터치 감응형 표면 상의 접촉의 이동에 따라 포커스 선택자를 이동시킬 것이다. 일반적으로, 달리 언급되지 않는 한, 이 세기 임계치들은 사용자 인터페이스 도면들의 상이한 세트들 사이에서 일관성이 있다.
일부 실시예들에서, 디바이스에 의해 검출된 입력들에 대한 디바이스의 응답은 입력 동안 접촉 세기에 기초한 기준들에 따라 달라진다. 예를 들어, 일부 "가볍게 누르기" 입력의 경우, 입력 동안 제1 세기 임계치를 초과하는 접촉의 세기는 제1 응답을 트리거한다. 일부 실시예들에서, 디바이스에 의해 검출된 입력들에 대한 디바이스의 응답은 입력 동안의 접촉 세기 및 시간 기반 기준들 둘 모두를 포함하는 기준들에 따라 달라진다. 예를 들어, 일부 "깊게 누르기" 입력의 경우, 가볍게 누르기에 대한 제1 세기 임계치보다 큰, 입력 동안 제2 세기 임계치를 초과하는 접촉의 세기는, 제1 세기 임계치를 충족하는 것과 제2 세기 임계치를 충족하는 것 사이에서 지연 시간이 경과한 경우에만, 제2 응답을 트리거한다. 이 지연 시간은 전형적으로 200 ms 미만의 지속시간(예컨대, 제2 세기 임계치의 크기에 따라 40, 100, 또는 120 ms이고, 제2 세기 임계치가 증가함에 따라 지연 시간이 증가함)이다. 이 지연 시간은 우발적 깊게 누르기 입력의 방지를 돕는다. 다른 예로서, 일부 "깊게 누르기" 입력의 경우, 제1 세기 임계치가 충족되는 시간 이후에 발생하는 민감도 감소 기간이 있다. 민감도 감소 기간 동안, 제2 세기 임계치가 증가된다. 제2 세기 임계치의 이러한 일시적인 증가는 또한 우발적 깊게 누르기 입력의 방지를 돕는다. 다른 깊게 누르기 입력의 경우, 깊게 누르기 입력의 검출에 대한 응답은 시간 기반 기준들에 따라 달라지지 않는다.
일부 실시예들에서, 입력 세기 임계치들 및/또는 대응하는 출력들 중 하나 이상은 하나 이상의 요인, 예컨대 사용자 설정, 접촉 모션, 입력 타이밍, 애플리케이션 실행, 세기가 적용되는 속도, 동시 입력의 수, 사용자 이력, 환경적 요인(예컨대, 주변 노이즈), 포커스 선택자 위치 등에 기초하여 달라진다. 예시적인 요인들이 미국 특허 출원 번호 제14/399,606호 및 제14/624,296호에 기술되어 있으며, 이들은 본 명세서에 전체적으로 참조로서 포함된다.
예를 들어, 도 3a는 시간 경과에 따른 터치 입력(376)의 세기에 부분적으로 기초하여 시간 경과에 따라 변화하는 동적 세기 임계치(380)를 예시한다. 동적 세기 임계치(380)는 2개의 컴포넌트들, 즉 터치 입력(376)이 초기에 검출된 때부터 미리정의된 지연 시간(p1) 이후에 시간 경과에 따라 감쇠하는 제1 컴포넌트(374), 및 시간 경과에 따라 터치 입력(376)의 세기를 따라가는 제2 컴포넌트(378)의 합산이다. 제1 컴포넌트(374)의 초기 높은 세기 임계치는 "깊게 누르기" 응답의 우발적 트리거링을 감소시키지만, 터치 입력(376)이 충분한 세기를 제공하는 경우 즉각적인 "깊게 누르기" 응답을 여전히 허용한다. 제2 컴포넌트(378)는 터치 입력의 점진적인 세기 변동에 의한 "깊게 누르기" 응답의 의도하지 않은 트리거링을 감소시킨다. 일부 실시예들에서, 터치 입력(376)이 (예컨대, 도 3a에서의 지점(381)에서의) 동적 세기 임계치(380)를 충족할 때, "깊게 누르기" 응답이 트리거된다.
도 3b는 다른 동적 세기 임계치(386)(예컨대, 세기 임계치(ID))를 예시한다. 도 3b는 또한 다른 2개의 세기 임계치들, 즉 제1 세기 임계치(IH) 및 제2 세기 임계치(IL)를 예시한다. 도 3b에서, 터치 입력(384)은 시간(p2) 이전에 제1 세기 임계치(IH) 및 제2 세기 임계치(IL)를 충족하지만, 지연 시간(p2)이 시간(382)을 경과할 때까지 어떠한 응답도 제공되지 않는다. 또한, 도 3b에서, 동적 세기 임계치(386)는 시간 경과에 따라 감쇠하는데, 감쇠는 시간(382)(제2 세기 임계치(IL)와 연관된 응답이 트리거된 때)으로부터 미리정의된 지연 시간(p1)이 경과한 후에 시간(388)에서 시작한다. 이러한 유형의 동적 세기 임계치는 더 낮은 세기 임계치, 예를 들어 제1 세기 임계치(IH) 또는 제2 세기 임계치(IL)와 연관된 응답을 트리거한 직후, 또는 그와 동시에 동적 세기 임계치(ID)와 연관된 응답의 우발적 트리거링을 감소시킨다.
도 3c는 또 다른 동적 세기 임계치(392)(예컨대, 세기 임계치(ID))를 예시한다. 도 3c에서, 세기 임계치(IL)와 연관된 응답은 터치 입력(390)이 초기에 검출된 때부터 지연 시간(p2)이 경과한 후에 트리거된다. 동시에, 동적 세기 임계치(392)는 터치 입력(390)이 초기에 검출된 때부터 미리정의된 지연 시간(p1)이 경과한 후에 감쇠한다. 따라서, 세기 임계치(IL)와 연관된 응답을 트리거한 후에 터치 입력(390)의 세기가 감소하고, 이어서 터치 입력(390)의 해제 없이 터치 입력(390)의 세기가 증가하면, 터치 입력(390)의 세기가 다른 세기 임계치, 예를 들어, 세기 임계치(IL) 미만인 때에도 (예컨대, 시간(394)에서) 세기 임계치(ID)와 연관된 응답을 트리거할 수 있다.
가볍게 누르기 세기 임계치(ITL) 미만의 세기로부터 가볍게 누르기 세기 임계치(ITL)와 깊게 누르기 세기 임계치(ITD) 사이의 세기로의 접촉의 특성 세기의 증가는, 때때로 "가볍게 누르기" 입력으로서 지칭된다. 깊게 누르기 세기 임계치(ITD) 미만의 세기로부터 깊게 누르기 세기 임계치(ITD) 초과의 세기로의 접촉의 특성 세기의 증가는, 때때로 "깊게 누르기" 입력으로서 지칭된다. 접촉-검출 세기 임계치(IT0) 미만의 세기로부터 접촉-검출 세기 임계치(IT0)와 가볍게 누르기 세기 임계치(ITL) 사이의 세기로의 접촉의 특성 세기의 증가는, 때때로 터치 표면 상의 접촉을 검출하는 것으로서 지칭된다. 접촉-검출 세기 임계치(IT0) 초과의 세기로부터 접촉-검출 세기 임계치(IT0) 미만의 세기로의 접촉의 특성 세기의 감소는, 때때로 터치 표면으로부터 접촉의 리프트오프를 검출하는 것으로서 지칭된다. 일부 실시예들에서 IT0는 0(영)이다. 일부 실시예들에서 IT0는 0보다 크다. 일부 실시예들에서, 음영이 있는 원 또는 타원은 터치 감응형 표면 상의 접촉의 세기를 나타내기 위해 사용된다. 일부 실시예들에서, 음영이 없는 원 또는 타원은 개개의 접촉의 세기를 특정하지 않으면서 터치 감응형 표면 상의 개개의 접촉을 표현하기 위해 사용된다.
본 명세서에 기술된 일부 실시예들에서, 하나 이상의 동작들은, 개개의 누르기 입력을 포함하는 제스처를 검출한 것에 응답하여 또는 개개의 접촉(또는 복수의 접촉들)으로 수행되는 개개의 누르기 입력을 검출한 것에 응답하여 수행되며, 여기서 개개의 누르기 입력은 누르기 입력 세기 임계치 초과의 접촉(또는 복수의 접촉들)의 세기의 증가를 검출하는 것에 적어도 부분적으로 기초하여 검출된다. 일부 실시예들에서, 개개의 동작은, 누르기 입력 세기 임계치 초과의 개개의 접촉의 세기의 증가를 검출한 것에 응답하여 수행된다(예컨대, 개개의 동작은 개개의 누르기 입력의 "다운 스트로크(down stroke)"에서 수행됨). 일부 실시예들에서, 누르기 입력은 누르기 입력 세기 임계치 초과의 개개의 접촉의 세기의 증가 및 누르기 입력 세기 임계치 미만의 접촉의 세기의 후속적인 감소를 포함하며, 개개의 동작은 누르기 입력 임계치 미만의 개개의 접촉의 세기의 후속적인 감소를 검출하는 것에 응답하여 수행된다(예컨대, 개개의 동작은 개개의 누르기 입력의 "업 스트로크(up stroke)"에서 수행됨).
일부 실시예들에서, 디바이스는 때때로 "지터(jitter)"로 지칭되는 우발적인 입력들을 회피하기 위해 세기 히스테리시스를 채용하며, 여기서 디바이스는 누르기 입력 세기 임계치에 대한 미리정의된 관계를 갖는 히스테리시스 세기 임계치(예컨대, 히스테리시스 세기 임계치는 누르기 입력 세기 임계치보다 더 낮은 X 세기 단위이거나, 히스테리시스 세기 임계치는 누르기 입력 세기 임계치의 75%, 90% 또는 어떤 적절한 비율임)를 정의하거나 선택한다. 이와 같이, 일부 실시예들에서, 누르기 입력은 누르기 입력 세기 임계치 초과의 개개의 접촉의 세기의 증가 및 누르기 입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 후속적인 감소를 포함하며, 개개의 동작은 히스테리시스 세기 임계치 미만의 개개의 접촉의 세기의 후속적인 감소를 검출하는 것에 응답하여 수행된다(예컨대, 개개의 동작은 개개의 누르기 입력의 "업 스트로크"에서 수행됨). 유사하게, 일부 실시예들에서, 누르기 입력은 디바이스가 히스테리시스 세기 임계치 이하에서의 세기로부터 누르기 입력 세기 임계치 이상에서의 세기로의 접촉의 세기의 증가, 및 선택적으로, 히스테리시스 세기 이하에서의 세기로의 접촉의 세기의 후속적인 감소를 검출하는 경우에만 검출되고, 개개의 동작은 누르기 입력(예컨대, 주변환경에 따른 접촉의 세기의 증가 또는 접촉의 세기의 감소)을 검출하는 것에 응답하여 수행된다.
설명의 편의상, 누르기 입력 세기 임계치와 연관된 누르기 입력에 응답하여 또는 누르기 입력을 포함하는 제스처에 응답하여 수행되는 동작들의 설명은, 선택적으로, 누르기 입력 세기 임계치 초과의 접촉의 세기의 증가, 히스테리시스 세기 임계치 미만의 세기로부터 누르기 입력 세기 임계치 초과의 세기로의 접촉의 세기의 증가, 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소, 또는 누르기 입력 세기 임계치에 대응하는 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 트리거된다. 또한, 동작이 누르기 입력 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행되는 것으로서 기술되어 있는 예들에서, 동작은, 선택적으로, 누르기 입력 세기 임계치에 대응하고 그보다 더 낮은 히스테리시스 세기 임계치 미만의 접촉의 세기의 감소를 검출하는 것에 응답하여 수행된다. 전술된 바와 같이, 일부 실시예들에서, 이러한 응답들의 트리거링은 또한 시간 기반 기준들이 충족됨(예컨대, 제1 세기 임계치가 충족되는 것과 제2 세기 임계치가 충족되는 것 사이에 지연 시간이 경과됨)에 따라 달라진다.
예시적인 사용자 인터페이스 및 연관된 프로세스
이제, 디바이스(100)와 같은, 디스플레이 및 터치 감응형 표면을 갖는 전자 디바이스 상에 구현될 수 있는 사용자 인터페이스들("UI") 및 연관된 프로세스들의 실시예들에 주목한다.
도 2는 일부 실시예들에 따른, 애플리케이션들의 메뉴를 위한 사용자 인터페이스를 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도이다. 유사한 사용자 인터페이스들이 선택적으로 디바이스(100)(도 1a) 상에 구현된다. 일부 실시예들에서, 사용자 인터페이스(201a)는 다음의 요소들, 또는 이들의 서브세트나 수퍼세트를 포함한다:
Figure pct00021
셀룰러 및 Wi-Fi 신호들과 같은 무선 통신(들)을 위한 신호 세기 표시자(들)(202);
Figure pct00022
시간;
Figure pct00023
블루투스 표시자(205);
Figure pct00024
배터리 상태 표시자(206);
Figure pct00025
다음과 같은, 빈번하게 사용되는 애플리케이션들에 대한 아이콘들을 갖는 트레이(203):
o 부재 중 전화들 또는 음성메일 메시지들의 개수의 표시자(214)를 선택적으로 포함하는 "전화"라고 라벨링된 전화 모듈(138)에 대한 아이콘(216);
o 읽지 않은 이메일들의 개수의 표시자(210)를 선택적으로 포함하는 "메일"이라고 라벨링된 이메일 클라이언트 모듈(140)에 대한 아이콘(218);
o "브라우저"라고 라벨링된 브라우저 모듈(147)에 대한 아이콘(220);및
o 아이팟(애플 인크.의 상표) 모듈(152)로도 지칭되는, "아이팟"이라고 라벨링된 비디오 및 음악 재생기 모듈(152)(본 명세서에서 비디오 또는 비디오 브라우징 애플리케이션으로도 지칭됨)에 대한 아이콘(222);및
Figure pct00026
다음과 같은, 다른 애플리케이션들에 대한 아이콘들:
o "메시지"라고 라벨링된 IM 모듈(141)에 대한 아이콘(224);
o "캘린더"라고 라벨링된 캘린더 모듈(148)에 대한 아이콘(226);
o "사진"이라고 라벨링된 이미지 관리 모듈(144)에 대한 아이콘(228);
o "카메라"라고 라벨링된 카메라 모듈(143)에 대한 아이콘(230);
o "온라인 비디오"라고 라벨링된 온라인 비디오 모듈(155)에 대한 아이콘(232);
o "주식"이라고 라벨링된 주식 위젯(149-2)에 대한 아이콘(234);
o "지도"라고 라벨링된 지도 모듈(154)에 대한 아이콘(236);
o "날씨"라고 라벨링된 날씨 위젯(149-1)에 대한 아이콘(238);
o "시계"라고 라벨링된 알람 시계 위젯(149-4)에 대한 아이콘(240);
o "피트니스"라고 라벨링된 피트니스 모듈(142)에 대한 아이콘(242);
o "메모"라고 라벨링된 메모 모듈(153)에 대한 아이콘(244);
o 디바이스(100) 및 그의 다양한 애플리케이션들에 대한 설정에의 액세스를 제공하는 설정 애플리케이션 또는 모듈에 대한 아이콘(246); 및
o 앱 스토어, 아이튠즈, 음성 메모, 및 유틸리티와 같은 추가 애플리케이션들에 대한 기타 아이콘들.
도 2에 예시된 아이콘 라벨들은 단지 예시일 뿐이라는 것에 주목해야 한다. 기타 라벨들이 선택적으로 다양한 애플리케이션 아이콘들에 대해 사용된다. 예를 들어, 피트니스 모듈(142)에 대한 아이콘(242)은 대안적으로 "피트니스 지원", "운동", "운동 지원", "신체활동", "신체활동 지원", 또는 "건강"이라고 라벨링된다. 일부 실시예들에서, 개개의 애플리케이션 아이콘에 대한 라벨은 개개의 애플리케이션 아이콘에 대응하는 애플리케이션의 이름을 포함한다. 일부 실시예들에서, 특정 애플리케이션 아이콘에 대한 라벨은 특정 애플리케이션 아이콘에 대응하는 애플리케이션의 이름과는 별개이다.
일부 실시예들에서, 홈 스크린은 2개의 영역들, 즉 트레이(203) 및 아이콘 영역(201)을 포함한다. 도 2에 도시된 바와 같이, 아이콘 영역(201)은 트레이(203) 위에 디스플레이된다. 그러나, 아이콘 영역(201) 및 트레이(203)는, 선택적으로, 본 명세서에 기술된 것 이외의 위치들에 디스플레이된다.
트레이(203)는, 선택적으로, 컴퓨팅 디바이스(100) 상의 사용자가 좋아하는 애플리케이션들의 아이콘들을 포함한다. 초기에, 트레이(203)는 한 세트의 디폴트 아이콘들을 포함할 수 있다. 사용자는 디폴트 아이콘들 이외의 다른 아이콘들을 포함하도록 트레이(203)를 맞춤화할 수 있다. 일부 실시예들에서, 사용자는 아이콘 영역(201)으로부터 아이콘을 선택하고 선택된 아이콘을 트레이(203) 내로 드래그 앤 드롭하여 아이콘을 트레이(203)에 추가함으로써 트레이(203)를 맞춤화한다. 트레이(203)로부터 아이콘을 제거하기 위해, 사용자는 임계량의 시간 동안 즐겨찾기 영역에 디스플레이된 아이콘을 선택하는데, 이는 컴퓨팅 디바이스(100)가 아이콘을 제거하기 위한 제어부를 디스플레이하게 한다. 제어부의 사용자 선택은 컴퓨팅 디바이스(100)가 트레이(203)로부터 아이콘을 제거하게 한다. 일부 실시예들에서, 트레이(203)는 도크(408)(이하에서 더 상세히 기술됨)에 의해 대체되고, 따라서, 트레이(203)를 참조하여 상기에 제공된 상세사항들이 또한 도크(408)에 적용될 수 있고 아래에서 더 상세히 제공되는 도크(408)의 설명들을 보완할 수 있다.
본 개시내용에서, "분할-뷰 모드"에 대한 언급은, 적어도 2개의 애플리케이션들이 디스플레이(112) 상에서 나란히 동시에 디스플레이되고 애플리케이션들 둘 모두가 상호작용될 수 있는 모드를 지칭한다(예컨대, 애플리케이션 1 및 비디오 브라우징 애플리케이션이 도 4i에서 분할-뷰 모드로 디스플레이된다). 적어도 2개의 애플리케이션들은 또한 함께 "고정될" 수 있는데, 이는 적어도 2개의 애플리케이션들 중 어느 하나가 개시될 때 2개의 애플리케이션들이 함께 열리게 하는 적어도 2개의 애플리케이션들 사이의 연관성(디바이스(100)의 메모리에 저장됨)을 지칭한다. 일부 실시예들에서, 어포던스(예컨대, 도 5b의 어포던스(506))는 애플리케이션을 고정해제(un-pin)하고 대신에 적어도 2개의 애플리케이션들 중 하나를 다른 것에 오버레이하는 것으로서 디스플레이하는 데 사용될 수 있고, 이러한 오버레이 디스플레이 모드는 슬라이드-오버 디스플레이 모드로 지칭될 수 있다(예를 들어, 비디오 브라우징 애플리케이션은, 도 5c에 도시된 슬라이드-오버 모드에서, 애플리케이션 1에 오버레이하는 것으로서 디스플레이된다). 사용자들은, 또한, 적어도 2개의 애플리케이션들 중 하나를 고정해제 또는 해제하기 위해, 2개의 애플리케이션들이 분할-뷰 모드에서 디스플레이되는 동안 이들 사이에 이어지는 경계 어포던스를 사용할 수 있다(예를 들어, 적어도 2개의 애플리케이션들 중 제1 애플리케이션과 경계를 이루는 디스플레이(112)의 에지에 도달할 때까지 경계 어포던스를 드래그함으로써, 이어서 제1 애플리케이션은 해제되고 적어도 2개의 애플리케이션들은 이어서 고정해제된다). 고정된 애플리케이션을 해제하기 위한 경계 어포던스(또는 2개의 애플리케이션들 사이의 경계에서의 제스처)의 사용은 공동 소유의 미국 특허 출원 제14/732,618호에서(예컨대, 도 37h 내지 도 37m 및 관련 설명 단락들에서) 더 상세히 논의되며, 이는 전체적으로 본 명세서에 참고로 포함된다.
도 4a 내지 도 4aa는 일부 실시예들에 따른, 다수의 애플리케이션들과 동시에 상호작용하기 위한 사용자 인터페이스들(및 다수의 애플리케이션들과의 동시 상호작용들이 이용가능한 분할-뷰 모드를 활성화하기 위해 사용되는 제스처들)의 예들을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다.
일부 실시예들에서, 도 4a의 터치 감응형 디스플레이(112) 상에 디스플레이되는 예시적인 지도 애플리케이션과 같은 애플리케이션이 터치 감응형 디스플레이 상에 디스플레이되며, 이는 미국의 지도 및 지도 애플리케이션을 사용하여 다양한 위치들에 대해 검색할 수 있게 하는 검색 박스를 포함한다. 지도 애플리케이션이 디스플레이되는 동안, 제스처(450)가 터치 감응형 디스플레이(112)의 에지(예컨대, 관찰자에 대한 터치 감응형 디스플레이의 최하단 에지) 근처에서 검출된다.
도 4b에 도시된 바와 같이, 제스처(450)가 에지로부터 임계 거리 초과(예컨대, 약 1 센티미터 초과, 그러나 터치 감응형 디스플레이(112)의 크기에 의존할 수 있음)만큼 멀리 이동했음을 검출하는 것에 응답하여, 도크(408)가 지도 애플리케이션에 오버레이하는 것으로서 터치 감응형 디스플레이 상에서 드러난다. 본 명세서에 사용되는 바와 같이, 도크는 어포던스들(예를 들어, 시스템-선택된 어포던스들(예컨대, 각각의 어포던스가 얼마나 최근에 사용되었는지에 기초함) 또는 사용자-선택된 어포던스들(도크에 포함시키도록 사용자에 의해 선택됨))을 포함하는 사용자 인터페이스 요소이며, 어포던스들은, 활성화될 때, 대응하는 기능 또는 애플리케이션을 개시한다. 제스처(450)가 터치 감응형 디스플레이의 대향 에지를 향해(예컨대, 상향으로) 이동함에 따라, 도크(408)의 더 많은 부분이 드러나고, 지도 애플리케이션에 오버레이하는 것으로서 디스플레이된다. 일단 제스처(450)가 터치 감응형 디스플레이의 에지로부터 적어도 제2 임계 거리(예컨대, 2 내지 4 센티미터, 그러나 터치 감응형 디스플레이(112)의 크기에 의존할 수 있음)만큼 멀리 이동했으면, 도크(408)는 터치 감응형 디스플레이의 미리정의된 영역에 제시되고, 더 이상 제스처(450)의 이동을 따르지 않는다. 예를 들어, 도 4c에 도시된 바와 같이, 제스처가 터치 감응형 디스플레이의 에지로부터 적어도 제2 임계 거리보다 더 많이 이동한 후에, 도크(408)는 이어서 미리정의된 영역에 디스플레이된다. 일부 실시예들에서, 제스처(450)의 종료 후에(예컨대, 접촉이 해제되거나 터치 감응형 디스플레이로부터 리프트오프되고, 제스처(450)는 종료됨), 도크(408)는 미리정의된 부분에 정지되고 디스플레이된 채로 유지된다.
도 4e에 또한 도시된 바와 같이, 도크(408) 내에 디스플레이된 애플리케이션-특정 어포던스들은 각자의 애플리케이션(예컨대, 어느 애플리케이션-특정 어포던스가 선택되었든 그에 대응하는 애플리케이션)을 열기 위해 선택될 수 있고, 애플리케이션-특정 어포던스들은 또한 제스처(예컨대, 도 4e의 제스처(452))를 사용하여 도크(408) 밖으로 드래그될 수 있다. 예를 들어, 일부 실시예들에서, 어포던스(232) 상의 간단한 탭은 어포던스와 연관된 애플리케이션을 개시하고 그것을 도크 아래에 디스플레이할 것이다. 또한, 일부 실시예들에서, 제스처(452)에 의해 도시된 바와 같이, 도크로부터 멀어지는 드래깅 이동이 뒤따르는 접촉은 어포던스와 연관된 애플리케이션을 개시하고 그것을 도크 아래에 디스플레이할 것이다.
또한, 일부 실시예들에서, 도 4f에 도시된 바와 같이, 제스처(452)를 사용하여, 애플리케이션-특정 어포던스(232)는 멀리 또는 도크 밖으로 그리고 터치 감응형 디스플레이의 미리정의된 영역(452)을 향해 드래그된다. 일부 실시예들에서, 미리정의된 영역(454)은, 현재 디스플레이된 애플리케이션(예컨대, 도 4f의 애플리케이션 1) 옆에 애플리케이션을 고정하기 위해 마련되어 있는, 터치 감응형 디스플레이의 영역이다. 일부 실시예들에서, 애플리케이션을 고정하는 것은, 적어도 2개의 상이한 애플리케이션들이 이어서 후속적으로 함께 개시되도록, 그 애플리케이션들 사이의 연관성을 생성하는 것을 수반한다. 예를 들어, 개시될 때, 고정된 애플리케이션들 중 하나가 미리정의된 영역(454)에 디스플레이된다. 이하에서 더 상세히 설명되는 바와 같이, 미리정의된 영역(454)을 향해 각각의 애플리케이션-특정 어포던스를 드래그하는 것은 연관된 애플리케이션을 개시하고, 초기에, 애플리케이션-특정 어포던스가 드래그되는 동안에 그 애플리케이션을 미리보기로 디스플레이하고, 이어서 (접촉의 리프트오프 시에) 연관된 애플리케이션을 미리정의된 영역(454)에 디스플레이하면서 애플리케이션 1을 동시에 디스플레이한다. 일부 실시예들에서, 연관된 애플리케이션을 미리정의된 영역(454)에 디스플레이하는 것은, 미리정의된 영역(454) 내에 연관된 애플리케이션의 디스플레이를 수용하도록, 애플리케이션 1이 크기조정 또는 스케일링되게 한다.
다시 도 4f를 참조하면, 제스처(452)는 도 4g에서 터치 감응형 디스플레이(112)를 가로질러 계속 이동하고 도크(408)의 경계를 넘어 이동한다(예컨대, 제스처(452)와 연관된 접촉은 도크(408)의 경계 밖으로 이동한다). 제스처(452)가 도크(408)의 경계를 넘어 이동했음을 검출할 시, 일부 실시예들에서, 애플리케이션-특정 어포던스(232)는 더 이상 제스처(452)와 함께 이동하는 것으로서 디스플레이되지 않고, 대신에, 애플리케이션-특정 어포던스(232)와 연관된 애플리케이션과 연관된 콘텐츠의 미리보기(456)(예컨대, 비디오 브라우징 애플리케이션 및 콘텐츠)가 제스처(452)를 따르는 것으로서 디스플레이된다. 또한, 일부 실시예들에서, 미리정의된 영역(454)은 현재 디스플레이된 애플리케이션(예컨대, 도 4g의 애플리케이션 1)에 인접하게 드러난다.
일부 실시예들에서, 미리보기(456)를 디스플레이하는 대신에, 애플리케이션-특정 어포던스(예컨대, 어포던스(232))를 포함하는 사용자 인터페이스 객체가, 제스처가 도크(408)의 경계를 넘어 이동함에 따라 디스플레이된다. 이들 사용자 인터페이스 객체들의 예들이 도 4ac 내지 도 4ae에 도시되고(예컨대, 사용자 인터페이스 객체들(473-A, 473-B)), 이하에서 더 상세히 기술된다.
도 4h에 도시된 바와 같이, 제스처(452)가 계속 이동함에 따라, 미리보기(456)도 그러하고 미리정의된 영역(454)의 더 많은 부분이 애플리케이션 1에 인접하게 드러난다. 미리정의된 영역(454)을 드러내는 것과 함께, 애플리케이션 1은 또한 미리정의된 영역(454) 이외의, 터치 감응형 디스플레이(112)의 나머지 부분을 점유하도록 (도 4g 및 도 4h에 도시된 바와 같이) 크기조정된다.
도 4i는, 제스처(452)의 종료를 검출할 시(예컨대, 제스처에 대한 접촉이 터치 감응형 디스플레이로부터 리프트오프됨), 비디오 브라우징 애플리케이션은 미리정의된 영역(454)을 점유하는 것으로서 디스플레이되고, 또한 이제 애플리케이션 1 옆에 고정된다(예를 들어, 2개의 애플리케이션들은 이제 연관되고, 어느 하나의 애플리케이션이 개시될 때 함께 열릴 것이다). 경계 어포던스(460)가 또한 도 4i에 도시되어 있고, 일부 실시예들에서 사용자들이 고정된 애플리케이션들을 크기조정할 수 있게 이용가능하다(예컨대, 경계 어포던스(460) 위에서의 접촉 및 터치 감응형 디스플레이를 가로지르는 실질적으로 우측에서 좌측으로의 접촉의 이동(예컨대, 도 4l 및 도 4m의 제스처(464))을 검출하는 것에 응답하여, 애플리케이션 1은 크기가 감소되거나 스케일링되고, 비디오 애플리케이션은 크기가 증가되거나 스케일링된다(도 4l 및 도 4m에 도시된 바와 같음). 고정된 애플리케이션들을 크기조정 및/또는 해제하기 위한 경계 어포던스(또는 경계를 드래그하는 것)의 사용에 관한 추가적인 상세사항들이 또한 공동 소유의 미국 특허 출원 제14/732,618호에서, 특히 도 37h 내지 도 37m 및 관련 설명 단락들에서 제공되며, 이는 위에서 그 전체가 참고로 포함되었다.
일부 실시예들에서, 미리정의된 영역(454)은 제스처(예컨대, 제스처(452))가 터치 감응형 디스플레이(112)의 좌측 또는 우측 부분 상에 위치되는 임계치(예컨대, 도 4ab 내지 도 4ae의 임계치들(464, 465))를 넘어 이동할 때까지 드러나지 않는다. 이러한 방식으로, 사용자들은 현재 디스플레이된 애플리케이션 위에서 제스처를 종료하여(예컨대, 도 4ah의 현재 디스플레이된 애플리케이션 1 위에서 제스처(481)를 리프트오프함), 오버레이된 애플리케이션이 현재 디스플레이된 애플리케이션 위에 디스플레이되는 슬라이드-오버 모드를 활성화할지, 또는 임계치들(464, 465) 중 하나를 향해 제스처를 계속 이동시켜, 고정된 애플리케이션들이 디스플레이되는 분할-뷰 모드를 활성화할지(예컨대, 도 4ae 및 도 4af에 도시된 바와 같이, 제스처(472)가 좌측 임계치(465)를 향해 이동하고, 이어서 제스처(472)와 연관된 접촉의 리프트오프를 검출할 시에, 도 4af에 도시된 2개의 애플리케이션들은 서로의 옆에 고정됨) 여부를 결정할 수 있다. 소정 실시예들의 이들 특징들에 관한 추가적인 상세사항들이 도 4ab 내지 도 4ai를 참조하여 아래에 제공된다.
도 4i는 또한 (디스플레이(112)를 내려다보는 사용자의 관점에 대한) 디스플레이(112)의 최상단 에지 근처에서의 초기 접촉, 및 그에 뒤이은 터치 감응형 디스플레이를 가로질러 실질적으로 하향 방향으로의 접촉의 이동을 포함하는 제스처(461)를 보여준다. 제스처가 실질적으로 하향 방향으로 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 이어서 어포던스(462)(도 4j)가, 제스처(461)가 검출된 애플리케이션(예컨대, 도 4i 및 도 4j에 도시된 비디오 애플리케이션)에 오버레이하는 것으로서 디스플레이된다.
도 4j 내지 도 4l은 또한, 적어도 2개의 애플리케이션들이 현재 디스플레이(112) 상에서 나란히 디스플레이되는 동안(예를 들어, 적어도 2개의 애플리케이션들은 함께 고정되고/분할-뷰 모드로 디스플레이됨) 도크(408)를 터치 감응형 디스플레이에서 벗어나게 이동시키는 데 사용되는 제스처(471)(제스처(471)는 도크(408) 근처에서의 초기 접촉, 및 그에 뒤이은 실질적으로 하향 방향의 접촉의 이동을 포함할 수 있음)를 도시한다. 이러한 방식으로, 도크(408)는, 사용자가 단지 도크(408) 뒤에 디스플레이된 애플리케이션들과 상호작용하도록 선택할 수 있도록, 숨겨질 수 있다. 단일 애플리케이션이 디스플레이(112) 상에 디스플레이되는 동안 도크를 활성화하는 데 사용되는 제스처와 유사하게(예컨대, 도 4a 내지 도 4c의 제스처(450)), 제스처(450)는 또한 하나 초과의 애플리케이션이 디스플레이(112) 상에 디스플레이되는 동안(예컨대, 도 4n 내지 도 4p에 도시된 바와 같이, 애플리케이션 1이 비디오 애플리케이션의 옆에 고정되어 있는 동안) 도크를 활성화하는 데 사용될 수 있다.
이제 도 4q를 참조하면, 다수의 애플리케이션들이 터치 감응형 디스플레이(112) 상에 동시에 디스플레이되는 동안, 제스처(466)가 도크(408) 내에 디스플레이된 애플리케이션-특정 어포던스들 중 하나 위에서 검출된다. 예를 들어, 제스처(466)는 웹 브라우징 애플리케이션에 대응하는 어포던스(220) 위에서의 초기 접촉, 및 그에 뒤이은 터치 감응형 디스플레이(112)를 가로지르는 초기 접촉의 이동을 포함한다. 제스처(466)는 도 4r에서 계속 이동하고, 애플리케이션-특정 어포던스는 제스처(466)가 도크(408)의 경계를 지나 가로지를 때까지 제스처(466)의 이동에 따라 이동한다. 제스처(466)가 도크(408)의 경계를 지나 이동했음을 검출할 시, 일부 실시예들에서, 애플리케이션-특정 어포던스는 제스처(466) 아래에 더 이상 디스플레이되지 않고, 웹 브라우징 애플리케이션과 연관된 콘텐츠의 미리보기(498)가 그 자리에 디스플레이된다(도 4s).
도 4s에 또한 도시된 바와 같이, 일부 실시예들에서, 일단 제스처(466)가 도크(408)의 경계를 넘어 이동하면 새로운 어포던스가 도크에 추가된다(예를 들어, 지도 애플리케이션 및 비디오 애플리케이션의 고정된 상태에 대응하는 어포던스(492)가, 웹 브라우징 애플리케이션에 대한 어포던스에 의해 이전에 점유된 도크(408) 내의 위치에 디스플레이된다). 일부 다른 실시예들에서, 새로운 어포던스는 제스처(466)의 종료가 검출될 때까지 도크(408)에 추가되지 않는다(다시 말하면, 도 4t와 도 4u 사이에서 제스처(466)의 리프트오프가 검출될 때까지 어포던스(492)는 도크(408)에 추가되지 않는다). 일부 실시예들에서, 사용자는 드래그 제스처를 계속하는 것 대신에 어포던스를 도크에 반환하도록 선택할 수 있다(또는 그들은 미리정의된 영역(454)에 도달하기 전에 제스처를 종료하거나, 제스처를 미리정의된 영역으로부터 멀리 이동시킬 수 있다). 이러한 방식으로, 사용자들은 개선된 인간-기계 인터페이스를 제공받고, 디바이스들과의 지속적인 상호작용들에 관여하는 능력을 제공받으며, 이는 그렇지 않았다면 그들이 의도하지 않은 행동들을 반전시켜야 했을 경우 가능하지 않았을 것이다.
예시적인 제스처(466)의 설명으로 다시 돌아가면, 일부 실시예들에서, 미리보기(498)는, 제스처가 현재 이동하고 있는 애플리케이션에 따라, 크기조정한다. 예를 들어, 도 4s에 도시된 바와 같이, 제스처(466)가 애플리케이션 1 위에 있는 동안, 미리보기(498)는 제1 디스플레이 크기를 갖고; 도 4t에 도시된 바와 같이, 제스처(466)가 비디오 애플리케이션 위에 있는 동안, 미리보기(498)는 제1 디스플레이 크기와 별개인 제2 디스플레이 크기를 갖도록 크기조정된다. 도 4s 및 도 4t에 도시된 바와 같이, 제1 디스플레이 크기는 애플리케이션 1의 치수들과 매칭되기 위해 (제2 디스플레이 크기와 비교하여) 더 넓고, 제2 디스플레이 크기는 비디오 애플리케이션의 치수들과 매칭되기 위해 (제1 디스플레이 크기와 비교하여) 더 좁다.
제스처(466)의 종료(예컨대, 제스처(466)가 비디오 애플리케이션 위에 있는 동안 터치 감응형 디스플레이로부터의 제스처의 리프트오프)를 검출할 시, 웹 브라우징 애플리케이션은 이어서 비디오 애플리케이션에 의해 이전에 점유된 터치 감응형 디스플레이(112)의 영역에 디스플레이된다(도 4u).
일부 실시예들에서, 제스처(예컨대, 도 4v의 제스처(468))가 또한, 이미 다수의 애플리케이션들(예컨대, 도 4v의, 애플리케이션 1 및 웹 브라우징 애플리케이션과 같은 2개의 고정된 애플리케이션들)을 디스플레이하는 동안에, 고정된 애플리케이션들에 대응하는 어포던스를 도크(408) 밖으로 그리고 터치 감응형 디스플레이(112) 위로 드래그하는 데 사용될 수 있다. 제스처(468)가 도크(408)의 경계를 가로지른 후에, 어포던스에 대응하는 콘텐츠의 미리보기가 디스플레이되고(도 4w), 이어서 콘텐츠는 터치 감응형 디스플레이(112)로부터의 제스처(468)의 리프트오프를 검출할 시에 디스플레이된다(도 4x). 일부 실시예들에서, 콘텐츠는 터치 감응형 디스플레이(112)의 실질적으로 전부를 점유하는 것으로서 디스플레이되고, 이전에 디스플레이된 다수의 애플리케이션들은 더 이상 디스플레이되지 않는다. 다른 실시예들에서, 콘텐츠 및 다수의 애플리케이션들 둘 모두가 디스플레이된다(예컨대, 콘텐츠가 다수의 애플리케이션들 위에 디스플레이되며, 이에 의해 사용자들은 하나 초과의 세트의 고정된 애플리케이션들과 동시에 상호작용하게 한다). 일부 실시예들에서, 이러한 특징은 더 큰 디스플레이들(예컨대, 적어도 9.7 인치의 대각선 치수를 갖는 디스플레이들)을 갖는 디바이스들 상에서만 이용가능하다.
일부 실시예들에서, 단일 애플리케이션의 다수의 인스턴스들이 또한 함께 고정될 수 있고, 단일 애플리케이션의 다수의 인스턴스들에 대응하는 어포던스(예컨대, 어포던스(404))가 또한 제스처(470)를 사용하여 도크(408) 밖으로 드래그될 수 있다(도 4y 내지 도 4aa).
도 4a 내지 도 4aa에 도시되지 않았지만, 일부 실시예들은 또한 사용자들이, 어포던스를 도크 밖으로 그리고 현재 디스플레이되지 않은 오버레이된 애플리케이션 상으로 드래그하도록(예컨대, 숨겨진 오버레이된 애플리케이션(사용자가 디스플레이에서 벗어나게 스와이프한 오버레이된 애플리케이션)을 일시적으로 디스플레이하기 위해 터치 감응형 디스플레이의 에지를 향해 어포던스를 드래그하도록), 그리고 이어서 일시적으로 디스플레이된 오버레이된 애플리케이션 위에 어포던스를 드롭하도록 허용한다. 예를 들어, 사용자는 메모 애플리케이션에 대응하는 애플리케이션-특정 어포던스(244)를 도 4an에 도시된 도크(408)로부터 터치 감응형 디스플레이(112)의 최우측 에지를 향해 드래그할 수 있고, 최우측 에지로부터의 임계 거리에 도달할 시, (도 4al 및 도 4am에서의 제스처(485)를 사용하여 숨겨진) 숨겨진 오버레이된 비디오 애플리케이션은 일시적으로 드러날 것이고, 사용자는 이어서 드래그된 어포던스를 숨겨진 오버레이된 애플리케이션의 상부 상에 드롭함으로써, 비디오 애플리케이션을 메모 애플리케이션으로 대체할 수 있다. 이러한 방식으로, 사용자는 현재 보이지 않을 수 있는 오버레이된 애플리케이션을 대체하기 위해 간단한 드래그 제스처를 사용할 수 있다.
이제 도 4ab를 참조하면, 예시적인 임계치들(464, 465)이 터치 감응형 디스플레이(112)의 최우측 및 최좌측 에지들 근처에 각각 예시되어 있다. 일부 실시예들에서, 임계치들은 디스플레이(112)의 각각의 에지들로부터 대략 1 내지 2 센티미터만큼 떨어져 위치되고, 이들 임계치들은, 애플리케이션이 이후에 그 미리정의된 영역에서 고정될 수 있다는 표시를 사용자에게 제공하는, 디스플레이(454)의 미리정의된 영역을 나타낼 때를 결정하는 데 도움을 주기 위해 이용된다. 예를 들어, 도 4ab 내지 도 4af에 도시된 바와 같이, 제스처(472)가 비디오 브라우징 애플리케이션에 대응하는 애플리케이션-특정 어포던스(232) 위에서 검출된다. 제스처(472)는 이어서 도 4a에서 도크(408)의 경계를 넘어 이동하고, 제스처(472)가 도크의 경계를 넘어 이동했음을 검출하는 것에 응답하여, 애플리케이션-특정 어포던스(232)는 제스처(472)에 대응하는 접촉 아래에 더 이상 디스플레이되지 않고, 대신에, 사용자 인터페이스 객체(473-A)가 접촉 아래에 디스플레이된다.
일부 실시예들에서, 사용자 인터페이스 객체(473-A)는, 제스처(472)에 대응하는 접촉이 임계치들(464, 465)(도 4ac)을 넘어 가로지르지 않은 동안에, 제1 형상(예컨대, 애플리케이션-특정 어포던스의 표현이 그 내부에 위치되어 있는 실질적으로 타원체 형상)을 갖는다. 일부 실시예들에서, 제스처(472)가 임계치들(464, 465) 중 하나를 넘어 가로질렀음을 검출하는 것에 응답하여(그리고 접촉이 임계치를 초과하여 유지되는 동안), 이어서, 미리정의된 영역(454)이 드러나고 사용자 인터페이스 객체(473-B)가 사용자 인터페이스 객체(473-A) 대신에 접촉 아래에 디스플레이된다(도 4ad 및 도 4ae). 일부 실시예들에서, 사용자 인터페이스 객체(473-B)는 사용자 인터페이스 객체(473-A)의 제1 형상과 별개인 제2 형상(예컨대, 내부에 위치된 애플리케이션-특정 어포던스의 표현을 포함하는 실질적으로 직사각형인 형상)을 갖는다. 미리정의된 영역(454)을 드러내고 사용자 인터페이스 객체(473)의 형상을 변경함으로써, 사용자에게는 이제 애플리케이션을 고정하고/디스플레이(112) 상의 분할-뷰 모드를 활성화할 수 있는 명확한 시각적 표시들이 제공된다. 이러한 명확한 시각적 표시들을 제공하는 것은, 새로운 특징들이 발견가능하도록 보장함으로써 인간-기계 인터페이스를 개선하고 디스플레이(112)와의 지속적인 상호작용들을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 예상할 수 없었던 행동들을 연속적으로 실행취소해야 하는 것으로 인해 가능하지 않았을 것이다.
도 4ae 및 도 4af에 도시된 바와 같이, 이어서 사용자는 (예컨대, 디스플레이(112)로부터 제스처(472)에 대응하는 접촉을 리프트오프함으로써) 제스처를 종료하기로 결정할 수 있고, 이에 응답하여, 이어서, 제스처(472) 동안 드래그되고 있는 애플리케이션-특정 어포던스에 대응하는 애플리케이션(예컨대, 비디오 브라우징 애플리케이션)은 디스플레이(112) 상에서 애플리케이션 1 옆에 고정된다(도 4af).
도 4af는 또한 애플리케이션이 고정된 후에 애플리케이션을 해제하는 데 사용될 수 있는 제스처(예컨대, 제스처(477))의 예를 도시한다. 도시된 바와 같이, 예시적인 제스처(477)는 접촉, 및 그에 뒤이은 에지(예컨대, 디스플레이(112)를 내려다보는 사용자에 대한 디스플레이(112)의 최좌측 에지)를 향한 접촉의 이동을 수반한다. 제스처(477)가 에지의 미리결정된 거리 내(예컨대, 에지의 1 내지 2 센티미터 내)로 이동했음을 검출하는 것에 응답하여, 이어서 고정된 애플리케이션은 도 4ag에 도시된 바와 같이 해제된다(그리고, 일부 실시예들에서, 디바이스(100)의 메모리는 비디오 애플리케이션 및 애플리케이션 1이 더 이상 함께 고정되지 않는다는 것을 반영하도록 업데이트된다). 제스처를 사용하여 고정된 애플리케이션을 해제하는 것에 관한 추가적인 상세사항들이 공동 소유의 미국 출원 제14/732,618호에(예컨대, 도 37k 내지 도 37m, 및 이들 도면을 설명하는 관련 단락들에서) 제공되어 있으며, 이는 위에서 그 전체가 참고로 포함되었다. 다른 실시예들에서, 제스처(477)가 에지를 향해 미리결정된 속도 또는 가속도 초과로 이동했음을 검출하는 것은 고정된 애플리케이션을 해제할 것이다.
도 4ag는 또한 애플리케이션이 다른 애플리케이션에 오버레이하면서 디스플레이되는 슬라이드-오버 모드를 활성화하는 데 사용될 수 있는 제스처(478)를 예시한다. 예를 들어, 제스처(478)와 연관된 접촉이 웹 브라우징 애플리케이션에 대응하는 애플리케이션-특정 어포던스(220) 위에서 초기에 검출되고, 도크(408)의 경계를 넘어서는 접촉의 이동을 검출하는 것에 응답하여, UI 객체(473-A)가 애플리케이션-특정 어포던스(220)와 함께 디스플레이된다. 도 4ah에서, 터치 감응형 디스플레이(112)로부터의 접촉의 리프트오프가 또한 애플리케이션 1 위에서 검출되고(그리고 접촉이 임계치(464 또는 465) 중 어느 하나를 가로지르지 않으면서), 이에 응답하여, 이어서, (도 4ai에 도시된 바와 같이) 웹 브라우징 애플리케이션이 애플리케이션 1에 오버레이하면서 디스플레이된다.
도 4ai는 또한, 디스플레이(112)의 최하부 에지를 향해 실질적으로 하향 방향으로 이동하는 제스처(482)가 보여지고, 제스처가 하향 방향으로 미리결정된 거리(예를 들어, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 이어서 웹 브라우징 애플리케이션이 애플리케이션 1 옆에 고정되는(도 4aj에 도시된 바와 같음) 실시예를 도시한다. 일부 실시예들에서, 오버레이된 애플리케이션을 고정하기 위한 이러한 하향 스와이프 제스처는 도 5d 내지 도 5f를 참조하여 하기에 기술되는 제스처(518)에 추가하여 이용가능하다(한편, 다른 실시예들에서, 하향 스와이프 제스처는 도 5d 내지 도 5f의 상향 스와이프 제스처에 대한 대안이다). 일부 실시예들에서, 제스처는 오버레이된 애플리케이션의 상부에서 또는 그 근처에서(예컨대, 오버레이된 애플리케이션의 상부 근처에 있는 디스플레이된 어포던스(462) 위에서) 개시되어야 한다.
도 4aj 내지 도 4al에 도시된 바와 같이, 일부 실시예들에서, 사용자들은 또한 2개의 고정된 애플리케이션들의 상부 상에 애플리케이션을 오버레이할 수 있다. 예를 들어, 2개의 고정된 애플리케이션들 사이의 경계 위에서 제스처(484)의 종료를 검출하는 것에 응답하여(도 4ak), 애플리케이션은 이어서 2개의 고정된 애플리케이션들에 오버레이하면서 디스플레이된다(예컨대, 도 4al에서, 비디오 브라우징 애플리케이션은 애플리케이션 1 옆에 고정되는 웹 브라우징 애플리케이션에 오버레이하는 것으로 보여진다). 또한, PIP 비디오가 이용가능한 일부 실시예들에서, 사용자는 또한 2개의 고정된 애플리케이션들의 상부 상에 있는 오버레이된 애플리케이션의 상부 상에 디스플레이되는 PIP 비디오 콘텐츠를 가질 수 있다. 다시 말하면, PIP 비디오는 항상 최상부 층이다. PIP 비디오 특징들은 공동 소유의 미국 출원 제14/732,618호에(예컨대, 도 48a 내지 도 52d, 및 이들 도면을 설명하는 관련 단락들에서) 더 상세히 기술되며, 이는 위에서 그 전체가 참고로 포함되었다.
공간을 효율적으로 사용하기 위해, 일부 실시예들에서, 사용자들은 또한 오버레이된 애플리케이션을 일시적으로 숨길 수 있다. 예를 들어, 도 4al 내지 도 4an에 도시된 바와 같이, 제스처(예컨대, 제스처(485))가, 실질적으로 좌측으로부터 우측으로의 방향으로 터치 감응형 디스플레이(112)를 가로질러 오버레이된 애플리케이션 위로 스와이프하여, 오버레이된 애플리케이션이 일시적으로 숨겨지게 하는 데 사용될 수 있다. 이어서, 사용자들은 오버레이된 애플리케이션을 숨기는 데 사용된 제스처에 반대 방향으로 이동하는 다른 제스처(예컨대, 제스처(486))를 사용하여 오버레이된 애플리케이션을 재디스플레이할 수 있다(예컨대, 제스처(486)는 터치 감응형 디스플레이(112)를 가로질러 실질적으로 우측에서 좌측으로의 방향으로 이동한다). 도 4ao는 제스처(486)에 응답하여 재디스플레이된, 오버레이된 애플리케이션의 예를 도시한다.
사용자들이 현재 오버레이되어 있는 애플리케이션을 용이하게 고정하고 그에 의해 디스플레이(112) 상의 그들의 작업공간을 효율적이고 용이하게 조정하도록 하기 위해(이는 개선된 인간-기계 인터페이스를 야기하고, 사용자들이 디스플레이(112) 상에 디스플레이된 애플리케이션들과의 지속적인 상호작용들에 관여하게 함), 사용자들이 애플리케이션을 오버레이된 상태로부터 고정된 상태로 용이하게 전환할 수 있게 하는 제스처가 제공될 수 있다. 예를 들어, 오버레이된 애플리케이션과 함께 디스플레이된 어포던스(506) 위에서의 접촉이 검출될 수 있고, 이어서 그 접촉은 터치 감응형 디스플레이(112)의 최하단 에지를 향해 터치 감응형 디스플레이를 가로질러 실질적으로 하향 방향으로 이동할 수 있다(예컨대, 도 4ao의 제스처(487)). 제스처(488)가 터치 감응형 디스플레이를 가로질러 적어도 미리결정된 거리(예컨대, 4 내지 5 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 오버레이된 애플리케이션은 더 이상 디스플레이되지 않고, 이어서 UI 객체(473-B)가 제스처(488)와 연관된 접촉 아래에 디스플레이된다. 일부 실시예들에서, 오버레이된 애플리케이션에 대응하는 콘텐츠의 점진적인 스케일 다운은, 콘텐츠가 더 이상 디스플레이되지 않고 UI 객체(473-A)만이 디스플레이(112) 상에 남아 있을 때까지 보여진다.
일부 실시예들에서, UI 객체(473-B)를 디스플레이할 때를 결정하는 데 사용되는 미리결정된 거리는, 하향 스와이프 제스처에 응답하여 오버레이된 상태로부터 고정된 상태로 전환할 때를 결정하는 데 사용되는 미리결정된 거리보다 크다. 일부 실시예들에서 그리고 방법(1200)을 참조하여 하기에서 또한 기술되는 바와 같이, 속도 또는 가속도-기반 임계치가 거리-기반 임계치 대신에 이용될 수 있다. 이러한 실시예들에서, UI 객체(473-B)를 디스플레이할 때를 결정하는 데 사용되는 속도 또는 가속도 임계치는, 하향 스와이프 제스처에 응답하여 오버레이된 상태로부터 고정된 상태로 전환할 때를 결정하는 데 사용되는 것(예컨대, 4 센티미터/초)보다 더 빠른 속도(예컨대, 8 센티미터/초) 또는 가속도에 대응한다.
일부 실시예들에서, 제스처(488)는 이어서 사용자가 터치 감응형 디스플레이(112)를 가로질러 UI 객체(473-B)를 드래그하는 것으로 계속된다. 도 4ap 및 도 4aq에 도시된 바와 같이, 제스처(488)는 애플리케이션 1 위로 이동할 수 있고, 이에 응답하여, 이어서 UI 객체(473-B)의 형상은 (UI 객체(473-B)가, UI 객체(473-B) 및 UI 객체(473-A)의 형상과 별개인 형상을 갖는 UI 객체(473-C)가 되도록) 변경되어, 접촉의 리프트오프가 발생하는 경우 비디오 브라우징 애플리케이션이 디스플레이(112) 상에서 애플리케이션 1을 대체할 것이라는 표시를 사용자에게 제공할 수 있다.
도 4ap 및 도 4aq에 도시된 바와 같이, 제스처(488)가 웹 브라우징 애플리케이션 위로 그리고 이어서 애플리케이션 1 위로 이동함에 따라, 이들 애플리케이션 각각에 대응하는 콘텐츠는 (도 4ap 및 도 4aq에서 이들 애플리케이션 각각에 대응하는 콘텐츠 각각의 어두워짐에 의해 나타내진 바와 같이) 블러링되어, 어느 하나의 애플리케이션 위로 UI 객체를 드롭하는 것이 변화를 야기할 것이라는 다른 시각적 표시를 (UI 객체(473)의 형상의 변경에 더하여) 사용자들에게 제공할 수 있다.
일부 실시예들에서, 제스처(488)의 종료를 검출할 시(예컨대, 제스처(488)와 연관된 접촉의 리프트오프가 애플리케이션 1 위에서 발생함), 비디오 브라우징 애플리케이션은 디스플레이(112) 상의 애플리케이션 1을 대체하고, 이제 웹 브라우징 애플리케이션 옆에 고정된다(디바이스(100)의 메모리는 또한 웹 브라우징 애플리케이션 및 애플리케이션 1이 더 이상 함께 고정되지 않고, 이제 웹 브라우징 애플리케이션 및 비디오 브라우징 애플리케이션이 함께 고정된다는 것을 반영하도록 업데이트될 수 있다). 이것의 예가 도 4ar에 도시되어 있는데, 여기서 비디오 브라우징 애플리케이션은 이제 디스플레이(112) 상에서 웹 브라우징 애플리케이션 옆에 고정된다.
사용자들이 현재 오버레이되어 있는 애플리케이션을 용이하게 고정하고 그에 의해 디스플레이(112) 상에서의 그들의 작업공간을 효율적으로 그리고 용이하게 조정할 수 있게 하는 것은, (예컨대, 애플리케이션을 도크 밖으로 드래그하는 것과 오버레이된 애플리케이션을 고정된 상태로 전환하기 위해 드래그하는 것 사이의 일관된 사용자 경험을 보장함으로써) 인간-기계 인터페이스가 개선되는 것을 보장하고, 또한 (예컨대, 오버레이된 상태와 고정된 상태 사이에서 전환하기 위한 드래깅 제스처 동안, 고정된 애플리케이션들에 대한 콘텐츠가 완전히 가려지지 않는 것을 보장함으로써) 사용자들이 디스플레이(112) 상에 디스플레이된 애플리케이션들과의 지속적인 상호작용들에 관여할 수 있게 한다.
일부 실시예들에서, 위에서 논의된 제스처(488) 동안 비디오 브라우징 애플리케이션을 해제하기 위해, 사용자는 도크(408) 위에서 제스처(488)를 종료할 수 있다. 이들 실시예들에서, 도크(408) 위에서의 제스처(488)의 종료(예컨대, 도크 위에서의 제스처(488)와 연관된 접촉의 리프트오프)를 검출하는 것에 응답하여, 이어서, 오버레이된 비디오 브라우징 애플리케이션은 해제되고, 애플리케이션 1 및 웹 브라우징 애플리케이션을 포함하는 분할-뷰 모드가 디스플레이(112) 상에 디스플레이된 상태로 유지된다.
일부 실시예들에서, 디바이스(100) 상에 설치된 애플리케이션들(도 1a의 디바이스의 메모리에 도시됨) 각각은 그들이 분할-뷰 디스플레이 모드와 호환가능한지 여부에 대한 표시와 연관될 수 있다. (예를 들어, 특정 애플리케이션과 연관된 표시를 체크하고 그것이 특정 애플리케이션이 호환가능하지 않음을 나타낸다고 결정함으로써) 특정 애플리케이션이 분할-뷰 디스플레이 모드와 호환가능하지 않다는 결정에 따라, 이어서, 특정 애플리케이션에 대응하는 애플리케이션-특정 어포던스가 도크(408) 밖으로 드래그되는 동안에 디스플레이 변화는 이루어지지 않는다. 대신에, 특정 애플리케이션에 대응하는 애플리케이션-특정 어포던스를 드래그하고, 이어서 분할-뷰 모드에서 디스플레이되는 애플리케이션들 위에서(또는 단일 애플리케이션 위에서) 그것을 드롭하는 것은, 특정 애플리케이션이 이어서 터치 감응형 디스플레이의 전부를 점유하게 할 것이다(특정 애플리케이션이 분할-뷰 모드에서 디스플레이되거나 또는 애플리케이션들 중 임의의 것에 오버레이하는 것으로서 디스플레이되는 것 대신에). 일부 실시예들에서, (여기서 예로서 사용되는 특정 애플리케이션과 같은) 호환불가능한 애플리케이션들에 대응하는 애플리케이션-특정 어포던스들은 도크(408) 밖으로 전혀 드래그되지 않을 수 있다(대신에, 이러한 애플리케이션들은 단지, 이들 애플리케이션들이 분할-뷰 또는 슬라이드-오버 디스플레이 모드들과 함께 사용하기 위해 이용가능하지 않다는 것을 사용자들에게 알려주기 위해, 탭될 수 있다).
도 4a 내지 도 4ar에 관한 추가 설명들이 방법(800)을 참조하여 하기에 제공된다.
도 5a 내지 도 5o는 일부 실시예들에 따른, 분할-뷰 모드(여기서 2개의 애플리케이션들이 함께 고정되고 디스플레이 상에서 나란히 디스플레이됨)와 슬라이드 오버 모드(여기서 하나의 애플리케이션이 디스플레이 상에서 다른 애플리케이션에 오버레이하는 것으로 디스플레이됨) 사이에서 전환하기 위한 사용자 인터페이스들을 예시하는 데 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 5a에서, 터치 감응형 디스플레이(112) 상에서 분할-뷰 모드로 2개의 애플리케이션들이 디스플레이되고, 제스처(508)가 디스플레이(112)의 에지 근처에서 검출되며, 에지는 분할-뷰 모드에서 디스플레이되는 2개의 애플리케이션들 중 제1 애플리케이션과 경계를 이룬다. 제스처는 먼저 디스플레이(112)를 둘러싸는 베젤에서 떨어져 그리고 디스플레이(112)의 에지를 가로질러 이동할 수 있고, 이어서 (디스플레이(112)를 내려다보는 사용자에 대해) 실질적으로 하향 방향으로 계속 이동할 수 있다. 제스처(508)가 실질적으로 하향 방향으로 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 이어서 어포던스(506)가 제1 애플리케이션에 오버레이하는 것으로서 디스플레이된다(예컨대, 어포던스(506)는 도 5b의 비디오 애플리케이션에 오버레이한다). 비디오 애플리케이션은 또한 본 명세서에서 비디오 브라우징 애플리케이션으로도 상호교환가능하게 지칭된다.
도 5b에 도시된 바와 같이, 제스처(509)가 어포던스(506) 위에서 수행될 수 있으며, 제스처는 사용자가 분할-뷰 모드와 슬라이드-오버 모드 사이에서 전환하게 할 수 있다(그리고 이러한 전환은 사용자가 애플리케이션을 고정 및 고정해제하게 할 수 있다). 제스처(509)는 어포던스(506) 위에서의 초기 접촉, 및 그에 뒤이은 제1 애플리케이션(예컨대, 도 5b에 도시된 비디오 브라우징 애플리케이션) 위에서의 실질적으로 하향 방향으로의 초기 접촉의 이동을 포함할 수 있다. 도 5c에 도시된 바와 같이, 제스처(509)가 실질적으로 하향 방향으로 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동한 후, 이어서, 분할-뷰 모드가 종료되고 대신에 슬라이드오버 모드에 진입되는데, 여기서 제1 애플리케이션은 다른 애플리케이션에 오버레이하는 것으로서 디스플레이된다(예를 들어, 비디오 브라우징 애플리케이션은 도 5c에서 애플리케이션 1에 오버레이하는 것으로서 디스플레이된다). 기존의 분할-뷰 모드와 함께, 제1 애플리케이션은 또한 애플리케이션 1로부터 고정해제될 수 있다(예컨대, 디바이스(100)의 메모리는 제1 애플리케이션과 애플리케이션 1 사이의 연관성을 제거하도록 업데이트될 수 있다).
애플리케이션들이 슬라이드-오버 모드에서 디스플레이되는 동안, 애플리케이션 1은 (비디오 브라우징 애플리케이션이 애플리케이션 1에 오버레이하는 동안에도) 여전히 이용가능하고 사용자 입력들에 응답할 수 있다. 예를 들어, 애플리케이션 1 내의 링크(504) 위에서의 접촉(510)을 검출하는 것에 응답하여, 접촉(510)은 프로세싱되고, 애플리케이션 1은 링크(504)와 연관된 콘텐츠에 액세스하고 이를 디스플레이함으로써 응답한다(도 5d).
도 5d는 또한, 제스처(511)가 분할-뷰 모드로 다시 전환하는 데 그리고 슬라이드-오버 모드를 종료하는 데 사용될 수 있다는 것을 예시한다. 제스처(511)는 어포던스(506) 위에서의 초기 접촉, 및 그에 뒤이은 터치 감응형 디스플레이(112)의 최상단 에지를 향한 실질적으로 상향 방향으로의 접촉의 이동을 포함할 수 있다. 제스처(511)가 실질적으로 상향 방향으로 적어도 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 이어서 비디오 애플리케이션은 터치 감응형 디스플레이(112) 상에서 애플리케이션 1에 인접하게 분할-뷰 모드에서 다시 디스플레이된다(도 5f에 도시된 바와 같음). 디바이스(100)의 메모리는 또한, 2개의 애플리케이션들이 함께 고정된다는 것을 나타내는, 비디오 브라우징 애플리케이션과 애플리케이션 1 사이의 연관성을 다시 포함하도록 업데이트될 수 있다. 일부 실시예들에서, 제스처(511)가 검출되고 실질적으로 상향 방향으로 이동하고 있는 동안, 미리정의된 영역이 터치 감응형 디스플레이 상에서 드러나고(예컨대, 도 5e의 미리정의된 영역(591)) 도시되며, 그 미리정의된 영역은, 제스처(511)의 종료를 검출한 후에 비디오 브라우징 애플리케이션이 이어서 디스플레이되는 영역이다.
도 5f는, 추가로, 제스처(512)가 고정된 비디오 브라우징 애플리케이션을 터치 감응형 디스플레이(112) 상의 상이한 위치로 이동시키는 데 사용될 수 있음을 예시한다. 제스처(512)는 어포던스(506) 위에서의 초기 접촉, 및 그에 뒤이은 터치 감응형 디스플레이(112)의 최상단 에지에 실질적으로 평행한(예컨대, 평행에서 +/-5도 이내) 실질적으로 측방향으로의 접촉의 이동을 포함할 수 있다. 도 5g는, 제스처(512)가 실질적으로 측방향으로 계속 이동함에 따라, 비디오 브라우징 애플리케이션이 애플리케이션 1의 반대측에 있는 위치에 도달할 때까지 터치 감응형 디스플레이를 가로질러 제스처(512)에 따라 이동하는 것을 예시한다(예를 들어, 도 5h에 도시된 바와 같이, 비디오 브라우징 애플리케이션은 이어서 제스처(512)의 리프트오프를 검출할 시 애플리케이션 1의 좌측에 디스플레이된다). 2개의 애플리케이션들 사이의 연관성은 또한 비디오 브라우징 애플리케이션이 이제 애플리케이션 1의 좌측에 고정되어 있음을 반영하도록 업데이트될 수 있다.
도 5h는, 비디오 브라우징이 애플리케이션 1의 좌측에 고정되는 동안, 제스처(509)가 분할-뷰 모드로부터 슬라이드-오버 모드로 전환하는 데 사용될 수 있음을 예시한다. 예를 들어, 제스처(509)가 실질적으로 하향 방향으로 적어도 임계 거리(예컨대, 실질적으로 하향 방향으로 1 내지 2 센티미터)만큼 이동했음을 검출한 후에, 이어서 분할-뷰 모드가 종료되고, 비디오 브라우징 애플리케이션은 애플리케이션 1에 오버레이하는 것으로서 디스플레이된다(도 5i). 도 5i에 또한 도시된 바와 같이, (위에서 논의된 제스처(512)와 유사한) 제스처(517)가, 오버레이된 비디오 브라우징 애플리케이션을 터치 감응형 디스플레이(112) 상의 상이한 위치로 드래그하는 데 사용될 수 있다(도 5j에 도시된 바와 같음).
도 5j는 또한 홈 버튼(204)(이는 눌려질 때 이동하는 물리적 하드웨어 버튼, 눌려질 때 이동하지 않지만 햅틱 피드백을 제공함으로써 이동을 시뮬레이션하는 솔리드-스테이트 버튼, 또는 햅틱 피드백을 또한 제공함으로써 이동을 시뮬레이션할 수 있는 터치 감응형 디스플레이(112) 상에 디스플레이된 버튼일 수 있음) 위에서의 접촉(527)을 도시한다. 홈 버튼(204) 위에서의 접촉(527)을 검출하는 것에 응답하여, 이어서 홈 스크린이 디스플레이된다(도 5k). 홈 스크린이 디스플레이되는 동안, 접촉(516)(도 5k)이 카메라 애플리케이션에 대응하는 어포던스 위에서 검출되고, 이에 응답하여, 카메라 애플리케이션은, 비디오 브라우징 애플리케이션이 상부 상에 오버레이된 채로, 열린다(도 5l). 이러한 방식으로, 사용자들은 (홈 스크린으로부터 또는 애플리케이션-스위처 사용자 인터페이스로부터) 개시되는 애플리케이션과 함께 디스플레이되는 오버레이된 애플리케이션들을 가질 수 있어서, 그들은 오버레이된 애플리케이션과의 지속적이고 중단되지 않는 상호작용을 가지면서, 또한 뒤에서 디스플레이되는 애플리케이션을 변경하게 된다.
도 5l은, 또한, 도크(408) 밖으로 어포던스를 드래그하는 데 사용되는 제스처(518)가 또한 어느 애플리케이션이 오버레이되는지를 전환하는 데 사용될 수 있음을 도시한다(예를 들어, 제스처(518)를 종료한 후에, 비디오 브라우징 애플리케이션으로부터 웹 브라우징 애플리케이션으로 전환하면서, 오버레이된 비디오 브라우징 애플리케이션 위에 웹 브라징 애플리케이션이 있는 것)(도 5m 내지 도 5o).
도 5a 내지 도 5o에 관한 추가 설명들이 방법(900)을 참조하여 하기에 제공된다.
이제 도 6a 내지 도 6q에 주목하며, 이들은, 일부 실시예들에 따른, 먼저 도크를 활성화하고 이어서 디스플레이 상의 애플리케이션-스위처 사용자 인터페이스를 활성화하는 것을 허용하는 연속 제스처를 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다.
도 6a에 도시된 바와 같이, 제1 애플리케이션(예컨대, 애플리케이션 1)이 제2 애플리케이션(예컨대, 애플리케이션 2 또는 비디오 애플리케이션)에 인접하게(또는, 달리 말하면, 나란히/분할-뷰 모드에서) 디스플레이된다. 애플리케이션 1 및 비디오 애플리케이션은 휴대용 다기능 디바이스(100)의 터치 스크린(112)의 실질적으로 모든 이용가능한 디스플레이 영역을 점유하는 디스플레이 영역(601a)에 디스플레이된다. 나란한 뷰를 디스플레이하는 동안, 디바이스(100)는 휴대용 다기능 디바이스(100)의 터치 스크린(112) 상의 사용자 입력, 예컨대 실질적으로 상향 드래깅, 스와이프, 또는 슬라이딩 제스처(602)를 수신한다. 사용자 입력(602)을 수신하는 것에 응답하여, 도 6b에 도시된 바와 같이, 디바이스는 터치 스크린(112)의 하부로부터 도크(408)를 점진적으로 디스플레이한다. 일부 실시예들에서, 디스플레이 영역(601a)의 일부분에 오버레이하는 도크(408)는 디바이스(100) 상에서 이용가능한 애플리케이션들에 대응하는 어포던스들, 예컨대, 디바이스(100) 상에서 이용가능한 전화 애플리케이션에 대응하는 전화 어포던스, 메일 애플리케이션에 대응하는 메일 어포던스, 웹 브라우징 애플리케이션에 대응하는 브라우저 어포던스, 메모 애플리케이션에 대응하는 메모 어포던스를 포함한다. 일부 실시예들에서, 제스처(602)가 디스플레이(112)를 가로질러 제1 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동한 후에, 이어서 도크(408)는 제스처(602)가 디스플레이(112)를 가로질러 이동함에 따라 제스처(602)를 따르기 시작한다. 이어서, 일부 실시예들에서, 제스처(602)가 제2 임계 거리(예컨대, 총 2 내지 4 센티미터, 또는 제1 임계 거리를 넘어서 추가의 1 내지 2 센티미터)만큼 이동한 후에, 도크(408)는 정적인 위치에서 유지되고 더 이상 제스처(602)를 따르지 않는다(도 6c). 제스처(602)가 제2 임계 거리를 넘어서 계속 이동함에 따라, 이어서 현재 디스플레이된 애플리케이션(예컨대, 애플리케이션 1 및 비디오 애플리케이션을 갖는 분할-뷰 모드)은 크기가 스케일 다운되기 시작하고 애플리케이션-스위처 사용자 인터페이스가 디스플레이된다(도 6d). 일부 실시예들에서, 제스처가 적어도 제3 임계 거리(예컨대, 총 3 내지 6 센티미터 또는, 제2 임계 거리를 넘어서 추가의 1 내지 2 센티미터)만큼 이동하면, 이어서 애플리케이션-스위처 사용자 인터페이스는 표현(604)이 그 각각의 연대 순서로 디스플레이된 상태로 디스플레이된다(도 6e)(이하에서 더 상세히 논의되는 바와 같음). 일부 실시예들에서, 이러한 임계 거리들 사이의 이동은 스크린의 표면과의 접촉을 중단하지 않으면서, 예컨대, 접촉의 어떠한 리프트오프 또는 해제 없이, 발생한다.
도 6d는 사용자 입력(602)을 수신하는 것에 응답하여 터치 스크린(112) 상에 디스플레이되는 애플리케이션-스위처 사용자 인터페이스를 예시한다. 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스는 휴대용 다기능 디바이스(100) 상에서 최근에 사용된 적어도 일부 애플리케이션들, 예컨대 애플리케이션 3(606), 애플리케이션 4(608), 애플리케이션 5(610), 및 애플리케이션 6(612) 등의 표현들을 디스플레이한다. 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스는 또한 도 6a에 도시된 디스플레이 영역(601a)의 표현(604)을 포함한다.
일부 실시예들에서, 도 6d에 도시된 바와 같이, 도 6a에 이전에 도시된 디스플레이 영역(601a)은 디스플레이된 표현(604) 내에 맞춰지기 위해 점진적으로 크기가 감소하거나 스케일링되도록 애니메이션화된다. 표현(604)은 애플리케이션 1 및 비디오 애플리케이션의 소형화된 나란한 뷰를 포함한다. 일부 실시예들에서, 최근에 사용된 애플리케이션(606 내지 612)의 표현들은 연대순으로 순서화된다. 예를 들어, 애플리케이션 3(606)은 애플리케이션 4(608)보다 더 최근에 사용되고, 따라서 애플리케이션 4(608)의 우측에 디스플레이된다. 마찬가지로, 애플리케이션 5(610)는 애플리케이션 6(612)보다 더 최근에 사용되었고, 따라서 애플리케이션 6 위에 디스플레이된다. 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스는 또한 볼륨 제어부, 밝기 제어부 등과 같은 통상적으로 사용되는 시스템 제어부들을 포함하는 제어 센터(614)를 포함한다.
도 6e는, 표현(604)이 미리결정된 크기, 예컨대 표현들(606 내지 612)과 동일한 크기에 도달할 때까지, 표현(604)의 축소 또는 스케일링이 계속되는 것을 예시한다. 도 6e는 추가로, 최근에 사용된 애플리케이션들(606 내지 612)의 표현들이 표현(604)을 위한 공간을 만들기 위해 재배열될 수 있는 것을, 예컨대, 표현들(606 내지 612)을 좌측으로 그리고/또는 상이한 행으로 이동시키는 것을 예시한다. 애플리케이션 1 및 애플리케이션 2(비디오 애플리케이션)가 가장 최근에 사용된 애플리케이션들이므로, 애플리케이션 1 및 애플리케이션 2를 표현하는 표현(604)은 표현들(606 내지 612)보다 앞에 배치된다.
도 6f 및 도 6g는 일부 실시예들에 따른, 애플리케이션-스위처 인터페이스에 디스플레이된 애플리케이션을 전환하는 것을 예시한다. 애플리케이션 1 및 애플리케이션 2에 대응하는 표현(604) 및 도크(408)를 포함하는 애플리케이션-스위처 인터페이스를 디스플레이하는 동안, 디바이스(100)는 도크(408) 내의 웹 브라우징 어포던스 위에서의 접촉(603), 및 그에 뒤이은 제스처(603)(예컨대, 디스플레이 영역에 디스플레이된 표현(604)을 향한 터치 스크린(112) 상의 접촉의 연속적인 이동)를 검출한다. 일부 실시예들에서, 이러한 제스처는 접촉 및 이동을 검출하는 것 사이에서 해제 또는 리프트오프를 검출하지 않으면서 발생한다. 제스처(603)는 사용자가 표현(604) 내의 애플리케이션 2 위에서의 접촉을 리프트오프할 때 종료된다. 리프트오프를 검출할 시, 도 6g에 도시된 바와 같이, 디바이스(100)는 표현(604) 내의 애플리케이션 2를 웹 브라우징 애플리케이션의 표현으로 대체한다. 대체 표현(616)은 애플리케이션 1의 표현 및 웹 브라우징 애플리케이션의 표현을 나란한 뷰로 포함한다. 일부 실시예들에서, 이들 2개의 애플리케이션들은 이제, 어느 하나가 고정된 관계로부터 해제될 때까지, 함께 고정되며, 이는 후술되는 바와 같다.
도 6h 내지 도 6m은 일부 실시예들에 따른, 애플리케이션-스위처 사용자 인터페이스 내로부터 애플리케이션을 해제하는 것을 예시한다. 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 동안, 디바이스(100)는, 도 6h에 도시된 바와 같이, 사용자 입력, 예컨대 표현(604) 내의 애플리케이션 2 위에서의 접촉(618a)을 검출한다.
일부 실시예들에서, 도 6i에 도시된 바와 같이, 시스템은 입력이 미리결정된 유형, 예를 들어, 비-탭 선택(618b), 예컨대 미리정의된 시간량 초과 동안 지속되는 눌러서 유지하기(press-and-hold) 접촉, 또는 임계 세기 초과의 세기를 갖는 접촉(예컨대, 위에서 더 상세히 기술된 바와 같은, 깊게/세게 누르기)인지 여부를 결정한다. 미리결정된 유형의 입력(618b)을 검출하는 것에 응답하여, 디바이스(100)는 표현(604) 내의 애플리케이션 2 위에 해제 어포던스(620)를 디스플레이한다. 후속적으로, 도 6j에 도시된 바와 같이, 해제 어포던스(620)의 선택(622)(예컨대, 해제 어포던스(620)를 탭핑)을 검출할 시, 디바이스(100)는 애플리케이션 2를 닫고, 도 6k에 도시된 바와 같이, 애플리케이션 2를 더 이상 포함하지 않도록 표현(604)을 업데이트한다. 일부 실시예들에서, 함께 고정되는 2개 초과의 애플리케이션들의 표현들은 또한 2개 초과의 애플리케이션들을 해제하고/하거나 대체하도록 상호작용될 수 있다.
다른 실시예들에서, 도 6l에 도시된 바와 같이, 입력은 드래그 제스처(618c)이다. 드래그 제스처(626)는 표현(604) 내의 애플리케이션 2 위에서의 접촉, 및 그에 뒤이은 표현(604)으로부터 멀어지는 접촉의 이동을 포함한다. 일부 실시예들에서, 드래그 제스처(626)는 미리정의된 시간량 초과 동안 지속되는 초기 접촉(예컨대, 눌러서 유지하기)을 포함한다. 일부 실시예들에서, 초기 접촉은 실질적으로 정지되어 있다. 접촉(626)이 미리정의된 영역(예컨대, 도크(408))으로 이동하거나 또는 표현(604)으로부터 미리결정된 거리보다 더 많이 이동하는 것을 검출하는 것에 응답하여, 디바이스(100)는, 도 6m에 도시된 바와 같이, 애플리케이션 2를 닫고 애플리케이션 2를 더 이상 포함하지 않도록 표현(604)을 업데이트한다.
도 6n 내지 도 6q는 일부 실시예들에 따른, 슬라이드-오버 디스플레이 모드 동안 수신되는 애플리케이션-스위처 사용자 인터페이스를 활성화하기 위한 제스처를 예시하며, 여기서 슬라이드-오버 디스플레이 모드의 표현은 애플리케이션-스위처 사용자 인터페이스에 포함되지 않는다.
도 6n에서, 애플리케이션 1이 디스플레이 영역(601b)에 디스플레이되는 동안, 애플리케이션 2는 디스플레이 영역(601b)에 오버레이로서 디스플레이된다. 일부 실시예들에서, 오버레이된 애플리케이션 2의 디스플레이는 애플리케이션 2의 상부 에지 근처의 핸들, 예컨대 어포던스(628)를 포함한다. 디스플레이 영역(601b)은 터치 스크린(112)의 실질적으로 모든 이용가능한 디스플레이 영역을 점유한다. 도 6o는, 오버레이된 뷰를 디스플레이하는 동안, 디바이스(100)가 휴대용 다기능 디바이스(100)의 터치 스크린(112) 상의 사용자 입력, 예컨대, 스크린의 에지로부터 멀어지는 실질적으로 드래깅, 스와이프, 또는 슬라이딩 제스처(602)(예컨대, 상향 드래그)를 수신하는 것을 예시한다. 사용자 입력(602)을 수신하는 것에 응답하여, 디바이스는 터치 스크린(112)의 하부로부터 도크(408)를 점진적으로 디스플레이하고, 도크(408)는 디스플레이 영역(601b)에(예컨대, 터치 스크린(112)의 하부에서) 오버레이한다. 제위치에 있을 때, 도크(408)는 제스처가 계속되는 경우에도 더 이상 이동하지 않을 것이고, 따라서 도크는 정지 위치에서 유지된다. 그러나, 도크(408)가 이동을 멈춘 후에 연속 제스처(602)가 에지로부터 더 멀리(예를 들어, 상향으로) 계속 이동함에 따라, 도 6p에 도시된 바와 같이 애플리케이션-스위처 인터페이스가 디스플레이된다.
제스처가 계속됨에 따라, 도 6n에 도시된 디스플레이 영역(601b)은 표현(634) 내에 맞춰지도록 점진적으로 크기가 감소되거나 스케일링된다. 표현(634)은 애플리케이션 1의 표현을 포함하지만, 오버레이된 애플리케이션 2의 표현은 포함하지 않는다. 도 6q는 표현(634)이 최근 사용된 애플리케이션들(636 내지 642)의 표현들과 동일한 크기일 때까지 표현(634)의 수축이 계속되는 것을 예시하는데, 최근 사용된 애플리케이션들(636 내지 642)의 표현들은 표현(634)을 위한 공간을 만들기 위해 재배열될 수 있다. 일부 실시예들에서, 3개의 상이한 임계 거리들(예컨대, 도 6a 내지 도 6e를 참조하여 위에서 논의된 제1, 제2, 및 제3 임계 거리들)은 도크(408)를 드러내기 시작할 때, 도크가 그의 정지 위치에 배치되어야 할 때, 및 애플리케이션-스위처 사용자 인터페이스가 디스플레이되어야 할 때를 결정하는 데 사용된다.
도 6a 내지 도 6q에 관한 추가 설명들이 방법들(1000, 1200)을 참조하여 하기에 제공된다.
도 7a 내지 도 7l은 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 예시적인 사용자 인터페이스들 및 제스처들을 예시하기 위해 사용되는 터치 감응형 디스플레이의 개략도들이다. 인스턴스는, 통상적으로 컴퓨터 프로그램의 런타임 동안 존재하는 객체의 구체적인 단일 어커런스이며, 예를 들어, 프로그램 또는 애플리케이션이 실행될 때마다 그것은 그 프로그램의 인스턴스이다.
일부 실시예들에서, 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 방법들이 터치 감응형 디스플레이(예컨대, 터치 스크린(112)) 및 하나 이상의 프로세서들(도 1a의 122)을 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 수행된다. 예를 들어, 도 7a는 터치 감응형 디스플레이(112) 및 하나 이상의 프로세서들(도 1a의 122)을 갖는 전자 디바이스(100) 상에서 실행되는 애플리케이션(702a)의 제1 인스턴스를 도시한다. 도시된 바와 같이, 애플리케이션의 제1 인스턴스는 터치 감응형 디스플레이(112)의 실질적으로 전부 상에 디스플레이된다.
이 예에서, 애플리케이션(702a)은 전자 메일, 이메일, 또는 메일 애플리케이션이지만, 다른 실시예들에서, 애플리케이션은, 전자 디바이스(100) 상에서 하나 초과의 인스턴스를 실행할 수 있고 터치 스크린(112) 상에 애플리케이션의 하나 초과의 인스턴스를 디스플레이할 수 있는 임의의 애플리케이션일 수 있다(예컨대, 도 1a 및 도 2를 참조하여 위에서 논의된 애플리케이션들 중 임의의 것).
도 7a에 도시된 바와 같이, 메일 애플리케이션의 제1 인스턴스의 받은편지함이 터치 스크린(112) 상에 디스플레이된다. 이 예에서, 디스플레이된 받은편지함은 좌측 패널 및 우측 패널을 포함한다. 좌측 패널은 메일 애플리케이션에 의해 수신된 개별 이메일들을 열거하고, 우측 패널은 수신된 이메일들 중 하나를 더 상세히 보여준다.
도 7b는 터치 스크린(112) 상의 사용자 입력(예컨대, 탭 또는 누르기와 같은 접촉)(704)을 도시한다. 여기서, 사용자 입력 또는 접촉(704)은 우측 패널에 도시된 열린 이메일의 답장, 전달, 또는 인쇄에 사용되는 화살표 어포던스 상에 또는 그 위에 있다. 화살표 어포던스에서의 터치 스크린(112)(본 명세서에서 터치 감응형 디스플레이 또는 터치 감응형 스크린 또는 터치 감응형 디스플레이 스크린으로도 지칭됨)과의 접촉 시에, 터치 스크린(112) 및 프로세서들(도 1a의 122)을 포함하는 시스템은 사용자가 화살표 어포던스를 선택했다고 결정하고, 이메일에 답장하기, 이메일을 전달하기, 또는 이메일을 인쇄하기 위한 어포던스들을 디스플레이한다. 이 예에서, 도 7b에 도시된 바와 같이, 이러한 어포던스들은 열린 이메일에 오버레이하는 팝업 창으로 디스플레이된다.
도 7c는 터치 스크린(112) 상의 다른 사용자 입력(예컨대, 접촉 또는 제스처)(706)을 도시한다. 여기서, 사용자 입력(예컨대, 접촉 또는 제스처)(706)은 열린 이메일에 답장하기 위해 사용되는 답장 어포던스 상에 또는 그 위에 있다. 일부 실시예들에서, 사용자 입력(예컨대, 접촉 또는 제스처)(706)은 간단한 탭 또는 터치가 아니라, 대신에 깊게 또는 세게 누르기(예컨대, 미리결정된 접촉력 또는 세기를 초과하는 접촉을 갖는 누르기 - 도 3a 내지 도 3c에 관련된 설명 참조) 또는 미리결정된 시간량(예컨대, 1초)보다 긴 시간 동안의 눌러서 유지하기이다.
예를 들어, 터치 스크린(112), 프로세서들(도 1a의 122), 접촉 세기 센서들(도 1의 165), 및/또는 세기 센서 제어기(도 1의 159)를 포함하는 시스템은, 사용자 입력(예컨대, 접촉 또는 제스처)(706)이 답장하기 어포던스 위에서의 미리결정된 유형(예컨대, 깊게 누르기 또는 눌러서 유지하기)인지 여부를 결정한다. 사용자 입력(706)이 답장하기 어포던스 위에서의 미리결정된 유형이라는 결정 시, 도 7d에 도시된 바와 같이, 터치 스크린(112)은 이전 이메일에 답장하는 새로운 이메일의 미리보기(763)를 디스플레이한다. 이 예에서, 이전 이메일에 답장하는 새로운 이메일의 미리보기(763)는 이전 이메일에 오버레이하는 팝업 창으로 디스플레이된다.
도 7e는 도 7d에 도시된 예를 계속한다. 여기서, 사용자 입력(706)이 미리결정된 유형(예를 들어, 깊게 누르기 또는 눌러서 유지하기)이었음을 검출한 후에 답장하기 어포던스와의 입력 또는 접촉의 어떠한 리프트오프도 검출하지 않으면서, 터치 스크린(112) 및 프로세서들(도 1a의 122)은 미리결정된 유형의 제스처(706)를 검출한다. 일부 실시예들에서, 미리결정된 유형의 제스처는 소정 거리(예컨대, 1 내지 2 센티미터)만큼의(또는 그보다 큰) 접촉의 이동이다. 다른 실시예들에서, 미리결정된 유형의 제스처는 터치 스크린의 미리정의된 제2 부분(예컨대, 스크린의 우측 1/3 내지 1/2)으로의 접촉의 이동이다. 접촉(706)의 이러한 제스처 또는 이동은 도 7d의 접촉(706)으로부터 연장되는 화살표에 의해 도시된다.
제스처(706)가 미리결정된 유형임을 검출할 시, 애플리케이션의 제1 인스턴스는, 도 7e에 도시된 바와 같이, 터치 스크린 디스플레이의 제1 부분 내로 크기조정된다. 도 7e에 도시된 이러한 예에서, 제1 부분은 터치 스크린의 좌측 절반이다. 동시에, 터치 스크린의 나머지 부분(예컨대, 제1 부분을 제외한 전체 터치 스크린 영역)은 미리보기(763) 이외에는 콘텐츠가 비워져서, 사용자가 스크린과의 그들의 접촉을 해제하거나 리프트오프하는 경우 (미리보기(763)에 의해 도시된 바와 같이) 이전 이메일에 답장하는 새로운 이메일이 결국 점유할 영역에 대한 표시를 사용자에게 제공하게 된다. 일부 실시예들에서, 터치 스크린의 이러한 나머지 부분은 위에서 언급된 제2 부분(762)이다.
사용자가 이전 이메일에 답장하는 새로운 이메일을 분할-뷰 모드에서, 예컨대, 메일 애플리케이션의 제1 인스턴스 옆에서 열기를 원하지 않는 경우, 사용자는 접촉을 답장하기 어포던스 위로 다시 이동시키고 터치 스크린의 표면으로부터 접촉을 리프트오프 또는 해제할 수 있다. 그러나, 사용자가 미리결정된 유형의 제스처 또는 접촉 후에 터치 스크린과의 접촉을 리프트오프하거나 해제하는 경우(위의 도 7d 참조), 이전 이메일에 답장하는 새로운 이메일은 도 7f 또는 도 7g에 도시된 바와 같이 터치 스크린의 제2 부분(762)에 디스플레이된다. 일부 실시예들에서, 접촉의 리프트오프 또는 해제를 검출할 시, 미리보기(763)(도 7e)는 전체 제2 부분(762)(도 7e)을 점유하도록 확장된다. 일부 실시예들에서, 이러한 확장은 애니메이션화된다.
일부 실시예들에서, 미리보기(763)(도 7e)가 전체 제2 부분(762)을 점유하도록 확장되면, 메일 애플리케이션의 제1 인스턴스는 도 7f에 도시된 바와 같이 제1 부분에 디스플레이된다. 다른 실시예들에서, 미리보기(763)(도 7e)가 전체 제2 부분(762)을 점유하도록 확장되면, 도 7g에 도시된 바와 같이, (제2 부분에 보여진 새로운 이메일이 답장하고 있는) 이전 이메일이 제1 부분에 디스플레이된다. 도 7g에 관련된 일부 실시예들에서, 미리보기(763)(도 7e)가 전체 제2 부분(762)을 점유하도록 확장되는 동안, 메일 애플리케이션의 제1 인스턴스는 스크린에서 벗어나도록 (예컨대, 좌측으로) 슬라이딩되면서 이전 이메일은 제1 부분 내로 (예컨대, 우측으로) 애니메이션화된 시퀀스로 슬라이딩된다.
도 7h는 동일한 애플리케이션(여기서, 메일 애플리케이션)의 2개 이상의 인스턴스들을 활성화하기 위한 사용자 인터페이스들 및 제스처들의 다른 예를 도시한다. 도 7a에서와 같이, 터치 스크린의 디스플레이가능한 영역의 실질적으로 전부를 점유하는 애플리케이션의 제1 인스턴스가 디스플레이된다. 도시된 바와 같이, 사용자 입력 또는 접촉(712)이 선택가능한 어포던스(여기서는, 받은편지함에 디스플레이된 수신된 이메일들의 목록 내의 개별 이메일)에서 검출된다.
예를 들어, 터치 스크린(112), 프로세서들(도 1a의 122), 접촉 세기 센서들(도 1의 165), 및/또는 세기 센서 제어기(도 1의 159)를 포함하는 시스템은, 사용자 입력(예컨대, 접촉 또는 제스처)(712)이 답장하기 어포던스 위에서의 미리결정된 유형(예컨대, 깊게 누르기 또는 눌러서 유지하기; 여기에 포함된 상기 설명 참조)인지 여부를 결정한다. 사용자 입력(712)이 어포던스 위에서의 미리결정된 유형이라는 결정 시, 도 7i에 도시된 바와 같이, 터치 스크린(112)은 애플리케이션의 새로운 인스턴스(여기서, 받은편지함 내의 선택된 이메일에 답장하는 이메일)의 미리보기(765)를 디스플레이한다. 이 예에서, 미리보기(765)는 애플리케이션(예컨대, 메일 애플리케이션)의 제1 인스턴스에 오버레이하는 팝업 창으로 디스플레이된다.
도 7i에 도시된 바와 같이, 입력 또는 접촉(712)의 어떠한 리프트오프도 검출하지 않으면서, 그리고 사용자 입력(712)이 미리결정된 유형이었음을 검출한 후에, 예를 들어, 터치 스크린(112) 및 프로세서들(도 1a의 122)을 포함하는 시스템은 미리결정된 유형의 제스처(712)를 검출한다. 일부 실시예들에서, 미리결정된 유형의 제스처는 소정 거리(예컨대, 1 내지 2 센티미터)만큼의(또는 그보다 큰) 접촉의 이동이다. 다른 실시예들에서, 미리결정된 유형의 제스처는 터치 스크린의 미리정의된 제2 부분(예컨대, 스크린의 우측 1/3)으로의 이동이다. 접촉(706)의 이러한 제스처 또는 이동은 도 7i에서 화살표로 도시된다.
제스처(712)가 미리결정된 유형임을 검출할 시, 애플리케이션의 제1 인스턴스(예컨대, 받은편지함을 디스플레이하는 메일 애플리케이션)는, 도 7j에 도시된 바와 같이, 터치 스크린 디스플레이의 제1 부분 내로 크기조정된다. 도 7j에 도시된 이러한 예에서, 제1 부분은 터치 스크린의 좌측 절반이다. 동시에, 터치 스크린의 나머지 부분(예컨대, 제1 부분을 제외한 전체 터치 스크린 영역)은 미리보기(765) 이외에는 콘텐츠가 비워져서, 사용자가 스크린과의 그들의 접촉을 리프트오프하는 경우 (미리보기(765)에 의해 도시된 바와 같이) 새로운 답장 이메일이 결국 점유할 영역에 대한 시각적 표시를 사용자에게 제공하게 된다. 일부 실시예들에서, 터치 스크린의 이러한 나머지 부분은 위에서 언급된 제2 부분(764)이다.
사용자가 새로운 답장 이메일을 분할 뷰 모드에서 메일 애플리케이션의 제1 인스턴스 옆에서 열기를 원하지 않는 경우, 사용자는 접촉을 그것이 시작된 곳으로 다시 이동시키고 터치 스크린의 표면으로부터 접촉을 리프트오프 또는 해제할 수 있다. 그러나, 사용자가 미리결정된 유형의 제스처 또는 접촉 후에 터치 스크린과의 접촉을 리프트오프하거나 해제하는 경우(위의 도 7i 참조), 이전 이메일에 답장하는 새로운 이메일은 도 7k에 도시된 바와 같이 터치 스크린의 제2 부분(762)에 디스플레이된다. 일부 실시예들에서, 접촉의 리프트오프 또는 해제를 검출할 시, 미리보기(765)(도 7j)는 전체 제2 부분(764)(도 7j)을 점유하도록 확장된다. 일부 실시예들에서, 이러한 확장은 애니메이션화된다.
일부 실시예들에서, 미리보기(765)(도 7j)가 전체 제2 부분(764)을 점유하도록 확장되면, 메일 애플리케이션의 제1 인스턴스는 도 7k에 도시된 바와 같이 제1 부분에 디스플레이된다. 다른 실시예들에서, 미리보기(765)(도 7j)가 전체 제2 부분(764)을 점유하도록 확장되면, (제1 부분에 보여진 새로운 이메일이 답장하고 있는) 이전 이메일이 도 7l에 도시된 바와 같이 제1 부분에 디스플레이된다. 도 7l에 관련된 일부 실시예들에서, 미리보기(765)(도 7j)가 전체 제2 부분(764)을 점유하도록 확장되는 동안, 메일 애플리케이션의 제1 인스턴스는 스크린에서 벗어나도록 (예컨대, 좌측으로) 슬라이딩되면서 이전 이메일은 제1 부분 내로 (예컨대, 우측으로) 애니메이션화된 시퀀스로 슬라이딩된다.
도 7a 내지 도 7g 및 도 7h 내지 도 7k와 관련하여 전술된 바와 같이, 애플리케이션의 제2 인스턴스(예컨대, 메일 애플리케이션의 이메일 답장하기)는 분할 스크린 모드에서 터치 스크린 상에서 나란히 동일한 애플리케이션의 제1 인스턴스에 인접하게 (예컨대, 메일 애플리케이션의 받은편지함을 디스플레이하면서) 열릴 수 있다. 다른 실시예들은 애플리케이션의 2개 초과의 인스턴스들을 분할-뷰 모드에서 나란히 디스플레이하는 데 사용되는 반면, 다른 추가 실시예들은 다수의 애플리케이션들을 동일한 애플리케이션의 다수의 인스턴스들과 함께 분할-뷰 모드에서 나란히 디스플레이한다.
일부 실시예들에서, 모든 디스플레이된 애플리케이션들의 조합, 애플리케이션들의 인스턴스들, 또는 애플리케이션들과 애플리케이션들의 다수의 인스턴스들의 조합은, 이들이 실질적으로 터치 스크린의 전체 디스플레이가능한 영역을 점유하도록 디스플레이된다.
일부 실시예들에서, 도 7f, 도 7g, 도 7k, 및 도 7l에 도시된 바와 같이, 경계 어포던스(710)가 애플리케이션의 2개의 디스플레이된 인스턴스들 사이에, 예컨대 제1 부분과 제2 부분 사이에 디스플레이된다. 이러한 경계 어포던스는 2개의 인스턴스들 사이의 경계를, 예컨대 좌측 또는 우측으로 드래그하는 데 사용될 수 있다. 경계 어포던스(710)를 드래그하는 것은 애플리케이션의 각각의 인스턴스들을 크기조정하고, 리프트오프 시에 각각의 인스턴스들을 리프트오프가 발생했을 때의 그들 각각의 크기들로 유지한다. 추가의 상세사항들이 공동 소유의 미국 출원 제14/732,618호에서(예컨대, 도 37h 내지 도 37m, 및 이들 도면을 설명하는 관련 단락들에서) 발견될 수 있으며, 이는 위에서 그 전체가 참고로 포함되었다.
일부 실시예들에서, 애플리케이션의 제1 및 제2 인스턴스들은 전자 디바이스의 하나 이상의 프로세서들(도 1a의 122) 상에서 실행되는 별개의 실행가능한 프로세스들이다(예컨대, 둘 모두 개별적으로 전자 디바이스의 하나 이상의 프로세서들 상에서 실행되고 있는 애플리케이션의 2개의 별개의인스턴스화들).
일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 애플리케이션 내의 다른 특징들을 열도록 선택한 후에 애플리케이션의 소정 특징들에의 액세스를 잃는다(예컨대, 사용자들은 수신된 이메일에 답장하기 위한 옵션을 선택한 후에 그 수신된 이메일을 볼 수 없을 수 있다). 단일 애플리케이션의 다수의 인스턴스들을 여는 것은 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 한다. 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 하는 것은 (예컨대, 사용자들이, 이들 소정 특징들이 닫힌 후에 그것들을 재개하기 위해 다수의 입력들을 제공할 필요 없이, 이들 소정 특징들을 사용할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 이들 소정 특징들이 닫혔거나 더 이상 디스플레이되지 않은 후 이들 소정 특징들을 재개하거나 이들에 액세스하는 방법을 알아내기 위해 다수의 제스처들 또는 입력들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
도 7a 내지 도 7l에 관한 추가 설명들이 방법(1100)을 참조하여 하기에 제공된다.
도 8a 내지 도 8c는 일부 실시예들에 따른, 어포던스를 도크 밖으로 드래그함으로써 분할-뷰 모드(여기서 다수의 애플리케이션들이 동시에 디스플레이되고 사용을 위해 이용가능함)를 활성화하는 방법의 흐름도 표현이다. 도 4a 내지 도 4aa는 도 8a 내지 도 8c의 방법들 및/또는 프로세스들을 예시하기 위해 사용된다. 후속하는 예들 중 일부가 (터치 감응형 표면과 디스플레이가 조합된) 터치 감응형 디스플레이 상의 입력들을 참조하여 주어질 것이지만, 일부 실시예들에서, 디바이스는 도 1d에 도시된 바와 같이 디스플레이(194)와 별개인 터치 감응형 표면(195) 상의 입력들을 검출한다.
일부 실시예들에서, 방법(800)은 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100)) 및/또는 전자 디바이스의 하나 이상의 컴포넌트들(예컨대, I/O 서브시스템(106), 운영 체제(126) 등)에 의해 수행된다. 일부 실시예들에서, 방법(800)은, 비일시적 컴퓨터 판독가능 저장 매체에 저장되며 디바이스의 하나 이상의 프로세서들, 예컨대 디바이스(100)(도 1a)의 하나 이상의 프로세서들(122)에 의해 실행되는 명령어들에 의해 통제된다. 설명의 용이함을 위해, 하기는 디바이스(100)에 의해 수행되는 바와 같은 방법(800)을 기술한다. 일부 실시예들에서, 도 1a를 참조하면, 방법(800)의 동작들은, 적어도 부분적으로, 멀티태스킹 모듈(예컨대, 멀티태스킹 모듈(180)) 및 그의 컴포넌트들, 접촉/모션 모듈(예컨대, 접촉/모션 모듈(130)), 그래픽 모듈(예컨대, 그래픽 모듈(132)), 및 터치 감응형 디스플레이(예컨대, 터치 감응형 디스플레이 시스템(112))에 의해 수행되거나 또는 그를 사용한다. 방법(2200)에서의 일부 동작들은 선택적으로 조합되고/되거나, 일부 동작들의 순서는 선택적으로 변경된다.
후술되는 바와 같이, 방법(800)은 도크에서의 제스처를 사용하여 분할-뷰 모드를 활성화하고 이어서 터치 감응형 디스플레이 상에서 분할-뷰 모드로 디스플레이된 애플리케이션들과 상호작용하기 위한 직관적인 방식들을 제공한다. 본 방법은 분할-뷰 모드를 활성화하기 위해 사용자로부터 요구되는 입력들의 수를 감소시키고(예컨대, 사용자들은 다수의 입력들을 수행하는 대신에 간단한 드래그 제스처를 제공하기만 하면 됨), 이에 의해, 방법(800)을 구현하는 전자 디바이스의 배터리 수명이 연장되는 것을 보장하는데, 이는 더 적은 수의 입력들을 프로세싱하는 데 더 적은 전력이 요구되기 때문이다(그리고 이러한 절감들은 사용자들이 더 직관적이고 간단한 제스처에 점점 더 친숙해짐에 따라 반복해서 실현될 것이다). 아래에서 또한 상세히 설명되는 바와 같이, 방법(800)의 동작들은 사용자들이 지속적인 상호작용들에 관여할 수 있는 것을 보장하는 것을 돕고(예컨대, 그들은 그들의 디바이스들과의 상호작용들을 중단시키는 행동들을 빈번하게 실행취소할 필요가 없음), 방법(800)의 동작들은 더 효율적인 인간-기계 인터페이스들을 생성하는 것을 돕는다.
일부 실시예들에서, 방법(800)을 수행하도록 구성된 디바이스는, 먼저, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 하나 이상의 애플리케이션들의 제1 세트를 디스플레이한다(802). 예를 들어, 하나 이상의 애플리케이션들의 제1 세트는 단일 애플리케이션(예컨대, 터치 감응형 디스플레이(112)의 실질적으로 전부를 점유하는, 도 4a에 도시된 지도 애플리케이션)을 포함할 수 있거나, 또는 도 4i에 도시된 바와 같이, 하나 이상의 애플리케이션들의 제1 세트는 하나 초과의 애플리케이션을 포함할 수 있다(예컨대, 디스플레이(112)의 좌측 부분 상의 애플리케이션 1 및 디스플레이(112)의 우측 부분 상의 비디오 브라우징 애플리케이션을 포함하여서, 이들 2개의 애플리케이션들이 도 4i에서 함께 분할-뷰 모드로 디스플레이되고, 2개의 애플리케이션들의 조합은 터치 감응형 디스플레이의 실질적으로 전부를 점유하도록 한다).
하나 이상의 애플리케이션들의 제1 세트를 디스플레이하는 동안(804), 디바이스는 디스플레이 영역의 제1 부분에 오버레이하는 도크(예컨대, 도 4a의 도크(408))를 디스플레이한다(806). 도크를 디스플레이하는 것은 터치 감응형 디스플레이 상의 초기 접촉을 검출하는 것, 및 터치 감응형 디스플레이의 하부 에지에 실질적으로 수직인(예컨대, 수직에서 +/-5 도 이내) 방향으로의 초기 접촉의 이동을 검출하는 것에 응답하여, 터치 감응형 디스플레이의 제1 부분에 도크를 디스플레이하는 것을 포함한다(808). 다시 말하면, 도크는 도 4a 내지 도 4c에서 제스처(450)에 대해 도시된 바와 같이 실질적으로 상향 방향으로 드래그함으로써 활성화되고, 방법(1000)을 참조하여 이하에서 더 상세히 기술된다.
일부 실시예들에서, 도크(예컨대, 도 4a의 도크(408))는 복수의 어포던스들을 포함하는 사용자 인터페이스 객체이며, 각각의 어포던스는 하나 이상의 애플리케이션들의 각각의 세트에 대응한다. 하나 이상의 애플리케이션들의 각각의 세트들은 단일 애플리케이션을 포함할 수 있거나(예컨대, 웹 브라우징 애플리케이션에 대응하는 도 4c의 어포던스(220)), 또는 다수의 애플리케이션들을 포함할 수 있다(예를 들어, 비디오 브라우징 애플리케이션 옆에 고정된 지도 애플리케이션에 대응하는 도 4s에 도시된 어포던스(492)와 같은, 분할-뷰 모드에서 함께 디스플레이/고정되는 다수의 애플리케이션들). 일부 실시예들에서, 도크는 어포던스들의 2개의 상이한 세트들, 즉 디폴트 어포던스들의 제1 세트(예컨대, 도크에 디스플레이된 디바이더의 좌측 상의 전화 및 메일 애플리케이션들에 대응하는 어포던스들) 및 최근에 사용된 어포던스들의 제2 세트(예컨대, 디바이더의 우측 상의 웹 브라우징 및 비디오 브라우징 애플리케이션에 대응하는 어포던스들)를 포함한다. 일부 실시예들에서, 도크는 최근에 사용된 어포던스들의 제2 세트 내에, 미리결정된 수(예컨대, 2, 3, 4, 또는 5)의 최근에 사용된 애플리케이션들을 포함한다.
이어서, 디바이스는 도크 내에 디스플레이된 제1 어포던스 위에서의 터치 감응형 디스플레이 상의 (도크를 활성화하는 데 사용된 초기 접촉과는 별개인) 접촉을 검출하고, 제1 어포던스는 하나 이상의 애플리케이션들의 제2 세트와 연관된다(810). 예를 들어, 제스처(452)와 연관된 예시적인 접촉은 비디오 브라우징 애플리케이션에 대응하는 어포던스(232) 위에서 수신되는데, 이는 도 4e에 도시된 바와 같다. 다른 예로서, 도 4v에 도시된 바와 같이, 제스처(468)와 연관된 다른 예시적인 접촉이 어포던스(468) 위에서 수신되고, 어포던스(468)는 분할-뷰 모드와 연관되며, 여기서 지도 애플리케이션이 메시징 애플리케이션에 인접하게 디스플레이되고 웹 브라우징 애플리케이션은 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 나란한 뷰로 디스플레이된다.
이어서, 도크로부터 멀어지는 접촉의 이동이 검출된다(812). 일부 실시예들에서, 이동은 터치 감응형 디스플레이로부터의 접촉의 어떠한 리프트오프도 검출하지 않으면서 검출되는 연속적인 이동이다.
일부 실시예들에서, 접촉의 임의의 리프트오프를 검출하기 전에, 접촉이 도크로부터 임계 거리(예컨대, 1 내지 2 센티미터)만큼 멀리 이동할 때까지 접촉에 근접하게 어포던스의 표현을 디스플레이한다(814). 예를 들어, 어포던스의 표현은 접촉의 매우 근접한 근접지(예컨대, 1 px 또는 2 px) 내에 또는 접촉의 바로 아래에 디스플레이되어서, 사용자는 접촉을 이동시키면서 터치 감응형 디스플레이를 가로질러 이동하는 어포던스의 표현을 볼 수 있다(도 4e 및 도 4f에 도시된 바와 같이, 어포던스(232)는 접촉이 도크(408)로부터 멀어지게 이동함에 따라 제스처(452)와 연관된 접촉을 따르는 것으로서 도시된다).
접촉이 도크로부터 적어도 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 디바이스는 어포던스의 표현을 디스플레이하는 것을 중지하고, 접촉에 근접하게 제2 애플리케이션과 연관된 콘텐츠의 썸네일을 디스플레이한다(예컨대, 접촉이 도크를 둘러싸는 경계로부터 임계 거리를 넘어 이동하였으면, 미리보기/썸네일(456)은 접촉 아래에 보여진다). 콘텐츠의 썸네일은 제2 애플리케이션과 연관된 콘텐츠의 소형화된 미리보기에 대응하고, 소형화된 미리보기는 제2 애플리케이션이 열릴 때 제2 애플리케이션 내에 디스플레이될 콘텐츠를 포함하고, 그 콘텐츠는 제2 애플리케이션이 열릴 때 그 크기의 대략 1/5 내지 1/10로 디스플레이된다. 이러한 방식으로, 사용자는 그들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 인식하고 이해하는 것을 돕는 추가적인 시각적 피드백을 제공받는다. 이러한 추가적인 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 더 잘 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 이차 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았으면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 디바이스는 또한 접촉이 그 위에 있는 터치 감응형 디스플레이의 부분의 디스플레이 크기와 매칭되도록 썸네일을 크기조정한다. 예를 들어, 미리보기(498)(도 4s)는, 제스처(466)와 연관된 접촉이 애플리케이션 1이 디스플레이되는 디스플레이(112)의 제1 부분 위에 있는 동안, 제1 디스플레이 크기를 가질 수 있다. 그리고, 미리보기(498)는, 제스처(466)와 연관된 접촉이 비디오 브라우징 애플리케이션이 디스플레이되는 디스플레이(112)의 제2 부분 위에 있는 동안, 제1 디스플레이 크기와 별개인 제2 디스플레이 크기를 가질 수 있다. 이러한 방식으로, 사용자는 그들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 인식하고 이해하는 것을 돕는 추가의 시각적 피드백을 제공받는다. 이러한 추가의 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 더 잘 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 이차 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았으면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 썸네일을 제공하는 대신에, 드래그되고 있는 애플리케이션-특정 어포던스의 표현을 포함하는 사용자 인터페이스 객체(예컨대, UI 객체들(473-A, 473-B, 및/또는 473-C))가 디스플레이된다. 이들 썸네일들의 사용에 관하여 전술된 특징들은 또한, 사용자 인터페이스 객체들이 썸네일들 대신에 제공되는 실시예들에 적용된다. 사용자 인터페이스 객체들의 사용들의 예들이 도 4ab 내지 도 4ae, 도 4ag 및 도 4ah, 도 4aj 및 도 4ak, 도 4ao 내지 도 4aq에 예시되고, 이들 예들의 설명이 또한 위에 제공된다.
따라서, 일부 실시예들에서, 방법 동작(814)은, 접촉이 도크로부터 임계 거리만큼 멀리 이동할 때까지 접촉에 근접하게 제1 어포던스의 표현을 디스플레이하는 것; 및 접촉이 도크로부터 적어도 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 접촉에 근접하게 제1 어포던스의 표현을 둘러싸는 사용자 인터페이스 객체를 디스플레이하는 것을 포함하는 동작에 의해 대체될 수 있다(또는 새로운 방법 동작이 방법 동작(814)에 대한 대안으로서 추가될 수 있다). 예를 들어, 도 4ab 및 도 4ac에서, 비디오 브라우징 어포던스(232)는 사용자 인터페이스 객체(473-A)에 의해 둘러싸인다(그리고 이 형상은 접촉이 제1 및 제2 부분들 위로 이동함에 따라 변화하여, 이어서 UI 객체가 도 4ap 및 도 4aq에서 각각 UI 객체들(473-B, 473-C)에 대해 도시된 것과 실질적으로 유사한 형상을 갖도록 할 수 있다).
접촉이 제1 부분과는 상이한 디스플레이 영역의 제2 부분 위에 있는 동안 터치 감응형 디스플레이로부터의 접촉의 리프트오프를 검출할 시(예컨대, 도 4h와 도 4i 사이의 제스처(452)와 연관된 접촉의 리프트오프, 또는 도 4t와 도 4u 사이의 제스처(466)와 연관된 접촉의 리프트오프), 이어서, 디바이스는 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 (i) 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 (동시에) 디스플레이한다(818). 일부 실시예들에서, 디스플레이 영역의 제1 부분은 하나 이상의 애플리케이션들의 제1 세트(예컨대, 도 4e의 애플리케이션 1)를 디스플레이하기 위해 사용되는 부분이고, 디스플레이 영역의 제2 부분은 하나 이상의 어포던스들의 제2 세트를 디스플레이하는 데 이용가능한 디스플레이 영역의 부분이다(예컨대, 도 4f의 미리정의된 영역(454)은 접촉의 리프트오프를 검출할 시에 하나 이상의 애플리케이션들의 제2 세트를 디스플레이하는 데 이용가능하다).
일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 2개 이상의 애플리케이션들을 동작시키기 위해 비효율적이고 시간-소모적인 상호작용들을 채용해야 한다. 사용자가 단일의 간단한 제스처(예컨대, 적어도 방법(800)의 동작들(804 내지 812 및 818)에 관해 상술된 바와 같이, 단일 손가락을 사용하여 도크로부터 그리고 메인 디스플레이 영역 상으로 어포던스를 드래그함)를 사용하도록 하는 것은, 사용자들이 2개 이상의 애플리케이션들이 동시에 디스플레이되고 동작되는 모드를 용이하고 효율적으로 활성화할 수 있게 한다. 사용자들이 이러한 모드를 용이하고 효율적으로 활성화할 수 있게 하는 것은, (예컨대, 사용자들이 단일 제스처를 사용하여 모드를 활성화할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 2개 이상의 애플리케이션들에 액세스하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
이제 도 8b를 참조하면, 일부 실시예들에서, 터치 감응형 디스플레이로부터의 접촉의 임의의 리프트오프를 검출하기 전에 그리고 접촉이 도크로부터 멀리 적어도 임계 거리만큼 이동한 후에, 디바이스는 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여, 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 디스플레이 영역의 제2 부분을 드러낸다(820). 일부 실시예들에서, 하나 이상의 애플리케이션들의 제1 세트는 디스플레이 영역의 미리결정된 백분율(예컨대, 디스플레이 영역의 대략 75% 또는 66%)을 점유하도록 크기조정되고, 제2 부분(예를 들어, 미리결정된 영역(454), 또는 도 4t의 비디오 브라우징 애플리케이션을 디스플레이하는 데 사용된 그 부분과 같은, 고정된 애플리케이션을 디스플레이하는 데 사용되는 디스플레이 영역의 부분)은 이어서 디스플레이 영역의 미리결정된 나머지 백분율(예를 들어, 디스플레이 영역의 대략 25% 또는 34%)을 점유한다.
특정 예로서, 도 4e 내지 도 4h에 도시된 바와 같이, 하나 이상의 애플리케이션들의 제1 세트가 단일 애플리케이션(예컨대, 도 4e의 애플리케이션 1)에 대응하는 경우, 단일 애플리케이션은 크기가 감소되어, 크기조정된 단일 애플리케이션에 인접하게 하나 이상의 어포던스들의 제2 세트를 디스플레이하기 위한 공간을 만들 수 있다(예컨대, 미리정의된 영역의 미리보기가 제시되고, 일부 실시예들에서 이러한 미리보기는 홈 스크린과 연관된 배경화면을 일시적으로 보여주는 것을 포함한다).
하나 이상의 애플리케이션들의 제1 세트가 다수의 애플리케이션들(예컨대, 도 4n에 도시된 바와 같이, 제1 고정된 애플리케이션 1 및 제2 고정된 비디오 브라우징 애플리케이션)에 대응할 때, 이어서, 다수의 애플리케이션들 중 하나는, (디바이스의 홈 스크린과 연관된 배경화면을 디스플레이하는 것을 포함할 수 있는) 미리정의된 영역(454)의 미리보기의 디스플레이를 위한 공간을 만들기 위해, 더 이상 디스플레이되지 않을 수 있다(도 4t). 일부 다른 실시예들에서, 하나 이상의 애플리케이션들의 제1 세트가 다수의 애플리케이션들에 대응할 때, 이어서, 다수의 애플리케이션 둘 모두가 디스플레이된 채로 유지될 수 있고(예컨대, 도 4w에 도시된 바와 같음) 다수의 애플리케이션 중 하나는 단지 제스처와 연관된 접촉(예컨대, 도 4w의 제스처(468))의 리프트오프 이후에 디스플레이로부터 제거된다.
일부 경우들에서, 전자 디바이스들의 사용자들은 터치 감응형 디스플레이 상의 소정 상호작용들로부터 야기될 변화들을 인식하지 못할 수 있다. 명확한 시각적 피드백(예컨대, 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여 디스플레이 영역의 제2 부분을 드러내는 것)은 사용자가 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 접촉의 리프트오프를 검출하기 전에 그리고 접촉이 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 또는 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부와 경계를 이루는 터치 감응형 디스플레이의 에지로부터 임계 거리(예를 들어, 1 내지 2 센티미터, 예컨대 도 4ab의 임계치들(464, 465)) 내로 이동한 후, 본 방법은 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 디스플레이 영역의 제2 부분을 드러내는 단계를 포함한다(예컨대, 도 4ad 및 도 4ae에 도시된 바와 같음)(820A).
하나의 특정 예시적인 실시예에서, 하나 이상의 애플리케이션들의 제1 세트가 단일 애플리케이션(예컨대, 도 4ab의 애플리케이션 1)에 대응할 때, 단일 애플리케이션들은 단지, 도크(408) 밖으로 애플리케이션-특정 어포던스를 드래그하고 있는 제스처(예컨대, 도 4ab의 제스처(472))가 도 4ab의 임계치(464 또는 465)와 같은 임계치를 넘어 가로질렀다고 결정할 시 미리정의된 영역의 미리보기를 드러내기 위한 공간을 만들기 위해 크기가 감소된다. 예들이 도 4ab 내지 도 4af에 도시되고 위에서 더 상세히 기술된다.
(전술된 하나의 특정 예시적인 실시예와 같은) 일부 실시예들에서, 하나 이상의 애플리케이션들의 제1 세트가 다수의 애플리케이션들에 대응할 때, 이어서 다수의 애플리케이션들은 미리정의된 영역(454)의 미리보기를 디스플레이하기 위해 크기조정되지 않을 수 있다. 대신에, 사용자는 다수의 애플리케이션들 사이의 경계의 상부 상에 애플리케이션-특정 어포던스를 드래그하여 다수의 애플리케이션들의 상부 상에 다른 애플리케이션을 오버레이할 수 있거나(도 4aj 내지 도 4al에 도시된 바와 같음), 또는 다수의 애플리케이션들 중 특정 애플리케이션의 상부 상에 애플리케이션-특정 어포던스를 드래그하여 그 특정 애플리케이션을 애플리케이션-특정 어포던스에 대응하는 새로운 애플리케이션으로 대체할 수 있다(예를 들어, 도 4ap 내지 도 4ar에 도시된 바와 같음). 그러한 실시예들의 예들은 도 4aj 내지 도 4al 및 도 4ap 내지 도 4ar을 참조하여 위에서 더 상세히 제공된다.
도 8b에 또한 도시된 바와 같이, 일부 실시예들에서, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 (i) 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계는: 디스플레이 영역의 제2 부분에 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계(예컨대, 도 4u에 도시된 바와 같이, 미리정의된 부분에 웹 브라우징 애플리케이션을 디스플레이함), 및 디스플레이 영역의 제2 부분에 인접한 디스플레이 영역의 나머지 부분에 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부를 디스플레이하는 단계(예컨대, 제2 부분/미리정의된 영역에 인접한 나머지 부분에 애플리케이션 1을 디스플레이함)를 포함한다(822, 822A). 일부 실시예들에서, 디스플레이 영역의 제2 부분은 제2 부분 및 나머지 부분의 길이를 따라 이어지는 드래그가능한 경계에 의해 디스플레이 영역의 나머지 영역으로부터 분리된다. 일부 실시예들에서, 드래그가능한 경계 위에서의(예컨대, 도 4r의 경계 어포던스(460) 위에서의) 접촉은 사용자가 하나 이상의 애플리케이션들의 제1 및 제2 세트들에 할당된 디스플레이 영역의 부분들을 크기조정할 수 있게 한다(도 4l 및 도 4m을 참조하여 또한 위에서 논의된 바와 같음).
이제 도 8c를 참조하면, 다양한 실시예들 또는 상황들에서, 제1 및 제2 세트들은 하나 또는 다수의 애플리케이션들을 포함할 수 있고, 접촉의 리프트오프는 상이한 대체 동작들을 야기할 수 있다. 상이한 예들이 824 내지 830을 참조하여 하기에 제공된다.
예를 들어, 824에서, 제1 세트는 하나의 제1 애플리케이션을 포함하고, 제2 세트는 하나의 제2 애플리케이션을 포함하고, 어포던스는 하나의 제2 애플리케이션과 연관되고, 접촉의 리프트오프를 검출할 시, 제1 및 제2 애플리케이션들은 디스플레이 영역에서 나란히 디스플레이된다. 이것의 일례가 도 4e 내지 도 4i에 도시되어 있다. 일부 실시예들에서, 접촉의 리프트오프는, 접촉이 하나의 제1 애플리케이션과 경계를 이루는 터치 감응형 디스플레이의 에지의 임계 거리 내에 위치되는 동안에, 검출된다(예컨대, 접촉이 도 4ab 내지 도 4ae에 도시된 임계치들(464, 465) 중 하나를 넘어서 위치되는 동안에, 그리고 그 설명은 위에서 제공됨). 제1 세트가 하나의 제1 애플리케이션을 포함하고 제2 세트가 하나의 제2 애플리케이션을 포함하는 경우들에서, 컴퓨팅 시스템들의 사용자들은, 제2 애플리케이션에 대응하는 어포던스를 디스플레이의 제2 부분 위로 간단히 드래그함으로써 제1 애플리케이션 및 제2 애플리케이션이 함께 디스플레이되는 분할-뷰 모드를 활성화할 수 있다. 명확한 시각적 피드백(예컨대, 예를 들어 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 접촉을 해제하는 것이 제1 및 제2 애플리케이션들을 포함하는 분할-뷰 모드를 활성화할 것임을 사용자들이 이해할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 접촉의 리프트오프가 대신에, 접촉이 하나의 제1 애플리케이션 위에 위치되는 동안(그리고 접촉이 임계치들(464, 465) 중 하나와 같은, 디스플레이(112)의 에지의 임계 거리 내에 위치되는 동안이 아님), 검출되는 경우, 제2 애플리케이션은 제1 애플리케이션과 나란히 있는 대신에 오버레이 모드로 디스플레이된다. 예를 들어, 접촉이 하나의 제1 애플리케이션 위에 위치되는 동안 접촉의 리프트오프를 검출하는 경우(825)(예컨대, 도 4ah에 도시된 바와 같이 리프트오프가 제1 애플리케이션 위에서 발생함), 제2 애플리케이션은 (도 4ai에 도시된 바와 같이) 디스플레이 영역에서 제1 애플리케이션에 오버레이하면서 디스플레이된다).
826에서의 다른 예로서, 제1 세트는 적어도 제1 애플리케이션 및 제2 애플리케이션을 포함하고, 제2 세트는 하나의 제3 애플리케이션을 포함하고, 어포던스는 하나의 제3 애플리케이션과 연관된다(예컨대, 도 4q 내지 도 4u에 도시된 바와 같음). 제1 세트가 제1 애플리케이션 및 제2 애플리케이션을 포함하고 제2 세트가 하나의 제2 애플리케이션을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은, 제3 애플리케이션에 대응하는 어포던스를 디스플레이 상으로 간단히 드래그함으로써 제1 애플리케이션 및 제2 애플리케이션이 함께 디스플레이되는 분할-뷰 모드에 새로운 애플리케이션을 추가할 수 있다. 명확한 시각적 피드백(예컨대, 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
826에서의 예에서, 접촉의 리프트오프가 제2 애플리케이션 위에서 발생한다는 결정에 따라, 디바이스는 터치 감응형 디스플레이 상에서 제2 애플리케이션을 제3 애플리케이션으로 대체한다. 이것의 일례가 도 4q 내지 도 4u에 도시되어 있다. 이러한 방식으로, 사용자들은 분할-뷰 모드에서 제2 애플리케이션을 제3 애플리케이션으로 대체하는 능력을 제공받음으로써, 지속적인 상호작용을 가능하게 하며, 여기서 사용자는 제1 애플리케이션과 동시에 보여질 새로운 애플리케이션에서 신속하고 용이하게 대체할 수 있다.
일부 실시예들에서, 접촉의 리프트오프가 제1 및 제2 애플리케이션들 사이의 경계에서 발생하는 경우, 고정된 애플리케이션들 중 하나를 대체하는 대신에, 제3 애플리케이션이 그 대신에 제1 애플리케이션 또는 제2 애플리케이션들 중 하나에 오버레이한다. 예를 들어, 도 4aj 및 도 4ak에 도시된 바와 같이, 제스처(484)와 연관된 접촉의 리프트오프는 애플리케이션 1과 비디오 브라우징 애플리케이션 사이의 경계 위에서 발생하고, 접촉의 리프트오프가 이 경계 위에서 발생한다고 결정하는 것에 따라, 디바이스는 터치 감응형 디스플레이 상에서 제1 애플리케이션 또는 제2 애플리케이션에 오버레이하는 하나의 제3 애플리케이션(예를 들어, 도 4al의 비디오 브라우징 애플리케이션)을 디스플레이한다(827)(예를 들어, 비디오 브라우징 애플리케이션은 도 4al에서 웹 브라우징 애플리케이션에 오버레이한다). 일부 실시예들에서, 제3 애플리케이션은, 리프트오프가 제1 및 제2 애플리케이션들 사이의 경계 위에서 발생했다고 결정된 후에 항상 최우측 애플리케이션에 오버레이한다.
하나 이상의 예가 828에서 설명되며, 여기서 제1 세트는 적어도 2개의 고정된 애플리케이션들의 제1 그룹을 포함하고, 제2 세트는 적어도 2개의 고정된 애플리케이션들의 제2 그룹을 포함하고, 어포던스는 적어도 2개의 고정된 애플리케이션들의 제2 그룹과 연관된다(예컨대, 도 4v 내지 도 4x에 도시된 바와 같음). 제1 및 제2 세트들이 각각 고정된 애플리케이션들의 그룹들을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은, 제2 그룹에 대응하는 어포던스를 디스플레이 상으로 간단히 드래그함으로써, 고정된 애플리케이션들의 새로운 그룹을 분할-뷰 모드에 추가할 수 있다. 명확한 시각적 피드백(예컨대, 접촉이 임계 거리를 이동한 후에, 디스플레이 영역의 제2 부분을 드러냄)은 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
828에서의 예에서, 접촉의 리프트오프가 애플리케이션들의 제1 그룹 위에서 발생한다는 결정에 따라, 디바이스는 적어도 2개의 고정된 애플리케이션들의 제1 그룹을 적어도 2개의 고정된 애플리케이션들의 제2 그룹으로 대체한다(예컨대, 도 4x에 도시된 바와 같음). 이러한 방식으로, 사용자들은 고정된 애플리케이션들의 제1 그룹을 고정된 애플리케이션들의 제2 그룹으로 신속하게 전환하는 능력을 제공받음으로써, 지속적인 상호작용을 가능하게 하며, 여기서 사용자는 고정된 애플리케이션들의 새로운 그룹들에서 디스플레이 상으로 신속하고 용이하게 대체할 수 있다.
하나의 최종 예는 830에서이며, 여기서 하나 이상의 애플리케이션들의 제1 세트는 제1 애플리케이션의 인스턴스를 포함하고, 하나 이상의 애플리케이션들의 제2 세트는 제1 애플리케이션의 추가 인스턴스를 포함하고, 인스턴스 및 추가 인스턴스는 제1 애플리케이션의 별개의 인스턴스들이다. 제1 및 제2 세트들이 각각 동일한 제1 애플리케이션의 상이한 인스턴스들을 포함하는 경우들에서, 이어서 컴퓨팅 시스템들의 사용자들은 단일 애플리케이션의 2개의 상이한 인스턴스들을 서로의 옆에 고정할 수 있다. 2개의 상이한 인스턴스들을 함께 고정할 수 있게 하는 것은 사용자들에게 개선된 인간-기계 인터페이스를 제공한다(예컨대, 사용자들이 단일 애플리케이션의 상이한 특징들과 동시에 상호작용할 수 있는 것을 보장함으로써, 예컨대, 예를 들어, 메시징 애플리케이션에서 메시지를 편집하면서 또한 그 동일한 메시징 애플리케이션에서 상이한 메시지로부터의 콘텐츠를 복사하는 것). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 그리고 방법(900)을 참조하여 이하에서 더 상세히 설명되는 바와 같이, 제2 애플리케이션은 터치 감응형 디스플레이의 상이한 부분에 디스플레이될 제2 애플리케이션을 드래그하기 위해 또는 슬라이드-오버 모드를 활성화하기 위해 사용될 수 있는 핸들(예컨대, 도 4j의 어포던스(462))과 함께 디스플레이된다. 이와 같이, 방법들(800, 900)의 양태들/동작들은 이들 방법들 사이에서 상호교환, 대체, 및/또는 추가될 수 있다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
또한, 일부 실시예들에서, 그리고 방법(1000)을 참조하여 이하에서 더 상세히 설명되는 바와 같이, 애플리케이션-스위처 사용자 인터페이스에 도시된 표현들은 분할-뷰 모드들의 표현들을 포함한다. 이와 같이, 방법들(800, 1000)의 양태들/동작들은 또한 이들 방법들 사이에서 상호교환, 대체, 및/또는 추가될 수 있다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
또한, 일부 실시예들에서, 그리고 방법(1100)을 참조하여 이하에서 더 상세히 설명되는 바와 같이, 하나 이상의 애플리케이션들의 제1 세트는 동일한 애플리케이션의 2개의 상이한 인스턴스들을 포함할 수 있다. 이와 같이, 방법들(800, 1100)의 양태들/동작들은 이들 방법들 사이에서 상호교환, 대체, 및/또는 추가될 수 있다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
도 9a 및 도 9b는 일부 실시예들에 따른, 분할-뷰 모드(여기서 2개의 애플리케이션들이 함께 고정되고 디스플레이 상에서 나란히 디스플레이됨)와 슬라이드 오버 모드(여기서 하나의 애플리케이션이 디스플레이 상에서 다른 애플리케이션에 오버레이하는 것으로 디스플레이됨) 사이에서 전환하기 위한 단일 어포던스와 상호작용하는 방법의 흐름도 표현이다. 도 5a 내지 도 5o는 도 9a 및 도 9b의 방법들 및/또는 프로세스들을 예시하기 위해 사용된다. 후속하는 예들 중 일부가 (터치 감응형 표면과 디스플레이가 조합된) 터치 감응형 디스플레이 상의 입력들을 참조하여 주어질 것이지만, 일부 실시예들에서, 디바이스는 도 1d에 도시된 바와 같이 디스플레이(194)와 별개인 터치 감응형 표면(195) 상의 입력들을 검출한다.
일부 실시예들에서, 방법(900)은 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100)) 및/또는 전자 디바이스의 하나 이상의 컴포넌트들(예컨대, I/O 서브시스템(106), 운영 체제(126) 등)에 의해 수행된다. 일부 실시예들에서, 방법(800)은, 비일시적 컴퓨터 판독가능 저장 매체에 저장되며 디바이스의 하나 이상의 프로세서들, 예컨대 디바이스(100)(도 1a)의 하나 이상의 프로세서들(122)에 의해 실행되는 명령어들에 의해 통제된다. 설명의 용이함을 위해, 하기는 디바이스(100)에 의해 수행되는 바와 같은 방법(900)을 기술한다. 일부 실시예들에서, 도 1a를 참조하면, 방법(800)의 동작들은, 적어도 부분적으로, 멀티태스킹 모듈(예컨대, 멀티태스킹 모듈(180)) 및 그의 컴포넌트들, 접촉/모션 모듈(예컨대, 접촉/모션 모듈(130)), 그래픽 모듈(예컨대, 그래픽 모듈(132)), 및 터치 감응형 디스플레이(예컨대, 터치 감응형 디스플레이 시스템(112))에 의해 수행되거나 또는 그를 사용한다. 방법(900)에서의 일부 동작들은 선택적으로 조합되고/되거나, 일부 동작들의 순서는 선택적으로 변경된다.
후술되는 바와 같이, 방법(900)은 분할-뷰 모드와 슬라이드-오버 모드 사이에서 전환하고, 또한 다수의 애플리케이션들이 동시에 디스플레이되는 위치들을 조작하는 직관적인 방식을 제공한다. 본 방법은 이들 모드 사이에서 전환하기 위해 사용자로부터 요구되는 입력들의 수를 감소시키고(예컨대, 사용자들은 다수의 입력들을 수행하는 대신에 간단한 제스처를 제공하기만 하면 됨), 이에 의해, 방법(900)을 구현하는 전자 디바이스의 배터리 수명이 연장되는 것을 보장하는데, 이는 더 적은 수의 입력들을 프로세싱하는 데 더 적은 전력이 요구되기 때문이다(그리고 이러한 절감들은 사용자들이 더 직관적이고 간단한 제스처에 점점 더 친숙해짐에 따라 반복해서 실현될 것이다). 아래에서 또한 상세히 설명되는 바와 같이, 방법(900)의 동작들은 사용자들이 지속적인 상호작용들에 관여할 수 있는 것을 보장하는 것을 돕고(예컨대, 그들은 그들의 디바이스들과의 상호작용들을 중단시키는 행동들을 빈번하게 실행취소할 필요가 없음), 방법(900)의 동작들은 더 효율적인 인간-기계 인터페이스들을 생성하는 것을 돕는다.
일부 실시예들에서, 방법(900)을 수행하는 디바이스는 먼저 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 디스플레이한다(902). 일부 실시예들에서, 제1 애플리케이션은 디스플레이(112)의 이용가능한 디스플레이 영역의 대략 2/3(대략 66%)를 점유하는 것으로서 디스플레이되는 일차 애플리케이션이고(예컨대, 디스플레이(112)의 우측을 점유하는 것으로서 디스플레이되는 애플리케이션 1, 도 5a), 제2 애플리케이션은 일차 애플리케이션 옆에 고정되고 디스플레이(112)의 이용가능한 디스플레이 영역의 나머지 1/3(대략 33%)을 점유하는 것으로서 디스플레이되는 부수적인 애플리케이션이다(예컨대, 디스플레이(112)의 좌측을 점유하는 것으로서 디스플레이되고, 분할-뷰 모드에서 애플리케이션 1 옆에 고정되는, 비디오 브라우징 애플리케이션).
일부 실시예들에서, 디스플레이 영역에 제1 및 제2 애플리케이션들을 디스플레이하는 것은 디스플레이 영역에서 나란히 제1 및 제2 애플리케이션들을 동시에 디스플레이하는 것을 포함한다(903).
디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 디스플레이하는 동안(904), 디바이스는 동작들(906, 908, 910)을 수행할 수 있다. 동작(906)에서, 디바이스는 제2 애플리케이션의 에지 근처에 어포던스를 디스플레이한다. 예를 들어, 어포던스는 제2 애플리케이션의 최상단 부분 근처에 디스플레이되는 사용자 인터페이스 객체(예컨대, 도 5b의 핸들(506))이고, 핸들은 (동작(908)을 참조하여 논의되는 바와 같이) 활성화 제스처에 응답하여 디스플레이된다. 908에서, 일부 실시예들에서, 어포던스를 디스플레이하기 전에, 디바이스는 제2 애플리케이션의 에지에서의 사용자 입력(예컨대, 도 5a의 제스처(508)와 연관된 접촉)을 검출하고, 사용자 입력을 검출하는 것에 응답하여 어포던스를 디스플레이한다(도 5b). 이러한 방식으로, 사용자들은 핸들의 디스플레이를 활성화하는 데 사용되는 간단한 제스처를 제공받음으로써, (예컨대, 핸들이 사용자에 의해 필요해질 때에만 디스플레이되는 것을 보장함으로써) 디바이스의 작동성을 향상시킨다.
일부 실시예들에서, 또한 동작(908)에서, 사용자 입력은 제2 애플리케이션의 에지에서의 (예컨대, 제스처(508)와 연관된) 초기 접촉 및 터치 감응형 디스플레이를 가로지르는 제1 방향으로의 초기 접촉의 이동을 포함할 수 있다. 일부 실시예들에서, 디바이스는 어포던스를 디스플레이하기 전에, 접촉이 에지로부터 적어도 임계 거리, 예컨대 1 내지 2 센티미터만큼 멀리 이동했음을 검출한다. 위에서 논의된 바와 같이, 이는 핸들의 디스플레이를 활성화하는 데 사용되는 간단한 제스처를 사용자들에게 제공함으로써, (예컨대, 핸들이 사용자에 의해 필요해질 때에만 디스플레이되는 것을 보장함으로써) 디바이스의 작동성을 향상시킨다.
(디스플레이 영역에 제1 및 제2 애플리케이션들을 디스플레이하는 동안 또한 수행되는) 910에서, 디바이스는 터치 감응형 디스플레이를 가로지르는 방향으로 이동하는 어포던스 위에서의 접촉(위에서 논의된 초기 접촉과는 별개인, 예컨대 도 5b의 제스처(509)와 연관된 접촉)을 검출한다(910). 방향이 제1 방향이라는 결정에 따라(912)(예컨대, 제스처(509)와 연관된 접촉은 제2 애플리케이션의 최상단 에지에 대해 실질적으로 하향 방향으로 이동하는 것으로서 도시됨, 도 5b), 디바이스는 동작들(914, 916)을 수행한다. 동작(914)은 디스플레이 영역의 실질적으로 전부를 점유하도록 제1 애플리케이션을 크기조정하는 것을 포함하고(예컨대, 도 5c에 도시된 바와 같이, 애플리케이션 1은 이제 터치 감응형 디스플레이(112)에 대한 디스플레이 영역의 실질적으로 전부를 점유함); 동작(916)은 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이하는 것을 포함한다(예를 들어, 도 5c에 또한 도시된 바와 같이, 비디오 브라우징 애플리케이션은 이제-크기조정된 애플리케이션 1에 오버레이하는 것으로서 디스플레이된다).
방법(900)은 또한, 위에서 논의된 제1 방향 대신에, 방향이 제2 방향인지 여부를 체크하고, 만약 그렇다면, 방법은 (분할-뷰 모드와 슬라이드-오버 모드 사이에서 전환하는 대신에) 어포던스(506)가 디스플레이되는 애플리케이션을 이동시키도록 진행한다. 구체적으로, 방향이 제1 방향에 실질적으로 수직인 제2 방향이라는 결정에 따라(예컨대, 제1 방향으로부터의 수직에서 +/-5 도 이내), 디바이스는 제2 애플리케이션을 디스플레이 영역 내에서 이동시킨다(918). 예를 들어, 제스처(512)와 연관된 접촉이 제2 방향으로 이동하는 것으로서 도 5f 및 도 5g에 도시되어 있고(예컨대, 터치 감응형 디스플레이를 가로지르는 실질적으로 좌측으로부터 우측으로의 방향), 이어서, 제2 애플리케이션은 디스플레이 영역 내에서 측방향으로(예컨대, 도 5f의 최우측 위치로부터 도 5h의 최좌측 위치로) 이동된다. 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 2개 이상의 애플리케이션들을 동작시키기 위해 비효율적이고 시간-소모적인 상호작용들을 채용해야 한다. 사용자가 어포던스(적어도 동작들(902, 904, 906, 910, 912, 914, 916, 918)과 관련하여, 핸들과 같은)와 상호작용하여 슬라이드-오버 모드를 활성화하거나 또는 디스플레이 영역 내에서 특정 애플리케이션을 이동시킬 수 있게 하는 것은, 사용자들이 애플리케이션들을 이리저리 용이하게 그리고 효율적으로 이동시킬 수 있게 하고 나란한 뷰 또는 슬라이드-오버 뷰 사이에서 전환할 수 있게 한다. 사용자들이 애플리케이션들을 이리저리 용이하게 그리고 효율적으로 이동시킬 수 있게 하고 동시에 2개 이상의 애플리케이션들을 사용하는 상이한 모드들 사이에서 전환할 수 있게 하는 것은, (예를 들어, 사용자들이, 예컨대 나란한 뷰를 사용하거나 또는 슬라이드-오버/오버레이 모드를 사용하여, 동시에 2개 이상의 애플리케이션들과 상호작용하는 방식을 선택할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 2개 이상의 애플리케이션들과의 동시 상호작용들을 맞춤화하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
위에서 간단히 언급된 바와 같이, 일부 실시예들에서, 제1 방향은 제2 애플리케이션의 에지에 대한 하향 방향이고(예컨대, 도 5a의 제스처(508)에 의해 이동된 방향), 제2 방향은 하향 방향에 실질적으로 수직인 측방향이다(예컨대, 도 5f 및 도 5g의 제스처(512)에 의해 이동된 방향). 사용자들이 핸들을 상이한 방향들로 이동시킬 수 있게 하는 것은, 그들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 유연하게 맞춤화하는 추가적이고 간단한 방식들을 사용자들에게 제공하는 데 도움을 준다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은, 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 각각의 애플리케이션이 디스플레이되어야 하는 위치에 대한 그들의 맞춤화된 선택들은, 그들이 디폴트 배열 작업을 해야 하는 대신에 다양한 특징들을 더 효율적으로 사용할 수 있게 한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
이제 도 9b를 참조하면, 동작(918)을 수행하기 전에, 디바이스는, 제2 애플리케이션이 크기조정된 제1 애플리케이션에 오버레이하는 동안 크기조정된 제1 애플리케이션에서 사용자 입력을 검출한다(922)(예컨대, 링크(504) 위에서의 접촉(510)이 수신된다, 도 5c). 이어서, 디바이스는 제1 애플리케이션을 통해 사용자 입력에 응답한다(924)(예컨대, 링크(504)와 연관된 콘텐츠가 열린다, 도 5d). 다시 말하면, 제1 애플리케이션은 여전히 사용가능하면서, 제2 애플리케이션은 그것에 오버레이한다(예컨대, 제1 애플리케이션은 여전히 사용가능한데, 이는 제1 애플리케이션의 특징들이 오버레이/슬라이드-오버 모드 동안에도 여전히 기능하기 때문이다). 일부 실시예들에서, 제1 애플리케이션 및 제2 애플리케이션 둘 모두는 동시에 사용가능하여, 제2 애플리케이션이 제1 애플리케이션에 오버레이하고 있을 때에도 사용자들이 2개의 애플리케이션들 각각의 다양한 특징들과 동시에 상호작용할 수 있게 한다. 제2 애플리케이션이 제1 애플리케이션의 상부 상에 오버레이되는 동안에도, 사용자들이 제1 애플리케이션과 상호작용할 수 있게 하는 것은, 사용자들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 맞춤화할 수 있게 한다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 그들의 맞춤화된 선택들은 그들이, 디폴트 배열 작업을 해야 하는 대신에, 다양한 특징들을 더 효율적으로 사용할 수 있게 할 것이다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 동작들(922, 924)을 수행한 후에(또는, 대안적으로, 이들 동작들을 수행하기 전에), 디바이스는 제1 및 제2 애플리케이션들과 별개인 제3 애플리케이션을 열라는 요청(예컨대, 도 5k의 카메라 애플리케이션 위에서의 접촉(516))에 응답하여, (i) 제1 애플리케이션에 의해 이전에 점유된 디스플레이 영역의 일부분에 제3 애플리케이션을, 그리고 (ii) 제3 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이한다(926). 예를 들어, 도 5k 및 도 5l에 도시된 바와 같이, 사용자는 그들의 홈 스크린을 활성화하고, 제3 애플리케이션에 대응하는 어포던스를 클릭함으로써 제3 애플리케이션을 열라고 요청한다. 그 요청에 응답하여, 이어서 제3 애플리케이션은 제1 애플리케이션에 의해 이전에 점유된 디스플레이 영역의 일부분에 디스플레이되고, 제2 애플리케이션은 제3 애플리케이션에 오버레이하면서 디스플레이된다. 다시 말하면, 오버레하는 애플리케이션(예컨대, 제2 애플리케이션)은 사용자가 새로운 애플리케이션을 열도록 전환한 후에도 유지된다. 오버레이된 애플리케이션이 사용자들이 새로운 애플리케이션을 연 후에 디스플레이된 상태로 유지될 수 있게 하는 것은, 전자 디바이스의 특징들(예컨대, 오버레이된 애플리케이션이 디스플레이된 상태로 유지되지 않았다면 다시 재개(re-open)되어야 할 수 있는, 오버레이된 애플리케이션을 통해 사용자에 의해 액세스되는 특징들)과의 지속적인 상호작용이 유지되는 것을 보장하는 데 도움을 준다. 사용자들은 또한 오버레이된 애플리케이션의 특징들을 재개해야 하는 것을 피할 수 있기 때문에, 디바이스의 작동성이 개선되고 인간-기계 인터페이스는 또한 더 효율적으로 동작하도록 만들어진다.
(어포던스 위에 있는 접촉에 의해 이동되는) 방향이 제2 방향인 것으로 결정되는 동작(918)의 설명들을 다시 참조하면, 일부 실시예들에서, 928에 도시된 추가 동작들이 또한 수행된다. 먼저, 제2 애플리케이션은 초기에 터치 감응형 디스플레이의 제1 에지와 경계를 이루는 것으로서 디스플레이된다(예를 들어, 도 5f에 도시된 비디오 브라우징 애플리케이션은 터치 감응형 디스플레이(112)의 최우측 에지와 경계를 이루는 것으로서 도시된다). 또한, 디스플레이 영역 내에서 제2 애플리케이션을 이동시키는 것은: 제2 애플리케이션이 터치 감응형 디스플레이의 제1 에지에 대향하는 제2 에지와 경계를 이룰 때까지 제2 방향으로 제2 애플리케이션을 이동시키는 것을 포함할 수 있다(예컨대, 비디오 브라우징 애플리케이션은 제스처(512)가 터치 감응형 디스플레이(112)를 가로질러 이동함에 따라 제스처(512)를 따르고, 도 5g에 도시된 바와 같이, 이어서 비디오 브라우징 애플리케이션은 제2 에지에 도달 시 이동하는 것을 중지한다). 이들 실시예들에서, 디스플레이 영역 내에서 제2 애플리케이션을 이동시키는 것은 또한: 제2 애플리케이션에 의해 점유된 부분과 별개인, 디스플레이 영역의 나머지 부분에 제1 애플리케이션을 디스플레이하여, 제1 애플리케이션이 터치 감응형 디스플레이의 제1 에지와 경계를 이루도록 하는 것(도 5h에 도시된 바와 같음)을 포함할 수 있다. 사용자들이 어포던스(506)를 드래그함으로써 애플리케이션을 이리저리 이동시킬 수 있게 하는 것은, 사용자들이 동시에 디스플레이되는 2개의 애플리케이션들과 동시에 상호작용하기를 원하는 방식을 사용자들이 맞춤화할 수 있게 하는 데 도움을 준다. 이러한 방식으로 사용자들이 그들의 사용자 경험들을 맞춤화할 수 있게 하는 것은, 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다(예컨대, 각각의 애플리케이션이 디스플레이되어야 하는 위치에 대한 그들의 맞춤화된 선택들은, 그들이 디폴트 배열 작업을 해야 하는 대신에 다양한 특징들을 더 효율적으로 사용할 수 있게 한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이, 디폴트 방식으로 그리고 어떠한 사용자-특정 맞춤화도 없이, 함께 디스플레이되는 2개 이상의 애플리케이션들과 상호작용해야 하는 것으로 인해 가능하지 않았을 것이다.
928을 참조하여 전술된 실시예들에서, 제2 애플리케이션이 제2 에지와 경계를 이룰 때까지 제2 애플리케이션을 이동시키기 전에, 제2 애플리케이션에 의해 점유된 부분의 미리보기가 제1 애플리케이션 옆에 드러난다(930). 일부 경우들에서, 컴퓨팅 시스템들의 사용자들은 터치 감응형 디스플레이 상의 소정 상호작용들로부터 야기될 변화들을 인식하지 못할 수 있다. 명확한 시각적 피드백(예컨대, 제2 애플리케이션이 어디로 이동할지의 미리보기를 보여줌)은 사용자들이 접촉을 해제(또는 리프트오프)한 후에 발생할 변화들을 미리볼 기회를 사용자에게 제공한다. 이러한 명확한 시각적 피드백을 제공하는 것은, (예컨대, 사용자들이 발생할 변화들을 이해할 수 있게 하고 원하지 않는 변화들을 반전시켜야 하는 것을 피할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 사용자들이 그들이 예상할 수 없었던 원하지 않는 변화들을 반복적으로 실행취소하거나 반전시켜야 하는 것으로 인해 가능하지 않았을 것이다.
이제 도 9c를 참조하면, 오버레이된 애플리케이션이 디스플레이된 후에 이용가능한 추가적인 상호작용들이 동작들(932, 934, 936)에 도시된다. 예를 들어, 동작(932)에서, 제1 애플리케이션을 크기조정하고 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이한 후(예를 들어, 도 4ai에 도시된 바와 같이, 웹 브라우징 애플리케이션은 애플리케이션 1에 오버레이하고 있음): 디바이스는 어포던스 위에서의 추가 접촉(예컨대, 도 4ai의 제스처(482)와 연관된 접촉) 및 제1 방향과 반대인 제3 방향으로의(예컨대, 도 4ai에 도시된 바와 같이 실질적으로 상향 방향으로의) 추가 접촉의 이동을 검출한다. 추가 접촉이 제3 방향으로 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 디바이스는 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이하는 것을 중지하고, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 재디스플레이한다(예컨대, 도 4aj에 도시된 바와 같이, 웹 브라우징 애플리케이션은 이제 애플리케이션 1 옆에 고정되어, 2개의 애플리케이션들이 터치 감응형 디스플레이의 실질적으로 전부를 점유하고 나란한 뷰/분할-뷰 포맷으로 디스플레이되게 한다).
도 9c를 계속 참조하면, 일부 실시예들에서, 제1 애플리케이션을 크기조정하고 크기조정된 제1 애플리케이션에 오버레이하는 제2 애플리케이션을 디스플레이한 후(예를 들어, 도 4ai에 도시된 바와 같이, 웹 브라우징 애플리케이션은 애플리케이션 1에 오버레이하고 있음): 디바이스는 어포던스 위에서의 추가 접촉 및 제1 방향으로의 추가 접촉의 이동을 검출한다(934)(예컨대, 도 4ao의 제스처(487)와 연관된 접촉이 어포던스(467) 위에 있고 제1 방향으로 이동한다). 도 4ao의 예가 2개의 애플리케이션들이 나란히 디스플레이되고 다른 애플리케이션이 그들 2개의 애플리케이션들에 오버레이하고 있는 것을 도시하지만, 제스처(487)는 오버레이된 애플리케이션이 단일 애플리케이션 위에 디스플레이될 때에도 이용가능할 수 있다(예컨대, 제스처(487)는 도 4ai의 어포던스(467) 위에서도 수행될 수 있다). 추가 접촉이 터치 감응형 디스플레이를 가로질러 제2 임계 거리(예컨대, 1 내지 2 센티미터)만큼 이동했음을 검출하는 것에 응답하여, 디바이스는, 제2 애플리케이션에 대응하는 어포던스의 표현을 갖는 사용자 인터페이스 객체가 디스플레이될 때까지, 추가 접촉의 이동에 따라 제2 애플리케이션과 연관된 콘텐츠를 스케일 다운한다(예컨대, 콘텐츠는 콘텐츠가 더 이상 디스플레이되지 않을 때까지 스케일 다운되고, 대신에 UI 객체(473-B)가 디스플레이되는데, 이는 도 4ap에 도시된 바와 같다).
일부 실시예들에서, 사용자들은 이어서 UI 객체(473-B)를 이동시켜, 제2 애플리케이션을 완전히 해제하거나 또는 제2 애플리케이션을 제1 애플리케이션 옆에 고정할 수 있다. 예를 들어, 추가 접촉이 도크 위로 이동하고 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라(예컨대, 도 4ao 내지 도 4aq의 제스처(488)와 연관된 접촉이 도크(408)의 상부 상에 드래그되고, 이어서 리프트오프됨(도시되지 않음)), 디바이스는 제2 애플리케이션을 해제하고, 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 제1 애플리케이션을 디스플레이하고(예컨대, 도 4ag에 도시된 사용자 인터페이스가 디스플레이되며, 여기서 애플리케이션 1이 터치 감응형 디스플레이의 실질적으로 전부를 점유함); 추가 접촉이 터치 감응형 디스플레이의 에지의 임계 거리 내로(예컨대, 도 4ab 내지 도 4ae에서 도시된 임계치들(464, 465) 중 하나 내로) 이동하고 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라, 디바이스는 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 재디스플레이한다(예컨대, 도 4aj에 도시된 사용자 인터페이스를 디스플레이하며, 여기서 애플리케이션 1은 분할-뷰 모드에서 웹 브라우저 애플리케이션과 나란히 디스플레이됨).
위에서 제공된 예들은 일반적으로 현재 디스플레이된 제1 애플리케이션의 상부 상에 제2 애플리케이션에 오버레이하는 것과 관련되지만, 일부 실시예들에서, 나란한 디스플레이 포맷으로 고정되는 2개의 애플리케이션들의 상부 상에 애플리케이션이 오버레이될 수 있다. 이것의 예들이 도 4aj 내지 도 4ar에 제공되고, 설명들이 또한 위에 제공된다. 이들 예의 양태들은 방법(900)에 관하여 전술된 소정 동작들을 보완하고/하거나 대체할 수 있다.
도 9a 및 도 9b에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 또한, 방법(900)은, 예컨대, 도크를 사용하여 분할-뷰 모드를 활성화하는 것에 관련된 방법(800)의 양태들을 통합하도록 보완될 수 있다(또는 다양한 동작들이 재순서화될 수 있다). 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
도 10a 내지 도 10c는 일부 실시예들에 따른, 방법(1000)의 흐름도 표현이다. 도 6a 내지 도 6q는 도 10a 내지 도 10c의 방법들 및/또는 프로세스들을 예시하기 위해 사용된다. 후속하는 예들 중 일부가 (터치 감응형 표면과 디스플레이가 조합된) 터치 감응형 디스플레이 상의 입력들을 참조하여 주어질 것이지만, 일부 실시예들에서, 디바이스는 도 1d에 도시된 바와 같이 디스플레이(194)와 별개인 터치 감응형 표면(195) 상의 입력들을 검출한다.
일부 실시예들에서, 방법(1000)은 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100)) 및/또는 전자 디바이스의 하나 이상의 컴포넌트들(예컨대, I/O 서브시스템(106), 운영 체제(126) 등)에 의해 수행된다. 일부 실시예들에서, 방법(1000)은, 비일시적 컴퓨터 판독가능 저장 매체에 저장되며 디바이스의 하나 이상의 프로세서들, 예컨대 디바이스(100)(도 1a)의 하나 이상의 프로세서들(122)에 의해 실행되는 명령어들에 의해 통제된다. 설명의 용이함을 위해, 하기는 디바이스(100)에 의해 수행되는 바와 같은 방법(1000)을 기술한다. 일부 실시예들에서, 도 1a를 참조하면, 방법(1000)의 동작들은, 적어도 부분적으로, 멀티태스킹 모듈(예컨대, 멀티태스킹 모듈(180)) 및 그의 컴포넌트들, 접촉/모션 모듈(예컨대, 접촉/모션 모듈(130)), 그래픽 모듈(예컨대, 그래픽 모듈(132)), 및 터치 감응형 디스플레이(예컨대, 터치 감응형 디스플레이 시스템(112))에 의해 수행되거나 또는 그를 사용한다. 방법(1000)에서의 일부 동작들은 선택적으로 조합되고/되거나, 일부 동작들의 순서는 선택적으로 변경된다.
후술되는 바와 같이, 방법(1000)은 핸드헬드 전자 디바이스 상의 멀티태스킹하기 위한 직관적이고 끊김없는 상호작용들을 제공한다. 본 방법(1000)은 디바이스 상에서 다수의 애플리케이션들을 디스플레이하고 상이한 애플리케이션들로 전환하기 위한 사용자로부터의 입력들의 개수를 감소시켜서, 이에 의해 더 효율적인 인간-기계 인터페이스를 생성한다. 배터리-작동형 전자 디바이스들의 경우, 멀티태스킹하기 위한 상호작용들 둘 모두를 제공하는 것은 (예컨대, 사용자가 하나의 애플리케이션을 닫고 다른 애플리케이션을 열어야 할 때 시간 및 에너지-소모 동작들을 절약함으로써) 전력을 보존하고 배터리 충전들 사이의 시간을 증가시킨다.
이제 도 10a를 참조하면, 방법(1000)을 수행하는 데 있어서, 디바이스는 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 동시에 디스플레이한다(1002). 예를 들어, 도 6a에서, 제1 애플리케이션(애플리케이션 1)은 제2 애플리케이션(애플리케이션 2 또는 비디오 애플리케이션)에 인접하게/그와 나란히 디스플레이되고, 2개의 애플리케이션들은 터치 스크린(112)의 실질적으로 전부를 점유하는 디스플레이 영역(601a)에 디스플레이된다.
디바이스는 애플리케이션-스위처 사용자 인터페이스를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신한다(1004). 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스는 최근에 사용된 애플리케이션들의 표현들이 디스플레이되는 사용자 인터페이스를 지칭할 수 있다(예컨대, 최근에 열렸고 전자 디바이스의 포그라운드에서 사용되었으며, 디바이스의 사용자에 의해 아직 닫히지 않은 애플리케이션들). 일부 실시예들에서, 사용자 입력은 전자 디바이스의 물리적 또는 솔리드 스테이트 홈 버튼에서의 더블 탭 입력에 대응할 수 있거나, 대안적으로 터치 감응형 디스플레이를 가로지르는 연속적인 상향 제스처(예컨대, 도 6a 내지 도 6d 및 도 6o 및 도 6p의 제스처(602))에 대응할 수 있다. 예를 들어, 일부 실시예들에서, 스크린의 에지로부터 제1 임계 거리(예컨대, 1 내지 2 센티미터)까지의 제스처가 도크를 디스플레이하고, 도크는 제스처가 디스플레이를 가로질러 이동함에 따라 제스처를 따르기 시작하며; 제스처가 제2 임계 거리(예컨대, 총 2 내지 4 센티미터, 또는 제1 임계 거리를 넘어서 추가의 1 내지 2 센티미터)만큼 이동한 후에, 도크는 정적인 위치에서 유지되고 더 이상 제스처를 따르지 않고; 제스처(602)가 제2 임계 거리를 넘어서 계속 이동함에 따라, 이어서 현재 디스플레이된 애플리케이션은 크기가 스케일 다운되기 시작하고 애플리케이션-스위처 사용자 인터페이스가 디스플레이되며; 제스처가 적어도 제3 임계 거리(예컨대, 총 3 내지 6 센티미터, 또는 제2 임계 거리를 넘어서 추가의 1 내지 2 센티미터)만큼 이동하면, 이어서 애플리케이션-스위처 사용자 인터페이스는 디스플레이된다.
사용자 입력을 수신하는 것에 응답하여, 디바이스는 터치 감응형 디스플레이 상에 애플리케이션-스위처 사용자 인터페이스를 디스플레이한다(1006)(예컨대, 도 6d 내지 도 6m 및 도 6p 및 도 6q의 애플리케이션-스위처 사용자 인터페이스). 일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 것은 그것이 표현과 연관된 미리정의된 크기에 도달할 때까지 디스플레이 영역의 크기를 점진적으로 감소시키거나 디스플레이 영역을 스케일링하는 것을 포함한다(1008). 예를 들어, 도 6d 및 도 6e에서, 도 6a에 도시된 디스플레이 영역(601a)의 크기는, 디스플레이(601a)의 소형화된 뷰가 표현과 연관된 미리정의된 크기에 도달할 때까지, 점진적으로 감소한다. 이러한 방식으로, 사용자들은, 그들이 보고 있었던 고정된 애플리케이션들이 애플리케이션-스위처 사용자 인터페이스 내에서 어디에 위치될 것인지에 관한 명확한 시각적 표시를 제공받으며, 이는 (예를 들어, 사용자들이 고정된 애플리케이션들을 애플리케이션-스위처 UI 내에서 용이하게 위치파악할 수 있는 것을 보장함으로써, 그리고 이러한 UI 내에서 그들의 배치를 위치파악하려고 시도하는 시간을 낭비할 필요 없이) 디바이스의 작동성을 향상시키는 데 도움을 준다.
일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스는 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고, 각각의 표현들은 적어도 2개의 애플리케이션들을 갖는 디스플레이 영역의 표현을 포함한다(1010). 예를 들어, 도 6p 및 도 6q에서, 표현(638)은 2개의 애플리케이션들, 즉 애플리케이션 4 및 애플리케이션 5를 갖는 디스플레이 영역의 표현을 포함한다. 일부 실시예들에서, 각각의 표현들은 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들 각각에 대한 활성 상태(예컨대, 특정 애플리케이션에 대한 마지막으로 디스플레이된 스크린)를 보여준다. 일부 실시예들에서, 적어도 2개의 애플리케이션들을 갖는 디스플레이 영역의 표현은 터치 감응형 디스플레이의 실질적으로 전부를 이전에 점유한 디스플레이 영역의 소형화된 뷰이다. 예를 들어, 도 6e에서, 표현(604)은 도 6a에 도시된 디스플레이 영역(601a)의 소형화된 뷰를 포함하고, 소형화된 뷰는 애플리케이션 1 및 비디오 애플리케이션의 디스플레이를 나란히 보여준다.
일부 실시예들에서, 각각의 표현들은 오버레이된 애플리케이션과 연관되는 추가 애플리케이션의 추가 표현을 포함하고, 추가 표현은 오버레이된 애플리케이션을 보여주지 않는다(1012). 예를 들어, 도 6n에 도시된 바와 같이, 추가 애플리케이션은 애플리케이션 1 및 애플리케이션 2이고, 비디오 애플리케이션은 애플리케이션 1의 상부 상에 오버레이된다. 애플리케이션 1은 터치 감응형 디스플레이(112)의 실질적으로 전부를 점유하는 디스플레이 영역(601b)에 디스플레이된다. 도 6p 및 도 6q에서, 추가 표현(634)은 오버레이된 비디오 애플리케이션을 보여주지 않는다. 이러한 방식으로, 인간-기계 인터페이스는 (애플리케이션-스위처 사용자 인터페이스 내에서 직접 상호작용될 수 있는) 고정된 애플리케이션들의 표현들만을 제시하고 오버레이된 애플리케이션들의 표현들을 제시하지 않음으로써 더 효율적으로 만들어진다. 애플리케이션-스위처 사용자 인터페이스를 혼란스럽게 하는 것을 피하기 위해, 일부 실시예들에서 애플리케이션 1을 표현하는 추가 표현은 오버레이된 제2 애플리케이션을 보여주지 않는다.
일부 실시예들에서, 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하는 것은 디스플레이 영역에 적어도 2개의 애플리케이션들을 나란히 동시에 디스플레이하는 것을 포함하고(예컨대, 도 6a의 애플리케이션 1 및 비디오 애플리케이션), 적어도 2개의 애플리케이션들을 갖는 디스플레이 영역의 표현을 디스플레이하는 것은 디스플레이 영역의 표현에서 적어도 2개의 애플리케이션들을 나란히 동시에 디스플레이하는 것을 포함한다(1014)(예컨대, 도 6d 내지 도 6f에서, 표현(604)은 애플리케이션 1 및 비디오 애플리케이션을 보여주는 분할-뷰 모드의 소형화된 뷰이다).
일부 실시예들에서, 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 것은 전자 디바이스 상에서 이용가능한 애플리케이션들에 대응하는 복수의 어포던스들을 포함하는 도크, 예컨대, 복수의 어포던스들을 포함하는 도 6b 내지 도 6m 및 도 6o 내지 도 6q의 도크(408)를 디스플레이하는 것을 포함한다(1016). 그러한 실시예들에서, 도 10b를 참조하면, 디바이스는 도크에 포함된 복수의 어포던스들 중 어포던스 위에서의 접촉(예컨대, 도 6f의 접촉(603))(예컨대, 도크(408) 내의 브라우저 어포던스 위에서의 접촉(603), 도 6f)을 검출하고(1018), 접촉 검출과 이동 사이의 리프트오프를 검출하지 않으면서, 디스플레이 영역의 표현을 향하는 접촉의 이동(예컨대, 도크(408)로부터 멀어지고 표현(604)으로 향하는 접촉(603)의 이동, 도 6f)을 검출한다(1020). 일부 실시예들에서, 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 접촉의 리프트오프를 검출할 시, 디바이스는 디스플레이 영역의 표현에 제1 애플리케이션을 디스플레이하는 것을 중지하고, 대신에 디스플레이 영역의 표현 내에 어포던스에 대응하는 추가 애플리케이션을 디스플레이한다(1022). 예를 들어, 도 6f 및 도 6g에서, 접촉의 리프트오프를 검출한 후에, 표현(604)은 웹 브라우징 애플리케이션이 이제 애플리케이션 1과 나란히 디스플레이되는 것을 보여주도록 업데이트된다(그리고, 디바이스(100)의 메모리는 또한 이들 애플리케이션들이 함께 고정된다는 것을 반영하도록 업데이트될 수 있다). 업데이트된 표현(616)에서, 비디오 애플리케이션은 표현(604)으로부터 해제되고 웹 브라우징 애플리케이션에 의해 대체된다.
위에서 논의된 바와 같이, 사용자가 분할-뷰 모드에서 디스플레이되는 애플리케이션들을 보여주는 애플리케이션-스위처 사용자 인터페이스 내에서 표현을 볼 수 있게 하는 것은, 사용자들이 고정된 애플리케이션들을 용이하고 효율적으로 식별할 수 있게 한다. 또한 사용자들이 애플리케이션-스위처 사용자 인터페이스로부터 직접 고정된 애플리케이션들과 상호작용할 수 있게 함으로써, 디바이스의 작동성이 향상되고, 인간-기계 인터페이스는 더 효율적으로 동작하도록 만들어진다(예컨대, 애플리케이션-스위처 사용자 인터페이스 내로부터 고정된 애플리케이션들과 직접 상호작용하는 것은, 사용자들이 그들의 상호작용을 수행하기 위해 애플리케이션-스위처 사용자 인터페이스를 종료해야 하는 것을 피하는 것을 보장한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 애플리케이션-스위처 사용자 인터페이스를 떠나고 이어서 고정된 애플리케이션들과 상호작용(또는 해제/대체)하기 시작하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에서, 애플리케이션-전환 사용자 인터페이스를 디스플레이하는 동안, 디바이스는 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 추가 사용자 입력(예컨대, 비-탭 선택(618b), 예컨대 도 6i에 도시된 바와 같은, 미리정의된 시간량 초과 동안 지속되는 접촉(길게 누르기) 또는 임계 세기 초과로 증가하는 세기를 갖는 접촉(예컨대, 깊게/세게 누르기))을 검출한다(1024). 추가 사용자 입력을 검출하는 것에 응답하여, 일부 실시예들에서, 디바이스는 제1 애플리케이션의 적어도 일부분 위에 해제 어포던스를 디스플레이한다(1026)(예컨대, 도 6i 및 도 6j에 도시된 바와 같이, 해제 어포던스(620)는 제1 애플리케이션의 일부분 위에 디스플레이된 "x"에 대응한다). 해제 어포던스의 선택을 검출할 시(예컨대, 도 6j의 사용자 입력(622)을 검출하는 것), 디바이스는 제1 애플리케이션을 닫고, 애플리케이션-스위처 사용자 인터페이스 내에 제1 애플리케이션 이외의 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이하며(1028), 예를 들어, 도 6k에서, 업데이트된 표현(624)은 표현(604)에 이전에 디스플레이된 2개의 애플리케이션들 중 나머지로서 애플리케이션 1을 보여준다.
위에서 논의된 바와 같이, 사용자가 분할-뷰 모드에서 디스플레이되는 애플리케이션들을 보여주는 애플리케이션-스위처 사용자 인터페이스 내에서 표현을 볼 수 있게 하는 것은, 사용자들이 고정된 애플리케이션들을 용이하고 효율적으로 식별할 수 있게 한다. 또한 사용자들이 애플리케이션-스위처 사용자 인터페이스로부터 직접 고정된 애플리케이션들과 상호작용할 수 있게 함으로써, 디바이스의 작동성이 향상되고, 인간-기계 인터페이스는 더 효율적으로 동작하도록 만들어진다(예컨대, 애플리케이션-스위처 사용자 인터페이스 내로부터 고정된 애플리케이션들과 직접 상호작용하는 것은, 사용자들이 그들의 상호작용을 수행하기 위해 애플리케이션-스위처 사용자 인터페이스를 종료해야 하는 것을 피하는 것을 보장한다). 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 애플리케이션-스위처 사용자 인터페이스를 떠나고 이어서 고정된 애플리케이션들과 상호작용하기 시작하기 위해 다수의 제스처들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
이제 도 10c를 참조하면, 일부 실시예들에서, 디바이스는 디스플레이 영역의 표현에 포함된 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 접촉을 검출하고(1030), 디스플레이 영역의 표현으로부터 멀어지는 접촉의 이동을 검출한다(1032)(예컨대, 도 6l의 드래그 제스처(626), 이때 제1 부분은 표현(604) 내의 비디오 애플리케이션 위에서의 접촉이고 제2 부분은 표현(604)으로부터 멀어지는 접촉의 이동임). 접촉이 애플리케이션-스위처 사용자 인터페이스 내의 미리정의된 영역으로 이동했음을 검출할 시, 디바이스는 표현 내에 제1 애플리케이션을 디스플레이하는 것을 중지하고, 애플리케이션-스위처 사용자 인터페이스에 제1 애플리케이션 이외의 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이한다(1034). 그러한 실시예들에서, 도크가 애플리케이션-스위처 사용자 인터페이스의 적어도 미리정의된 영역에 오버레이하면서 디스플레이되며, 도크는 전자 디바이스 상에서 이용가능한 복수의 애플리케이션들에 대응하는 어포던스들을 포함한다(1036)(다시 말하면, 미리정의된 영역으로의 접촉의 이동은 접촉의 도크 내로의 이동을 포함한다). 예를 들어, 도 6l에서, 도크(408)는 디바이스(100) 상에서 이용가능한 전화, 메일, 웹 브라우징, 및 메모 애플리케이션들에 대응하는 전화 어포던스, 메일 어포던스, 브라우저 어포던스, 및 메모 어포던스를 포함한다. 또한 도 6l에 도시된 바와 같이, 도크(408) 위로의 비디오 애플리케이션의 드래깅(626)을 검출할 시, 디바이스는 표현(604)으로부터 비디오 애플리케이션을 해제한다. 도 6m에 도시된 바와 같이, 업데이트된 표현(624)은 표현(604)에 이전에 포함된 2개의 애플리케이션들 중 나머지로서 애플리케이션 1을 포함한다. 적어도 미리정의된 영역에 오버레이하는 도크(도크에 관한 추가적인 상세사항들 및 예들이 방법(800)을 참조하여 위에서 제공됨)를 디스플레이함으로써, 사용자들은 해제되고 있는 애플리케이션들을 드래그할 목표를 제공받으며, 이에 의해 (예컨대, 사용자들이 앱-스위처 UI로부터 직접 애플리케이션들을 해제할 수 있는 것을 보장함으로써, 그리고 앱-스위처 UI를 떠나고 다수의, 복잡하고, 기억하기 어려운 입력 조합들을 사용하여 애플리케이션들을 해제함으로써 입력들을 낭비할 필요 없이) 디바이스의 작동성을 향상시킨다.
이러한 방식으로, 사용자들은 고정된 애플리케이션을 애플리케이션-스위처 사용자 인터페이스로부터 직접 해제하는 데 사용되는 간단한 제스처를 제공받으며, 이에 의해 (예컨대, 사용자들이 앱-스위처 UI로부터 직접 애플리케이션들을 해제할 수 있는 것을 보장함으로써, 그리고 앱-스위처 UI를 떠나고 다수의, 복잡하고, 기억하기 어려운 입력 조합들을 사용하여 애플리케이션들을 해제함으로써 입력들을 낭비할 필요 없이) 디바이스의 작동성을 향상시킨다.
도 10a 내지 도 10c에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
도 11a 및 도 11b는 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 방법(1100)을 도시하는 흐름도들이다. 도 7a 내지 도 7l은 도 11a 및 도 11b와 관련하여 기술된 방법들 및/또는 프로세스들을 예시하기 위해 사용된다.
일부 실시예들에서, 방법(1100)은 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100)) 및/또는 전자 디바이스의 하나 이상의 컴포넌트들(예컨대, I/O 서브시스템(106), 운영 체제(126) 등)에 의해 수행된다. 일부 실시예들에서, 방법(1100)은, 비일시적 컴퓨터 판독가능 저장 매체에 저장되며 디바이스의 하나 이상의 프로세서들, 예컨대 디바이스(100)(도 1a)의 하나 이상의 프로세서들(122)에 의해 실행되는 명령어들에 의해 통제된다. 설명의 용이함을 위해, 하기는 디바이스(100)에 의해 수행되는 바와 같은 방법(1100)을 기술한다. 일부 실시예들에서, 도 1a를 참조하면, 방법(1100)의 동작들은, 적어도 부분적으로, 멀티태스킹 모듈(예컨대, 멀티태스킹 모듈(180)) 및 그의 컴포넌트들, 접촉/모션 모듈(예컨대, 접촉/모션 모듈(130)), 그래픽 모듈(예컨대, 그래픽 모듈(132)), 및 터치 감응형 디스플레이(예컨대, 터치 감응형 디스플레이 시스템(112))에 의해 수행되거나 또는 그를 사용한다. 방법(1100)에서의 일부 동작들은 선택적으로 조합되고/되거나, 일부 동작들의 순서는 선택적으로 변경된다.
후술되는 바와 같이, 방법(1100)은 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 직관적인 방식을 제공한다. 때때로, 컴퓨팅 시스템들의 사용자들은 애플리케이션 내의 다른 특징들을 열도록 선택한 후에 애플리케이션의 소정 특징들에의 액세스를 잃는다(예컨대, 사용자들은 수신된 이메일에 답장하기 위한 옵션을 선택한 후에 수신된 이메일을 볼 수 없을 수 있다). 단일 애플리케이션의 다수의 인스턴스들을 여는 것은 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 한다. 사용자들이 이들 소정 특징들을 계속해서 보고 사용할 수 있게 하는 것은 (예컨대, 사용자들이, 이들 소정 특징들이 닫힌 후에 그것들을 재개하기 위해 다수의 입력들을 제공할 필요 없이, 이들 소정 특징들을 사용할 수 있게 함으로써) 디바이스의 작동성을 향상시키고 인간-기계 인터페이스를 더 효율적으로 만든다. 또한, 이는 터치 감응형 디스플레이와의 지속적인 상호작용을 가능하게 하는데, 이는 그렇지 않았다면 이들 소정 특징들이 닫혔거나 더 이상 디스플레이되지 않은 후 이들 소정 특징들을 재개하거나 이들에 액세스하는 방법을 알아내기 위해 다수의 제스처들 또는 입력들을 채용해야 하는 것으로 인해 가능하지 않았을 것이다.
일부 실시예들에 따르면, 동일한 애플리케이션의 2개 이상의 인스턴스들을 활성화하기 위한 방법(1100)이 제공된다. 예를 들어, 메일 애플리케이션의 제1 인스턴스(예컨대, 받은편지함을 디스플레이하는 것)는 스크린의 일 측 상에 열려 있는 반면, 동일한 메일 애플리케이션의 제2 인스턴스(예컨대, 개별 이메일 답장을 디스플레이함)는 스크린의 다른 측 상에 열려 있다. 인스턴스는, 통상적으로 컴퓨터 프로그램의 런타임 동안 존재하는 객체의 구체적인 단일 어커런스이며, 예를 들어, 프로그램 또는 애플리케이션이 실행될 때마다 그것은 그 프로그램의 인스턴스이다. 일부 실시예들에서, 방법은 터치 감응형 디스플레이(예컨대, 도 1c의 터치 스크린(112)) 및 하나 이상의 프로세서들을 갖는 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100))에서 방법이 수행된다.
이 실시예에서, 초기에, 애플리케이션의 제1 인스턴스가 터치 감응형 디스플레이의 실질적으로 전부 상에 디스플레이된다(1102). 이어서, 애플리케이션의 제1 인스턴스 내에 디스플레이된 어포던스 위에서 접촉이 검출된다(1104). 예를 들어, 1106에서, 애플리케이션은 이메일 애플리케이션이고, 어포던스 위에서의 접촉은 이메일 애플리케이션의 제1 인스턴스에 디스플레이된 링크 또는 어포던스(예컨대, 답장하기 화살표 또는 어포던스, 전체 답장하기 어포던스, 새 메시지 작성하기 링크 또는 어포던스, 또는 하이퍼링크) 위에서의 접촉이다.
일부 실시예들에서, 사용자 입력 또는 접촉은 간단한 탭 또는 터치가 아니라, 대신에 깊게 또는 더 세게 누르기(예컨대, 미리결정된 접촉력 또는 세기 초과의 힘 또는 세기를 갖는 누르기 - 도 3a 내지 도 3c에 관련된 설명 참조) 또는 미리결정된 시간량(예컨대, 1 내지 3초)보다 긴 시간 동안의 눌러서 유지하기이다. 터치 스크린(도 1a의 112), 프로세서들(도 1a의 122), 접촉 세기 센서들(도 1의 165), 및/또는 세기 센서 제어기(도 1의 159)는, 사용자 입력(예컨대, 접촉 또는 제스처)이 답장하기 어포던스 위에서의 미리결정된 유형(예컨대, 깊게 누르기 또는 눌러서 유지하기)인지 여부를 결정한다.
답장하기 어포던스 위에서의 접촉을 검출할 시(그리고 일부 실시예들에서, 사용자 입력 또는 접촉이 미리결정된 유형이라고 결정할 시), 터치 스크린은 애플리케이션의 새로운 인스턴스의 미리보기를 디스플레이한다(1108). 예를 들어, 1110에서, 애플리케이션은 이메일 애플리케이션이고, 어포던스는 이메일 애플리케이션의 제1 인스턴스에 디스플레이된 메시지의 표현이고, 프리뷰는, 접촉이 미리정의된 세기 임계치보다 큰 접촉의 세기를 갖거나 또는 접촉이 미리정의된 시간량 초과 동안 터치 감응형 디스플레이 상의 어포던스 위에서 유지됨(눌러서 유지하기 접촉 또는 제스처로 지칭됨)을 검출할 시에, 디스플레이된다.
이어서, 접촉의 이동이 터치 감응형 디스플레이를 가로질러 검출된다(1112). 일부 실시예들에서, 이러한 이동은 초기 접촉과 이동 사이의 접촉의 리프트오프 없이 발생할 필요가 있다(예컨대, 접촉은 연속적이고 터치 감응형 디스플레이로부터의 접촉의 리프트오프 없이 발생함).
이어서, 1114에서, 접촉이 터치 감응형 디스플레이를 가로질러 임계 거리(예컨대, 1 내지 2 센티미터) 초과만큼 이동했음을 검출하는 것에 응답하여, (i) 애플리케이션의 제1 인스턴스는 터치 감응형 디스플레이의 제1 부분(예컨대, 좌측 절반)을 점유하도록 크기조정되고, (ii) 제1 부분에 인접하게 터치 감응형 디스플레이의 미리정의된 부분(예컨대, 제2 부분)(예컨대, 디스플레이의 우측 1/3 내지 절반)이 드러난다. 다른 실시예들에서, 접촉이 터치 스크린의 미리결정된 부분(예컨대, 이하에서 제2 부분)으로(예컨대, 스크린의 우측 1/3 내지 절반으로) 이동했음을 검출하는 것에 응답하여, (i) 애플리케이션의 제1 인스턴스는 터치 감응형 디스플레이의 제1 부분(예컨대, 좌측 절반)을 점유하도록 크기조정되고, (ii) 제1 부분에 인접하게 터치 감응형 디스플레이의 미리정의된 부분(예컨대, 제2 부분)(예컨대, 디스플레이의 우측 1/3 내지 절반)이 드러난다. 또 다른 실시예들에서, 이들 이동들 중 어느 하나 또는 둘 모두가 분할-뷰 모드를 활성화한다.
일부 실시예들에서, 미리정의된 부분은 터치 감응형 디스플레이의 총 디스플레이 면적의 대략 1/3 내지 절반을 점유하는 빈 영역(예컨대, 도 7e의 부분(762))이다. 다른 실시예들에서, 빈 영역은 그 미리정의된 영역 내에 디바이스의 홈-스크린을 디스플레이한다. 일부 실시예들에서, 이러한 빈 영역을 드러내는 것은, 접촉의 리프트오프 시, 제1 부분에 디스플레이되는 애플리케이션의 이제-크기조정된 제1 인스턴스에 인접한 미리정의된 부분에 콘텐츠(이는 현재 프리뷰에 보여짐)가 디스플레이될 것이라는 시각적 표시를 사용자에게 제공한다. 이러한 방식으로, 컴퓨팅 시스템들의 사용자들은, 분할-뷰 모드가 어떻게 보일 것인지에 대한 시각적 미리보기를 그들에게 제공하기 위해, 디스플레이의 제2 부분을 드러내는 미리보기를 제공받는다. 이는, 사용자들이 미리보기를 본 후에 분할-뷰 모드를 활성화할지에 대한 결정을 할 수 있기 때문에, 디바이스의 작동성을 향상시키며, 이에 의해 사용자들이 분할-뷰 모드를 활성화하는 방법을 발견할 수 있도록 보장하고 사용자들이 그것을 활성화하기 전에 그러한 모드를 미리 볼 수 있도록 보장한다.
이어서, 1116에서, 접촉이 터치 감응형 디스플레이를 가로질러 임계 거리만큼 또는 디스플레이의 미리정의된 제2 부분으로 이동한 후에 접촉의 리프트오프를 검출할 시, 동일한 애플리케이션의 2개의 인스턴스들을 나란히 동시에 디스플레이한다. 특히, (i) 애플리케이션의 제1 인스턴스와 별개인 제2 인스턴스가, 선택된 어포던스와 연관된 콘텐츠와 함께 디스플레이되고, (ii) 애플리케이션의 제1 인스턴스의 적어도 일부분이 디스플레이된다. 제2 인스턴스 및 제1 인스턴스(또는 그의 일부분)는 터치 감응형 디스플레이의 디스플레이가능한 영역의 실질적으로 전부를 점유하는 것으로서 디스플레이된다.
일부 실시예들에서, 1118에 도시된 바와 같이, 분할-뷰 동작 모드는 터치 감응형 디스플레이의 미리정의된 부분(예컨대, 제2 부분)에 애플리케이션의 제2 인스턴스를 디스플레이하는 것을 포함한다.
일부 실시예들에서, 애플리케이션의 제1 및 제2 인스턴스들은 전자 디바이스의 하나 이상의 프로세서들 상에서 실행되는 별개의 실행가능한 프로세스들이다(예컨대, 둘 모두 개별적으로 전자 디바이스의 하나 이상의 프로세서들 상에서 실행되고 있는, 애플리케이션의 2개의 별개의 인스턴스화들). 달리 말하면, 리프트오프를 검출한 후에, 애플리케이션의 제2 인스턴스는 인스턴스화되고 이어서 애플리케이션의 제1 인스턴스와 나란히 디스플레이되며, 이에 의해 사용자가 제1 인스턴스로부터의 콘텐츠를 용이하게/편리하게 보고 사용할 수 있으면서 또한 제2 인스턴스와 상호작용할 수 있게 한다.
도 11a 및 도 11b에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
도 12는 도크 및 이어서 애플리케이션-스위처 사용자 인터페이스를 활성화하기 위해 연속 제스처를 사용하기 위한 방법(1200)을 도시하는 흐름도이다. 도 6a 내지 도 6q는 도 12와 관련하여 기술된 방법들 및/또는 프로세스들을 예시하기 위해 사용된다.
일부 실시예들에서, 방법(1200)은 전자 디바이스(예컨대, 도 1a의 휴대용 다기능 디바이스(100)) 및/또는 전자 디바이스의 하나 이상의 컴포넌트들(예컨대, I/O 서브시스템(106), 운영 체제(126) 등)에 의해 수행된다. 일부 실시예들에서, 방법(1200)은, 비일시적 컴퓨터 판독가능 저장 매체에 저장되며 디바이스의 하나 이상의 프로세서들, 예컨대 디바이스(100)(도 1a)의 하나 이상의 프로세서들(122)에 의해 실행되는 명령어들에 의해 통제된다. 설명의 용이함을 위해, 하기는 디바이스(100)에 의해 수행되는 바와 같은 방법(1200)을 기술한다. 일부 실시예들에서, 도 1a를 참조하면, 방법(1100)의 동작들은, 적어도 부분적으로, 멀티태스킹 모듈(예컨대, 멀티태스킹 모듈(180)) 및 그의 컴포넌트들, 접촉/모션 모듈(예컨대, 접촉/모션 모듈(130)), 그래픽 모듈(예컨대, 그래픽 모듈(132)), 및 터치 감응형 디스플레이(예컨대, 터치 감응형 디스플레이 시스템(112))에 의해 수행되거나 또는 그를 사용한다. 방법(1200)에서의 일부 동작들은 선택적으로 조합되고/되거나, 일부 동작들의 순서는 선택적으로 변경된다.
후술되는 바와 같이, 방법(1200)은 도크 및 이어서 애플리케이션-스위처 사용자 인터페이스를 활성화하는 것을 허용하는 단일 연속 제스처를 사용자들에게 제공한다. 본 방법은 도크 및 애플리케이션-스위처 사용자 인터페이스를 활성화하기 위해 사용자로부터 요구되는 입력들의 수를 감소시키고(예컨대, 사용자들은 다수의 입력들을 수행하는 대신에 간단한 제스처를 제공하기만 하면 됨), 이에 의해, 방법(1200)을 구현하는 전자 디바이스의 배터리 수명이 연장되는 것을 보장하는데, 이는 더 적은 수의 입력들을 프로세싱하는 데 더 적은 전력이 요구되기 때문이다(그리고 이러한 절감들은 사용자들이 더 직관적이고 간단한 제스처에 점점 더 친숙해짐에 따라 반복해서 실현될 것이다). 아래에서 또한 상세히 설명되는 바와 같이, 방법(1200)의 동작들은 사용자들이 지속적인 상호작용들에 관여할 수 있는 것을 보장하는 것을 돕고(예컨대, 그들은 그들의 디바이스들과의 상호작용들을 중단시키는 행동들을 빈번하게 실행취소할 필요가 없음), 방법(1200)의 동작들은 더 효율적인 인간-기계 인터페이스들을 생성하는 것을 돕는다.
일부 실시예들에서, 방법(1200)을 수행하도록 구성된 디바이스는 터치 감응형 디스플레이 상에 콘텐츠를 디스플레이한다(1202)(예컨대, 디바이스(100)는 애플리케이션 1을 디스플레이하고, 또한 터치 감응형 디스플레이 상의 분할-뷰 모드에서 비디오 브라우징 애플리케이션을 디스플레이한다(도 6a). 이어서 디바이스는 터치 감응형 디스플레이의 에지에 실질적으로 수직인(예컨대, +/- 5도 이내) 방향으로의 접촉(예컨대, 도 6a의 제스처(602)와 연관된 접촉)의 이동을 검출한다(1204)(예컨대, 접촉은 터치 감응형 디스플레이의 최하단 에지에 대한(터치 감응형 디스플레이를 향해 내려다보는 사용자에 대한) 실질적으로 수직 방향으로 이동한다). 접촉의 이동이 제1 이동-기반 임계치를 충족한다고 결정할 시에(예컨대, 에지로부터 임계 거리를 넘어 이동했거나, 접촉이 제1 임계 속도 또는 가속도에서/또는 그 이상으로 이동했음), 디바이스는 (예컨대, 도 6a 내지 도 6c에 도시된 바와 같이) 콘텐츠의 적어도 일부분에 오버레이하는 도크를 디스플레이하며, 도크는, 선택될 때 전자 디바이스로 하여금 전자 디바이스 상에서 이용가능한 각각의 애플리케이션을 열게 하는 복수의 어포던스들을 포함한다(1206). 일부 실시예들에서, 도크는 접촉이 에지에 실질적으로 수직인 방향으로 이동함에 따라 접촉의 이동 또는 속도에 따라 드러난다(예컨대, 도크는 먼저, 접촉이 예를 들어, 1 내지 2 센티미터의 초기 임계 거리를 이동한 후에 먼저 디스플레이되고, 도크는 이어서, 제1 임계 거리, 예컨대, 초기 임계 거리로부터 1 내지 2 센티미터 또는 총 2 내지 4 센티미터만큼 이동함에 따라, 정지 위치에 도달한다). 위에서 논의된 임계 거리는 초기 또는 제1 임계 거리일 수 있거나, 또한 속도 또는 가속도 기반 임계치일 수 있다.
도크를 디스플레이하는 동안 그리고 접촉의 이동이 제1 이동-기반 임계치보다 큰 제2 이동-기반 임계치를 충족한다는 결정에 따라(예컨대, 접촉이 에지로부터 3 내지 6 센티미터와 같은 제2 임계 거리 넘어 또는 제1 임계 거리로부터 추가의 1 내지 2 센티미터만큼 이동했거나, 또는 제1 임계 속도가 4 센티미터/초의 속도에 대응하는 경우, 접촉이 8 센티미터/초의 속도로 이동했음), 디바이스는 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 선택가능한 표현들을 포함하는 애플리케이션-스위처 사용자 인터페이스를 활성화한다(1208)(도 6c 및 도 6d에 도시된 바와 같음). 일부 실시예들에서, 접촉이 터치 감응형 디스플레이의 에지로부터 제2 임계 거리를 넘어 이동하거나 제2 속도 또는 가속도 임계치에서/또는 그 이상으로 이동함에 따라, 콘텐츠(예컨대, 포그라운드 애플리케이션과 연관된 콘텐츠)는 앱-스위칭 UI 내에서 그의 연대기적 위치로 스케일 다운된다(예컨대, 도 6d 및 도 6e에 도시된 바와 같음).
일부 실시예들에서, 제1 및 제2 이동-기반 임계치는 거리 임계치들, 속도 임계치들, 또는 가속도 임계치들로 이루어진 그룹으로부터 선택된다(1210).
일부 실시예들에서, 본 명세서에 기술된 거리-기반 임계치들 중 임의의 것(예컨대, 도크를 디스플레이하고 이어서 나중에 애플리케이션-스위처 사용자 인터페이스를 디스플레이하기 전에, 제스처(602)와 연관된 접촉이 소정 임계 거리 초과만큼 이동하는지 여부를 결정하는 것)은, 특정 동작(예컨대, 도크 및 이어서 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 것)을 수행하기 전에 소정 속도 임계치(예컨대, 적어도 8 센티미터/초의 속도를 가짐) 또는 가속도 임계치보다 큰 속도 또는 가속도로 접촉이 이동했는지 여부를 대신 결정하는 이동-기반 임계치(예컨대, 거리에 기초하거나, 이동 및 속력 또는 속력의 변화에 기초하는 것, 예컨대 속도 도는 가속도-기반 임계치들)로 대체될 수 있다.
일부 실시예들에서, 접촉이 터치 감응형 디스플레이의 에지로부터 제1 임계 거리를 넘어 그리고 이어서 제2 임계 거리를 넘어 이동함에 따라 접촉(예컨대, 도 6a 내지 도 6d의 제스처(602)와 연관된 접촉)의 리프트오프가 검출되지 않는다(예컨대, 접촉의 이동은, 먼저 전자 디바이스로 하여금 도크를 디스플레이하게 하고 이어서 전자 디바이스로 하여금 애플리케이션-스위처 사용자 인터페이스를 디스플레이하게 하는, 연속적인 중단되지 않는 제스처이다).
도크 및 이어서 애플리케이션-스위처 사용자 인터페이스를 활성화하는 데 사용되는 단일 제스처를 제공함으로써, 디바이스의 작동성이 향상되고 인간-기계 인터페이스는 더 효율적으로 동작하도록 만들어진다(예컨대, 개별적으로 도크에 액세스하고 이어서 얼마 후의 시점에 애플리케이션-스위처 사용자 인터페이스에 액세스하기 위해 다수의, 비효율적이고, 시간-낭비적인 입력들을 채용해야 하는 것 대신에, 사용자들은 도크 및 애플리케이션-스위치 사용자 인터페이스를 활성화하기 위한 단일 입력을 제공할 수 있기 때문임).
도 12에서의 동작들이 기술된 특정 순서는 단지 일례이며 기술된 순서가 동작들이 수행될 수 있는 유일한 순서임을 나타내는 것으로 의도되지는 않는다는 것이 이해되어야 한다. 당업자는 본 명세서에 기술된 동작들을 재순서화하는 다양한 방식들을 인식할 것이다. 간결함을 위해, 이 상세사항들은 여기서 반복되지 않는다.
전술한 설명은, 설명의 목적을 위해, 특정 실시예들을 참조하여 설명되었다. 그러나, 상기의 예시적인 논의들은 본 발명을 개시된 정확한 형태들로 규명하거나 제한하려는 의도는 아니다. 많은 수정들 및 변형들이 상기 교시 내용들의 관점에서 가능하다. 본 발명의 원리들 및 그의 실제적인 응용들을 가장 잘 설명하여 당업자들이 본 발명 및 다양하게 기술된 실시예들을 고려되는 특정 용도에 적합한 바와 같은 다양한 변형들을 갖고서 가장 잘 이용하는 것을 가능하게 하도록, 실시예들이 선택 및 설명되었다.

Claims (77)

  1. 방법으로서,
    터치 감응형 디스플레이 및 하나 이상의 프로세서들을 갖는 전자 디바이스에서:
    터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 하나 이상의 애플리케이션들의 제1 세트를 디스플레이하는 단계;
    상기 하나 이상의 애플리케이션들의 제1 세트를 디스플레이하는 동안:
    상기 디스플레이 영역의 제1 부분에 오버레이(overlay)하는 도크(dock)를 디스플레이하는 단계;
    상기 도크 내에 디스플레이된 제1 어포던스 위에서의 상기 터치 감응형 디스플레이 상의 접촉을 검출하는 단계 - 상기 제1 어포던스는 하나 이상의 애플리케이션들의 제2 세트와 연관됨 -;
    상기 도크로부터 멀어지는 상기 접촉의 이동을 검출하는 단계;
    상기 접촉이 상기 제1 부분과는 상이한 상기 디스플레이 영역의 제2 부분 위에 있는 동안 상기 터치 감응형 디스플레이로부터의 상기 접촉의 리프트오프를 검출할 시, 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 상기 디스플레이 영역에 (i) 상기 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 상기 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 접촉의 리프트오프를 검출하기 전에:
    상기 접촉이 상기 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 또는 상기 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부와 경계를 이루는 상기 터치 감응형 디스플레이의 에지로부터의 임계 거리 내로 이동한 후, 상기 하나 이상의 애플리케이션들의 제1 세트를 크기조정(resize)하여, 상기 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 상기 디스플레이 영역의 상기 제2 부분을 드러내는 단계를 추가로 포함하는, 방법.
  3. 제1항에 있어서, 상기 접촉의 리프트오프를 검출하기 전에:
    상기 접촉이 상기 도크로부터 적어도 임계 거리만큼 멀리 이동한 후, 상기 하나 이상의 애플리케이션들의 제1 세트를 크기조정하여, 상기 하나 이상의 애플리케이션들의 크기조정된 제1 세트에 인접하게 상기 디스플레이 영역의 상기 제2 부분을 드러내는 단계를 추가로 포함하는, 방법.
  4. 제2항 또는 제3항에 있어서, 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 상기 디스플레이 영역에 (i) 상기 하나 이상의 애플리케이션들의 제1 세트 중 적어도 일부 및 (ii) 상기 하나 이상의 애플리케이션들의 제2 세트 중 적어도 일부를 디스플레이하는 단계는,
    상기 디스플레이 영역의 상기 제2 부분에 상기 하나 이상의 애플리케이션들의 제2 세트 중 상기 적어도 일부를 디스플레이하는 단계, 및
    상기 디스플레이 영역의 상기 제2 부분에 인접한 상기 디스플레이 영역의 나머지 부분에 상기 하나 이상의 애플리케이션들의 제1 세트 중 상기 적어도 일부를 디스플레이하는 단계를 포함하는, 방법.
  5. 제1항에 있어서, 상기 접촉의 리프트오프를 검출하기 전에:
    상기 접촉이 상기 도크로부터 임계 거리만큼 멀리 이동할 때까지 상기 접촉에 근접하게 상기 어포던스의 표현을 디스플레이하는 단계; 및
    상기 접촉이 상기 도크로부터 적어도 상기 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 상기 어포던스의 상기 표현을 디스플레이하는 것을 중지하고, 상기 접촉에 근접하게 상기 제2 애플리케이션과 연관된 콘텐츠의 썸네일을 디스플레이하는 단계를 추가로 포함하는, 방법.
  6. 제5항에 있어서,
    상기 접촉이 상기 제1 부분 또는 상기 제2 부분의 상부 상에서 각각 이동됨에 따라, 상기 제1 부분 또는 상기 제2 부분의 디스플레이 크기와 매칭되도록 상기 썸네일을 크기조정하는 단계를 추가로 포함하는, 방법.
  7. 제1항에 있어서, 상기 접촉의 리프트오프를 검출하기 전에:
    상기 접촉이 상기 도크로부터 임계 거리만큼 멀리 이동할 때까지 상기 접촉에 근접하게 상기 제1 어포던스의 표현을 디스플레이하는 단계; 및
    상기 접촉이 적어도 상기 도크로부터 적어도 상기 임계 거리만큼 멀리 이동했다고 결정하는 것에 따라, 상기 접촉에 근접하게 상기 제1 어포던스의 상기 표현을 둘러싸는 사용자 인터페이스 객체를 디스플레이하는 단계를 추가로 포함하는, 방법.
  8. 제7항에 있어서, 상기 사용자 인터페이스 객체는 제1 형상을 갖고, 상기 방법은, 상기 접촉의 상기 리프트오프를 검출하기 전에:
    상기 접촉이 상기 제1 부분 또는 상기 제2 부분의 상부 상에서 각각 이동됨에 따라 상기 사용자 인터페이스 객체를 제2 형상 또는 제3 형상을 갖도록 수정하는 단계를 추가로 포함하며,
    상기 제1 형상은 상기 제2 및 제3 형상들과는 별개인, 방법.
  9. 제1항에 있어서, 상기 도크를 디스플레이하는 단계는,
    상기 터치 감응형 디스플레이 상의 초기 접촉을 검출하는 단계; 및
    상기 터치 감응형 디스플레이의 하부 부분에 실질적으로 수직인 방향으로의 상기 초기 접촉의 이동을 검출하는 것에 응답하여, 상기 터치 감응형 디스플레이의 상기 제1 부분에 상기 도크를 디스플레이하는 단계를 포함하는, 방법.
  10. 제1항에 있어서,
    상기 제1 세트는 하나의 제1 애플리케이션을 포함하고,
    상기 제2 세트는 하나의 제2 애플리케이션을 포함하고,
    상기 어포던스는 상기 하나의 제2 애플리케이션과 연관되고,
    상기 접촉이 상기 하나의 제1 애플리케이션과 경계를 이루는 상기 터치 감응형 디스플레이의 에지의 임계 거리 내에 위치되는 동안 상기 접촉의 상기 리프트오프를 검출할 시, 상기 제1 및 제2 애플리케이션들은 상기 디스플레이 영역에서 나란히 디스플레이되는, 방법.
  11. 제10항에 있어서,
    상기 접촉이 상기 하나의 제1 애플리케이션 위에 위치되는 동안 상기 접촉의 상기 리프트오프를 검출할 시, 상기 제2 애플리케이션은 상기 디스플레이 영역에서 상기 제1 애플리케이션에 오버레이하면서 디스플레이되는, 방법.
  12. 제1항에 있어서,
    상기 제1 세트는 적어도 제1 애플리케이션 및 제2 애플리케이션을 포함하고,
    상기 제2 세트는 하나의 제3 애플리케이션을 포함하고,
    상기 어포던스는 상기 하나의 제3 애플리케이션과 연관되는, 방법.
  13. 제12항에 있어서,
    상기 접촉의 상기 리프트오프가 상기 제2 애플리케이션 위에서 발생한다는 결정에 따라, 상기 터치 감응형 디스플레이 상에서 상기 제2 애플리케이션을 상기 제3 애플리케이션으로 대체하는 단계를 추가로 포함하는, 방법.
  14. 제13항에 있어서,
    상기 접촉의 상기 리프트오프가 상기 제1 애플리케이션과 상기 제2 애플리케이션 사이의 경계 위에서 발생한다고 결정하는 것에 따라, 상기 터치 감응형 디스플레이 상에서 상기 제1 애플리케이션 또는 상기 제2 애플리케이션에 오버레이하는 상기 하나의 제3 애플리케이션을 디스플레이하는 단계를 추가로 포함하는, 방법.
  15. 제1항에 있어서,
    상기 제1 세트는 적어도 2개의 고정(pin)된 애플리케이션들의 제1 그룹을 포함하고,
    상기 제2 세트는 적어도 2개의 고정된 애플리케이션들의 제2 그룹을 포함하고,
    상기 어포던스는 상기 적어도 2개의 고정된 애플리케이션들의 제2 그룹과 연관되는, 방법.
  16. 제15항에 있어서,
    상기 접촉의 상기 리프트오프가 상기 애플리케이션들의 제1 그룹 위에서 발생한다는 결정에 따라, 상기 적어도 2개의 고정된 애플리케이션들의 제1 그룹을 상기 적어도 2개의 고정된 애플리케이션들의 제2 그룹으로 대체하는 단계를 추가로 포함하는, 방법.
  17. 제1항에 있어서,
    상기 하나 이상의 애플리케이션들의 제1 세트는 제1 애플리케이션의 인스턴스를 포함하고,
    상기 하나 이상의 애플리케이션들의 제2 세트는 상기 제1 애플리케이션의 추가 인스턴스를 포함하고,
    상기 인스턴스 및 상기 추가 인스턴스는 상기 제1 애플리케이션의 별개의 인스턴스들인, 방법.
  18. 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 실행가능한 명령어들은, 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 상기 전자 디바이스로 하여금 제1항 내지 제17항 중 어느 한 항의 방법을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  19. 전자 디바이스로서,
    하나 이상의 프로세서들;
    터치 감응형 디스플레이; 및
    상기 하나 이상의 프로세서들에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로그램들은 제1항 내지 제17항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.
  20. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스로서,
    제1항 내지 제17항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 전자 디바이스.
  21. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서,
    제1항 내지 제17항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 정보 프로세싱 장치.
  22. 하나 이상의 프로세서들을 갖는 전자 디바이스의 터치 감응형 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스로서, 제1항 내지 제17항 중 어느 한 항의 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함하는, 그래픽 사용자 인터페이스.
  23. 방법으로서,
    터치 감응형 디스플레이 및 하나 이상의 프로세서들을 갖는 전자 디바이스에서:
    터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 제1 애플리케이션 및 제2 애플리케이션을 디스플레이하는 단계;
    상기 디스플레이 영역에 상기 제1 애플리케이션 및 상기 제2 애플리케이션을 디스플레이하는 동안:
    상기 제2 애플리케이션의 에지 근처에 어포던스를 디스플레이하는 단계;
    상기 터치 감응형 디스플레이를 가로지르는 방향으로 이동하는 상기 어포던스 위에서의 접촉을 검출하는 단계;
    상기 방향이 제1 방향이라는 결정에 따라:
    상기 디스플레이 영역의 실질적으로 전부를 점유하도록 상기 제1 애플리케이션을 크기조정하는 단계; 및
    상기 크기조정된 제1 애플리케이션에 오버레이하는 상기 제2 애플리케이션을 디스플레이하는 단계; 및
    상기 방향이 상기 제1 방향에 실질적으로 수직인 제2 방향이라는 결정에 따라, 상기 제2 애플리케이션을 상기 디스플레이 영역 내에서 이동시키는 단계를 포함하는, 방법.
  24. 제23항에 있어서,
    상기 제2 애플리케이션이 상기 크기조정된 제1 애플리케이션에 오버레이하는 동안, 상기 제1 애플리케이션에서 사용자 입력을 검출하는 단계; 및
    상기 제1 애플리케이션을 통해 상기 사용자 입력에 응답하는 단계를 추가로 포함하는, 방법.
  25. 제24항에 있어서,
    상기 방향이 상기 제1 방향이라는 상기 결정 후에:
    상기 제1 및 상기 제2 애플리케이션들과는 별개인 제3 애플리케이션을 열라는 요청에 응답하여, (i) 상기 제1 애플리케이션에 의해 이전에 점유된 상기 디스플레이 영역의 부분에 상기 제3 애플리케이션을 디스플레이하고, (ii) 상기 제3 애플리케이션에 오버레이하는 상기 제2 애플리케이션을 디스플레이하는 단계를 추가로 포함하는, 방법.
  26. 제23항에 있어서,
    상기 제2 애플리케이션은 상기 터치 감응형 디스플레이의 제1 에지와 경계를 이루는 것으로서 초기에 디스플레이되고,
    상기 제2 애플리케이션을 상기 디스플레이 영역 내에서 이동시키는 단계는,
    상기 제2 애플리케이션이 상기 터치 감응형 디스플레이의 상기 제1 에지에 대향하는 제2 에지와 경계를 이룰 때까지 상기 제2 애플리케이션을 상기 제2 방향으로 이동시키는 단계; 및
    상기 제1 애플리케이션이 상기 터치 감응형 디스플레이의 상기 제1 에지와 경계를 이루도록, 상기 제2 애플리케이션에 의해 점유된 부분과는 별개인, 상기 디스플레이 영역의 나머지 부분에 상기 제1 애플리케이션을 디스플레이하는 단계를 포함하는, 방법.
  27. 제26항에 있어서, 상기 제2 애플리케이션이 상기 제2 에지와 경계를 이룰 때까지 상기 제2 애플리케이션을 이동시키기 전에, 상기 제2 애플리케이션에 의해 점유된 상기 부분의 미리보기가 상기 제1 애플리케이션 옆에 드러나는, 방법.
  28. 제23항에 있어서,
    상기 제1 방향은 상기 제2 애플리케이션의 상기 에지에 대한 하향 방향이고,
    상기 제2 방향은 상기 하향에 실질적으로 수직인 측방향인, 방법.
  29. 제23항에 있어서, 상기 어포던스를 디스플레이하기 전에:
    상기 제2 애플리케이션의 상기 에지에서 사용자 입력을 검출하고, 상기 사용자 입력을 검출하는 것에 응답하여 상기 어포던스를 디스플레이하는 단계를 추가로 포함하는, 방법.
  30. 제29항에 있어서, 상기 사용자 입력은 상기 제2 애플리케이션의 상기 에지에서의 접촉 및 상기 터치 감응형 디스플레이를 가로지르는 상기 제1 방향으로의 상기 접촉의 이동을 포함하는, 방법.
  31. 제23항에 있어서, 상기 제1 애플리케이션을 크기조정하고, 상기 크기조정된 제1 애플리케이션에 오버레이하는 상기 제2 애플리케이션을 디스플레이한 후에:
    상기 어포던스 위에서의 추가 접촉 및 상기 제1 방향에 반대인 제3 방향으로의 상기 추가 접촉의 이동을 검출하는 단계;
    상기 추가 접촉이 상기 제3 방향으로 상기 임계 거리만큼 이동했음을 검출하는 것에 응답하여, 상기 크기조정된 제1 애플리케이션에 오버레이하는 상기 제2 애플리케이션을 디스플레이하는 것을 중지하고, 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 상기 디스플레이 영역에 상기 제1 애플리케이션 및 상기 제2 애플리케이션을 재디스플레이하는 단계를 추가로 포함하는, 방법.
  32. 제23항에 있어서, 상기 제1 애플리케이션을 크기조정하고, 상기 크기조정된 제1 애플리케이션에 오버레이하는 상기 제2 애플리케이션을 디스플레이한 후에:
    상기 어포던스 위에서의 추가 접촉 및 상기 제1 방향으로의 상기 추가 접촉의 이동을 검출하는 단계; 및
    상기 추가 접촉이 상기 터치 감응형 디스플레이를 가로질러 제2 임계 거리만큼 이동했음을 검출하는 것에 응답하여, 상기 제2 애플리케이션에 대응하는 어포던스의 표현을 갖는 사용자 인터페이스 객체가 디스플레이될 때까지 상기 추가 접촉의 이동에 따라 상기 제2 애플리케이션과 연관된 콘텐츠를 스케일 다운(scale down)하는 단계를 추가로 포함하는, 방법.
  33. 제32항에 있어서,
    상기 추가 접촉이 도크 위로 이동하고 상기 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라, 상기 제2 애플리케이션을 해제(dismiss)하고, 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 상기 제1 애플리케이션을 디스플레이하는 단계; 및
    상기 추가 접촉이 상기 터치 감응형 디스플레이의 에지의 임계 거리 내로 이동하고 상기 터치 감응형 디스플레이로부터 리프트오프된다는 결정에 따라, 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 상기 디스플레이 영역에 상기 제1 애플리케이션 및 상기 제2 애플리케이션을 재디스플레이하는 단계를 추가로 포함하는, 방법.
  34. 제23항 내지 제30항 중 어느 한 항에 있어서, 상기 디스플레이 영역에 상기 제1 및 제2 애플리케이션들을 디스플레이하는 단계는 상기 디스플레이 영역에서 나란히 상기 제1 및 제2 애플리케이션들을 동시에 디스플레이하는 단계를 포함하는, 방법.
  35. 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 실행가능한 명령어들은, 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 상기 전자 디바이스로 하여금 제23항 내지 제34항 중 어느 한 항의 방법을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  36. 전자 디바이스로서,
    하나 이상의 프로세서들;
    터치 감응형 디스플레이; 및
    상기 하나 이상의 프로세서들에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로그램들은 제23항 내지 제34항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.
  37. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스로서,
    제23항 내지 제34항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 전자 디바이스.
  38. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서,
    제23항 내지 제34항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 정보 프로세싱 장치.
  39. 하나 이상의 프로세서들을 갖는 전자 디바이스의 터치 감응형 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스로서, 제23항 내지 제34항 중 어느 한 항의 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함하는, 그래픽 사용자 인터페이스.
  40. 방법으로서,
    터치 감응형 디스플레이 및 하나 이상의 프로세서들을 갖는 전자 디바이스에서:
    상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하는 단계;
    애플리케이션-스위처 사용자 인터페이스(application-switcher user interface)를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하는 단계;
    상기 사용자 입력을 수신하는 것에 응답하여, 상기 터치 감응형 디스플레이 상에 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 단계를 포함하며, 상기 애플리케이션-스위처 사용자 인터페이스는,
    상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고,
    상기 각각의 표현들은 상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 표현을 포함하는, 방법.
  41. 제40항에 있어서,
    상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 단계는 상기 전자 디바이스 상에서 이용가능한 애플리케이션들에 대응하는 복수의 어포던스들을 포함하는 도크를 디스플레이하는 단계를 포함하고,
    상기 방법은,
    상기 도크에 포함된 상기 복수의 어포던스들 중 하나의 어포던스 위에서의 접촉을 검출하는 단계;
    상기 디스플레이 영역의 상기 표현을 향하는 상기 접촉의 이동을 검출하는 단계; 및
    상기 디스플레이 영역의 상기 표현에 포함된 상기 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 상기 접촉의 리프트오프를 검출할 시, 상기 디스플레이 영역의 상기 표현에 상기 제1 애플리케이션을 디스플레이하는 것을 중지하고, 대신에 상기 디스플레이 영역의 상기 표현 내에 상기 어포던스에 대응하는 추가 애플리케이션을 디스플레이하는 단계를 추가로 포함하는, 방법.
  42. 제40항에 있어서, 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 동안:
    상기 디스플레이 영역의 상기 표현에 포함된 상기 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 추가 사용자 입력을 검출하는 단계;
    상기 추가 사용자 입력을 검출하는 것에 응답하여, 상기 제1 애플리케이션의 적어도 일부분 위에 해제 어포던스를 디스플레이하는 단계; 및
    상기 해제 어포던스의 선택을 검출할 시, 상기 제1 애플리케이션을 닫고, 상기 애플리케이션-스위처 사용자 인터페이스에 상기 제1 애플리케이션 이외의 상기 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이하는 단계를 추가로 포함하는, 방법.
  43. 제40항에 있어서,
    상기 디스플레이 영역의 상기 표현에 포함된 상기 적어도 2개의 애플리케이션들 중 제1 애플리케이션 위에서의 접촉을 검출하는 단계;
    상기 디스플레이 영역의 상기 표현으로부터 멀어지는 상기 접촉의 이동을 검출하는 단계; 및
    상기 접촉이 상기 애플리케이션-스위처 사용자 인터페이스 내의 미리정의된 영역으로 이동했음을 검출할 시, 상기 표현에 상기 제1 애플리케이션을 디스플레이하는 것을 중지하고, 상기 애플리케이션-스위처 사용자 인터페이스에 상기 제1 애플리케이션 이외의 상기 적어도 2개의 애플리케이션들 중 나머지의 업데이트된 표현을 디스플레이하는 단계를 추가로 포함하는, 방법.
  44. 제43항에 있어서, 도크가 적어도 상기 애플리케이션-스위처 사용자 인터페이스의 상기 미리정의된 영역에 오버레이하면서 디스플레이되고, 상기 도크는 상기 전자 디바이스 상에서 이용가능한 복수의 애플리케이션들에 대응하는 어포던스들을 포함하는, 방법.
  45. 제40항에 있어서, 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하는 단계는,
    상기 디스플레이 영역의 크기를, 상기 표현과 연관된 미리정의된 크기에 도달할 때까지, 점진적으로 감소시키는 단계를 포함하는, 방법.
  46. 제40항 내지 제45항 중 어느 한 항에 있어서,
    상기 각각의 표현들은 오버레이된 애플리케이션과 연관되는 추가 애플리케이션의 추가 표현을 포함하고,
    상기 추가 표현은 상기 오버레이된 애플리케이션을 보여주지 않는, 방법.
  47. 제40항 내지 제45항 중 어느 한 항에 있어서,
    상기 디스플레이 영역에 상기 적어도 2개의 애플리케이션들을 디스플레이하는 단계는 상기 디스플레이 영역에서 나란히 상기 적어도 2개의 애플리케이션들을 동시에 디스플레이하는 단계를 포함하고,
    상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 상기 표현을 디스플레이하는 단계는 상기 디스플레이 영역의 상기 표현에서 나란히 상기 적어도 2개의 애플리케이션들을 동시에 디스플레이하는 단계를 포함하는, 방법.
  48. 전자 디바이스로서,
    터치 감응형 디스플레이;
    하나 이상의 프로세서들;
    메모리; 및
    상기 메모리에 저장되고 상기 하나 이상의 프로세서들에 의해 실행되도록 구성된 하나 이상의 프로그램들을 포함하며, 상기 하나 이상의 프로그램들은,
    상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하고;
    애플리케이션-스위처 사용자 인터페이스를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하고;
    상기 사용자 입력을 수신하는 것에 응답하여, 상기 터치 감응형 디스플레이 상에 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하기 위한 명령어들을 포함하며, 상기 애플리케이션-스위처 사용자 인터페이스는,
    상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고,
    상기 각각의 표현들은 상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 표현을 포함하는, 전자 디바이스.
  49. 하나 이상의 프로그램들을 저장하는 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 상기 디바이스로 하여금,
    상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하고;
    애플리케이션-스위처 사용자 인터페이스를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하고;
    상기 사용자 입력을 수신하는 것에 응답하여, 상기 터치 감응형 디스플레이 상에 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하게 하는 명령어들을 포함하며, 상기 애플리케이션-스위처 사용자 인터페이스는,
    상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고,
    상기 각각의 표현들은 상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 표현을 포함하는, 컴퓨터 판독가능 저장 매체.
  50. 전자 디바이스로서,
    터치 감응형 디스플레이; 및
    상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하기 위한 수단;
    애플리케이션-스위처 사용자 인터페이스를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하기 위한 수단;
    상기 사용자 입력을 수신하는 것에 응답하여, 상기 터치 감응형 디스플레이 상에 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하기 위한 수단을 포함하며, 상기 애플리케이션-스위처 사용자 인터페이스는,
    상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고,
    상기 각각의 표현들은 상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 표현을 포함하는, 전자 디바이스.
  51. 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서,
    상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 디스플레이 영역에 적어도 2개의 애플리케이션들을 디스플레이하기 위한 수단;
    애플리케이션-스위처 사용자 인터페이스를 디스플레이하라는 요청에 대응하는 사용자 입력을 수신하기 위한 수단;
    상기 사용자 입력을 수신하는 것에 응답하여, 상기 터치 감응형 디스플레이 상에 상기 애플리케이션-스위처 사용자 인터페이스를 디스플레이하기 위한 수단을 포함하며, 상기 애플리케이션-스위처 사용자 인터페이스는,
    상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 표현들을 포함하고,
    상기 각각의 표현들은 상기 적어도 2개의 애플리케이션들을 갖는 상기 디스플레이 영역의 표현을 포함하는, 정보 프로세싱 장치.
  52. 전자 디바이스로서,
    터치 감응형 디스플레이;
    하나 이상의 프로세서들;
    메모리; 및
    상기 메모리에 저장되고 상기 하나 이상의 프로세서들에 의해 실행되도록 구성된 하나 이상의 프로그램들을 포함하며, 상기 하나 이상의 프로그램들은 제40항 내지 제47항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.
  53. 전자 디바이스로서,
    터치 감응형 디스플레이; 및
    제40항 내지 제47항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 전자 디바이스.
  54. 하나 이상의 프로그램들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 하나 이상의 프로그램들은, 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 상기 디바이스로 하여금 제40항 내지 제47항 중 어느 한 항의 방법을 수행하게 하는 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
  55. 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서, 제40항 내지 제47항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 정보 프로세싱 장치.
  56. 하나 이상의 프로세서들을 갖는 전자 디바이스의 터치 감응형 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스로서, 제40항 내지 제47항 중 어느 한 항의 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함하는, 그래픽 사용자 인터페이스.
  57. 방법으로서,
    터치 감응형 디스플레이 및 하나 이상의 프로세서들을 갖는 전자 디바이스에서:
    상기 터치 감응형 디스플레이의 실질적으로 전부 상에 애플리케이션의 제1 인스턴스를 디스플레이하는 단계;
    상기 애플리케이션의 상기 제1 인스턴스 내에 디스플레이된 어포던스 위에서의 접촉을 검출하는 단계;
    상기 터치 감응형 디스플레이를 가로지르는 상기 접촉의 이동을 검출하는 단계;
    상기 접촉이 상기 터치 감응형 디스플레이를 가로질러 그리고 상기 터치 감응형 디스플레이의 미리정의된 부분 내로 이동한 후에 상기 접촉의 리프트오프를 검출할 시, 상기 전자 디바이스에 대한 분할-뷰 동작 모드(split-view mode of operation)를 활성화하는 단계를 포함하며, 상기 분할-뷰 동작 모드는 (i) 상기 어포던스와 연관된 콘텐츠와 함께 디스플레이되는 상기 애플리케이션의, 상기 제1 인스턴스와 별개인, 제2 인스턴스, 및 (ii) 상기 애플리케이션의 상기 제1 인스턴스의 적어도 일부분을 동시에 디스플레이하는 것을 포함하고, 상기 디스플레이된 제2 인스턴스 및 상기 제1 인스턴스의 상기 일부분은 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는, 방법.
  58. 제57항에 있어서,
    상기 분할-뷰 모드를 활성화하기 전에, (i) 상기 접촉이 상기 터치 감응형 디스플레이를 가로질러 적어도 임계 거리만큼 이동했음 및 (ii) 상기 접촉이 상기 터치 감응형 디스플레이의 미리정의된 부분으로 이동했음 중 적어도 하나를 검출하는 단계; 및
    상기 접촉이 적어도 상기 임계 거리만큼 이동했거나 상기 터치 감응형 디스플레이의 상기 미리정의된 부분으로 이동했음을 검출하는 것에 응답하여:
    상기 터치 감응형 디스플레이의 제1 부분을 점유하도록 상기 애플리케이션의 상기 제1 인스턴스를 크기조정하는 단계; 및
    상기 제1 부분에 인접하게 상기 터치 감응형 디스플레이의 상기 미리정의된 부분을 드러내는 단계를 추가로 포함하는, 방법.
  59. 제58항에 있어서, 상기 분할-뷰 동작 모드를 활성화하는 단계는 상기 터치 감응형 디스플레이의 상기 미리정의된 부분에 상기 애플리케이션의 상기 제2 인스턴스를 디스플레이하는 단계를 포함하는, 방법.
  60. 제57항에 있어서, 상기 터치 감응형 디스플레이를 가로지르는 상기 접촉의 이동을 검출하기 전에, 상기 접촉 아래에 상기 어포던스와 연관된 콘텐츠의 미리보기를 디스플레이하는 단계를 추가로 포함하는, 방법.
  61. 제60항에 있어서,
    상기 애플리케이션은 이메일 애플리케이션이고,
    상기 어포던스는 상기 이메일 애플리케이션의 상기 제1 인스턴스에 디스플레이된 메시지의 표현이고,
    상기 미리보기는 상기 접촉이 미리정의된 세기 임계치보다 큰 접촉의 세기를 가짐을 검출할 시에 디스플레이되는, 방법.
  62. 제60항에 있어서,
    상기 애플리케이션은 이메일 애플리케이션이고,
    상기 어포던스는 상기 이메일 애플리케이션의 상기 제1 인스턴스에 디스플레이된 메시지의 표현이고,
    상기 미리보기는, 상기 접촉이 미리정의된 시간량 초과 동안 상기 터치 감응형 디스플레이 상의 상기 어포던스 상에서 유지됨을 검출할 시에, 디스플레이되는, 방법.
  63. 제57항 내지 제60항 중 어느 한 항에 있어서,
    상기 애플리케이션은 이메일 애플리케이션이고,
    상기 어포던스 위에서의 상기 접촉은 상기 이메일 애플리케이션의 상기 제1 인스턴스에 디스플레이된 링크 위에서의 접촉인, 방법.
  64. 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 상기 전자 디바이스로 하여금,
    상기 터치 감응형 디스플레이의 실질적으로 전부 상에 애플리케이션의 제1 인스턴스를 디스플레이하고;
    상기 애플리케이션의 상기 제1 인스턴스 내에 디스플레이된 어포던스 위에서의 접촉을 검출하고;
    상기 터치 감응형 디스플레이를 가로지르는 상기 접촉의 이동을 검출하고;
    상기 접촉이 상기 터치 감응형 디스플레이를 가로질러 그리고 상기 터치 감응형 디스플레이의 미리정의된 부분 내로 이동한 후에 상기 접촉의 리프트오프를 검출할 시, 상기 전자 디바이스에 대한 분할-뷰 동작 모드를 활성화하게 하며, 상기 분할-뷰 동작 모드는 (i) 상기 어포던스와 연관된 상기 콘텐츠와 함께 디스플레이되는 상기 애플리케이션의, 상기 제1 인스턴스와 별개인, 제2 인스턴스, 및 (ii) 상기 애플리케이션의 상기 제1 인스턴스의 적어도 일부분을 동시에 디스플레이하는 것을 포함하고, 상기 제2 인스턴스 및 상기 제1 인스턴스의 상기 일부분은 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 것으로서 디스플레이되는, 비일시적 컴퓨터 판독가능 저장 매체.
  65. 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 실행가능한 명령어들은, 터치 감응형 디스플레이를 갖는 전자 디바이스의 하나 이상의 프로세서들에 의해 실행될 때, 상기 전자 디바이스로 하여금 제57항 내지 제63항 중 어느 한 항의 방법을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  66. 전자 디바이스로서,
    하나 이상의 프로세서들;
    터치 감응형 디스플레이; 및
    상기 하나 이상의 프로세서들에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하며, 상기 하나 이상의 프로그램들은,
    상기 터치 감응형 디스플레이의 실질적으로 전부 상에 애플리케이션의 제1 인스턴스를 디스플레이하고;
    상기 애플리케이션의 상기 제1 인스턴스 내에 디스플레이된 어포던스 위에서의 접촉을 검출하고;
    상기 터치 감응형 디스플레이를 가로지르는 상기 접촉의 이동을 검출하고;
    상기 접촉이 상기 터치 감응형 디스플레이를 가로질러 그리고 상기 터치 감응형 디스플레이의 미리정의된 부분 내로 이동한 후에 상기 접촉의 리프트오프를 검출할 시, 상기 전자 디바이스에 대한 분할-뷰 동작 모드를 활성화하기 위한 명령어들을 포함하고, 상기 분할-뷰 동작 모드는 (i) 상기 어포던스와 연관된 상기 콘텐츠와 함께 디스플레이되는 상기 애플리케이션의, 상기 제1 인스턴스와 별개인, 제2 인스턴스, 및 (ii) 상기 애플리케이션의 상기 제1 인스턴스의 적어도 일부분을 동시에 디스플레이하는 것을 포함하고, 상기 제2 인스턴스 및 상기 제1 인스턴스의 상기 일부분은 상기 터치 감응형 디스플레이의 실질적으로 전부를 점유하는 것으로서 디스플레이되는, 전자 디바이스.
  67. 전자 디바이스로서,
    하나 이상의 프로세서들;
    터치 감응형 디스플레이; 및
    상기 하나 이상의 프로세서들에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로그램들은 제57항 내지 제63항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.
  68. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스로서,
    제57항 내지 제63항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 전자 디바이스.
  69. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서,
    제57항 내지 제63항 중 어느 한 항의 방법을 수행하기 위한 수단을 포함하는, 정보 프로세싱 장치.
  70. 하나 이상의 프로세서들을 갖는 전자 디바이스의 터치 감응형 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스로서, 제57항 내지 제63항 중 어느 한 항의 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함하는, 그래픽 사용자 인터페이스.
  71. 방법으로서,
    터치 감응형 디스플레이 및 하나 이상의 프로세서들을 갖는 전자 디바이스에서:
    상기 터치 감응형 디스플레이 상에 콘텐츠를 디스플레이하는 단계;
    상기 터치 감응형 디스플레이의 에지에 실질적으로 수직인 방향으로의 접촉의 이동을 검출하는 단계;
    상기 접촉의 이동이 제1 이동-기반 임계치를 충족한다고 결정할 시, 상기 콘텐츠의 적어도 일부분에 오버레이하는 도크를 디스플레이하는 단계 - 상기 도크는, 선택될 때 상기 전자 디바이스로 하여금 상기 전자 디바이스 상에서 이용가능한 각각의 애플리케이션을 열게 하는 복수의 어포던스들을 포함함 -; 및
    상기 도크를 디스플레이하는 동안 그리고 상기 접촉의 이동이 상기 제1 이동-기반 임계치보다 큰 제2 이동-기반 임계치를 충족한다는 결정에 따라, 상기 전자 디바이스 상에서 최근에 사용된 적어도 일부 애플리케이션들의 각각의 선택가능한 표현들을 포함하는 애플리케이션-스위처 사용자 인터페이스를 활성화하는 단계를 포함하는, 방법.
  72. 제71항에 있어서, 상기 제1 및 제2 이동-기반 임계치는 거리 임계치들, 속도 임계치들, 또는 가속도 임계치들로 이루어진 그룹으로부터 선택되는, 방법.
  73. 실행가능한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체로서, 상기 실행가능한 명령어들은, 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에 의해 실행될 때, 상기 전자 디바이스로 하여금 제71항 또는 제72항의 방법을 수행하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  74. 전자 디바이스로서,
    하나 이상의 프로세서들;
    터치 감응형 디스플레이; 및
    상기 하나 이상의 프로세서들에 의한 실행을 위해 구성된 하나 이상의 프로그램들을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로그램들은 제71항 및 제72항의 방법을 수행하기 위한 명령어들을 포함하는, 전자 디바이스.
  75. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스로서,
    제71항 및 제72항의 방법을 수행하기 위한 수단을 포함하는, 전자 디바이스.
  76. 하나 이상의 프로세서들 및 터치 감응형 디스플레이를 갖는 전자 디바이스에서 사용하기 위한 정보 프로세싱 장치로서,
    제71항 및 제72항의 방법을 수행하기 위한 수단을 포함하는, 정보 프로세싱 장치.
  77. 하나 이상의 프로세서들을 갖는 전자 디바이스의 터치 감응형 디스플레이 상에 디스플레이되는 그래픽 사용자 인터페이스로서, 제71항 및 제72항의 방법에 따라 디스플레이되는 사용자 인터페이스들을 포함하는, 그래픽 사용자 인터페이스.
KR1020197034250A 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들 KR102278004B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020217021672A KR102428753B1 (ko) 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201762506549P 2017-05-15 2017-05-15
US62/506,549 2017-05-15
US201762514898P 2017-06-04 2017-06-04
US62/514,898 2017-06-04
DKPA201770562 2017-07-10
DKPA201770562A DK180117B1 (en) 2017-05-15 2017-07-10 SYSTEMS AND METHODS FOR INTERACTING WITH MULTIPLE APPLICATIONS THAT ARE SIMULTANEOUSLY DISPLAYED ON AN ELECTRONIC DEVICE WITH A TOUCHSENSITIVE DISPLAY
US15/939,122 US11221698B2 (en) 2017-05-15 2018-03-28 Systems and methods for interacting with multiple applications that are simultaneously displayed on an electronic device with a touch-sensitive display
US15/939,122 2018-03-28
PCT/US2018/032661 WO2018213241A1 (en) 2017-05-15 2018-05-15 Systems and methods for interacting with multiple applications that are simultaneously displayed on an electronic device with a touch-sensitive display

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020217021672A Division KR102428753B1 (ko) 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들

Publications (2)

Publication Number Publication Date
KR20190142362A true KR20190142362A (ko) 2019-12-26
KR102278004B1 KR102278004B1 (ko) 2021-07-15

Family

ID=64274587

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217021672A KR102428753B1 (ko) 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들
KR1020197034250A KR102278004B1 (ko) 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217021672A KR102428753B1 (ko) 2017-05-15 2018-05-15 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들

Country Status (5)

Country Link
EP (2) EP3590034B1 (ko)
KR (2) KR102428753B1 (ko)
CN (2) CN111090366B (ko)
AU (2) AU2018269159B2 (ko)
WO (1) WO2018213241A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113055510A (zh) * 2021-03-08 2021-06-29 Oppo广东移动通信有限公司 电子装置
WO2023018158A1 (ko) * 2021-08-10 2023-02-16 삼성전자 주식회사 멀티 윈도우를 지원하는 전자 장치 및 이의 제어 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2019100488B4 (en) * 2018-05-07 2019-08-22 Apple Inc. Devices, methods, and graphical user interfaces for navigating between user interfaces, displaying a dock, and displaying system user interface elements
CN109739386B (zh) * 2019-01-08 2021-10-15 京东方科技集团股份有限公司 触控传感器、触控模组及触控传感器裂纹检测方法
DK180318B1 (en) * 2019-04-15 2020-11-09 Apple Inc Systems, methods, and user interfaces for interacting with multiple application windows
KR20200122945A (ko) * 2019-04-19 2020-10-28 삼성전자주식회사 복수의 어플리케이션의 실행화면들을 표시하는 전자 장치 및 그의 동작 방법
CN111176813B (zh) * 2019-12-28 2024-06-07 深圳市优必选科技股份有限公司 一种运行模式动态切换方法及装置
CN113766293B (zh) * 2020-06-05 2023-03-21 北京字节跳动网络技术有限公司 信息显示方法、装置、终端及存储介质
CN114077365A (zh) * 2020-08-21 2022-02-22 荣耀终端有限公司 分屏显示方法和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140039575A (ko) * 2012-09-24 2014-04-02 삼성전자주식회사 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
KR20140073380A (ko) * 2012-12-06 2014-06-16 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
KR20150051757A (ko) * 2013-11-05 2015-05-13 엘지전자 주식회사 이동 단말기 및 그 동작 제어방법
KR20150111167A (ko) * 2014-03-25 2015-10-05 엘지전자 주식회사 이동 단말기

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005321915A (ja) * 2004-05-07 2005-11-17 Sony Corp 情報処理装置および情報処理方法、並びに、プログラム
US20130222272A1 (en) * 2012-02-28 2013-08-29 Research In Motion Limited Touch-sensitive navigation in a tab-based application interface
KR102210278B1 (ko) * 2012-12-06 2021-02-02 삼성전자주식회사 디스플레이 장치 및 제어 방법
EP2741201A3 (en) * 2012-12-06 2017-05-17 Samsung Electronics Co., Ltd Display device and method of controlling the same
CN104956301B (zh) * 2012-12-06 2019-07-12 三星电子株式会社 显示设备和控制显示设备的方法
US9535565B2 (en) * 2013-05-13 2017-01-03 Microsoft Technology Licensing, Llc Smart insertion of applications into layouts
US9898162B2 (en) * 2014-05-30 2018-02-20 Apple Inc. Swiping functions for messaging applications
WO2015192087A1 (en) * 2014-06-12 2015-12-17 Apple Inc. Systems and methods for efficiently navigating between applications with linked content on an electronic device with a touch-sensitive display
US9648062B2 (en) * 2014-06-12 2017-05-09 Apple Inc. Systems and methods for multitasking on an electronic device with a touch-sensitive display
CN115269086A (zh) * 2014-06-12 2022-11-01 苹果公司 用于在带有触敏显示器的电子设备上进行多任务处理的系统和方法
KR102251541B1 (ko) * 2014-06-23 2021-05-14 엘지전자 주식회사 이동단말기 및 그것의 제어방법
US20160196588A1 (en) * 2015-01-06 2016-07-07 Cho Yi Lin Interacting method
US9632664B2 (en) * 2015-03-08 2017-04-25 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140039575A (ko) * 2012-09-24 2014-04-02 삼성전자주식회사 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
KR20140073380A (ko) * 2012-12-06 2014-06-16 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
KR20150051757A (ko) * 2013-11-05 2015-05-13 엘지전자 주식회사 이동 단말기 및 그 동작 제어방법
KR20150111167A (ko) * 2014-03-25 2015-10-05 엘지전자 주식회사 이동 단말기

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113055510A (zh) * 2021-03-08 2021-06-29 Oppo广东移动通信有限公司 电子装置
CN113055510B (zh) * 2021-03-08 2023-02-28 Oppo广东移动通信有限公司 电子装置
WO2023018158A1 (ko) * 2021-08-10 2023-02-16 삼성전자 주식회사 멀티 윈도우를 지원하는 전자 장치 및 이의 제어 방법
US11853541B2 (en) 2021-08-10 2023-12-26 Samsung Electronics Co., Ltd. Electronic device supporting multiple windows and method of controlling the same

Also Published As

Publication number Publication date
KR102428753B1 (ko) 2022-08-04
AU2018269159A1 (en) 2019-11-07
CN111090366A (zh) 2020-05-01
KR102278004B1 (ko) 2021-07-15
CN110622121A (zh) 2019-12-27
EP3590034B1 (en) 2021-01-20
KR20210089799A (ko) 2021-07-16
CN111090366B (zh) 2021-08-31
EP3590034A1 (en) 2020-01-08
AU2021202302B2 (en) 2022-07-14
WO2018213241A1 (en) 2018-11-22
AU2018269159B2 (en) 2021-02-04
EP3809254A1 (en) 2021-04-21
AU2021202302A1 (en) 2021-05-13

Similar Documents

Publication Publication Date Title
KR102642883B1 (ko) 터치 감응형 디스플레이를 갖는 전자 디바이스 상에 동시에 디스플레이되는 다수의 애플리케이션들과 상호작용하기 위한 시스템들 및 방법들
US11402970B2 (en) Systems, methods, and user interfaces for interacting with multiple application windows
US10235035B2 (en) Devices, methods, and graphical user interfaces for content navigation and manipulation
KR102278004B1 (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