KR20140129127A - 브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션 - Google Patents

브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션 Download PDF

Info

Publication number
KR20140129127A
KR20140129127A KR1020147025056A KR20147025056A KR20140129127A KR 20140129127 A KR20140129127 A KR 20140129127A KR 1020147025056 A KR1020147025056 A KR 1020147025056A KR 20147025056 A KR20147025056 A KR 20147025056A KR 20140129127 A KR20140129127 A KR 20140129127A
Authority
KR
South Korea
Prior art keywords
gesture
user interface
array
mode
user
Prior art date
Application number
KR1020147025056A
Other languages
English (en)
Other versions
KR101683356B1 (ko
Inventor
케빈 더블유. 덱커
니콜라스 잠베티
제프리 트래어 번스타인
레이몬드 세풀베다
던칸 커
줄리안 미시그
매튜 어빈 브라운
도날드 멜톤
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20140129127A publication Critical patent/KR20140129127A/ko
Application granted granted Critical
Publication of KR101683356B1 publication Critical patent/KR101683356B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/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/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/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
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • 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/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

사용자가 다수의 상이한 콘텐츠 아이템을 볼 수 있는 임의의 상황에서, 콘텐츠 아이템들 사이의 스위칭이 어레이 모드를 이용하여 제공된다. 풀 프레임 모드에서는 하나의 콘텐츠 아이템이 보이고 활성이지만, 다른 콘텐츠 아이템들도 열릴 수 있다. 사용자 입력에 응답하여, 디스플레이는 스크롤 가능 어레이에서 모든 콘텐츠 아이템을 볼 수 있는 어레이 모드로 스위칭될 수 있다. 어레이 모드에서의 콘텐츠 아이템의 선택은 디스플레이가 풀 프레임 모드로 복귀하게 하고, 선택된 콘텐츠 아이템은 보이고 활성으로 되게 할 수 있다. 풀 프레임 모드와 어레이 모드 사이에서의 유연하게 애니메이션되는 전이들 및 전이들을 제어하기 위한 제스처 기반 인터페이스도 제공될 수 있다.

Description

브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션{NAVIGATING AMONG CONTENT ITEMS IN A BROWSER USING AN ARRAY MODE}
관련 출원들에 대한 상호 참조
본 출원은 2012년 2월 5일자로 출원된 미국 가출원 제61/595,114호; 2013년 1월 25일자로 출원된 미국 특허 출원 제13/750,572호; 및 2013년 1월 25일자로 출원된 미국 특허 출원 제13/750,586호에 대해 우선권을 주장한다. 이들 출원 각각의 개시 내용 전체는 본 명세서에 참고로 포함된다.
본 발명은 일반적으로 컴퓨터 시스템에서 사용하기 위한 콘텐츠 브라우저에 관한 것으로서, 구체적으로는 어레이 모드(array mode)를 이용하여 브라우저 내의 콘텐츠 아이템들 사이에서 내비게이션하는 것에 관한 것이다.
콘텐츠 브라우저들은 데스크탑으로부터 태블릿, 핸드헬드에 이르는 많은 유형의 컴퓨터 시스템들에서 발견된다. 통상적으로 소프트웨어로서 구현되는 브라우저는 사용자가 콘텐츠 아이템들을 보고, 상호작용하는 것을 가능하게 한다. 예를 들어, 월드 와이드 웹의 경우, 웹 브라우저는 사용자가 (종종 웹 브라우징 상황에서 웹페이지로서 지칭되는) 특정 콘텐츠 아이템에 대한 유니폼 리소스 로케이터(uniform resource locator, URL)를 입력하고, 브라우저의 페이지 디스플레이 영역(page-display area)에서 아이템을 보는 것을 가능하게 한다. 사용자는 예를 들어, 표시된 웹페이지 내에 삽입된 하이퍼링크들을 활성화하여 상이한 페이지로 내비게이션함으로써 이러한 웹페이지와 상호작용할 수 있다.
다수의 기존 웹 브라우저들은 종종 "탭형(tabbed)" 브라우징으로 지칭되는 모드를 지원한다. 브라우저는 다수의 페이지의 URL들 및/또는 실제 콘텐츠를 다양한 "탭들"과 연계하여 유지하는데; 이 분야에서의 일반적인 관례는 이러한 상황을 탭들 내에 페이지들을 여는 것으로서 또는 탭들이 열리는 것으로서 다양하게 설명한다. 통상적으로 파일 폴더들 상의 탭들과 같이 보이도록 렌더링되는(rendered) 탭들 자체는 브라우저의 탭 영역에, 예를 들어 페이지 디스플레이 영역의 상부에 나타난다. 각각의 렌더링된 탭은 그 탭 내에 현재 열려 있는 페이지에 대한 타이틀, 부분 타이틀, URL 또는 다른 식별자(identifier)를 포함한다. 임의의 주어진 시간에, 하나의 탭이 "활성" 탭이며; 활성 탭 내에 현재 열려 있는 페이지는 페이지 디스플레이 영역 내에 렌더링되고, 활성 페이지이다. 모든 사용자 입력은 활성 페이지와 관련하여 처리된다. 사용자는 탭에 대한 현재 페이지를 변경할 수 있다. 예를 들어, 사용자가 활성 페이지 내의 하이퍼링크를 선택(예로서, 클릭)하는 경우, 브라우저는 전형적으로 페이지를 링크된 페이지로 대체할 것이며, 이 페이지는 전형적으로 현재 활성 탭 내에서 열리고, 활성 탭에 대한 현재 페이지가 된다. 따라서, 각각의 탭은 그 탭에서 관찰되는 페이지들의 그 자신의 이력을 가질 수 있다.
사용자는 브라우저 내의 임의의 비활성 탭을 선택(예로서, 클릭)함으로써 상이한 탭으로 스위칭할 수 있으며, 따라서 선택된 탭은 활성 탭이 되고, 그 탭과 관련된 현재 페이지는 페이지 디스플레이 영역 내에 렌더링되고, 브라우저에 대한 활성 페이지가 된다. 이러한 전이와 관련하여, 탭 영역은 통상적으로 새로운 활성 탭을 지시하도록 변경된다. 사용자는 또한 브라우저의 사용자 인터페이스 내에 제공되는 다양한 제어부들을 조작하여 새로운 탭을 생성하거나, 열린 탭을 닫을 수 있다. 따라서, 탭형 브라우저들은 임의 수의 탭들이 임의의 주어진 시간에 열리는 것을 가능하게 하며, 각각의 탭은 그 자신의 현재 페이지 및 페이지 관찰 이력을 가질 수 있다.
탭들은 콘텐츠를 관리하기 위한 유용한 방식을 제공하며, 사용자들은 종종 많은 수의 열린 탭들을 유지하는 것이 편리함을 발견한다. 그러나, 열린 탭들의 수가 증가함에 따라, 특정 페이지를 찾는 것은 어려워진다. 탭 내에 페이지 이름 또는 다른 라벨은 사용자가 그가 찾고 있는 페이지를 인식하는 데에 충분하지 않을 수 있으며, 일부 경우들에서는 열릴 수 있는 탭들의 수에 비해 브라우저의 제한된 크기로 인해 모든 탭들이 보이지 않을 수 있다.
본 발명의 소정 실시예들은 열린 탭들(또는 다른 열린 콘텐츠 아이템들) 사이의 개선된 내비게이션을 제공한다. 웹 브라우저 또는 워드 프로세싱 프로그램 등과 같이 사용자가 다수의 상이한 콘텐츠 아이템을 볼 수 있는 임의의 상황에서, 열린(또는 현재 로딩된) 콘텐츠 아이템들 간의 스위칭은 어레이 모드를 이용하여 제공된다. 풀 프레임 모드(full-frame mode)에서는 하나의 콘텐츠 아이템이 보이고 활성이지만, 다른 콘텐츠 아이템들도 열릴 수 있다. 사용자 입력에 응답하여, 디스플레이는 스크롤 가능 어레이에서 모든 콘텐츠 아이템을 볼 수 있는 어레이 모드로 스위칭될 수 있다. 어레이 모드에서의 콘텐츠 아이템의 선택은 디스플레이가 다시 풀 프레임 모드로 스위칭되고, 선택된 콘텐츠 아이템이 보이고 활성으로 되게 할 수 있다. 풀 프레임 모드와 어레이 모드 사이에서의 유연하게 애니메이션되는 전이들 및 전이들을 제어하기 위한 제스처 기반 인터페이스(gesture-based interface)도 제공될 수 있다. 사용자가 어레이를 통해 스크롤링함으로써 모든 열린 콘텐츠 아이템들을 빠르게 볼 수 있게 하는 것은 주어진 시간에 얼마나 많은 아이템이 열려 있는지에 관계없이 사용자가 특정 콘텐츠 아이템을 빠르게 찾는 것을 도울 수 있다.
본 발명의 소정 실시예들은 다수의 탭 내에 열릴 수 있는 (웹페이지들을 포함하지만 이에 제한되지 않는) 콘텐츠 아이템들 사이에서의 브라우징과 관련된다. 일부 실시예들에서는, 기존의 탭형 브라우저들과 유사할 수 있는 풀 프레임 모드에 더하여, 브라우저들은 "어레이 모드"도 지원할 수 있으며, 어레이 모드에서는 상이한 탭들 내에 열려 있는 다양한 콘텐츠 아이템들이 어레이로 배열되고, 그들 중 적어도 일부는 브라우저의 페이지 디스플레이 영역에서 보인다. 사용자는 이 어레이를 통해 스크롤링하여, 열린 콘텐츠 아이템들 중 임의의 콘텐츠 아이템을 보고, 선택하여 활성 탭이 되게 할 수 있다. 콘텐츠 아이템이 선택되어 열린 탭이 될 때, 브라우저는 풀 프레임 모드로 스위칭하여, 선택된 콘텐츠 아이템을 활성 아이템으로서 표시할 수 있다. 풀 프레임 모드와 어레이 모드 사이에서의 유연하게 애니메이션되는 전이들이 제공될 수 있으며, 이러한 전이들은 사용자가 모드들 사이의 관계를 이해하는 것을 도울 수 있다. 일부 실시예들에서는 제스처 기반 사용자 인터페이스를 이용하여, 예를 들어 터치 감지 표면 상에서 사용자에 의해 행해지는 제스처들에 응답하여 어레이 모드와 풀 프레임 모드 사이의 전이들을 제어할 수 있다.
소정 실시예들은 또한 컴퓨터 시스템에서 터치 감지 표면을 이용하여 디스플레이의 사용자 인터페이스 영역을 변경하는 것과 관련된다. 먼저, 제1 사용자 인터페이스 영역이 제1 스케일 팩터(scale factor)로 표시될 수 있다. 터치 감지 표면 상의 둘 이상의 접촉의 서로에 대한 이동의 검출에 기초하여 제1 제스처가 검출될 수 있고; 예를 들어 접촉들은 서로를 향해 이동할 수 있으며, 접촉들 중 적어도 하나의 접촉이 터치 감지 표면과의 접촉을 유지하는 동안의 그 접촉의 이동에 기초하여 제2 제스처가 검출될 수 있다(즉, 제1 및 제2 제스처들 사이에는 들어올림(lift-off)이 존재하지 않는다). 제1 제스처의 검출에 응답하여 컴퓨터 시스템은 제1 사용자 인터페이스 영역을 제1 스케일 팩터보다 낮은 제2 스케일 팩터로 표시할 수 있으며, 제2 제스처의 검출에 응답하여 컴퓨터 시스템은 이전에 표시되지 않은 상이한 사용자 인터페이스 영역의 일부를 표시할 수 있다. (적어도 하나의 접촉이 터치 감지 표면과의 접촉을 계속 유지하는 동안의) 제1 및 제2 제스처들의 조합은 제1 사용자 인터페이스 영역으로부터 제2 사용자 인터페이스 영역으로의 전이를 유발할 수 있다.
아래의 상세한 설명은 첨부 도면들과 함께 본 발명의 특징 및 이점들의 보다 양호한 이해를 제공할 것이다.
<도 1>
도 1은 본 발명의 일 실시예에 따른 컴퓨터 시스템의 블록도.
<도 2>
도 2는 본 발명의 일 실시예에 따른 풀 프레임 모드에서의 브라우저 스크린을 나타내는 도면.
<도 3>
도 3은 본 발명의 일 실시예에 따른 어레이 모드에서의 브라우저 스크린을 나타내는 도면.
<도 4>
도 4는 본 발명의 일 실시예에 따른 어레이 모드에서의, 스크롤링을 지시하는 다른 브라우저 스크린을 나타내는 도면.
<도 5>
도 5는 본 발명의 일 실시예에 따른, 콘텐츠 브라우저 내의 탭들 사이에서 내비게이션하는 데 사용될 수 있는 프로세스의 흐름도.
<도 6 내지 도 8>
도 6 내지 도 8은 본 발명의 일 실시예에 따라 구현될 수 있는 풀 프레임 모드에서 어레이 모드로의 전이의 다양한 스테이지들에서의 브라우저 스크린을 나타내는 도면. 도 6은 전이의 초기 스테이지를 나타내는 도면. 도 7은 도 6에 이어지는 스테이지를 나타내는 도면. 도 8은 도 7에 이어지는 스테이지를 나타내는 도면.
<도 9 내지 도 14>
도 9 내지 도 14는 본 발명의 일 실시예에 따라 구현될 수 있는 어레이 모드에서 풀 프레임 모드로의 전이의 다양한 스테이지에서의 브라우저 스크린을 나타내는 도면.
<도 9>
도 9는 풀 프레임 모드로의 전이 바로 전의 어레이 모드에서의 브라우저 스크린을 나타내는 도면.
<도 10>
도 10은 전이의 시작 스테이지를 나타내는 도면.
<도 11>
도 11은 도 10에 이어지는 스테이지를 나타내는 도면.
<도 12>
도 12는 도 11에 이어지는 스테이지를 나타내는 도면.
<도 13>
도 13은 전이의 종료 근처에서의 도 12에 이어지는 스테이지를 나타내는 도면.
<도 14>
도 14는 전이의 종료 스테이지를 나타내는 도면.
<도 15>
도 15는 안쪽 핀치(inward pinch)를 위한 터치 감지 표면 상의 접촉 영역들을 나타내는 도면.
<도 16>
도 16은 바깥쪽 핀치(outward pinch)를 위한 터치 감지 표면 상의 접촉 영역들을 나타내는 도면.
<도 17>
도 17은 본 발명의 일 실시예에 따른, 바깥쪽 핀치 제스처를 해석하기 위한 프로세스의 흐름도.
<도 18>
도 18은 본 발명의 일 실시예에 따른, 바깥쪽 핀치 제스처를 해석하기 위한 프로세스의 흐름도.
<도 19 내지 도 21>
도 19 내지 도 21은 도 17 및 도 18의 제스처 해석 프로세스들의 효과를 나타내는 스크린 이미지들.
<도 19>
도 19는 확대된 페이지를 표시하는 풀 프레임 모드에서의 브라우저 스크린을 나타내는 도면.
<도 20>
도 20은 풀 프레임 모드에서의 일시적으로 축소된 페이지를 갖는 브라우저 스크린을 나타내는 도면.
<도 21>
도 21은 풀 프레임 모드로 다시 스냅핑(snapping)된 페이지를 갖는 브라우저 스크린을 나타내는 도면.
<도 22>
도 22는 본 발명의 일 실시예에 따른, 핀치-스웁(pinch-swoop) 제스처를 위한 터치 감지 표면 상의 접촉 영역들을 나타내는 도면.
<도 23>
도 23은 본 발명의 일 실시예에 따른, 안쪽 핀치 및 핀치-스웁 제스처들을 해석하는 데 사용될 수 있는 프로세스의 흐름도.
<도 24>
도 24는 본 발명의 일 실시예에 따른, 사용자를 위한 클라우드 컴퓨팅 셋업을 나타내는 도면.
<도 25>
도 25는 본 발명의 다른 실시예에 따른, 어레이 모드에서의 브라우저에 대한 브라우저 스크린을 나타내는 도면.
<도 26>
도 26은 본 발명의 일 실시예에 따른, 원격 탭들에 액세스하는 데 사용될 수 있는 브라우저 스크린을 나타내는 도면.
<도 27>
도 27은 본 발명의 일 실시예에 따른, 원격 탭들에 액세스하는 데 사용될 수 있는 다른 브라우저 스크린을 나타내는 도면.
<도 28>
도 28은 본 발명의 일 실시예에 따른, 원격 탭들의 브라우징을 위한 프로세스의 흐름도.
<도 29 내지 도 33>
도 29 내지 도 33은 본 발명의 일 실시예에 따른, "탭 더미(tab pile)" 메타포어(metaphor)를 이용하는 어레이 모드에서의 탭들 사이의 내비게이션을 나타내는 스크린 샷들.
<도 29>
도 29는 본 발명의 일 실시예에 따른, 풀 프레임 모드에서의 브라우저 스크린을 나타내는 도면.
<도 30>
도 30은 도 29의 풀 프레임 모드에 대응하는 어레이 모드에 대한 브라우저 스크린을 나타내는 도면.
<도 31>
도 31은 도 30에서의 어레이 스크롤링의 효과를 보여주는 브라우저 스크린을 나타내는 도면.
<도 32>
도 32는 도 30에서의 우측 단부로의 어레이 스크롤링의 효과를 보여주는 브라우저 스크린을 나타내는 도면.
<도 33>
도 33은 도 30에서의 좌측 단부로의 어레이 스크롤링의 효과를 보여주는 브라우저 스크린을 나타내는 도면.
<도 34>
도 34는 본 발명의 일 실시예에 따른, 추가적인 페이지 식별을 포함하는 어레이 모드에서의 브라우저 스크린을 나타내는 도면.
<도 35>
도 35는 본 발명의 일 실시예에 따른, 그리드(grid)로 배열된 페이지들을 갖는 어레이 모드에서의 브라우저 스크린을 나타내는 도면.
도면들 중 일부는 예시적인 콘텐츠 아이템들을 포함하고, 그들 중 일부는 제삼자들에 의해 생성되거나 소유된 콘텐츠를 포함할 수 있다는 점에 유의한다. 콘텐츠는 본 발명의 소정의 특징들을 예시하기 위해 사용될 뿐이며, 특정 콘텐츠 아이템들은 본 발명의 일부가 아니라는 것을 이해할 것이다.
본 발명의 소정 실시예들은 다수의 탭 내에 열릴 수 있는 (웹페이지들을 포함하지만 이에 제한되지 않는) 콘텐츠 아이템들 사이에서의 브라우징과 관련된다. (본 명세서에 사용되는 바와 같이, 아이템은 예를 들어 그의 표현이 관련 애플리케이션의 메모리 내에 로딩되는 경우에 "열릴" 수 있다.) 일부 실시예들에서는, 기존의 탭형 브라우저들과 유사할 수 있는 풀 프레임 모드에 더하여, 브라우저는 "어레이 모드"도 지원할 수 있으며, 어레이 모드에서는 상이한 탭들 내에 열려 있는 다양한 콘텐츠 아이템들이 어레이(예로서, 단일 스트립)로 배열되고, 그들 중 적어도 일부는 브라우저의 페이지 디스플레이 영역에서 보인다. 사용자는 이 어레이를 통해 스크롤링하여, 열린 콘텐츠 아이템들 중 임의의 콘텐츠 아이템을 보고, 선택하여 활성 탭이 되게 할 수 있다. 콘텐츠 아이템이 선택되어 열린 탭이 될 때, 브라우저는 풀 프레임 모드로 스위칭하여, 선택된 콘텐츠 아이템을 활성 아이템으로서 표시할 수 있다. 풀 프레임 모드와 어레이 모드 사이에서의 유연하게 애니메이션되는 전이들이 제공될 수 있으며, 이러한 전이들은 사용자가 모드들 사이의 관계를 이해하는 것을 도울 수 있다. 일부 실시예들에서는 제스처 기반 사용자 인터페이스를 이용하여, 예를 들어 터치 감지 표면 상에서 사용자에 의해 행해지는 제스처들에 응답하여 어레이 모드와 풀 프레임 모드 사이의 전이들을 제어할 수 있다.
도 1은 본 발명의 일 실시예에 따른 컴퓨터 시스템(100)을 나타낸다. 컴퓨터 시스템(100)은 예를 들어 데스크탑 또는 랩탑 컴퓨터, 태블릿 컴퓨터, 스마트폰, 개인용 휴대 단말기(PDA), 또는 임의의 특정 폼 팩터(form factor)로 제한되지 않는 임의의 다른 유형의 컴퓨팅 디바이스를 포함하는 임의의 다양한 컴퓨팅 디바이스로서 구현될 수 있다. 컴퓨터 시스템(100)은 처리 유닛(들)(105), 저장 서브시스템(110), 입력 디바이스들(120), 디스플레이(125), 네트워크 인터페이스(135) 및 버스(140)를 포함할 수 있다.
처리 유닛(들)(105)은 하나 이상의 코어를 가질 수 있는 단일 프로세서, 또는 다수의 프로세서를 포함할 수 있다. 일부 실시예들에서, 처리 유닛(들)(105)은 범용 주 프로세서는 물론, 하나 이상의 특수 목적 코-프로세서, 예로서 그래픽 프로세서, 디지털 신호 프로세서 등을 포함할 수 있다. 일부 실시예들에서, 일부 또는 모든 처리 유닛들(105)은 주문형 집적 회로(ASIC) 또는 필드 프로그래머블 게이트 어레이(FPGA)와 같은 맞춤형 회로들을 이용하여 구현될 수 있다. 일부 실시예들에서, 그러한 집적 회로들은 회로 자체에 저장된 명령어들을 실행한다. 다른 실시예들에서, 처리 유닛(들)(105)은 저장 서브시스템(110)에 저장된 명령어들을 실행할 수 있다.
저장 서브시스템(110)은 시스템 메모리, 판독 전용 메모리(ROM) 및 영구 저장 디바이스와 같은 다양한 메모리 유닛들을 포함할 수 있다. ROM은 전자 디바이스(100)의 처리 유닛(들)(105) 및 다른 모듈들에 의해 요구되는 정적 데이터 및 명령어들을 저장할 수 있다. 영구 저장 디바이스는 판독 및 기록 메모리 디바이스일 수 있다. 이러한 영구 저장 디바이스는 컴퓨터 시스템(100)이 파워 다운될 때에도 명령어들 및 데이터를 저장하는 비휘발성 메모리 유닛일 수 있다. 본 발명의 일부 실시예들은 대용량 저장 디바이스(예로서, 자기 또는 광 디스크 또는 플래시 메모리)를 영구 저장 디바이스로서 사용할 수 있다. 다른 실시예들은 이동식 저장 디바이스(예로서, 플로피 디스크, 플래시 드라이브)를 영구 저장 디바이스로서 사용할 수 있다. 시스템 메모리는 판독 및 기록 메모리 디바이스 또는 휘발성 판독 및 기록 메모리, 예로서 동적 랜덤 액세스 메모리일 수 있다. 시스템 메모리는 프로세서가 실행 시간에 요구하는 명령어들 및 데이터 중 일부 또는 전부를 저장할 수 있다.
저장 서브시스템(110)은 다양한 유형의 반도체 메모리 칩들(DRAM, SRAM, SDRAM, 플래시 메모리, 프로그래밍 가능 판독 전용 메모리) 등을 포함하는 컴퓨터 판독 가능 저장 매체들의 임의의 조합을 포함할 수 있다. 자기 및/또는 광 디스크들도 사용될 수 있다. 일부 실시예들에서, 저장 서브시스템(110)은 판독 가능 및/또는 기록 가능할 수 있는 이동식 저장 매체들을 포함할 수 있으며; 그러한 매체들의 예는 컴팩트 디스크(CD), 판독 전용 디지털 다기능 디스크(예로서, DVD-ROM, 2층 DVD-ROM), 판독 전용 및 기록 가능 블루레이(등록상표) 디스크, 초고밀도 광 디스크, 플래시 메모리 카드(예로서, SD 카드, 미니 SD 카드, 마이크로 SD 카드 등), 자기 "플로피" 디스크 등을 포함한다. 컴퓨터 판독 가능 저장 매체들은 무선으로 또는 유선 접속들을 통해 전송되는 반송파 및 일시적 전자 신호를 포함하지 않는다.
일부 실시예들에서, 저장 서브시스템(110)은 처리 유닛(들)(105)에 의해 실행될 하나 이상의 소프트웨어 프로그램, 예로서 브라우저 애플리케이션(145)을 저장할 수 있다. "소프트웨어"는 일반적으로, 처리 유닛(들)(105)에 의해 실행될 때 컴퓨터 시스템(100)으로 하여금 다양한 동작들을 수행하게 하는, 따라서 소프트웨어 프로그램들의 동작들을 실행하고 수행하는 하나 이상의 특정 기계 구현을 정의하는 명령어들의 시퀀스들을 지칭한다. 명령어들은 판독 전용 메모리 내에 상주하는 펌웨어 및/또는 프로세서에 의한 처리를 위해 메모리 내로 판독될 수 있는 자기 저장 장치 내에 저장되는 애플리케이션들로서 저장될 수 있다. 소프트웨어는 단일 프로그램 또는 필요에 따라 상호작용하는 개별 프로그램들 또는 프로그램 모듈들의 집합으로서 구현될 수 있다. 프로그램들 및/또는 데이터는 비휘발성 저장 장치 내에 저장되고, 프로그램 실행 동안 휘발성 작업 메모리로 전부 또는 부분적으로 복사될 수 있다. 저장 서브시스템(110)으로부터, 처리 유닛(들)(105)은 본 명세서에서 설명되는 다양한 동작들을 실행하기 위해 실행할 프로그램 명령어들 및 처리할 데이터를 검색할 수 있다.
사용자 인터페이스가 하나 이상의 사용자 입력 디바이스(120), 디스플레이 디바이스(125) 및/또는 하나 이상의 다른 사용자 출력 디바이스(도시되지 않음)에 의해 제공될 수 있다. 입력 디바이스들(120)은 사용자가 컴퓨팅 시스템(100)에 신호들을 제공할 수 있는 임의의 디바이스를 포함할 수 있으며; 컴퓨팅 시스템(100)은 신호들을 특정 사용자 요청들 또는 정보를 지시하는 것으로서 해석할 수 있다. 다양한 실시예들에서, 입력 디바이스들(120)은 키보드, 터치 패드, 터치 스크린, 마우스 또는 다른 포인팅 디바이스, 스크롤 휠, 클릭 휠, 다이얼, 버튼, 스위치, 키패드, 마이크 등 중 임의의 것 또는 전부를 포함할 수 있다.
디스플레이(125)는 전자 디바이스(100)에 의해 생성된 이미지들을 표시할 수 있으며, 다양한 이미지 생성 기술들, 예로서 음극선관(CRT), 액정 디스플레이(LCD), 유기 발광 다이오드(OLED)를 포함하는 발광 다이오드(LED), 프로젝션 시스템 등을, 지원 전자 장치들(예로서, 디지털-아날로그 또는 아날로그-디지털 컨버터, 신호 프로세서 등)과 함께 포함할 수 있다. 일부 실시예들은 입력 및 출력 디바이스들 양자로서 기능하는 터치스크린과 같은 디바이스를 포함할 수 있다. 일부 실시예들에서는 디스플레이(125)에 더하여 또는 그 대신에 다른 사용자 출력 디바이스들이 제공될 수 있다. 그 예는 지시기 라이트, 스피커, 촉각 "디스플레이" 디바이스, 프린터 등을 포함한다.
일부 실시예들에서, 사용자 인터페이스는 그래픽 사용자 인터페이스를 제공할 수 있으며, 그래픽 사용자 인터페이스에서는 디스플레이(125)의 소정 영역들 내의 가시 이미지 요소들이 사용자가 사용자 입력 디바이스들(120)을 이용하여 선택하는 활성 요소들 또는 제어 요소들로서 정의된다. 예를 들어, 사용자는 사용자 입력 디바이스를 조작하여, 제어 요소 위에 온-스크린 커서 또는 포인터를 배치한 후에 버튼을 클릭하여 선택을 지시할 수 있다. 대안으로서, 사용자는 터치스크린 디바이스 상에서 (예로서, 손가락 또는 스타일러스를 이용하여) 제어 요소를 터치할 수 있다. 일부 실시예들에서, 사용자는 제어 요소와 관련된 하나 이상의 단어를 말할 수 있다(단어는 예를 들어 요소 상의 라벨 또는 요소와 관련된 기능일 수 있다). 일부 실시예들에서, 터치 감지 디바이스 상의 사용자 제스처들은 입력 명령들로서 인식 및 해석될 수 있으며; 이러한 제스처들은 디스플레이(125) 내의 임의의 특정 어레이와 관련될 수 있거나 관련될 필요가 없을 수 있다. 다른 사용자 인터페이스들도 구현될 수 있다.
네트워크 인터페이스(135)는 전자 디바이스(100)에 대한 음성 및/또는 데이터 통신 능력을 제공할 수 있다. 일부 실시예들에서, 네트워크 인터페이스(135)는 (예로서, 휴대 전화 기술, 고급 데이터 네트워크 기술, 예로서 3G, 4G 또는 EDGE, WiFi (IEEE 802.11 패밀리 표준들) 또는 다른 이동 통신 기술들, 또는 이들의 임의의 조합을 이용하여) 무선 음성 및/또는 데이터 네트워크들에 액세스하기 위한 무선 주파수(RF) 송수신기 컴포넌트들, GPS 수신기 컴포넌트들 및/또는 다른 컴포넌트들을 포함할 수 있다. 일부 실시예들에서, 네트워크 인터페이스(135)는 무선 인터페이스에 더하여 또는 그 대신에 유선 네트워크 접속(예로서, 이더넷)을 제공할 수 있다. 네트워크 인터페이스(135)는 하드웨어(예로서, 안테나, 변조기/복조기, 인코더/디코더 및 다른 아날로그 및/또는 디지털 신호 처리 회로) 및 소프트웨어 컴포넌트들의 조합을 이용하여 구현될 수 있다.
버스(140)는 전자 디바이스(100)의 다수의 내부 디바이스에 통신적으로 접속하는 다양한 시스템, 주변 장치 및 칩셋 버스들을 포함할 수 있다. 예를 들어, 버스(140)는 처리 유닛(들)(105)과 저장 서브시스템(110)을 통신적으로 결합할 수 있다. 버스(140)는 또한 입력 디바이스들(120) 및 디스플레이(125)에 접속한다. 버스(140)는 또한 전자 디바이스(100)를 네트워크 인터페이스(135)를 통해 네트워크에 결합한다. 이러한 방식으로, 전자 디바이스(100)는 다수의 컴퓨터 시스템의 네트워크(예로서, 근거리 네트워크(LAN), 광역 네트워크(WAN), 인트라넷, 또는 네트워크들의 네트워크, 예로서 인터넷)의 일부일 수 있다. 전자 디바이스(100)의 임의의 또는 모든 컴포넌트들은 본 발명과 함께 사용될 수 있다.
일부 실시예들은 컴퓨터 판독 가능 저장 매체 내에 컴퓨터 프로그램 명령어들을 저장하는 마이크로프로세서, 저장 장치 및 메모리와 같은 전자 컴포넌트들을 포함한다. 본 명세서에서 설명되는 특징들 중 다수는 컴퓨터 판독 가능 저장 매체 상에 인코딩된 프로그램 명령어들의 세트로서 지정되는 프로세스들로서 구현될 수 있다. 이러한 프로그램 명령어들이 하나 이상의 처리 유닛에 의해 실행될 때, 이들은 처리 유닛(들)으로 하여금 프로그램 명령어들에서 지시되는 다양한 동작을 수행하게 한다. 프로그램 명령어들 또는 컴퓨터 코드의 예는 컴파일러에 의해 생성되는 바와 같은 기계 코드, 및 컴퓨터, 전자 컴포넌트, 또는 해석기를 이용하는 마이크로프로세서에 의해 실행되는 상위 레벨 코드를 포함하는 파일들을 포함한다.
적절한 프로그래밍을 통해, 처리 유닛(들)(105)은 전자 디바이스(100)에 대한 다양한 기능성을 제공할 수 있다. 예를 들어, 처리 유닛(들)(105)은 브라우저 애플리케이션(145)을 실행할 수 있다. 브라우저 애플리케이션(145)은 (예를 들어, 웹페이지들을 검색 및 표시하기 위한 HTTP 또는 다른 데이터 전송 프로토콜들을 이용하여) 로컬 또는 원격 소스들로부터 콘텐츠 아이템들을 검색 및 표시하기 위한 능력 및 관찰할 아이템의 선택, 특정 콘텐츠 아이템에 응답하는 사용자에 의한 데이터의 제출(예로서, 상호작용 웹페이지 상에서의 서식 작성) 등과 같은 콘텐츠 아이템들에 관한 사용자 입력을 수신 및 해석하기 위한 능력과 같은 다양한 기능성을 제공할 수 있다. 일부 실시예들에서, 브라우저 애플리케이션(145)은 상이한 콘텐츠 아이템들 및/또는 브라우징 이력들을 열린 것으로 간주되는 상이한 "탭들"과 연관시키기 위한 능력으로 일반적으로 지칭되는 "탭형" 브라우징을 지원한다. 각각의 열린 탭을 나타내는 아이콘(종종 마닐라 파일 폴더(manila file folder) 상에서 발견할 수 있는 것과 같은 탭의 형상이지만, 반드시 그렇지는 않음)이 브라우저 애플리케이션(145)에 의해 제공되고 사용자에 의해 선택될 수 있다.
컴퓨터 시스템(100)은 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 컴퓨터 시스템(100)은 여기서 구체적으로 설명되지 않은 다른 능력들(예로서, 이동 전화, 글로벌 포지셔닝 시스템(GPS), 전력 관리, 하나 이상의 카메라, 외부 디바이스들 또는 액세서리들을 접속하기 위한 다양한 접속 포트 등)을 가질 수 있다. 또한, 컴퓨터 시스템(100)은 특정 블록들과 관련하여 설명되지만, 이러한 블록들은 설명의 편의를 위해 정의되며, 컴포넌트 부분들의 특정한 물리적 배열을 암시하는 것으로 의도되지 않는다는 것을 이해해야 한다. 또한, 블록들은 물리적으로 상이한 컴포넌트들에 대응할 필요가 없다. 블록들은 예를 들어 프로세서를 프로그래밍하거나 적절한 제어 회로를 제공함으로써 다양한 동작들을 수행하도록 구성될 수 있으며, 다양한 블록들은 초기 구성이 얻어지는 방식에 따라 재구성 가능하거나 가능하지 않을 수 있다. 본 발명의 실시예들은 회로와 소프트웨어의 임의의 조합을 이용하여 구현되는 전자 디바이스들을 포함하는 다양한 장치들에서 실현될 수 있다.
도 2는 본 발명의 일 실시예에 따른 풀 프레임 모드에서의 브라우저에 대한 브라우저 스크린(200)을 나타낸다. 브라우저 스크린(200) 및 본 명세서에서 설명되는 다른 브라우저 스크린들은 예를 들어 도 1의 브라우저 애플리케이션(145)을 실행하는 컴퓨터 시스템(100)에서 생성될 수 있다. 일부 실시예들에서, 브라우저 스크린(200)은 디스플레이 디바이스(125) 상에 이미지로서 제시되는, 예를 들어 랩탑 또는 데스크탑 컴퓨터 상의 더 큰 렌더링된 작업 공간의 일부로서 윈도(window) 내에 렌더링될 수 있다. 일부 실시예들에서, 브라우저 스크린(200)은 디스플레이 디바이스(125)의 전체 이미지 영역이 브라우저 스크린(200)으로 채워지는 풀 스크린 모드로 렌더링될 수 있다. 일부 실시예들은 사용자 조작 가능 제어 요소, 예로서 풀 스크린과 윈도 렌더링들 사이에서 스위칭하기 위한 요소(202)를 제공할 수 있다. (아래에서 명확하듯이, 브라우저 스크린(200)이 풀 스크린으로 또는 윈도 내에 렌더링되는지는 브라우저가 풀 프레임 모드에 있는지와 무관하다.)
브라우저 스크린(200)은 때때로 "크롬"으로도 지칭되는 사용자 인터페이스 영역(204) 및 페이지 디스플레이 영역(204)을 포함한다. 풀 프레임 모드에서, 페이지 디스플레이 영역(204)은 활성 콘텐츠 아이템에 의해 채워진다. 이 예 및 본 명세서에서의 다른 예들에서, 콘텐츠 아이템은 웹페이지일 수 있지만; 당업자들은 브라우저가 다른 유형의 콘텐츠 아이템들 사이에서 내비게이션하고 그들을 보는 데 사용될 수 있으며, 본 발명은 웹페이지로 제한되지 않는다는 것을 이해할 것이다.
크롬(202)은 현재 열린 탭들에 대응하는 탭 지시기들(또는 간단히 탭들)(206a-206d)을 표시하는 탭 디스플레이 영역(tab display area)(205)을 포함할 수 있다. 이 예에서, 탭(206a)은 활성 탭이며, 이는 표시된 페이지, 이 경우에서는 페이지(204)와 관련된 탭을 의미한다. 활성 탭(206a)은 시각적으로 인접 탭들(206b, 206c)의 정면에(또는 위에) 있는 것으로서 렌더링된다. 음영 및 강조와 같은 다양한 효과들을 이용하여, 활성 탭(206a)과 다른 열린 탭들(206b-206d)을 시각적으로 구별할 수 있다. 사용자가 새로운 탭을 열 수 있게 하기 위해 플러스 버튼(207)이 제공될 수 있다. 열린 탭들은 예를 들어 (도 2에 도시되지 않은) 탭 내의 "닫기" 아이콘을 클릭함으로써 닫힐 수 있다.
이 예에서, 브라우저 애플리케이션(145)은 주어진 시간에 임의의 수의 탭을 열 수 있지만, 예를 들어 탭 디스플레이 영역 내의 가용 공간에 대한 제한 및 각각의 탭 지시기의 원하는 최소 크기로 인해 각각의 열린 탭에 대해 가시 탭 지시기가 렌더링되지 못할 수 있다. 가시 지시기를 갖는 않은 탭들은 "숨겨진" 것으로 지칭되며, 갈매기 표시(208)와 같은 시각 지시기가 숨겨진 탭들의 존재를 알리는 데 사용될 수 있다. 갈매기 표시(208)는 사용자가 숨겨진 탭들의 리스트를 보기 위해 선택할 수 있는 사용자 조작 가능 제어 요소일 수 있다. 일부 실시예들에서, 숨겨진 탭들은 탭(206d)의 좌측에 열릴 수도 있다. 임의의 그러한 탭들의 리스트의 존재를 지시하고 리스트를 보기 위해 갈매기 표시(도시되지 않음)가 사용될 수 있다.
크롬(202)은 다른 사용자 조작 가능 제어 요소들도 포함할 수 있다. 예로서, 그러한 요소들은 사용자가 현재 탭에서 이전에 관찰된 페이지로 복귀하거나 동일 탭에서 이전에 관찰된 페이지로부터 후속 관찰되는 페이지로 진행하기 위해 조작할 수 있는 앞뒤 버튼들(210)을 포함할 수 있다. URL 바(212)는 활성 페이지(204)의 URL을 표시할 수 있으며, 또한 URL을 입력하고 브라우저 애플리케이션(145)에게 현재 활성 탭 내에 대응하는 페이지를 검색 및 표시하도록 지시하기 위해 조작될 수 있다. 검색 바(214)는 검색 엔진에 텍스트 질의를 입력하는 데 사용될 수 있으며, 검색 결과들이 현재 활성 탭 내에 새로운 페이지로서 제시될 수 있다. 예를 들어 사용자가 좋아하거나 최근에 관찰된 페이지들에 액세스하는 것을 가능하게 할 수 있는 행(16) 내의 제어부들과 같은 다른 제어 요소들이 제공될 수 있다. 이러한 제어 요소들은 일반적으로 사실상 통상적일 수 있으며, 상세한 설명이 생략된다.
크롬(202)은 일부 실시예들에서 사용자가 도 2에 도시된 풀 프레임 모드와 어레이 모드 사이에서 토글링하기 위해 조작할 수 있는 "투시도" 버튼(220)을 포함한다. 어레이 모드는 사용자에게 열린 탭들에 대한 상이한 투시도, 및 예를 들어 특정 페이지를 찾기 위해 모든 열린 탭들의 현재 페이지들을 통해 빠르게 브라우징하기 위한 향상된 능력을 제공한다.
도 3은 본 발명의 일 실시예에 따른 어레이 모드에서의 브라우저 스크린(300)을 나타낸다. 도 2에 도시된 풀 프레임 모드에서와 같이, 어레이 모드에서의 브라우저 스크린(300)은 크롬(302) 및 페이지 디스플레이 영역(304)을 갖는다. 이 실시예에서, 크롬(302)은 탭 디스플레이 영역(206)이 도시되지 않는다는 점에서 크롬(202)과 다르다. (후술하는 바와 같이, 탭 디스플레이 영역(206)은 어레이 모드에서 크롬(302) 뒤에 "숨겨진" 것으로 여겨질 수 있다.)
어레이 모드에서의 페이지 디스플레이 영역(304)은 단일 페이지만을 표시하지 않을 수 있다. 대신에, 페이지(306a)(완전히 보임) 및 페이지들(306b, 306c)(각자 부분적으로 보임)을 포함하는 페이지들(306)의 어레이(305)의 일부를 표시할 수 있다. 어레이(305)는 브라우저 스크린(200) 내의 열린 탭마다 하나의 페이지(306)를 포함하지만, 모든 페이지들 또는 탭들이 보이지는 않는다. 일부 실시예들에서, 어레이(305)는 1 페이지의 높이 및 N 페이지의 폭을 갖는 스트립이며, 여기서 N은 브라우저 애플리케이션(145) 내의 열린 탭들의 수이다. 어레이(305) 내의 각각의 페이지(306)는 그의 풀 프레임 모드 렌더링에 비해 축소된 크기로 렌더링되며, 따라서 하나 초과의 페이지가 동시에 보일 (또는 부분적으로 보일) 수 있다. 어레이(305) 내의 페이지들(306)의 순서는 어레이 모드에 들어가기 바로 전에 풀 프레임 모드에서 탭들(206)(도 2)이 제시된 순서에 대응할 수 있으며; 후술하는 바와 같이, 이러한 대응은 사용자가 2개의 모드들 사이의 관계를 이해하는 것을 도울 수 있다.
이 실시예에서, 어레이(305)의 각각의 페이지(306)는 그의 상부에 부착된 탭(310)을 갖는다. 도 2의 풀 프레임 뷰에서의 탭들(206)과 같이, 각각의 탭(310)은 대응하는 페이지의 타이틀을 포함할 수 있다. 탭들(310)은 임의의 숨겨진 탭들을 포함하는 도 2의 탭들(206)과 일대일 대응 관계를 가질 수 있다(그러나, 도 3에는 탭들이 더 멀리 이격되므로 더 적은 탭이 보인다). 어레이(305)는 사용자 입력에 응답하여 좌측 또는 우측으로 스크롤링될 수 있으며, 따라서 어레이가 스크롤링됨에 따라 상이한 페이지들(306)이 보이거나 보이지 않게 된다.
도 4는 대략 1 페이지(306)만큼 좌측으로 스크롤링된 후의 어레이(305)를 나타낸다. 페이지(306c)가 이제 중심 근처에 있고, 페이지(306a)가 우측에서 부분적으로 보이며, 페이지(306d)가 보이지 않게 이동된 반면에 상이한 페이지(페이지 306e)가 좌측에 보이게 된다. 따라서, 도시된 바와 같이, 일부 탭들은 임의의 주어진 시간에 보이지 않을 수 있지만, 모든 열린 탭들이 어레이 모드에서 존재하는 것으로 간주될 수 있다. 각각의 페이지(306) 및 그에 대응하는 탭(310)은 어레이(305)가 스크롤링될 때 하나의 단위로서 함께 이동한다. (새로운 페이지들이 보이게 될 때, 그들은 브라우저 애플리케이션(145)의 캐시로부터 로딩되거나, 그들의 오리지널 소스들로부터 동적으로 다시 로딩될 수 있다.)
도 3을 다시 참조하면, 일부 실시예들에서, 어레이(305)의 어느 부분이 보이는지를 시각적으로 암시하기 위해 위치 지시기(316)가 제공될 수 있다. 일부 실시예들에서, 위치 지시기(316)는 도트들의 행을 포함하며, 하나의 도트는 각각의 열린 탭에 대응한다. 페이지 디스플레이 영역(304)의 중심에 현재 가장 가까운 페이지(306)가 식별되며, 어레이(305)의 페이지(306)의 위치에 대응하는 도트가 강조된다. 따라서, 예를 들어, 도 2를 참조하면, 탭(206a)은 좌측 단부로부터 세 번째 탭(206)이다. 탭(206a)이 도 3에 도시된 어레이 모드에서의 탭(310a)에 대응하는 경우, 좌측으로부터 세 번째 도트가 강조될 것인데, 그 이유는 탭(310a)에 부착된 페이지(306a)가 페이지 디스플레이 영역(304)의 중심에 가장 가깝기 때문이다. 어레이(305)가 좌측 또는 우측으로 스크롤링됨에 따라, 상이한 페이지들(306)이 중심에 가장 가까워지며, 위치 지시기(316) 내의 상이한 도트들이 강조될 수 있다. 따라서, 예를 들어, 도 4에서, 좌측으로부터 두 번째 도트가 강조되며, 페이지(306c)가 중심에 가장 가깝다.
다른 실시예들에서, 위치 지시기(316)는 일정한 또는 임의 수의 도트를 포함할 수 있으며, 강조된 도트는 정확한 지시기가 아니라 어레이 내의 대략적 위치를 지시할 수 있다. 예를 들어, 30개의 탭이 열리고, 지시기(316) 내에서 10개의 도트가 사용되는 경우, 지시기(316) 내의 좌측 첫 번째 도트를 강조하는 것은 좌측으로부터 처음 3개의 페이지 중 하나가 중심에 가장 가깝다는 것을 지시할 것이고, 지시기(316) 내의 좌측에서 두 번째 도트를 강조하는 것은 좌측으로부터 다음 3개의 페이지 중 하나가 중심에 가장 가깝다는 것을 지시할 것이며, 기타 등등일 것이다. 현재 보이는 어레이(305)의 대략적인 또는 정확한 위치의 다른 표현들도 사용될 수 있다. 예를 들어, 어레이가 좌측 또는 우측으로 스크롤링됨에 따라, 페이지 디스플레이 영역(304)을 나타내는 반투명 박스(도시되지 않음)가 지시기의 도트들을 가로질러 좌측 또는 우측으로 "슬라이딩"될 수 있다.
일부 실시예들에서, 위치 지시기(316)는 제어 요소로서 동작가능할 수 있다. 사용자는 위치 지시기(316) 내의 도트를 (예로서, 커서 내지 터치 접촉을 이용하여) 선택하여, 어레이를 선택된 위치(또는 대략적인 위치)로 "점프"시킬 수 있으며; 점프는 예를 들어 선택된 위치로의 매우 빠른 스크롤로서 또는 급격한 시프트로서 렌더링될 수 있다.
도 3 및 4의 실시예들에서, 어레이 모드에서의 콘텐츠 아이템들은 정적 표현들이 아니라 "라이브(live)"일 수 있다. 예를 들어, 페이지(306a)가 활성 페이지였고, 브라우저 애플리케이션(145)이 어레이 모드로 스위칭된 때 비디오를 재생하고 있었던 경우, 비디오는 브라우저 애플리케이션(145)이 어레이 모드에 있는 동안 계속 재생될 수 있다. 일부 실시예들에서, 사용자는 예를 들어 비디오 재생을 시작하거나 중단하기 위해 또는 현재 보이는 페이지(예로서, 도 3의 페이지(306a)) 내의 하이퍼링크를 선택하여 해당 탭에 대한 현재 페이지를 변경하기 위해 어레이 모드에서 보이는 페이지들과 상호작용할 수 있다. 일부 실시예들에서, 링크의 선택은 브라우저 스크린(200)이 어레이 모드를 종료하고 풀 프레임 모드로 복귀하게 한다. 링크가 선택된 탭은 활성 탭이 되며, 링크된 페이지는 활성 탭에 대한 현재 페이지가 된다. 다른 실시예들에서, 링크의 선택은 브라우저 스크린(200)이 어레이 모드를 종료하지 않고서 링크가 선택된 탭에 대한 현재 페이지를 변경하게 한다.
어레이 모드에 있는 동안의 임의의 시간에, 사용자는 풀 프레임 모드로 복귀하기로 선택할 수 있다. 일부 실시예들에서, (예를 들어, 페이지 또는 그의 탭을 클릭 또는 탭핑함으로써) 임의의 보이는 페이지(306)를 선택하는 것은 (예로서, 도 2에 도시된 바와 같이) 브라우저 애플리케이션(145)이 풀 프레임 모드로 복귀하게 하며, 선택된 탭/페이지는 활성 탭/페이지가 된다. 일부 실시예들에서, 사용자는 투시도 버튼(220)을 이용하여 풀 프레임 모드와 어레이 모드 사이에서 토글링할 수 있다. 투시도 버튼(220)이 어레이 모드에 있는 동안 선택되는 경우, 일부 실시예들에서, 현재 페이지 디스플레이 영역(304)의 중심에 가장 가까운 페이지(306)/탭(310)이 활성 페이지/탭이 된다. 다른 실시예들에서, 어레이 모드를 종료하기 위해 투시도 버튼(220)을 선택하는 것은 어레이 모드에 들어가기 전에 활성이었던 최종 페이지/탭이 다시 활성으로 되게 하며, 이 경우에 토글은 탭들 사이의 내비게이션을 "취소"하도록 효과적으로 기능한다.
일부 실시예들에서, 어레이 모드는 얼마나 많은 탭이 열려 있는지에 관계없이 특정 탭을 빠르게 찾고 내비게이션하는 데 사용될 수 있다. 도 5는 본 발명의 일 실시예에 따른, 브라우저 애플리케이션(145)과 같은 콘텐츠 브라우저 내의 탭들 사이에서 내비게이션하는 데 사용될 수 있는 프로세스(500)의 흐름도이다.
블록 502에서, 브라우저 애플리케이션(145)은 예를 들어 도 2에 도시된 바와 같이 풀 프레임 모드에서 현재 콘텐츠 아이템(예로서, 웹페이지)을 표시한다. 블록 504에서, 브라우저 애플리케이션(145)은 어레이 모드로의 스위치를 요청하는 사용자 입력을 수신할 수 있다. 예를 들어, 사용자는 투시도 버튼(220)을 토글링하거나, (후술하는 핀칭 제스처와 같은) 제스처를 취하거나, 모드 스위칭과 관련된 다른 제어부를 조작할 수 있다. 블록 506에서, 사용자 입력에 응답하여, 브라우저 애플리케이션(145)은 페이지 디스플레이 영역을 풀 프레임 모드에서 어레이 모드로 전이시킬 수 있으며(예로서, 도 3에 도시된 바와 같이), 콘텐츠 아이템들은 어레이 내에 표시될 수 있다. 후술하는 바와 같이, 일부 실시예들에서, 전이는 풀 프레임 모드에서의 탭들과 어레이 모드에서의 탭형 콘텐츠 아이템들 사이의 관계에 대한 사용자 이해를 용이하게 하는 유연한 애니메이션을 포함할 수 있다.
블록 508에서, 브라우저 애플리케이션(145)은 콘텐츠 아이템들의 어레이를 조작하는 추가적인 사용자 입력들을 수신할 수 있다. 예를 들어, 사용자는 어레이를 상이한 위치로 스크롤링하고, 어레이 내의 콘텐츠 아이템과 상호작용하는 것 등을 행할 수 있다.
블록 510에서, 브라우저 애플리케이션(145)은 풀 프레임 모드에서 보기 위해 콘텐츠 아이템들 중 하나를 선택하는 사용자 입력을 수신할 수 있다. 이에 응답하여, 블록 512에서, 브라우저 애플리케이션(145)은 페이지 디스플레이 영역을 어레이 모드에서 다시 풀 프레임 모드로 전이시킬 수 있으며, 선택된 콘텐츠 아이템은 현재 콘텐츠 아이템이 될 수 있다. 블록 506에서의 어레이 모드로의 전이와 같이, 일부 실시예들에서, 블록 512에서의 전이는 어레이 모드에서의 탭형 콘텐츠 아이템들과 풀 프레임 모드에서의 탭들 사이의 관계에 대한 사용자 이해를 용이하게 하는 유연한 애니메이션을 포함할 수 있다.
본 명세서에서 설명되는 내비게이션 프로세스 및 디스플레이 모드들은 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 순차적인 것으로서 설명되는 단계들은 병렬로 실행될 수 있고, 단계들의 순서가 변화될 수 있으며, 단계들이 변경, 조합, 추가 또는 생략될 수 있다.
예를 들어, 콘텐츠 아이템들과의 상호작용은 아이템들을 스크롤링하고 선택하는 것으로 제한되지 않는다. 전술한 바와 같이, 일부 실시예들에서, 사용자는 어레이 모드에 남아 있는 동안 미디어 콘텐츠를 재생하거나, 콘텐츠 아이템 내의 하이퍼링크들을 추적할 수 있다. 게다가, 일부 실시예들에서, 사용자는 어레이 모드에 있는 동안 탭들을 조작할 수 있다. 예를 들어, 사용자는 예를 들어 페이지를 (예로서, 커서 또는 터치 입력을 이용하여) 어레이 내의 새로운 위치로 클릭 및 드래그함으로써 어레이 내의 페이지들의 순서를 재배열할 수 있다.
일부 실시예들에서, 사용자는 어레이 모드에 있는 동안 탭을 닫을 수 있다. 예를 들어, 도 3의 각각의 탭(310)은 하나의 코너에 "닫기" 버튼(예로서, X)을 가질 수 있으며, 탭에 대한 닫기 버튼의 선택은 그 탭을 닫는다. 일부 실시예들에서, 닫기 버튼은 사용자가 탭 위에서 온-스크린 포인터를 호버링(hover)할 때만 보이게 될 수 있으며, 다른 실시예들에서는 닫기 버튼이 항상 보일 수 있다. 또 다른 실시예들에서, 닫기 버튼은 버튼이 선택되는 경우에 어느 탭이 닫힐지가 명확한 경우라면, 원하는 대로 탭 옆에 또는 페이지 아래에 또는 다른 곳에 위치할 수 있다. 탭이 닫힐 때, 어레이 내의 다른 페이지들이 갭을 채우도록 시프트될 수 있다.
일부 실시예들에서, 사용자는 어레이 모드에 있는 동안 탭을 열 수 있다. 예를 들어, "탭 열기" 제어 요소(예로서, 플러스 버튼)가 도 3의 페이지 디스플레이 영역(304)의 미사용 부분에 (예로서, 위치 지시기(316) 옆에 또는 아래에) 렌더링될 수 있다. 페이지를 어레이 내에, 예를 들어 도 3의 페이지들(306c, 306a) 사이에 삽입함으로써 새로운 탭이 표시될 수 있으며; 기존 페이지들은 새로운 페이지를 위한 공간을 생성하도록 시프트될 수 있다. 새로운 페이지는 처음에 비어 있을 수 있거나, 디폴트 페이지가 사용될 수 있다.
일부 실시예들은 스크롤링 경험을 향상시키기 위한 특징들도 제공할 수 있다. 예를 들어, 사용자가 어레이 모드에 들어가는 시간에 오디오가 풀 프레임 모드에서 현재 페이지 내에서 재생되고 있는 경우에, 브라우저가 어레이 모드로 전이함에 따라 오디오는 계속 재생될 수 있으며; 일부 실시예들에서는 (렌더링된 페이지가 더 작아짐에 따라) 더 멀리 이동하는 페이지를 암시하기 위해 볼륨이 감소할 수 있다. 어레이가 스크롤링될 때, 오디오 출력은 페이지와 함께 좌측 또는 우측으로 시프트될 수 있으며, 페이지가 어레이의 가시 부분으로부터 더 멀어지거나 더 가까워짐에 따라 볼륨을 페이드 아웃 또는 페이드 인할 수 있다.
도 2 내지 도 4에 도시된 예들에서, 풀 프레임 모드 및 어레이 모드는 콘텐츠 아이템들의 외관(풀 프레임 대 축소된 크기)에 의해, 크롬 아래 보이는 탭 영역의 존재 또는 부재에 의해, 그리고 브라우저 윈도 내의 타이틀에 의해 시각적으로 구별된다. 도 2에 도시된 바와 같이, 풀 프레임 모드에서, 타이틀 바(230) 내의 윈도 타이틀은 현재 활성 탭에 대한 타이틀 또는 다른 식별자와 매칭되거나 이를 포함할 수 있다. 도 3에 도시된 바와 같이, 어레이 모드에서, 타이틀 바(330) 내의 윈도 타이틀은 예를 들어 열린 탭들의 수(N)를 지시하는 일반 타이틀로 변경될 수 있다. 시각적 표시들의 임의의 조합을 사용하여 어레이 모드와 풀 프레임 모드를 구별할 수 있다는 것을 이해해야 하며; 그 예는 컬러 스킴들(예로서, 크롬 또는 그의 일부가 컬러를 변경할 수 있음), 폰트들, 크롬 내의 다양한 제어 요소들 또는 라벨들의 존재 또는 부재 등을 포함한다. 일부 실시예들에서, 어레이 모드에서의 콘텐츠 아이템들의 크기 및 배열은 축소된 크기에서의 페이지들의 판독성과 같은 고려사항들에 기초하여 조정될 수 있다. 일부 실시예들에서, 어레이 모드에서의 페이지들은 음영 또는 다른 시각적 효과를 이용하여 렌더링될 수 있으며, 따라서 그들은 페이지 디스플레이 영역(304)의 배경 위에 떠 있는 것처럼 보인다. 떠 있다는 환상을 더하기 위해, 배경이 정적 패턴으로서 렌더링될 수 있으며, 어레이가 스크롤링될 때 페이지들은 정적 패턴에 대해 이동한다.
또한, 본 명세서에서 예시되는 어레이 모드는 풀 프레임 모드에서의 탭 영역 내의 탭들의 배열과 자연스럽게 정렬되는 1×N 스트립으로 콘텐츠 아이템들을 배열하지만, 다른 실시예들은 예를 들어 임의의 주어진 시간에 더 많은 페이지가 적어도 부분적으로 보이게 하기 위해 다른 어레이 치수들을 사용할 수 있다. (그리드를 사용하는 실시예가 후술된다.) 일부 실시예들에서, 어레이 치수들은 사용자 선택 가능 설정 파라미터에 의해 제어될 수 있다.
일부 실시예들은 풀 프레임 모드와 어레이 모드 사이의 유연한 애니메이션된 전이들을 제공할 수 있다. 이러한 전이들은 사용자가 2개의 모드들 사이의 관계를 이해하는 것을 돕도록 설계될 수 있다. 도 6 내지 도 9는 본 발명의 일 실시예에 따라 구현될 수 있는 풀 프레임 모드에서 어레이 모드로의 전이를 나타내는 스크린 이미지들의 시퀀스를 제공하며, 도 9 내지 도 14는 본 발명의 일 실시예에 따라 구현될 수 있는 어레이 모드에서 풀 프레임 모드로의 대응하는 전이를 나타내는 스크린 이미지들의 시퀀스를 제공한다.
어레이 모드로의 전이들의 경우, 전이에 대한 시작 포인트는 도 2에 도시된 바와 같은 풀 프레임 모드에서의 브라우저 스크린일 수 있으며, 종료 포인트는 도 3에 도시된 바와 같은 어레이 모드에서의 브라우저 스크린일 수 있다.
도 6은 전이의 초기 스테이지 동안의 브라우저 스크린(600)을 나타낸다. 풀 프레임 모드에서 이전에 표시된 페이지(602)가 축소되기 시작하며, 따라서 배경 영역(604)은 브라우저 스크린(600)의 페이지 디스플레이 영역의 에지들 근처에서 보이게 된다. 이와 동시에, 탭(608)이 크롬(606)으로부터 떨어지고, 반전되며(따라서, 더 넓은 단부가 도 2에서와 같이 상부 대신 바닥에 위치함), 페이지(602)의 상부에 부착된다. 초기 부착은 탭(608)이 풀 프레임 뷰에 있을 때 페이지(602)에 대해 나타난 곳과 동일 포인트에 있을 수 있다. 따라서, 사용자는 탭 행(610)의 나머지로부터 분리되고 그의 페이지에 부착된 탭(608)을 볼 수 있다.
도 7은 전이의 후속 스테이지 동안의 브라우저 스크린(700)을 나타낸다. 페이지(602)가 더 축소되며, 인접 페이지들(702, 704)의 에지들이 보이게 된다. 탭(608)은 페이지(602)의 상중앙을 향해 수평으로 슬라이딩한다. 이와 동시에, 탭 행(610)의 나머지가 시야로부터 사라지기 시작한다. 이 예에서는, 탭 어레이(610)가 크롬(606) 뒤에서 위쪽으로 슬라이딩하는 것처럼 보이도록 애니메이션된다.
도 8은 전이가 계속될 때의 브라우저 스크린(800)을 나타내며, 페이지(602)는 계속 축소된다. 페이지들(702, 704)도 그에 따라 축소되며, 페이지들(702, 704)의 더 큰 부분들이 보이게 된다. 탭(608)은 상중앙 정렬을 향해 계속 슬라이딩하며, 탭 어레이(610)는 크롬(708) 뒤로 더 슬라이딩한다. 전이는 도 3에 도시된 바와 같은 어레이 모드 브라우저 스크린(300)에서 정점에 이를 수 있다. 이러한 전이 효과들의 축적은 사용자에게 그가 이제 새로운 브라우징 모델에 있다는 것을 지시한다.
이제, 어레이 모드에서 풀 스크린 모드로의 역방향 전이가 설명된다. 도 9는 풀 프레임 모드로의 전이 바로 전의 어레이 모드에서의 브라우저 스크린(900)을 나타낸다. 활성 페이지가 될 페이지(902)가 페이지 디스플레이 영역(904)의 중심 근처에 표시된다. 탭(906)이 페이지(902)의 상중앙에 표시된다. 인접 페이지들(908, 910)이 그들의 대응하는 탭들(912, 914)과 함께 부분적으로 보인다.
도 10은 전이의 초기 스테이지 동안의 브라우저 스크린(1000)을 나타낸다. 페이지(902)가 확대되고, 탭(906)이 중앙으로부터 그의 최종 목적지 위치(즉, 그가 후술하는 바와 같이 탭 행 내에 삽입되는 것으로 보일 포인트)를 향해 슬라이딩한다. 페이지들(908, 910)도 확대되지만, 이제는 페이지(902)의 확대로 인해 각각의 페이지의 더 작은 부분이 보인다. 탭 행(1002)이 나타나기 시작한다. 이 예에서는, 탭 행(1002)이 크롬(1004) 뒤로부터 아래로 슬라이딩하는 것처럼 보이도록 애니메이션되어, 도 6 내지 도 8에서 보이는 효과와 반대가 된다.
도 11은 전이의 후속 스테이지 동안의 브라우저 스크린(1100)을 나타낸다. 페이지(902)는 계속 확대되며, 탭(906)은 그의 최종 목적지 위치를 향해 계속 슬라이딩한다. 페이지들(908, 910)도 확대되지만, 페이지(902)의 계속적인 확대로 인해 이러한 페이지들의 더 작은 부분들이 보인다. 탭 어레이(1002)는 아래로 계속 슬라이딩한다.
도 12는 전이가 계속될 때의 브라우저 스크린(1200)을 나타낸다. 페이지(902)는 다른 페이지들이 보이지 않도록 충분히 확대되었으며, 탭(906)은 그의 목적지 위치에 거의 도달하였다. 탭 행(1002)은 아래로 계속 슬라이딩하며, 비활성 탭들(1202, 1204, 1206)이 적소에 페이드된다.
도 13은 전이의 종료 근처의 스테이지에서의 브라우저 스크린(1300)을 나타낸다. 페이지(902)는 거의 최대 크기에 도달하였으며, 탭(906)은 그가 전이의 종료 시에 점유할 대략적인 위치에서 탭 행(1002)의 나머지를 오버레이한다.
도 14는 전이의 종료 시의 브라우저 스크린(1400)을 나타낸다. 페이지(902)는 풀 프레임 모드로 표시되며, 탭(906)은 페이지(902)로부터 분리되고, 반전되며(따라서, 더 넓은 단부가 도 13에서와 같이 바닥이 아니라 상부에 위치함), 탭 어레이(1002)의 상부에서 크롬(1004)에 부착된다. 따라서, 탭(906)은 그의 목적지 위치에 도달하였다.
이 실시예에서, 풀 프레임 모드와 어레이 모드 사이의 전이들은 탭 행 내의 탭들의 순서를 유지한다. 즉, 어레이 모드로 전이할 때, 어레이의 탭형 페이지들은 전이 시의 풀 프레임 모드에서의 탭들의 순서로 배열된다. 또한, 풀 프레임 모드로 전이할 때, 풀 프레임 모드에서의 탭들은 전이 시의 어레이의 탭형 페이지들의 순서로 배열된다. (이것은 전술한 바와 같이 어레이 모드에 있는 동안의 탭들의 재배열을 배제하지 않으며; 재배열된 순서는 풀 프레임 모드로의 역전이 시에 유지된다.)
본 명세서에서 설명되는 전이 시퀀스들은 사용자가 어레이 모드와 풀 프레임 모드 사이의 관계를 이해하는 것을 돕기 위해 시각적 단서들을 제공한다. (예를 들어, 도 6에서의) 디스플레이의 나머지로부터의 활성 탭의 분리는 사용자 인터페이스가 제1 관찰 모드(예로서, 풀 프레임 모드)로부터 제2 관찰 모드(예로서, 어레이 모드)로 전이하고 있다는 최초의 시각적 지시를 사용자에게 제공한다. 이러한 시각적 지시는 본 명세서에서 설명되는 다른 시각적 지시들(예로서, 탭의 수평 이동, 웹페이지들의 크기의 축소 등)과 조합되어 전이가 발생하고 있다는 추가적인 지시들을 사용자에게 제공하며, 또한 어레이 내의 활성 콘텐츠 아이템의 위치를 시각적으로 나타낸다. 일부 실시예들에서, 사용자는 작성된 지시 또는 지침 등에 대한 필요 없이 단지 전이를 봄으로써 전이를 이해할 수 있다. 이것은 사용자들이 사용자 설명 또는 지침 비디오와 같은 외부 안내서 없이 어레이 모드를 발견하고 탐색하는 것을 가능하게 한다.
전술한 전이 시퀀스는 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 전이는 원하는 임의의 레이트로 발생할 수 있다. 일부 실시예들에서, 전이의 레이트는 사용자 선호들에 기초하여 조정될 수 있다. 유연한 전이는 사용자가 어레이 모드와 풀 프레임 모드 사이의 관계를 이해하는 것을 도울 수 있지만, 유연한 전이가 필요한 것은 아니라는 것을 이해해야 한다. 밝은 플래시와 같은 시각적 단서가 하나의 모드에서 다른 모드로의 급격한 점프와 함께 사용될 수 있거나, 브라우저가 새로운 모드에서, 예를 들어 디스플레이의 단일 프레임-리프레시 사이클 내에 간단히 다시 렌더링될 수 있다.
전술한 바와 같이, 어레이 모드와 풀 프레임 모드 사이의 스위칭은 사용자 입력에 응답하여 행해질 수 있다. 입력은 도 2의 투시도 버튼(220)과 같은 브라우저의 제어 요소들을 이용하여, 그리고/또는 풀 프레임 모드에서 선택된 아이템을 보기 위해 어레이 모드에서 콘텐츠 아이템 또는 탭을 선택함으로써 제공될 수 있다. 일부 실시예들에서는 모드 스위치를 트리거하기 위해 다른 사용자 입력이 사용될 수 있다.
일부 실시예들에서, 도 1의 컴퓨터 시스템(100)과 같은 컴퓨터 시스템은 제스처 기반 사용자 인터페이스를 지원한다. 예를 들어, 다양한 브라우저 스크린을 제시하는 디스플레이는 터치 감지 표면을 가질 수 있으며, 표면 상에서의 사용자의 제스처(전형적으로 손가락 및/또는 손 모션들)는 브라우저 애플리케이션(145)에 대한 제어 신호들로서 검출 및 해석될 수 있다. 다른 예로서, (정보를 표시할 수 있지만, 그러할 필요는 없을 수 있는) 터치 감지 표면이 사용자 입력 디바이스로서 제공될 수 있으며, 사용자의 제스처들은 역시 브라우저 애플리케이션(145)에 대한 제어 신호들로서 검출 및 해석될 수 있다.
제스처 입력이 이용 가능한 경우, 소정의 특정 제스처들은 브라우저 애플리케이션(145)이 풀 프레임 모드와 어레이 모드 사이에서 전이해야 한다는 시그널링으로서 브라우저 애플리케이션(145)에 의해 검출 및 해석될 수 있다. 다른 제스처들이 특정 모드 내에서의 브라우저 애플리케이션(145)의 동작을 제어하는 것으로서 해석될 수 있으며, 일부 제스처들은 브라우저 애플리케이션(145)이 풀 프레임 모드에 있는지 또는 어레이 모드에 있는지에 따라 상이하게 해석될 수 있다. 이제, 브라우저 애플리케이션(145)에 대한 제스처 기반 제어의 예들이 설명될 것이다.
제스처 기반 인터페이스들에서는, "핀칭" 제스처를 이용하여 영역 상에서의 줌잉 인 및 줌잉 아웃을 제어하는 것이 가능하다. 핀칭 제스처들이 도 15 및 도 16에 예시된다. 도 15는 안쪽 핀치를 위한 터치 감지 표면 상의 접촉 영역들을 나타낸다. 2개의 접촉 영역(1502, 1504)이 먼저 터치 감지 표면(1500) 상에서 검출된다. 예를 들어, 사용자는 2개의 손가락을 표면(1500)에 대해 배치할 수 있다. 이어서, 접촉 영역들(1502, 1504)은 일반적으로 서로를 향해, 예를 들어 화살표들에 의해 지시되는 바와 같은 영역들(1502', 1504')로 이동하는 것으로 검출된다. 손가락 끝들 사이에서 물체를 쥐어짜는 것과 유사할 수 있는 안쪽 핀치 제스처는 관찰되는 아이템의 크기를 줄이는 것(줌아웃)과 관련될 수 있다.
도 16은 바깥쪽 핀치를 위한 터치 감지 표면 상의 접촉 영역들을 나타낸다. 2개의 접촉 영역(1602, 1604)이 먼저 터치 감지 표면(1600) 상에서 검출된다. 예를 들어, 사용자는 2개의 손가락을 표면(1600)에 대해 배치할 수 있다. 이어서, 접촉 영역들(1602, 1604)은 일반적으로 서로 멀어지도록, 예를 들어 화살표들에 의해 지시되는 바와 같은 영역들(1602', 1604')로 이동하는 것으로 검출된다. 안쪽 핀치의 반대일 수 있는 바깥쪽 핀치 제스처는 관찰되는 아이템의 크기를 늘리는 것(줌인)과 관련될 수 있다.
안쪽 및 바깥쪽 핀치 제스처들 양자에서, 어느 하나 또는 양 접촉 영역이 이동할 수 있으며; 제스처는 2개의 접촉 영역의 존재 및 그들 사이의 거리의 증가 또는 감소에 기초하여 인식될 수 있다. 일부 경우들에서는 속도 제약을 이용하여, 의도적 핀치와 비의도적 핀치(예로서, 사용자가 2-손가락 스와이핑 제스처와 같은 다른 제스처를 취하는 동안 손가락들 사이의 간격을 부주의하게 변경함)를 구별할 수 있다.
본 발명의 일부 실시예들에서는, 핀치 대 줌 인터페이스 패러다임을 레버리징하여(leveraged), 브라우저 애플리케이션(145)을 어레이 모드와 풀 프레임 모드 사이에서 스위칭하기 위한 직관적인 방법을 제공할 수 있다. 예를 들어, 안쪽 핀치는 아이템의 크기의 축소와 관련되므로, 풀 프레임 모드에 있는 동안의 안쪽 핀치는 어레이 모드(콘텐츠 아이템들이 축소된 크기로 렌더링됨)로 스위칭하기 위한 사용자 요청으로 해석될 수 있으며, 어레이 모드로의 전이를 트리거할 수 있다. 유사하게, 바깥쪽 핀치는 아이템의 크기의 증가와 관련되므로, 어레이 모드 동안의 바깥쪽 핀치는 풀 프레임 모드(현재 활성인 콘텐츠 아이템이 최대 크기로 렌더링됨)로 스위칭하기 위한 사용자 요청으로 해석될 수 있다. 일부 실시예들에서, 바깥쪽 핀치에 응답하여, 어레이 모드에서 페이지 디스플레이 영역의 중심에 가장 가깝게 되는 콘텐츠 아이템이 풀 프레임 모드에 들어갈 때 활성 아이템이 된다. 다른 실시예들에서, 사용자는 바깥쪽 핀치를 어레이 내의 특정 콘텐츠 아이템과 (예로서, 터치스크린 디스플레이에서 그 아이템에 의해 점유되는 터치스크린 디스플레이의 부분 내에서 바깥쪽 핀치 제스처를 취함으로써) 연관시킬 수 있으며, 바깥쪽 핀치와 연관된 아이템은 활성 아이템이 될 수 있다.
게다가, 제스처들을 이용하여 어레이 모드에 있는 동안 동작들을 제어할 수 있다. 예를 들어, 어레이는 (예를 들어, 하나의 손가락 또는 2개의 손가락을 터치 감지 표면을 가로질러 슬라이딩하는) 드래깅 제스처에 의해 스크롤링될 수 있으며, 좌측(우측)으로의 드래깅 제스처는 어레이의 가시 부분을 좌측(우측)으로 이동시킬 수 있다. 이동되는 거리는 드래그의 길이 및/또는 속도에 의존할 수 있다.
일부 실시예들에서, 풀 프레임 모드와 어레이 모드 사이의 스위칭을 제어하는 것으로서의 핀치 제스처들의 해석은 풀 프레임 모드에 있는 동안의 줌(확대 또는 축소)의 제어로서의 핀치 제스처들의 해석과 통합될 수 있다. 이제, 제스처 해석을 위해 사용될 수 있는 프로세스들의 예들이 설명될 것이다.
도 17은 본 발명의 일 실시예에 따른, 바깥쪽 핀치 제스처를 해석하기 위한 프로세스(1700)의 흐름도이다. 프로세스(1700)는 예를 들어 브라우저 애플리케이션(145)에서 실행될 수 있다.
블록 1702에서, 프로세스(1700)는 바깥쪽 핀치를 검출할 수 있다. 예를 들어, 컴퓨터 시스템의 운영 체제는 바깥쪽 핀치가 검출되었다는 것을 지시하는 신호를 브라우저로 전송할 수 있다. 대안으로서, 브라우저 애플리케이션(145)은 터치 표면으로부터 데이터를 수신하고, 데이터를 직접 해석할 수 있다.
블록 1704에서, 프로세스(1700)는 브라우저 애플리케이션(145)이 풀 프레임 모드에 있는지를 결정한다. 그러한 경우, 바깥쪽 핀치는 활성 콘텐츠 아이템을 줌잉하기 위한 요청으로서 해석되며, 블록 1706에서 활성 콘텐츠 아이템은 더 큰 크기로 다시 렌더링된다. (아이템이 확대되는 정도는 핀치의 크기 및/또는 속도에 의존할 수 있다.)
블록 1704에서 브라우저 애플리케이션(145)이 풀 프레임 모드에 있지 않은 경우, 바깥쪽 핀치는 어레이 모드의 상황에서 해석되며, 그러한 상황에서 바깥쪽 핀치는 풀 프레임 모드로 전이하기 위한 요청으로서 해석된다. 따라서, 블록 1708에서, 프로세스(1700)는 어느 콘텐츠 아이템이 활성 아이템이 되어야 하는지를 결정할 수 있다. 예를 들어, 바깥쪽 핀치가 어떠한 특정 콘텐츠 아이템과도 관련되지 않는 경우, 페이지 디스플레이 영역의 중심에 가장 가까운 아이템이 선택될 수 있다. 또는, 바깥쪽 핀치가 특정 콘텐츠 아이템과 관련되는 경우, 그 아이템이 선택될 수 있다. 블록 1710에서, 프로세스(1700)는 브라우저 애플리케이션(145)을 블록 1708에서 결정된 바와 같은 활성 아이템을 갖는 풀 프레임 모드로 전이시킬 수 있다.
도 18은 본 발명의 일 실시예에 따른, 안쪽 핀치 제스처를 해석하기 위한 프로세스(1800)의 흐름도이다. 프로세스(1800)는 예를 들어 브라우저 애플리케이션(145)에서 실행될 수 있다.
블록 1804에서, 프로세스(1800)는 안쪽 핀치를 검출할 수 있다. 예를 들어, 컴퓨터 시스템의 운영 체제는 안쪽 핀치가 검출되었다는 것을 지시하는 신호를 브라우저로 전송할 수 있다. 대안으로서, 브라우저 애플리케이션(145)은 터치 표면으로부터 데이터를 수신하고, 데이터를 직접 해석할 수 있다.
블록 1804에서, 프로세스(1800)는 브라우저 애플리케이션(145)이 풀 프레임 모드에 있는지를 결정한다. 그러한 경우, 프로세스(1800)는 활성 콘텐츠 아이템이 현재 최소 스케일 팩터로 렌더링되고 있는지를 결정한다. (예를 들어, 스케일 팩터는 항상 적어도 1.0으로 제한될 수 있으며, 따라서, 풀 프레임 모드에 있는 아이템들은 항상 실제 크기의 100% 이상으로 렌더링된다. 실제 크기의 50%로의 축소를 가능하게 하도록 다른 최소치, 예로서 0.5가 또한 사용될 수 있다.) 스케일 팩터가 최소치보다 큰 경우, 안쪽 핀치는 줌 아웃 요청으로 해석된다. 따라서, 블록 1808에서, 프로세스(1800)는 활성 페이지를 더 작은 스케일 팩터로 다시 렌더링할 수 있다. (스케일 팩터가 축소되는 정도는 핀치의 크기 및/또는 속도에 의존할 수 있으며, 새로운 스케일 팩터는 최소치에 의해 제한될 수 있다.)
블록 1806에서 아이템이 현재 최소 스케일 팩터로 렌더링되고 있는 경우, 안쪽 핀치는 어레이 모드에 들어가기 위한 요청으로 해석되며, 블록 1810에서 프로세스(1800)는 어레이 모드로의 전이를 개시할 수 있다.
이 예에서, 안쪽 핀치 제스처는 어레이 모드에서는 어떠한 정의된 의미도 갖지 않는다. 따라서, 블록 1804에서 브라우저 애플리케이션(145)이 어레이 모드에 있는 경우, 프로세스(1800)는 아무 것도 하지 않을 수 있다(블록 1812). 일부 실시예들에서, 프로세스(1800)는 제스처가 수신되었지만 어떠한 효과도 갖지 않는다는 것을 사용자에게 지시하기 위한 시각적 효과를 실행할 수 있다. 예를 들어, 고무 밴드 유형의 시각적 효과를 이용하여, 어레이 내의 콘텐츠 아이템들이 잠시 축소된 후에 빠르게 표준 크기로 복원된다는 것을 나타낼 수 있다. 다른 실시예들에서, 안쪽 핀치 제스처는 어레이 모드에서 정의된 의미(예로서, 더 많은 아이템이 동시에 보이는 것을 가능하게 하기 위한 각각의 콘텐츠 아이템의 크기의 축소)를 가질 수 있으며, 블록 1812는 정의된 의미의 구현과 관련된 임의의 액션들을 포함할 수 있다.
이러한 제스처 해석 프로세스들은 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 순차적인 것으로서 설명되는 단계들은 병렬로 실행될 수 있고, 단계들의 순서가 변화될 수 있으며, 단계들이 변경, 조합, 추가 또는 생략될 수 있다. 또한, 설명되는 바와 같은 프로세스들은 브라우저가 2개의 관련 모드(풀 프레임 모드 및 어레이 모드)만을 갖는 것으로 가정하지만, 일부 브라우저들은 핀치 제스처의 해석에 영향을 주는 추가적인 모드들을 제공할 수 있으며; 도 17 및 18의 프로세스들은 추가적인 상황 의존 해석들을 지원하도록 변경될 수 있다.
도 19 내지 도 21은 도 17 및 도 18의 제스처 해석 프로세스들의 효과를 나타내는 스크린 이미지들이다. 도 19는 확대된 포맷(1.0보다 큰 스케일 팩터)으로 렌더링되는 페이지(1902)를 갖는 풀 프레임 모드에서의 브라우저 스크린(1900)을 나타낸다. 이 시점에서, 안쪽 핀치 제스처가 검출된다. 안쪽 핀치는 페이지(1902)를 새로운 스케일 팩터로 축소시킨다. 일 실시예에서, 새로운 스케일 팩터는 1.0보다 작지 않은 것으로 제한되며, 입력 및 현재 스케일 팩터가 핀치 제스처가 1.0보다 작은 스케일 팩터로의 축소를 요청하는 것인 경우, 브라우저는 단지 새로운 스케일 팩터를 1.0으로 설정할 수 있다. 이것이 발생할 때, 시각적 단서를 이용하여, 줌 한계에 도달했다는 것을 사용자에게 알릴 수 있다. 예를 들어, 도 20에 예시된 바와 같이, 페이지(1902)는 최대 미만의 페이지 디스플레이 영역(2002)을 점유하도록 축소되는 것으로 도시될 수 있다. (이것은 어레이 모드로의 전이를 암시할 수 있지만, 이 예에서는 모드가 바뀌지 않는다.) 이어서, 페이지(1902)는 도 21에 도시된 바와 같이 스케일 팩터 1.0에서 풀 프레임 모드로 다시 스냅핑될(snap) 수 있다. 이러한 이벤트들의 시퀀스는 페이지가 이제 그의 최소 스케일 팩터에 있고, 추가적인 안쪽 핀치는 어레이 모드로의 진입을 유발할 것이라는 시각적 단서를 사용자에게 제공할 수 있다.
따라서, 활성 페이지가 줌 인되는 경우, 사용자는 2개의 안쪽 핀치, 즉 1.0의 스케일 팩터에서 풀 프레임 모드로 복귀하기 위한 하나의 핀치 및 모드들을 스위칭하기 위한 제2 핀치를 이용하여 어레이 모드에 들어갈 수 있다.
때때로, 사용자는 모든 열린 탭들을 통해 브라우징할 필요 없이, 단지 인접 탭으로 스위칭하기를 원할 수 있다. 브라우저 애플리케이션(145)은 풀 프레임 모드에 있는 동안 브라우저 스크린(200)(도 2) 내의 상이한 탭(206)의 선택과 같은 메커니즘들을 통해 탭들을 스위칭하는 것을 지원할 수 있다. 그러나, 특정 사용자 인터페이스에 따라서는, 탭의 선택이 성가실 수 있다. 따라서, 본 발명의 일부 실시예들은 어레이 모드 및 전술한 관련 제스처들을 레버리징하여, 인접 탭으로의 스위칭으로서 해석될 수 있는 제스처를 제공한다.
일부 실시예들에서는, 도 22에 예시된 바와 같이, "핀치-스웁" 제스처가 정의될 수 있다. 이 제스처는 넘버링된 화살표들에 의해 지시되는 바와 같이 2개의 스테이지에서 발생할 수 있다. 스테이지 1은 도 15의 안쪽 핀치와 매우 유사할 수 있는데, 2개의 접촉 영역(2202, 2204)이 터치 감지 표면(2200) 상에서 초기 위치들로서 검출되고, 이어서 서로를 향해, 예를 들어 도시된 바와 같은 위치들(2202', 2204')로 이동하는 것이 검출된다. (안쪽 핀치에서와 같이, 총 이동이 접촉 영역들 사이의 거리를 줄이는 한, 접촉 영역들 중 어느 하나 또는 양자는 이동할 수 있다.) 스테이지 2에서, 접촉 영역들 중 적어도 하나는 선형으로 이동하며; 이 예에서는 2202'에 있는 접촉 영역이 2202"로 이동한다. 일부 실시예들에서는, 2개의 영역 중 적어도 하나가 제스처의 지속기간 동안 전반에서 접촉 상태를 유지하는 한, 제2 접촉 영역(영역 2204')이 스테이지 2 동안 접촉 상태를 유지하는지의 여부는 중요하지 않다. 어느 하나의 영역이 스테이지 2 동안 이동하는 영역일 수 있거나, 양 영역이 접촉 상태를 유지하고 대략 동일한 방향으로 이동할 수 있다. 스테이지 2 동안의 이동은 임의의 방향일 수 있으며, 제스처의 해석은 그러한 이동 방향에 부분적으로 의존할 수 있다. 핀치-스웁 제스처는 단일 연속 이동에서 실행될 수 있으며; 사용자는 핀칭 및 병진 또는 지향성 이동 양자가 검출될 수 있는 한은 스테이지 1과 스테이지 2 사이에서 멈출 필요가 없다.
일부 실시예들에서, 도 22에 예시된 핀치-스웁 제스처는 브라우저 내의 인접 탭들 사이의 스위칭을 위한 빠른 인터페이스를 제공하는 데 사용될 수 있다. 도 23은 본 발명의 일 실시예에 따른, 안쪽 핀치 및 핀치-스웁 제스처들을 해석하는 데 사용될 수 있는 프로세스(2300)의 흐름도이다. 프로세스(2300)는 프로세스(1800)와 유사하며, 블록들(2302-2312)은 전술한 블록들(1802-1812)과 유사하게 구현될 수 있다. 블록 2314에서, 블록 2310에서 어레이 모드로 스위칭한 후, 프로세스(2300)는 핀치-스웁 제스처의 스테이지 2(이동)가 검출되었는지를 결정한다. 그렇지 않은 경우, 프로세스(2300)는 종료되어, 브라우저 애플리케이션(145)은 어레이 모드로 유지될 수 있다.
핀치-스웁 스테이지 2 이동이 검출된 경우, 블록 2316에서, 프로세스(2300)는 스테이지 2 이동의 방향을 결정할 수 있다. 블록 2318에서, 프로세스(2300)는 이동 방향에 적어도 부분적으로 기초하여 새로운 활성 탭을 선택할 수 있다. 예를 들어, 블록 2304에서, 브라우저 애플리케이션(145)이 도 2에 도시된 바와 같이 풀 프레임 모드에 있었고, 탭(206a)이 활성 탭인 것으로 가정한다. 탭(206b)은 우측에서 탭(206a)에 인접하고, 탭(206c)은 좌측에서 탭(206a)에 인접한다. 블록 2316에서의 이동이 우측 방향인 경우, 탭(206b)(가장 최근의 활성 탭(206a)의 우측으로 인접하는 탭)이 선택될 수 있으며; 이동이 좌측 방향인 경우, 탭(206c)(가장 최근의 활성 탭(206a)의 좌측으로 인접하는 탭)이 선택될 수 있다. 일부 실시예들에서, 지시된 방향에서 가장 최근의 활성 탭에 인접하는 열린 탭이 존재하지 않는 경우, 가장 최근의 활성 탭이 활성 탭으로 유지될 수 있다. 다른 실시예들에서, 지시된 방향에서 가장 최근의 활성 탭에 인접하는 열린 탭이 존재하지 않는 경우, 제스처는 새로운 탭이 열릴 것을 요청하는 것으로 해석될 수 있으며, (필요에 따라 처음에 빈 페이지 또는 디폴트 페이지를 표시할 수 있는) 새로운 탭은 활성 탭이 된다.
도 23을 다시 참조하면, 블록 2320에서, 새로운 활성 탭이 선택된 후, 브라우저 스크린(200)은 풀 프레임 모드로 전이하여, 새로운 활성 탭을 표시할 수 있다. 전이는 애니메이션될 수 있으며; 예를 들어 도 3의 어레이(300)는 풀 프레임 모드로의 전이 전에 새로운 위치 내로 슬라이딩하는 것으로 도시될 수 있다(새로운 활성 탭은 페이지 디스플레이 영역 내의 대략 중심에 배치된다).
프로세스(2300)는 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 순차적인 것으로서 설명되는 단계들은 병렬로 실행될 수 있고, 단계들의 순서가 변화될 수 있으며, 단계들이 변경, 조합, 추가 또는 생략될 수 있다. 일부 실시예들에서, 전체 프로세스가 빠르게, 본질적으로 (사람의 인식의 한계 내에서) 사용자가 핀치-스웁 제스처를 행하는 시간에 맞춰 실행될 수 있으며, 따라서 사용자는 단일 핀치-스웁 제스처에 응답하여 하나의 탭으로부터 인접 탭으로의 빠른 스위치를 인식한다. 브라우저 애플리케이션의 사용자 인터페이스의 다른 양태들에 따르면, 이러한 탭 스위칭 기술은 새로운 탭을 직접 선택하는 것보다 효율적일 수 있다.
일부 실시예들에서, 풀 프레임 모드에서 어레이 모드로 그리고 다시 풀 프레임 모드로의 전이는 전이를 트리거한 특정 사용자 입력에 관계없이 하나의 활성 탭과 다른 활성 탭 사이의 임의의 전이를 애니메이션하는 데 사용될 수 있다. 예를 들어, 사용자가 도 2의 브라우저 스크린(200)의 탭 영역(205) 내의 탭을 선택할 때, 선택된 탭으로의 전이는 어레이 모드로의 전이, 새로운 위치로의 어레이의 스크롤링 및 선택된 탭을 활성 탭으로서 갖는 풀 프레임 모드로의 역전이로서 애니메이션될 수 있다. 따라서, 사용자 입력은 어레이 모드에 들어가거나 풀 프레임 모드로 복귀하기 위한 명시적인 사용자 요청을 포함할 필요가 없으며; 모드 전이들은 브라우저가 수신하는 임의의 탭 스위칭 입력에 대한 브라우저의 응답 내에 통합될 수 있다.
일부 실시예들에서, 브라우저 애플리케이션의 어레이 모드는 사용자의 다른 디바이스들 상의 콘텐츠 브라우저 애플리케이션들 내에 열릴 수 있는 탭들에 대한 사용자 액세스를 용이하게 하는 데 사용될 수 있다. 예를 들어, 사용자는 그 사용자에 속하는 다수의 디바이스들 사이에서 정보를 자동으로 동기화하는 클라우드 기반 데이터 관리 서비스에 가입할 수 있다. 도 24는 본 발명의 일 실시예에 따른, 사용자를 위한 클라우드 컴퓨팅 셋업(2400)을 나타낸다. 이 예에서, 사용자는 데스크탑 컴퓨터(2402), 랩탑 컴퓨터(2404), 태블릿 컴퓨터(2406) 및 스마트폰(2408)을 갖는다. (주어진 사용자는 이들 및/또는 다른 디바이스들의 임의의 수 및 조합을 가질 수 있다는 것을 이해해야 한다.) 디바이스들(2402-2408) 각각은 데이터 저장 및 동기화 능력을 제공하는 클라우드 서비스(2410)에 등록된다. 디바이스들(2402-2408)은 예를 들어 인터넷, 셀룰러 데이터 네트워크 또는 다른 통신 채널을 통해 클라우드 서비스(2410)와 통신할 수 있다. 통신은 (예로서, 디바이스들의 실시간 동기화를 위해) 유효하게 연속적이거나, 산발적일 수 있다(예로서, 스케줄링된 동기화 동작 또는 개별 데이터 액세스 동작).
임의의 또는 모든 디바이스들(2402)은 탭형 브라우징을 지원하는 브라우저 애플리케이션(예로서, 웹 브라우저)을 실행할 수 있다. 이 예에서, 데스크탑(2402)은 탭형 브라우저(2412)를 실행할 수 있으며, 태블릿(2406)은 탭형 브라우저(2414)를 실행할 수 있다. 브라우저들(2412, 2414)은 동일한 소프트웨어 또는 상이한 소프트웨어를 이용하여 구현될 수 있다. 일부 실시예들에서, 사용자는 브라우저(2412)를 이용하여, 브라우저(2412) 내에 국지적으로 열린 탭들은 물론, 브라우저(2414) 내에 열린 탭들도 볼 수 있고/있거나, 그 반대일 수 있다. 본 명세서에 사용되는 바와 같이, "로컬 탭"(또는 "로컬 콘텐츠 아이템")은 사용자가 현재 사용하고 있는 브라우저 애플리케이션 내에 열린 탭(또는 다른 콘텐츠 아이템)을 지칭하며, 반면 "원격 탭"(또는 "원격 콘텐츠 아이템")은 사용자의 다른 디바이스들 중 하나 상의 브라우저 애플리케이션 내에 열린 탭(또는 다른 콘텐츠 아이템)을 지칭한다. 따라서, 예를 들어, 사용자가 태블릿(2406) 상에서 브라우저(2414)를 사용하고 있는 경우, 사용자가 브라우저(2414)를 이용하여 연 탭들은 "로컬"인 반면, 브라우저(2412) 내에 열릴 수 있는 임의의 탭들은 "원격"이다. 대신에, 사용자가 브라우저(2414)를 사용하고 있는 경우, 명명법은 반전되어, 브라우저(2414) 내의 탭들이 "로컬"이고, 브라우저(2412) 내의 탭들은 "원격"일 것이다.
일부 실시예들에서, 탭은 브라우저 애플리케이션이 그의 호스트 디바이스 상에서 현재 실행되고 있지 않을 경우에도 브라우저 내에 열린 것으로 간주될 수 있다. 예를 들어, 일부 브라우저들은 브라우저 프로그램이 종료될 때 현재 열린 탭들의 세트를 저장할 수 있으며; 이러한 거동은 자동적이거나 사용자 입력에 의해 제어될 수 있다. 탭들이 종료시에 저장되는 경우들에서, 저장된 원격 탭들의 세트는 원격 디바이스가 현재 그의 브라우저 애플리케이션을 실행하지 않는 경우에도 액세스될 수 있다. 원격 탭 브라우징을 구현하는 목적을 위해, 클라우드 서비스(2410)는 사용자의 디바이스들 중 제1 디바이스로부터 현재 어떤 탭들이 그 디바이스 상에 열려 있는지에 관한 정보를 획득하고, (예로서, 요청 시에) 그 정보를 사용자의 다른 디바이스들 중 하나에 제공할 수 있는 것으로 충분하다.
도 25 내지 도 27은 본 발명의 일 실시예에 따른 원격 탭 브라우징의 사용자 경험을 나타낸다. 이러한 도면들을 설명하는 목적을 위해, 사용자가 도 24의 태블릿(2406) 상에서 브라우저(2414)를 사용하고 있고, 데스크탑 컴퓨터(2402) 상의 브라우저(2412) 내에 열린 원격 탭들에 액세스하기를 원하는 것으로 가정할 것이다.
도 25는 어레이 모드에서의 브라우저 애플리케이션(예로서, 태블릿(2406) 상의 브라우저 애플리케이션(2414))에 대한 브라우저 스크린(2500)을 나타낸다. 로컬 탭들은 탭형 페이지들(2502)의 어레이로서 도시되며; 어레이는 전술한 어레이 레이아웃들과 유사할 수 있다. 페이지 디스플레이 영역(2504)의 상부에서, 클라우드(2506)가 부분적으로 보인다. 일부 실시예들에서, 클라우드(2506)는 사용자의 원격 디바이스들 상의 데이터에 대한 액세스가 현재 이용 가능한 경우에만(예를 들어, 브라우저(2414)가 실행되고 있는 태블릿 디바이스(2406)가 현재 클라우드 서비스에 접속된 경우, 사용자가 클라우드 서비스에 등록된 다수의 디바이스들을 갖는 경우, 그리고 사용자의 다른 디바이스들 중 임의의 디바이스가 임의의 열린 탭들을 갖는 경우) 표시된다. 따라서, 클라우드(2506)의 존재는 클라우드 서비스(2410)가 사용자의 다른 디바이스들 중 하나 이상의 디바이스 상의 원격 탭들에 대한 액세스를 갖는다는 것을 사용자에게 지시할 수 있다.
사용자는 전술한 방식으로 브라우저 스크린(2500)과 상호작용하여, 임의의 로컬 탭을 보고, 선택할 수 있다. 게다가, 사용자는 원격 탭들에 액세스하기로 선택할 수 있다. 예를 들어, 어레이를 옆으로 스크롤링하는 것에 더하여, 사용자는 어레이를 위로(또는 아래로) 스크롤링할 수 있다.
도 26은 사용자가 도 25의 브라우저 스크린(2500)에서 위로 스크롤링하는 경우에 표시될 수 있는 브라우저 스크린(2600)을 나타낸다. 로컬 탭들(페이지들(2502))이 바닥으로 스크롤링되고, 클라우드(2506)가 완전히 보이게 되며, 클라우드(2506) 위에는 사용자의 다른 디바이스들에 대응하는 아이콘들이 표시된다. 예를 들어, 아이콘(2602)은 스마트폰(2408)(도 24)에 대응할 수 있고, 아이콘(2604)은 랩탑 컴퓨터(2404)에 대응할 수 있으며, 아이콘(2606)은 데스크탑 컴퓨터(2402)에 대응할 수 있다. 각각의 아이콘은 예를 들어 사용자 할당 이름에 의해 디바이스를 식별하는 라벨을 포함할 수 있다. 사용자는 아이콘들(2602, 2604, 2606) 중 하나를 선택하여 그 디바이스로부터의 원격 탭들을 볼 수 있다.
도 27은 사용자가 도 26의 브라우저 스크린(2600)에서 아이콘(2602)을 선택하는 경우에 표시될 수 있는 브라우저 스크린(2700)을 나타낸다. 페이지 디스플레이 영역의 하부 부분들은 전과 같이 유지되며, 선택된 디바이스(이 예에서는 데스크탑 컴퓨터(2402))를 식별하기 위한 아이콘(2702)이 추가된다. 탭형 페이지들(2704)은 선택된 디바이스에 대한 원격 탭들에 대응하는 페이지들의 어레이를 제공하며; 이 예에서, 선택된 디바이스는 데스크탑 컴퓨터(2402)이고, 원격 탭들은 브라우저(2412) 내에서 열리게 된 탭들이다. 원격 탭 어레이는 1×M 스트립일 수 있으며, 여기서 M은 선택된 디바이스 상의 열린 페이지들의 수이다. 탭형 페이지들(2704)은 브라우저(2412) 내의 탭들과 동일한 순서로 배열될 수 있으며, 어레이는 브라우저 스크린(2700)의 중심에 가장 가까운 탭형 페이지(2704a)가 브라우저(2412) 내의 현재(또는 가장 최근의) 활성 페이지에 대응하도록 배치될 수 있다. 사용자는 페이지들(2704) 중 어느 하나의 풀 프레임 모드로의 확장을 포함하는, 전술한 탭형 페이지 어레이와 동일한 방식으로 탭형 페이지들(2704)과 상호작용할 수 있다. 사용자는 또한 클라우드(2506)를 선택하여 스크린(2600)으로 복귀할 수 있고, 상이한 원격 디바이스를 선택하거나, 로컬 탭들(페이지들(2502))에 액세스하기 위해 아래로 스크롤링할 수 있다.
도 28은 본 발명의 일 실시예에 따른, 원격 탭 브라우징을 위한 프로세스(2800)의 흐름도이다. 프로세스(2800)는 블록 2802에서 시작될 수 있으며, 여기서 브라우저(예로서, 도 24의 브라우저(2414))는 콘텐츠 아이템을 풀 프레임 모드로 표시할 수 있다. 블록 2804에서, 프로세스(2800)는 어레이 모드로의 전이를 요청하는 사용자 입력을 수신할 수 있다. 블록 2806에서, 프로세스(2800)는 예를 들어 전술한 바와 같이 어레이 모드로 전이할 수 있다. 일부 실시예들에서, 어레이 모드는 원격 탭들이 이용 가능하다는 클라우드 지시기(2506)(도 25) 또는 다른 시각적 지시기를 포함할 수 있다.
블록 2808에서, 프로세스(2800)는 사용자의 원격 디바이스들로부터의 탭들에 대한 액세스를 요청하는 사용자 입력을 수신할 수 있다. 예를 들어, 도 25에서, 사용자는 클라우드(2506)를 선택하거나 위로 스크롤링할 수 있다.
블록 2810에서, 프로세스(2800)는 사용자의 원격 디바이스들을 식별할 수 있다. 예를 들어, 프로세스(2800)는 클라우드 서비스(2410)(도 24)와 통신하여, 사용자가 어떤 디바이스들을 갖고 있는지 그리고 그러한 디바이스들이 열린 탭들을 갖는지를 결정할 수 있다. 블록 2812에서, 프로세스(2800)는 예를 들어 도 26에 도시된 바와 같이 사용자의 원격 디바이스들에 대한 아이콘들을 표시할 수 있다. 일부 실시예들에서, 특정 디바이스에 대한 아이콘은 디바이스가 클라우드 서비스(2410)에 등록되고 열린 탭들을 가질 경우에만 표시된다. 일부 실시예들에서, 디바이스가 등록되었지만, 클라우드 서비스(2410)에 액세스할 수 있는 열린 탭들을 갖지 않는 경우, 아이콘은 탭들이 이용 가능하지 않다는 것을 지시하기 위해 흐리거나, 희미하거나, 달리 시각적으로 구별되는 포맷으로 표시될 수 있다.
블록 2816에서, 프로세스(2800)는 선택된 디바이스에 대한 원격 탭들을 검색할 수 있다. 일부 실시예들에서, 프로세스(2800)는 클라우드 서비스(2410)와 통신하여, 선택된 디바이스에 대해 어떠한 탭들이 열려 있는지 그리고 각각의 탭이 어떤 페이지(들)를 포함하는지에 대한 현재 데이터를 획득할 수 있다. 클라우드 서비스(2410)는 이어서 프로세스(2800)로부터의 요청에 응답하여 또는 이전의 동기화 동작 동안 선택된 디바이스로부터 획득된 데이터의 캐시 또는 다른 저장소로부터 데이터를 검색함으로써 선택된 디바이스로부터 데이터를 획득할 수 있다.
일부 실시예들에서, 블록 2816에서 검색된 데이터는 각각의 탭과 관련된 현재 페이지만을 포함할 수 있고; 다른 실시예들에서는 각각의 탭에 대해 완전한 또는 부분적인 브라우징 이력도 제공될 수 있다. 데이터는 페이지의 식별자(예로서, URL) 및/또는 페이지가 원격 디바이스 상에 가장 최근에 나타났을 때의 페이지의 렌더링을 포함할 수 있다.
일부 실시예들에서, 블록 2816에서의 데이터 검색은 보안 조치를 받을 수 있다. 예를 들어, 원격 디바이스들과 관련된 데이터를 검색하기 전에, 클라우드 서비스(2410)는 액세스 인증서를 요구할 수 있다. 인증서는 예를 들어 클라우드 서비스(2410)에 대한 사용자의 계정과 또는 데이터가 검색되고 있는 특정 원격 디바이스와 관련된 사용자 이름 및/또는 패스워드(또는 패스코드)일 수 있다. 블록 2816은 적절한 인증 정보 및/또는 인증서를 제공하기 위한 클라우드 서비스(2410)와의 추가적인 통신을 획득하기 위한 사용자에 대한 추가적인 프롬프트들을 포함할 수 있다.
블록 2818에서, 프로세스(2800)는 검색된 데이터에 기초하여 원격 탭들에 대응하고 그들을 나타내는 콘텐츠 아이템들을 표시할 수 있다. 일부 실시예들에서, 프로세스(2800)는 검색된 URL을 이용하여, 각각의 탭에 대한 현재 콘텐츠 아이템을 획득 및 렌더링할 수 있다. 다른 실시예들에서, 원격 탭들의 어레이 모드 렌더링은 관련 콘텐츠 아이템의 URL, 타이틀, 섬네일 또는 다른 식별자만을 포함할 수 있으며; 아이템은 사용자가 그것을 선택하는 경우에만 액세스된다. (이것은 원격 탭들에 대한 콘텐츠 아이템들 중 어느 것도 현재 로컬 브라우저의 캐시 내에 존재하지 않는 것이 예측됨에 따라 원격 탭들의 어레이 모드 표시의 렌더링을 고속화할 수 있다.)
블록 2820에서, 프로세스(2800)는 원격 탭들 중 하나를 선택하는 사용자 입력을 수신할 수 있다. 이것은 전술한 바와 같이 어레이 모드에 있는 동안 로컬 탭을 선택하는 것과 유사할 수 있다. 도 28에는 다른 사용자 입력 옵션이 도시되지 않지만, 사용자 입력은 예를 들어 상이한 원격 디바이스를 선택하거나, 표시를 로컬 탭들로 복귀시키는 것 등의 상이한 동작을 요청할 수 있으며, 프로세스(2800)는 브라우저 스크린을 적절히 변경함으로써 그러한 입력에 응답할 수 있다는 것을 이해해야 한다.
블록 2822에서, 사용자가 원격 탭을 선택하는 경우, 프로세스(2800)는 브라우저를 선택된 아이템을 표시하는 풀 프레임 모드로 전이시킬 수 있다. 일부 실시예들에서, 이것은 선택된 아이템의 검색을 포함할 수 있다.
일부 실시예들에서, 사용자가 풀 프레임 모드로 관찰할 원격 탭을 선택할 때, 새로운 로컬 탭이 열리며, 풀 프레임 뷰는 로컬 탭들의 뷰가 되며, 새로운 로컬 탭은 활성 탭이 된다. 이 시점에서, 새로운 로컬 탭과 그의 근원인 원격 탭 사이의 링크가 분리될 수 있으며, 새로운 로컬 탭에 대한 후속 동작들은 원격 탭 세트에 전혀 영향을 줄 필요가 없다.
다른 실시예들에서, 사용자가 풀 프레임 모드에서 관찰할 원격 탭을 선택할 때, 풀 프레임 모드는 로컬 탭들에 더하여 또는 그들 대신에 원격 탭들을 포함할 수 있다. 예를 들어, 로컬 탭들, 원격 탭들 또는 이들 양자가 브라우저 스크린의 탭 영역 내에 나타날 수 있다. 원격 탭들은 상이한 컬러로 그리고/또는 다른 식별 마킹들과 함께 렌더링될 수 있으며, 따라서 사용자는 이들이 원격 탭들이라는 것을 인식할 수 있다. 일부 실시예들에서, 원격 탭에서 이루어진 임의의 변경들(예로서, 새로운 페이지로의 내비게이션, 탭들을 열고 닫는 것)은 클라우드 서비스(2410)를 통해 다시 원격 디바이스에 동기화될 수 있다.
일부 경우들에서, 원격 및 로컬 브라우저들은 동일 아이템의 상이한 버전들에 액세스할 수 있다. 예를 들어, 일부 웹페이지들은 데스크탑 또는 랩탑 컴퓨터들과 같은 큰 디스플레이들을 갖는 디바이스들에 대해 최적화된 "표준" 버전 및 스마트폰들과 같은 작은 디스플레이들을 갖는 디바이스들에 대해 최적화된 "이동" 버전 양자를 제공한다. 원격 탭들이 하나의 디바이스 카테고리(예로서, 도 24의 데스크탑 컴퓨터(2402))와 관련되고, 반면 로컬 탭들이 상이한 카테고리(예로서, 스마트폰(2408) 또는 태블릿(2406))와 관련되는 경우, 어떤 페이지 버전을 사용할지에 관한 결정은 설계 고려사항들 및/또는 사용자 선호들에 기초하여 행해질 수 있다. 예를 들어, 일부 경우들에서는, 사용자가 원격 디바이스에서 갖는 브라우징 경험을 가능한 한 근사하게 반영하는 것이 바람직할 수 있으며, 이 경우에 원격 디바이스의 카테고리는 버전을 결정하는 데 사용될 수 있다. 일부 경우들에서, 대역폭 및/또는 디스플레이 영역과 관련된 고려사항들은 로컬 디바이스의 카테고리에 기초하여 원격 탭 페이지들을 렌더링하는 것을 지지하도록 작용할 수 있다. 일부 실시예들에서, 원격 탭과 관련된 상이한 페이지 버전들이 이용 가능한 경우, 사용자는 그가 어느 버전을 보기를 원하는지를 지시하도록 프롬프트될 수 있다.
본 명세서에서 설명되는 원격 브라우징 실시예들은 예시적이며, 변형들 및 변경들이 가능하다는 것을 이해할 것이다. 상이한 포맷들, 컬러 스킴들 등을 이용하여, 어레이 모드에서 로컬 및 원격 탭들 사이를 구별할 수 있다. 일부 실시예들에서, 사용자는 임의의 로컬 탭을 "비공유"로서 마킹할 수 있을 수 있고, 이 경우에 해당 탭은 다른 디바이스들로 전송되는 원격 탭 세트 내에 포함되지 않으며; 사용자는 또한 임의의 브라우저 상에서의 로컬 탭들에 대한 탭 공유를 전역적으로 인에이블 또는 디스에이블하기 위한 옵션을 가질 수 있다. 원격 탭 브라우징 능력은 요구되지 않으며, 일부 브라우저들은 로컬 탭들만을 지원할 수 있다는 것도 이해해야 한다.
전술한 실시예들은 콘텐츠 브라우저 내의 탭들 사이의 향상된 내비게이션을 제공한다. 사용자가 특정 탭과 관련된 콘텐츠 아이템을 미리 보고, 상이한 탭들과 관련된 콘텐츠 아이템들 사이에서 빠르게 이동하는 것을 가능하게 함으로써, 사용자가 실제로 보기를 원하는 탭을 선택하기 위한 사용자의 능력이 향상된다. 이것은 많은 상황에서, 예를 들어 사용자가 많은 수의 열린 탭을 갖고/갖거나, 다수의 탭들이 풀 프레임 뷰에서 유사한 또는 동일한 라벨들을 표시하는 상황에서 도움이 될 수 있다.
어레이 모드에서의 디스플레이 요소들의 특정 구성은 필요에 따라 변화될 수 있다. 예로서, 도 29 내지 도 33은 많은 열린 탭들이 존재하는 경우에 유용할 수 있는 "탭 더미" 메타포어를 이용하는 어레이 모드에서의 탭들 사이의 내비게이션을 나타내는 스크린 샷들이다. 탭 더미 메타포어는 탭들의 하나의 더미를 현재 탭의 좌측에 그리고 탭들의 다른 더미를 현재 탭의 우측에 배치한다. 각각의 더미 내에서, (사용자가 위에서 더미를 내려다보는 경우) 현재 탭에 가장 가까운 탭들이 상부에 가장 가깝도록 탭들이 배열된다. 활성 탭은 2개의 더미 상부에 그리고 그들 사이에 배치된다. 탭들은 활성 탭이 변경됨에 따라 더미들 사이에서 좌우로 시프트된다.
도 29는 본 발명의 일 실시예에 따른, 탭 더미 메타포어를 구현하는 브라우저 스크린(2900)을 나타낸다. 현재 페이지(2902)가 풀 프레임 모드로 표시된다. 대응하는 탭(2904a)이 인접 탭들(2904b, 2904c)의 정면에 나타난다. 탭(2904b)은 다음 인접 탭(2904d)과 오버랩된다. 탭(2904c)의 우측에는 추가 탭들에 대한 충분한 공간이 존재하지 않는다. 따라서, 삽화(2910)에 가장 잘 나타나 있듯이, 탭(2904c)의 우측에 숨겨진 탭들이 존재한다는 것을 지시하도록 탭 더미(2912)가 렌더링된다. 일부 실시예들에서, 탭 더미(2912) 내의 탭들의 수는 숨겨진 탭들의 수와 매칭될 수 있으며; 다른 실시예들에서 탭 더미(2912) 내의 탭들의 수는 상한을 가질 수 있으며, 얼마나 많은 숨겨진 탭들이 존재하는지를 지시할 필요 없이 단지 그러한 숨겨진 탭들이 존재한다는 지시자일 수 있다.
도 30은 도 29의 풀 프레임 모드에 대응하는 어레이 모드에 대한 브라우저 스크린(3000)을 나타낸다. 본 명세서에서 설명되는 다른 실시예들에서와 같이, 어레이 모드에서의 페이지들(3002)은 축소된 크기로 렌더링되고, 나란히 배열된다. 도 3의 실시예와 달리, 이 실시예에서는 페이지들(3002)이 부착된 탭들을 갖지 않는다. 탭들(3004)은 탭 영역(3006)에서 크롬(3008)의 바닥에 유지된다. 탭 더미(3008)는 숨겨진 탭들을 지시하기 위해 탭 영역(3006)의 우측 단부 근처에 표시된다.
사용자가 페이지들(3002)의 어레이를 스크롤링할 때, 탭 영역(3006)은 어레이에 대한 현재 위치를 반영하도록 변경된다. 예를 들어, 도 31은 여러 개의 페이지를 우측으로 스크롤링한 후의 페이지들(3002)의 어레이를 보여주는 브라우저 스크린(3100)을 나타낸다. 페이지(3002g)가 이제 중심에 가장 가깝다. 탭 영역(3006)은 시프트를 반영할 수 있다. 예를 들어, (페이지(3002g)에 대응하는) 탭(3004g)은 이제 좌측에 인접 탭들(3004f, 3004e)을 갖고서 모든 다른 탭들의 위에 있다. 탭 더미(3102)는 좌측에 (예를 들어, 도 30에서 보였던 탭들(3002a-c)을 포함하는) 숨겨진 탭들이 존재한다는 것을 지시하기 위해 탭 영역(3006)의 좌측 단부 근처에 표시되었다. 탭 영역(3006)의 우측 단부 근처의 탭 더미(3008)는 그의 탭들 중 일부가 이제 보임에 따라 크기가 축소된다.
도 32는 우측 단부까지 스크롤링한 후의 페이지들(3002)의 어레이를 보여주는 브라우저 스크린(3200)을 나타낸다. 가장 우측의 탭(3004z)에 대응하는 페이지(3002z)는 페이지 디스플레이 영역(3202)의 중심 근처에 있다. 다음 페이지가 나타날 것으로 예측되는 우측의 빈 공간은 이것이 어레이의 우측 단부라는 단서이다. (스크롤링은 어레이의 어떤 부분도 보이지 않는 상황을 방지하기 위해 끝이 제한될 수 있다.) 게다가, 탭(3004z)은 이제 탭 영역(3006) 내의 상부 탭으로서 표시되며, 우측에는 탭들이 존재하지 않는다(도 31로부터의 탭 더미(3008)가 사라진다). 이와 동시에, 좌측 단부 탭 더미(3102)가 더 커지며, 이는 좌측에 숨겨진 탭들의 수의 증가를 지시한다.
도 33은 스크린(3200)과 유사한 브라우저 스크린(3300)을 나타내지만, 이 경우에는 페이지들(3002)의 어레이가 좌측 단부까지 스크롤링되었다. 가장 좌측 탭(3004k)에 대응하는 페이지(3002k)가 페이지 디스플레이 영역(3302)의 중심 근처에 있다. 다음 페이지가 나타날 것으로 예측되는 좌측의 빈 공간은 이것이 어레이의 좌측 단부라는 단서이다. (역시, 스크롤링은 어레이의 어떤 부분도 보이지 않는 상황을 방지하기 위해 끝이 제한될 수 있다.) 게다가, 탭(3004k)은 이제 탭 영역(3006) 내의 상부 탭으로서 표시되며, 좌측에는 탭들이 존재하지 않는다(도 31 및 32로부터의 탭 더미(3102)가 사라진다).
일부 실시예들에서, 스크롤링이 (예로서, 도 32 및 33에 도시된 바와 같이) 어레이의 단부에 도달할 때, 다른 동작들이 호출되는 것을 허용하기 위해 여유(affordance)가 제공될 수 있다. 예를 들어, 도 33의 페이지(3002k)의 좌측 및/또는 도 32의 페이지(3002z)의 우측의 빈 공간에는, 새로운 탭을 생성하거나, 웹 검색을 개시하거나, 다른 동작들을 수행하도록 동작할 수 있는 아이콘이 제공될 수 있다. 일부 실시예들에서, 상이한 동작들을 호출하기 위한 다수의 아이콘이 제공될 수 있으며, 특정 아이콘이 어레이의 어느 하나 또는 양 단부에 나타날 수 있다. 일부 실시예들에서는, 아이콘이 사용되지 않으며, 어레이의 단부의 빈 공간에서의 클릭킹 또는 탭핑과 같은 액션은 새로운 탭이 생성되게 한다.
도 29 내지 도 33의 실시예에서, 페이지는 항상 그의 탭 바로 아래에 정렬되지는 않는다(예를 들어, 도 32 및 33 참조). 따라서, 추가적인 페이지 식별을 제공하는 것이 도움이 될 수 있다. 도 34는 본 발명의 일 실시예에 따른, 추가적인 페이지 식별을 포함하는 어레이 모드에서의 브라우저 스크린(3400)을 나타낸다. 페이지(3402)는 페이지 디스플레이 영역(3404)의 대략 중심에 배치되며, 도 29 내지 도 33에서와 같이, 대응하는 탭(3406)은 상부 탭으로서 나타난다. 그러나, 탭(3406)은 탭 영역(3410)의 우측 단부 근처에 있는 반면, 페이지(3402)는 대략 중심에 있다. 어레이 내의 페이지들의 식별을 용이하게 하기 위해, 이 실시예에서, 페이지 타이틀 영역(3408)이 페이지 디스플레이 영역(3404) 내의 페이지(3402) 위에 나타난다. 페이지 타이틀 영역(3408) 내에 표시된 타이틀은 탭(3406) 내의 라벨과 동일할 수 있으며, 사용자가 타이틀을 올바른 탭과 연관시키는 것을 도울 수 있다. 일부 실시예들에서, 페이지 타이틀은 어레이가 스크롤링될 때 페이지(3402)와 함께 좌우로 이동할 수 있으며, 다른 페이지들도 그들과 함께 스크롤링되는 타이틀들을 가질 수 있다. 일부 실시예들에서, 타이틀들의 표시는 중심에 가장 가까운 페이지를 제외하고는 억제되며; 페이지 타이틀 영역(3408) 내의 타이틀 텍스트는 단지 페이지들이 그를 지나서 이동할 때만 변경될 수 있고; 타이틀들 사이의 전이들은 예를 들어 페이드 아웃 및 페이드 인, 디졸브(dissolve), 와이프(wipe) 등과 같은 효과들을 이용하여 애니메이션될 수 있다.
이 실시예는 콘텐츠 아이템들의 많은 상이한 배열, 및 탭들을 어레이 모드로 표시된 콘텐츠 아이템들과 연관시키기 위한 상이한 메커니즘들 중 하나가 사용될 수 있다는 것을 나타낸다. 다양한 실시예들의 특징들이 필요에 따라 조합될 수 있으며, 다른 특징들이 추가될 수 있다.
전술한 실시예들에서, 어레이 모드에서의 탭들은 1×N 스트립으로 배열되며, 여기서 N은 열린 탭들의 수이다. 전술한 바와 같이, 이러한 배열은 탭들의 단일 행에 대한 직관적인 관계를 가질 수 있지만, 요구되지는 않는다. 도 35는 본 발명의 일 실시예에 따른, 그리드 내에 배열된 페이지들(3502)을 갖는 어레이 모드에서의 브라우저 스크린(3500)을 나타낸다. 그리드의 2개의 행 내의 페이지들(3502a-j)은 완전히 보이며, 제3 행(페이지들(3502k-o))은 부분적으로 보인다. 그리드는 원하는 임의의 방식으로, 예를 들어 행 단위로, 열 단위로 또는 임의 배열로 풀 프레임 모드의 탭들에 맵핑될 수 있다. 예를 들어, 풀 프레임 모드에서의 탭 바로부터 어레이 모드의 그리드 배열로 전개되는 탭들을 보여주기 위해, 애니메이션된 전이들이 이용될 수 있다. 그리드 배열은 또한 예를 들어 풀 프레임 모드에서 탭들의 다수의 행을 표시할 수 있는 브라우저에서 사용될 수 있으며; 그리드의 행들은 탭들의 행들에 대응할 수 있다. 그리드는 직사각형일 필요가 없으며; 상이한 행들은 상이한 수의 페이지를 가질 수 있다.
본 발명은 특정 실시예들과 관련하여 설명되었지만, 당업자는 다양한 변경들이 가능하다는 것을 인식할 것이다. 예를 들어, 전술한 실시예들은 웹페이지들을 콘텐츠 아이템들로서 참조하지만, 다른 유형의 콘텐츠 아이템들도 브라우징의 대상일 수 있다. 그 예는 (사용자의 컴퓨터 상에 국지적으로 또는 원격적으로 저장될 수 있는) 문서 파일들, 사진들, 미디어 아이템들, 콘텐츠 스트림들(예로서, 상이한 TV 채널들 및/또는 비디오 스트리밍 채널들 및/또는 오디오 스트리밍 채널들, 어레이 모드를 이용하여 채널들을 미리 보고, 시청 또는 청취하기를 원하는 채널을 선택하며; 선택된 채널은 풀 프레임 모드로 표시될 수 있음)을 포함한다.
브라우저는 사용자가 콘텐츠 아이템들을 보고, 상호작용하는 것을 가능하게 하는 임의의 컴퓨터 프로그램 또는 다른 도구를 포함할 수 있다. 브라우저들이 적절한 하드웨어 상에서 실행되는 소프트웨어로서 구현될 수 있지만, 다른 구현들도 가능하며, 브라우저는 특정 유형의 콘텐츠 아이템들(예로서, 웹 브라우저, 문서 브라우저 등)에 적응될 수 있다. 브라우저는 임의 수의 열린 탭들을 지원할 수 있으며, 각각의 탭은 상이한 콘텐츠 아이템과 연관될 수 있고, 임의의 하나의 탭에 대한 현재 콘텐츠 아이템은 다른 탭들에 영향을 주지 않고서 변경될 수 있다. 브라우저는 예를 들어 탭별 전후방 내비게이션을 지원하기 위해 각각의 탭에 대한 개별 브라우징 이력을 유지할 수 있다(그러나 필요하지는 않다). 일부 브라우저들은 예로서 메모리 또는 디스플레이 제약 등으로 인해, 주어진 시간에 열릴 수 있는 탭들의 수를 제한할 수 있다. 다양한 탭들과 관련된 탭 지시기들이 풀 프레임 모드에서, 예를 들어 페이지 디스플레이 영역의 바닥 및/또는 측부들에서 보일 수 있다. 풀 프레임 모드 또는 어레이 모드 중 어느 하나에서 모든 탭 지시기들이 항상 보일 필요는 없으며, 일부 브라우저들은 탭 지시기들이 숨겨지는 풀 프레임 모드를 가질 수 있다.
본 설명의 부분들은 터치스크린 디스플레이, 다른 터치 감지 표면 또는 포인트 및 클릭 인터페이스와 같은 특정 사용자 인터페이스들을 참조할 수 있다. 다른 실시예들은 상이한 인터페이스들을 사용할 수 있다. 예를 들어, 사용자 인터페이스는 음성 기반일 수 있는데, 이 경우에 사용자가 마이크 또는 다른 오디오 입력 디바이스 내에 지시를 말하고, 디바이스는 전술한 바와 같은 시각적 응답들에 더하여 또는 그 대신에 (예를 들어, 동기화된 음성 또는 사전 기록된 오디오 클립들을 이용하여) 가청 응답을 제공할 수 있다. 음성 기반 및 시각적 인터페이스 요소들의 조합이 사용될 수 있으며, 일부 실시예들에서는 다수의 상이한 유형의 인터페이스들이 지원될 수 있고, 사용자는 원하는 인터페이스를 선택하고, 다수의 인터페이스를 조합하여 사용하고(예로서, 스크린으로부터 정보를 판독하고, 지시를 말함)/하거나, 상이한 인터페이스들 사이에서 스위칭하기 위한 옵션을 가질 수 있다. 디바이스와의 임의의 원하는 형태의 사용자 상호작용이 지원될 수 있다.
소정 실시예들은 전술한 바와 같이 핀치-스웁 제스처를 이용한다. 일부 실시예들에서, 핀치-스웁 제스처는 탭형 브라우징 상황으로 제한되지 않는 사용자 인터페이스 조작의 다른 양태들 내에 통합될 수 있다. 예를 들어, 일부 실시예들에서, 제1 사용자 인터페이스 영역이 디스플레이 디바이스 상에 제1 스케일 팩터로 표시되고 있는 동안, 터치 감지 표면은 다수의 동시 접촉(예로서, 표면과 접촉하는 다수의 손가락)을 검출할 수 있다. 접촉들 중 적어도 하나를 계속 검출하는 동안, 컴퓨터 시스템은 터치 감지 표면 상에서 접촉들의 서로에 대한 이동에 기초하여 제1 제스처를 검출할 수 있다(예로서, 전술한 핀치-스웁 제스처의 스테이지 1). 이에 응답하여, 제1 사용자 인터페이스 영역은 제1 스케일 팩터보다 낮은 제2 스케일 팩터로 표시될 수 있다. 이어서, 접촉들 중 적어도 하나를 여전히 계속 검출하는 동안, 컴퓨터 시스템은 터치 감지 표면 상에서의 접촉(들)의 이동에 기초하여 제2 제스처를 검출할 수 있다(예로서, 전술한 핀치-스웁 제스처의 스테이지 2). 이에 응답하여, (제2 제스처를 검출하기 전에 표시되지 않은 임의의 영역일 수 있는) 제2 사용자 인터페이스 영역이 표시될 수 있다. 제2 사용자 인터페이스 영역은 표면으로부터의 모든 접촉들의 해제가 검출될 때까지 제2 스케일 팩터로 표시될 수 있으며, 해제 검출 시점에서 제2 사용자 인터페이스 영역은 제1 스케일 팩터로 표시될 수 있다.
전술한 실시예들에서, 사용자 인터페이스 영역들은 브라우저의 상이한 탭들 내의 콘텐츠 아이템들에 대응할 수 있지만, 제스처는 다른 상황들에서도 적용될 수 있다. 예를 들어, 제1 및 제2 사용자 인터페이스 영역들은 워드 프로세서 또는 이미지 뷰어 내에 열린 다수의 문서; 탭형 문서 인터페이스(예로서, 전술한 바와 같은 탭형 웹 브라우저들) 내의 윈도들 또는 운영 체제 내의 상이한 애플리케이션 윈도들과 같은 애플리케이션의 다중 문서 인터페이스 내의 윈도들일 수 있다.
일부 실시예들에서, 2개 초과의 인터페이스 영역이 이용될 수 있으며, 제2 영역이 되는 영역은 제2 제스처의 종료에 대한 사전 정의된 시간에서의 접촉의 이동 방향에 기초하여 선택될 수 있다. 사전 정의된 시간은 예를 들어 제2 제스처의 종료가 검출될 때, 접촉의 해제(예로서, 들어올림)가 검출될 때 또는 접촉의 해제의 검출 바로 전일 수 있다. 일부 구현들에서, 제2 사용자 인터페이스 영역은 속도, 가속도 등에 기초하여 선택될 수도 있다. 사용자 인터페이스 영역들은 내비게이션 목적을 위해 (전술한 탭들의 어레이와 같은) 정의된 공간 관계를 가질 수 있으며, 인터페이스 영역들의 상대적 위치 및/또는 제스처가 행해지는 위치 또는 제스처가 행해지는 시간과 관련된 인터페이스 영역의 위치도 선택에 사용될 수 있다.
본 발명의 실시예들은 전용 컴포넌트들 및/또는 프로그래밍 가능 프로세서들 및/또는 다른 프로그래밍 가능 디바이스들의 임의의 조합을 이용하여 실현될 수 있다. 본 명세서에서 설명되는 다양한 프로세스들은 동일 프로세서 또는 상이한 프로세서들 상에서 임의의 조합으로 구현될 수 있다. 컴포넌트들이 소정의 동작들을 수행하도록 구성되는 것으로 설명되는 경우, 그러한 구성은 예를 들어 동작을 수행하도록 전자 회로들을 설계함으로써, 동작을 수행하도록 프로그래밍 가능 전자 회로들(예로서, 마이크로프로세서)을 프로그래밍함으로써 또는 이들의 임의의 조합을 이용함으로써 달성될 수 있다. 또한, 전술한 실시예들은 특정 하드웨어 또는 소프트웨어 컴포넌트들을 참조할 수 있지만, 당업자들은 하드웨어 및/또는 소프트웨어 컴포넌트들의 상이한 조합들도 이용될 수 있으며, 하드웨어에서 구현되는 것으로 설명되는 특정 동작들이 소프트웨어에서도 구현될 수 있거나 그 반대일 수 있다는 것을 이해할 것이다.
본 발명의 다양한 특징들을 포함하는 컴퓨터 프로그램들이 다양한 컴퓨터 판독 가능 저장 매체 상에 인코딩 및 저장될 수 있으며; 적절한 매체는 자기 디스크 또는 테이프, 컴팩트 디스크(CD) 또는 디지털 다기능 디스크(DVD)와 같은 광학 저장 매체, 플래시 메모리 및 다른 비일시적 매체를 포함한다. 프로그램 코드가 인코딩된 컴퓨터 판독 가능 매체는 호환 전자 디바이스와 함께 패키징될 수 있거나, 프로그램 코드가 전자 디바이스들로부터 (예로서, 인터넷 다운로드를 통해 또는 개별적으로 패키징된 컴퓨터 판독 가능 저장 매체로서) 개별적으로 제공될 수 있다.
따라서, 본 발명은 특정 실시예들과 관련하여 설명되었지만, 본 발명은 아래의 특허청구범위의 범주 내에서 모든 변경들 및 균등물들을 포함하는 것을 의도한다는 것을 이해할 것이다.

Claims (55)

  1. 브라우저 내의 복수의 콘텐츠 아이템 사이에서 내비게이션하는 방법으로서,
    상기 브라우저의 페이지 디스플레이 영역(page-display area) 내에, 상기 복수의 콘텐츠 아이템 중 제1 콘텐츠 아이템을, 상기 제1 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하는 풀 프레임 모드(full-frame mode)로 표시하는 단계;
    상기 풀 프레임 모드로부터 어레이 모드(array mode)로의 스위치를 요청하는 제1 사용자 입력을 수신하는 단계;
    상기 제1 사용자 입력에 응답하여, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 상기 어레이 모드로 전이시키는 단계 - 상기 어레이 모드에서, 상기 복수의 콘텐츠 아이템은 어레이로 배열되며, 상기 콘텐츠 아이템들은 상기 콘텐츠 아이템들 중 둘 이상의 콘텐츠 아이템 각각이 상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이도록 크기가 조절됨 -;
    상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이는 상기 콘텐츠 아이템들 중 하나의 콘텐츠 아이템을 선택하는 제2 사용자 입력을 수신하는 단계; 및
    상기 제2 사용자 입력에 응답하여, 상기 선택된 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하도록, 상기 페이지 디스플레이 영역을 상기 어레이 모드로부터 상기 풀 프레임 모드로 전이시키는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 어레이는 일차원 어레이인, 방법.
  3. 제2항에 있어서, 상기 콘텐츠 아이템들은 상기 어레이에서 수평으로 배열되는, 방법.
  4. 제1항에 있어서,
    상기 풀 프레임 모드에 있는 동안, 상기 콘텐츠 브라우저의 탭 디스플레이 영역(tab-display area) 내에 복수의 탭을 표시하는 단계 - 각각의 탭은 상기 콘텐츠 아이템들 중 상이한 콘텐츠 아이템과 관련되고, 상기 복수의 탭은 상기 제1 콘텐츠 아이템과 관련된 제1 탭을 포함함 -; 및
    상기 풀 프레임 모드로부터 상기 어레이 모드로의 전이와 동시에, 상기 제1 탭을 상기 탭 디스플레이 영역으로부터 상기 제1 콘텐츠 아이템의 에지에 있는 영역으로 전이시키는 단계를 추가로 포함하는, 방법.
  5. 제1항에 있어서,
    상기 어레이 모드에 있는 동안, 상기 어레이의 스크롤링을 지시하는 제3 사용자 입력을 수신하는 단계; 및
    상기 제3 사용자 입력에 응답하여, 상기 콘텐츠 아이템들의 상이한 부분들이 보이게 되도록 상기 어레이의 상기 보이는 부분을 시프트시키는 단계를 추가로 포함하는, 방법.
  6. 제1항에 있어서,
    상기 사용자와 관련된 원격 디바이스를 식별하는 단계;
    상기 원격 디바이스 상에 열린 하나 이상의 원격 콘텐츠 아이템에 대한 정보를 획득하는 단계; 및
    상기 하나 이상의 원격 콘텐츠 아이템 각각의 표현을 상기 어레이 내에 포함시키는 단계를 추가로 포함하는, 방법.
  7. 브라우저 내의 복수의 콘텐츠 아이템 사이에서 내비게이션하는 방법으로서,
    상기 브라우저의 탭 디스플레이 영역 내에 복수의 탭을 표시하는 단계 - 상기 복수의 탭 각각은 복수의 콘텐츠 아이템 중 상이한 콘텐츠 아이템과 관련됨 -;
    상기 브라우저의 페이지 디스플레이 영역 내에, 상기 복수의 콘텐츠 아이템 중 제1 콘텐츠 아이템을, 상기 제1 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하는 풀 프레임 모드로 표시하는 단계 - 상기 제1 콘텐츠 아이템은 상기 탭 디스플레이 영역 내의 상기 복수의 탭 중 대응하는 탭과 시각적으로 관련됨 -;
    상기 풀 프레임 모드로부터 어레이 모드로의 스위치를 요청하는 제1 사용자 입력을 수신하는 단계;
    상기 제1 사용자 입력에 응답하여, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 상기 어레이 모드로 전이시키는 단계 - 상기 어레이 모드에서, 상기 복수의 콘텐츠 아이템은 어레이로 배열되며, 상기 콘텐츠 아이템들은 상기 콘텐츠 아이템들 중 둘 이상의 콘텐츠 아이템 각각이 상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이도록 감소된 크기로 표시되고, 상기 감소된 크기로 표시되는 상기 콘텐츠 아이템들 각각은 그의 에지로부터 연장하는 탭을 가짐 -;
    상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이는 상기 콘텐츠 아이템들 중 하나의 콘텐츠 아이템을 선택하는 제2 사용자 입력을 수신하는 단계; 및
    상기 제2 사용자 입력에 응답하여, 상기 선택된 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하도록, 상기 페이지 디스플레이 영역을 상기 어레이 모드로부터 상기 풀 프레임 모드로 전이시키는 단계를 포함하는, 방법.
  8. 제7항에 있어서, 상기 어레이 모드에서, 상기 콘텐츠 아이템들은 상기 복수의 탭과 관련된 순서에 의해 결정되는 순서로 배열되는, 방법.
  9. 제7항에 있어서, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 상기 어레이 모드로 전이시키는 단계는, 상기 제1 콘텐츠 아이템이 점차 축소되고, 상기 제1 콘텐츠 아이템에 대응하는 상기 탭이 상기 탭 디스플레이 영역으로부터 분리되어 상기 제1 콘텐츠 아이템의 에지에 부착되는 애니메이션을 제공하는 단계를 포함하는, 방법.
  10. 제9항에 있어서, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 상기 어레이 모드로 전이시키는 단계는 상기 탭 디스플레이 영역 내의 상기 탭들이 숨겨지는 애니메이션을 제공하는 단계를 포함하는, 방법.
  11. 제9항에 있어서, 상기 페이지 디스플레이 영역을 상기 어레이 모드로부터 상기 풀 프레임 모드로 전이시키는 단계는 제2 탭을 상기 선택된 콘텐츠 아이템의 상기 에지에 있는 영역으로부터 상기 콘텐츠 브라우저의 상기 탭 디스플레이 영역 내의 사전 결정된 위치로 전이시키는 단계를 포함하는, 방법.
  12. 제11항에 있어서, 상기 사전 결정된 위치는 상기 어레이 모드로의 상기 전이 전에 상기 풀 프레임 모드에 있는 동안 상기 탭들이 표시된 순서에 기초하는, 방법.
  13. 제7항에 있어서,
    상기 어레이 모드에 있는 동안, 상기 어레이의 스크롤링을 지시하는 제3 사용자 입력을 수신하는 단계; 및
    상기 제3 사용자 입력에 응답하여, 상기 콘텐츠 아이템들의 상이한 부분들이 보이게 되도록 상기 어레이의 상기 보이는 부분을 시프트시키는 단계를 추가로 포함하는, 방법.
  14. 제7항에 있어서,
    하나 이상의 열린 콘텐츠 아이템을 갖는 원격 디바이스가 상기 사용자와 관련되는지를 결정하는 단계 - 상기 어레이 모드로 전이시키는 단계는 하나 이상의 원격 콘텐츠 아이템이 이용 가능하다는 지시자를 표시하는 단계를 포함함 -;
    상기 원격 콘텐츠 아이템들을 보기를 요청하는 제3 사용자 입력을 수신하는 단계; 및
    상기 제3 사용자 입력에 응답하여, 상기 어레이 모드에서, 상기 원격 콘텐츠 아이템들 각각의 표현을 표시하는 단계를 추가로 포함하는, 방법.
  15. 컴퓨터 시스템으로서,
    사용자 입력 디바이스;
    디스플레이;
    상기 사용자 입력 디바이스 및 상기 디스플레이에 결합된 프로세서; 및
    상기 프로세서에 결합된 컴퓨터 판독 가능 저장 매체를 포함하고, 상기 컴퓨터 판독 가능 저장 매체는 프로그램 명령어들로 인코딩되며, 상기 프로그램 명령어들은 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,
    애플리케이션 프로그램의 페이지 디스플레이 영역 내에, 상기 복수의 콘텐츠 아이템 중 제1 콘텐츠 아이템을, 상기 제1 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하는 풀 프레임 모드로 표시하고;
    상기 사용자 입력 디바이스로부터의 제1 사용자 입력에 응답하여, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 어레이 모드로 전이시키고 - 상기 어레이 모드에서, 상기 복수의 콘텐츠 아이템은 어레이로 배열되며, 상기 콘텐츠 아이템들은 상기 콘텐츠 아이템들 중 둘 이상의 콘텐츠 아이템 각각이 상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이도록 크기가 조절됨 -;
    상기 사용자 입력 디바이스로부터의 제2 사용자 입력에 응답하여, 선택된 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하도록, 상기 제2 사용자 입력에 응답하여, 상기 페이지 디스플레이 영역을 상기 어레이 모드로부터 상기 풀 프레임 모드로 전이시키게 하는, 컴퓨터 시스템.
  16. 제15항에 있어서,
    상기 사용자 입력 디바이스는 터치 감지 표면을 포함하고,
    상기 제1 사용자 입력은 상기 터치 감지 표면 상에서 검출된 안쪽 핀치 제스처(inward pinch gesture)에 대응하고,
    상기 제2 사용자 입력은 상기 터치 감지 표면 상에서 검출된 바깥쪽 핀치 제스처(outward pinch gesture)에 대응하는, 컴퓨터 시스템.
  17. 제15항에 있어서, 상기 콘텐츠 아이템들은 웹페이지들인, 컴퓨터 시스템.
  18. 제15항에 있어서, 상기 콘텐츠 아이템들은 문서들인, 컴퓨터 시스템.
  19. 제15항에 있어서, 상기 어레이 모드에서, 상기 콘텐츠 아이템들 중 적어도 하나의 콘텐츠 아이템은 라이브 모드(live mode)로 표시되는, 컴퓨터 시스템.
  20. 제15항에 있어서, 상기 어레이 모드에서, 상기 콘텐츠 아이템들 중 적어도 하나의 콘텐츠 아이템과의 사용자 상호작용이 지원되는, 컴퓨터 시스템.
  21. 제15항에 있어서, 상기 어레이 모드에서, 상기 페이지 디스플레이 영역은 상기 어레이의 어느 부분이 보이는지의 지시를 제공하는 위치 지시자 요소(position indicator element)를 추가로 포함하는, 컴퓨터 시스템.
  22. 제21항에 있어서,
    상기 어레이 모드에 있는 동안, 상기 어레이의 스크롤링을 지시하는 제3 사용자 입력을 수신하는 것;
    상기 제3 사용자 입력에 응답하여, 상기 콘텐츠 아이템들의 상이한 부분들이 보이게 되도록 상기 어레이의 상기 보이는 부분을 시프트시키는 것; 및
    상기 어레이의 어느 부분이 보이게 되었는지를 지시하도록 상기 위치 지시자 요소를 변경하는 것을 추가로 포함하는, 컴퓨터 시스템.
  23. 제21항에 있어서,
    상기 어레이 모드에 있는 동안, 상기 위치 지시자 요소 내의 위치(location)를 선택하는 제3 사용자 입력을 수신하는 것; 및
    상기 제3 사용자 입력에 응답하여, 상기 선택된 위치에 기초하여 상기 어레이의 상기 보이는 부분을 시프트시키는 것을 추가로 포함하는, 컴퓨터 시스템.
  24. 프로그램 명령어들로 인코딩된 컴퓨터 판독 가능 저장 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 프로그램 명령어들은 디스플레이를 갖는 컴퓨터 시스템 내의 프로세서에 의해 실행될 때 상기 프로세서로 하여금,
    애플리케이션 프로그램의 페이지 디스플레이 영역 내에, 복수의 로컬 콘텐츠 아이템 중 제1 로컬 콘텐츠 아이템을, 상기 제1 로컬 콘텐츠 아이템이 상기 페이지 디스플레이 영역을 완전히 점유하는 풀 프레임 모드로 표시하는 단계;
    상기 풀 프레임 모드로부터 어레이 모드로의 스위치를 요청하는 제1 사용자 입력을 수신하는 단계;
    상기 제1 사용자 입력에 응답하여, 상기 페이지 디스플레이 영역을 상기 풀 프레임 모드로부터 상기 어레이 모드로 전이시키는 단계 - 상기 어레이 모드에서, 상기 복수의 로컬 콘텐츠 아이템은 어레이로 배열되며, 상기 로컬 콘텐츠 아이템들은 상기 로컬 콘텐츠 아이템들 중 둘 이상의 로컬 콘텐츠 아이템 각각이 상기 페이지 디스플레이 영역에서 적어도 부분적으로 보이도록 크기가 조절됨 -;
    상기 사용자와 관련된 원격 디바이스를 식별하는 단계;
    하나 이상의 원격 콘텐츠 아이템이 상기 원격 디바이스 상에 열린 것으로 결정하는 단계; 및
    하나 이상의 원격 콘텐츠 아이템이 이용 가능하다는 지시를 상기 사용자에게 제시하는 단계를 포함하는 방법을 실행하게 하는, 컴퓨터 프로그램 제품.
  25. 제24항에 있어서, 상기 방법은
    상기 원격 콘텐츠 아이템들을 보기를 요청하는 제2 사용자 입력을 수신하는 단계; 및
    상기 제2 사용자 입력에 응답하여, 상기 어레이 모드에서, 상기 하나 이상의 원격 콘텐츠 아이템 각각의 표현을 표시하는 단계를 추가로 포함하는, 컴퓨터 프로그램 제품.
  26. 제25항에 있어서, 상기 원격 콘텐츠 아이템들 각각의 상기 표현은 상기 원격 콘텐츠 아이템의 식별자를 포함하는, 컴퓨터 프로그램 제품.
  27. 제25항에 있어서, 상기 원격 콘텐츠 아이템들 각각의 상기 표현은 상기 원격 콘텐츠 아이템의 렌더링(rendering)을 포함하는, 컴퓨터 프로그램 제품.
  28. 제25항에 있어서, 상기 어레이 모드에서, 상기 복수의 로컬 콘텐츠 아이템은 단일 제1 행 내에 배열되고, 상기 원격 콘텐츠 아이템들의 상기 표현들은 상기 단일 제1 행과 평행한 단일 제2 행 내에 배열되는, 컴퓨터 프로그램 제품.
  29. 터치 감지 표면 및 디스플레이를 구비한 컴퓨팅 디바이스에서,
    상기 디스플레이 상에 제1 사용자 인터페이스 영역을 제1 스케일 팩터(scale factor)로 표시하는 단계;
    상기 터치 감지 표면 상에서 복수의 접촉을 동시에 검출하는 단계; 및
    상기 터치 감지 표면 상에서 상기 복수의 접촉 중 적어도 하나의 각각의 접촉을 계속 검출하는 동안,
    상기 터치 감지 표면 상에서 상기 복수의 접촉의 서로에 대한 이동에 기초하는 제1 제스처를 검출하는 단계;
    상기 제1 제스처의 검출에 응답하여, 상기 제1 사용자 인터페이스 영역을 상기 제1 스케일 팩터보다 낮은 제2 스케일 팩터로 표시하는 단계;
    상기 터치 감지 표면 상에서 상기 적어도 하나의 각각의 접촉의 이동에 기초하는 제2 제스처를 검출하는 단계; 및
    상기 제2 제스처의 검출에 응답하여, 상기 디스플레이 상에 제2 사용자 인터페이스 영역의 각각의 부분을 표시하는 단계 - 상기 제2 사용자 인터페이스 영역은 상기 제1 사용자 인터페이스 영역과 상이하고, 상기 제2 사용자 인터페이스 영역의 상기 각각의 부분은 상기 제2 제스처의 검출 전에는 표시되지 않았음 - 를 포함하는, 방법.
  30. 제29항에 있어서, 상기 제1 제스처 및 상기 제2 제스처는 동시에 검출되는, 방법.
  31. 제29항에 있어서, 상기 제1 제스처는 상기 제2 제스처가 검출되기 전에 검출되는, 방법.
  32. 제29항에 있어서, 상기 제1 제스처 및 상기 제2 제스처는 연속 제스처 시퀀스의 일부인, 방법.
  33. 제29항에 있어서,
    상기 제1 제스처는 다중 접촉 핀치 제스처이고,
    상기 제2 제스처는 병진 이동 제스처인, 방법.
  34. 제33항에 있어서,
    상기 제1 제스처는 제1 수의 접촉을 이용하여 수행되고,
    상기 제2 제스처는 상기 제1 수의 접촉보다 적은 제2 수의 접촉을 이용하여 수행되는, 방법.
  35. 제29항에 있어서, 상기 제1 사용자 인터페이스 영역 및 상기 제2 사용자 인터페이스 영역은
    애플리케이션의 다중 문서 인터페이스 내의 윈도(window)들;
    애플리케이션의 탭형 문서 인터페이스 내의 윈도들; 및
    운영 체제 내의 애플리케이션 윈도들로 구성되는 세트로부터 선택된 사용자 인터페이스 영역들인, 방법.
  36. 프로그램 명령어들로 인코딩된 컴퓨터 판독 가능 저장 매체를 포함하는 컴퓨터 프로그램 제품으로서, 상기 프로그램 명령어들은 터치 감지 표면 및 디스플레이 디바이스를 갖는 컴퓨팅 디바이스의 프로세서에 의해 실행될 때 상기 프로세서로 하여금,
    상기 디스플레이 디바이스 상에, 애플리케이션 프로그램에 대한 제1 사용자 인터페이스 영역을 상기 애플리케이션 프로그램의 디스플레이 영역 내에 제1 스케일 팩터로 표시하는 단계 - 상기 제1 사용자 인터페이스 영역은 상기 디스플레이 영역을 채움 -;
    상기 터치 감지 표면 상에서 복수의 접촉을 동시에 검출하는 단계; 및
    상기 터치 감지 표면 상에서 상기 복수의 접촉 중 적어도 하나의 각각의 접촉을 계속 검출하는 동안,
    상기 터치 감지 표면 상에서 상기 복수의 접촉의 서로에 대한 이동에 기초하는 제1 제스처를 검출하는 단계;
    상기 제1 제스처의 검출에 응답하여, 상기 제1 사용자 인터페이스 영역이 상기 디스플레이 영역을 채우지 않도록, 상기 제1 사용자 인터페이스 영역을 상기 제1 스케일 팩터보다 낮은 제2 스케일 팩터로 표시하고, 제2 사용자 인터페이스 영역의 적어도 일부를 상기 디스플레이 영역 내에 상기 제2 스케일 팩터로 표시하는 단계;
    상기 터치 감지 표면 상에서 상기 적어도 하나의 각각의 접촉의 이동에 기초하는 제2 제스처를 검출하는 단계; 및
    상기 제2 제스처의 검출에 응답하여, 상기 제2 사용자 인터페이스 영역이 상기 디스플레이 영역을 채우도록, 상기 제2 사용자 인터페이스 영역을 상기 제1 스케일 팩터로 표시하는 단계를 포함하는 방법을 실행하게 하는, 컴퓨터 프로그램 제품.
  37. 제36항에 있어서, 상기 방법은 상기 제1 사용자 인터페이스 영역이 상기 제1 스케일 팩터로부터 상기 제2 스케일 팩터로 전이하는 애니메이션을 표시하는 단계를 추가로 포함하고, 상기 애니메이션은 상기 제1 제스처의 진행에 따라 실시간으로 표시되는, 컴퓨터 프로그램 제품.
  38. 제36항에 있어서, 상기 사용자 인터페이스 영역들 중 하나 이상의 사용자 인터페이스 영역은 상기 제2 스케일 팩터로 표시되는 동안에 갱신되는 동적 콘텐츠를 포함하는, 컴퓨터 프로그램 제품.
  39. 터치 감지 표면 및 디스플레이를 구비한 컴퓨팅 디바이스에서,
    상기 디스플레이 상에 제1 사용자 인터페이스 영역을 제1 스케일 팩터로 표시하는 단계;
    상기 터치 감지 표면 상에서 복수의 접촉을 동시에 검출하는 단계; 및
    상기 터치 감지 표면 상에서 상기 복수의 접촉 중 적어도 하나의 각각의 접촉을 계속 검출하는 동안,
    상기 터치 감지 표면 상에서 상기 복수의 접촉의 서로에 대한 이동에 기초하는 제1 제스처를 검출하는 단계;
    상기 제1 제스처의 검출에 응답하여, 상기 제1 사용자 인터페이스 영역을 상기 제1 스케일 팩터보다 낮은 제2 스케일 팩터로 표시하는 단계 - 상기 제1 사용자 인터페이스 영역은 상기 제2 스케일 팩터로 표시되는 사용자 인터페이스 영역들의 단일 행에서 하나의 영역으로서 표시됨 -;
    상기 터치 감지 표면 상에서 상기 적어도 하나의 각각의 접촉의 이동에 기초하는 제2 제스처를 검출하는 단계; 및
    상기 제2 제스처의 검출에 응답하여, 제2 사용자 인터페이스 영역이 보이게 되도록, 상기 제2 스케일 팩터로 표시되는 사용자 인터페이스 영역들의 상기 단일 행을 스크롤링하는 단계 - 상기 제2 사용자 인터페이스 영역은 상기 제1 사용자 인터페이스 영역과 상이함 - 를 포함하는, 방법.
  40. 제39항에 있어서, 상기 제2 스케일 팩터로 표시되는 사용자 인터페이스 영역들의 상기 단일 행을 스크롤링하는 단계는 상기 제2 사용자 인터페이스 영역 전체를 상기 제2 스케일 팩터로 표시하는 단계를 포함하는, 방법.
  41. 제39항에 있어서, 상기 제2 스케일 팩터로 표시되는 사용자 인터페이스 영역들의 상기 단일 행을 스크롤링하는 단계는 상기 제2 제스처의 검출 전에 표시된 상기 제1 사용자 인터페이스 영역의 일부의 표시를 중지하는 단계를 포함하는, 방법.
  42. 제39항에 있어서,
    상기 터치 감지 표면 상에서 상기 적어도 하나의 각각의 접촉의 검출을 중지하는 단계; 및
    상기 터치 감지 표면 상에서 상기 적어도 하나의 각각의 접촉의 검출을 중지하는 것에 응답하여,
    사용자 인터페이스 영역들의 상기 단일 행으로부터 상기 제1 스케일 팩터로 표시할 사용자 인터페이스 영역을 선택하는 단계; 및
    상기 선택된 사용자 인터페이스 영역을 상기 제1 스케일 팩터로 표시하는 단계를 추가로 포함하는, 방법.
  43. 제42항에 있어서, 상기 선택된 사용자 인터페이스 영역은 상기 제1 사용자 인터페이스 영역인, 방법.
  44. 제42항에 있어서, 상기 선택된 사용자 인터페이스 영역은 상기 제2 사용자 인터페이스 영역인, 방법.
  45. 제42항에 있어서, 상기 선택된 사용자 인터페이스 영역은 상기 제2 제스처에 따라 선택되는, 방법.
  46. 제42항에 있어서, 상기 선택된 사용자 인터페이스 영역은 상기 제2 제스처의 종료에 대해 사전 결정된 시간에서의 상기 적어도 하나의 각각의 접촉의 이동의 방향에 적어도 부분적으로 기초하여 선택되는, 방법.
  47. 제42항에 있어서, 상기 선택된 사용자 인터페이스 영역은 상기 제2 제스처의 종료에 대해 사전 결정된 시간에서의 상기 디스플레이 상의 상기 선택된 사용자 인터페이스 영역의 표현의 위치에 적어도 부분적으로 기초하여 선택되는, 방법.
  48. 컴퓨터 시스템으로서,
    디스플레이;
    터치 감지 표면;
    상기 터치 감지 표면에 결합된 프로세서; 및
    상기 프로세서에 결합된 컴퓨터 판독 가능 저장 매체를 포함하고, 상기 컴퓨터 판독 가능 저장 매체는 프로그램 명령어들로 인코딩되며, 상기 프로그램 명령어들은 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,
    제1 사용자 인터페이스 영역을 제1 사용자 인터페이스 모드로 표시하고;
    상기 터치 감지 표면 상에서 제1 제스처를 검출하고;
    상기 제1 제스처의 검출에 응답하여, 상기 제1 사용자 인터페이스 모드로부터 제2 사용자 인터페이스 모드로 스위칭하고;
    상기 제2 사용자 인터페이스 모드에 있는 동안, 상기 터치 감지 표면 상에서의 각각의 접촉의 이동을 포함하는 제2 제스처를 검출하고;
    상기 제2 제스처의 검출에 응답하여, 상기 제2 사용자 인터페이스 모드로 표시된 사용자 인터페이스 내에서 동작을 수행하고;
    상기 제2 제스처의 종료를 검출하는 것에 응답하여,
    상기 각각의 접촉이 상기 제1 제스처를 수행하는 데 사용된 접촉이고, 상기 각각의 접촉이 상기 제1 제스처 및 상기 제2 제스처 전반에서 상기 터치 감지 표면 상에서 계속 검출된 경우에, 상기 제2 사용자 인터페이스 모드를 종료하고;
    상기 각각의 접촉이 상기 제1 제스처 및 상기 제2 제스처 전반에서 상기 터치 감지 표면 상에서 계속 검출된 접촉이 아닌 경우에, 상기 제2 제스처의 상기 종료를 검출한 후에 상기 제2 사용자 인터페이스 모드를 유지하게 하는, 컴퓨터 시스템.
  49. 제48항에 있어서, 상기 제1 제스처 및 상기 제2 제스처는 연속 제스처 시퀀스의 일부인, 컴퓨터 시스템.
  50. 제48항에 있어서,
    상기 제1 제스처는 제1 수의 접촉을 이용하여 수행되는 다중 접촉 핀치 제스처이고,
    상기 제2 제스처는 상기 제1 수의 접촉보다 적거나 동일한 제2 수의 접촉을 이용하여 수행되는 병진 이동 제스처인, 컴퓨터 시스템.
  51. 제48항에 있어서, 상기 제1 사용자 인터페이스 영역은
    애플리케이션의 다중 문서 인터페이스 내의 윈도;
    애플리케이션의 탭형 문서 인터페이스 내의 윈도; 및
    운영 체제 내의 애플리케이션 윈도로 구성되는 세트로부터 선택된 사용자 인터페이스 영역인, 컴퓨터 시스템.
  52. 제48항에 있어서, 상기 제2 제스처의 상기 종료를 검출하는 것은 상기 터치 감지 표면으로부터의 상기 각각의 접촉의 들어올림(liftoff)을 검출하는 것을 포함하는, 컴퓨터 시스템.
  53. 제48항에 있어서, 상기 제2 제스처의 상기 종료를 검출하는 것은 사전 정의된 지속기간보다 긴 지속기간 동안 상기 터치 감지 표면 상에서 상기 제2 제스처를 수행하는 데 사용된 하나 이상의 접촉의 이동의 검출을 중지하는 것을 포함하는, 컴퓨터 시스템.
  54. 제48항에 있어서,
    상기 제1 사용자 인터페이스 모드는 단일 사용자 인터페이스 영역 내에서 동작들을 수행하기 위한 정상 동작 모드이고;
    상기 제2 사용자 인터페이스 모드는 상이한 사용자 인터페이스 영역들 사이에서 내비게이션하기 위한 사용자 인터페이스 영역 내비게이션 모드이고, 상기 상이한 사용자 인터페이스 영역들의 축소 스케일 표현들은 상기 제2 사용자 인터페이스 모드에서 제시되는, 컴퓨터 시스템.
  55. 제54항에 있어서,
    상기 축소 스케일 표현들은 행 내에 배열되고,
    상기 제2 제스처의 검출에 응답하여 수행되는 상기 동작은 사용자 인터페이스 영역들의 축소 스케일 표현들의 상기 행을 스크롤링하는 것을 포함하는, 컴퓨터 시스템.
KR1020147025056A 2012-02-05 2013-01-29 브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션 KR101683356B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261595114P 2012-02-05 2012-02-05
US61/595,114 2012-02-05
US13/750,586 2013-01-25
US13/750,572 2013-01-25
US13/750,572 US9477642B2 (en) 2012-02-05 2013-01-25 Gesture-based navigation among content items
US13/750,586 US9524272B2 (en) 2012-02-05 2013-01-25 Navigating among content items in a browser using an array mode
PCT/US2013/023634 WO2013116219A1 (en) 2012-02-05 2013-01-29 Navigating among content items in a browser using an array mode

Publications (2)

Publication Number Publication Date
KR20140129127A true KR20140129127A (ko) 2014-11-06
KR101683356B1 KR101683356B1 (ko) 2016-12-06

Family

ID=48904005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147025056A KR101683356B1 (ko) 2012-02-05 2013-01-29 브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션

Country Status (8)

Country Link
US (2) US9477642B2 (ko)
EP (2) EP2798543A1 (ko)
JP (1) JP6144707B2 (ko)
KR (1) KR101683356B1 (ko)
CN (2) CN110110259A (ko)
AU (2) AU2013215357B2 (ko)
TW (2) TWI516962B (ko)
WO (1) WO2013116219A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180047885A (ko) * 2016-11-01 2018-05-10 주식회사 케이티 미디어 재생 장치 및 화면 캡쳐 방법
KR20190119115A (ko) * 2017-02-27 2019-10-21 스냅 인코포레이티드 디바이스 움직임에 기초한 미디어 콘텐츠의 처리
KR20210122884A (ko) * 2016-06-03 2021-10-12 애플 인크. 디스플레이 성능 제어
US11568588B2 (en) 2016-06-03 2023-01-31 Apple Inc. Controlling display performance using display statistics and feedback

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US10313505B2 (en) 2006-09-06 2019-06-04 Apple Inc. Portable multifunction device, method, and graphical user interface for configuring and displaying widgets
US8519964B2 (en) 2007-01-07 2013-08-27 Apple Inc. Portable multifunction device, method, and graphical user interface supporting user navigations of graphical objects on a touch screen display
US8619038B2 (en) 2007-09-04 2013-12-31 Apple Inc. Editing interface
US10788976B2 (en) 2010-04-07 2020-09-29 Apple Inc. Device, method, and graphical user interface for managing folders with multiple pages
US8458615B2 (en) 2010-04-07 2013-06-04 Apple Inc. Device, method, and graphical user interface for managing folders
US9305108B2 (en) 2011-10-05 2016-04-05 Google Inc. Semantic selection and purpose facilitation
US8930393B1 (en) 2011-10-05 2015-01-06 Google Inc. Referent based search suggestions
US10013152B2 (en) 2011-10-05 2018-07-03 Google Llc Content selection disambiguation
US9477642B2 (en) 2012-02-05 2016-10-25 Apple Inc. Gesture-based navigation among content items
JP5790578B2 (ja) * 2012-04-10 2015-10-07 株式会社デンソー 表示システム、表示装置、及び操作装置
US10304347B2 (en) 2012-05-09 2019-05-28 Apple Inc. Exercised-based watch face and complications
US10990270B2 (en) 2012-05-09 2021-04-27 Apple Inc. Context-specific user interfaces
US9459781B2 (en) 2012-05-09 2016-10-04 Apple Inc. Context-specific user interfaces for displaying animated sequences
US10613743B2 (en) 2012-05-09 2020-04-07 Apple Inc. User interface for receiving user input
EP3185116B1 (en) 2012-05-09 2019-09-11 Apple Inc. Device, method and graphical user interface for providing tactile feedback for operations performed in a user interface
US9582165B2 (en) 2012-05-09 2017-02-28 Apple Inc. Context-specific user interfaces
US20140071171A1 (en) * 2012-09-12 2014-03-13 Alcatel-Lucent Usa Inc. Pinch-and-zoom, zoom-and-pinch gesture control
CN103914466B (zh) * 2012-12-31 2017-08-08 阿里巴巴集团控股有限公司 一种标签按钮管理的方法及系统
JP6142544B2 (ja) * 2013-01-22 2017-06-07 富士通株式会社 設定方法、通信システムおよび通信装置
US10185473B2 (en) * 2013-02-12 2019-01-22 Prezi, Inc. Adding new slides on a canvas in a zooming user interface
US9741150B2 (en) 2013-07-25 2017-08-22 Duelight Llc Systems and methods for displaying representative images
KR20140141046A (ko) * 2013-05-31 2014-12-10 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US9804745B2 (en) * 2013-06-09 2017-10-31 Apple Inc. Reordering content panes in a stacked tab view
US10067628B2 (en) * 2013-08-14 2018-09-04 Google Llc Presenting open windows and tabs
US9547525B1 (en) * 2013-08-21 2017-01-17 Google Inc. Drag toolbar to enter tab switching interface
US9569004B2 (en) 2013-08-22 2017-02-14 Google Inc. Swipe toolbar to switch tabs
KR102184269B1 (ko) * 2013-09-02 2020-11-30 삼성전자 주식회사 디스플레이장치, 휴대장치 및 그 화면 표시방법
US10545657B2 (en) 2013-09-03 2020-01-28 Apple Inc. User interface for manipulating user interface objects
CN103473012A (zh) * 2013-09-09 2013-12-25 华为技术有限公司 截屏方法、装置和终端设备
US20150121314A1 (en) * 2013-10-24 2015-04-30 Jens Bombolowsky Two-finger gestures
KR102405189B1 (ko) 2013-10-30 2022-06-07 애플 인크. 관련 사용자 인터페이스 객체를 표시
JP2015127950A (ja) * 2013-11-26 2015-07-09 株式会社リコー 情報処理システム及び情報処理方法
US10620796B2 (en) * 2013-12-19 2020-04-14 Barnes & Noble College Booksellers, Llc Visual thumbnail scrubber for digital content
US20150193424A1 (en) * 2014-01-07 2015-07-09 Samsung Electronics Co., Ltd. Method of changing dynamic screen layout and electronic device
US20150268805A1 (en) * 2014-03-20 2015-09-24 Kobo Incorporated User interface to open a different ebook responsive to a user gesture
CN103955475B (zh) * 2014-03-31 2018-04-13 北京奇虎科技有限公司 一种网页标签信息的显示方法、装置和浏览器
CN103902722B (zh) * 2014-04-10 2018-01-12 白杨 基于b/s架构的网页页面显示方法及终端
KR20150136890A (ko) * 2014-05-28 2015-12-08 삼성전자주식회사 디바이스에 객체를 표시하는 방법 및 그 디바이스
US10156967B2 (en) 2014-05-31 2018-12-18 Apple Inc. Device, method, and graphical user interface for tabbed and private browsing
CN116301544A (zh) 2014-06-27 2023-06-23 苹果公司 尺寸减小的用户界面
WO2016014601A2 (en) 2014-07-21 2016-01-28 Apple Inc. Remote user interface
US9921721B2 (en) * 2014-08-08 2018-03-20 Google Llc Navigation interfaces for ebooks
US10452253B2 (en) 2014-08-15 2019-10-22 Apple Inc. Weather user interface
US10073590B2 (en) 2014-09-02 2018-09-11 Apple Inc. Reduced size user interface
US10114521B2 (en) 2014-09-02 2018-10-30 Apple Inc. Multi-dimensional object rearrangement
EP3189406B1 (en) 2014-09-02 2022-09-07 Apple Inc. Phone user interface
US10254948B2 (en) 2014-09-02 2019-04-09 Apple Inc. Reduced-size user interfaces for dynamically updated application overviews
US10261674B2 (en) * 2014-09-05 2019-04-16 Microsoft Technology Licensing, Llc Display-efficient text entry and editing
JP2016126657A (ja) * 2015-01-07 2016-07-11 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US10055121B2 (en) 2015-03-07 2018-08-21 Apple Inc. Activity based thresholds and feedbacks
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
US10095396B2 (en) 2015-03-08 2018-10-09 Apple Inc. Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object
WO2016144385A1 (en) 2015-03-08 2016-09-15 Apple Inc. Sharing user-configurable graphical constructs
USD795917S1 (en) 2015-05-17 2017-08-29 Google Inc. Display screen with an animated graphical user interface
US9916075B2 (en) 2015-06-05 2018-03-13 Apple Inc. Formatting content for a reduced-size user interface
US9860451B2 (en) 2015-06-07 2018-01-02 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
USD780193S1 (en) * 2015-07-01 2017-02-28 Microsoft Corporation Display screen with animated graphical user interface
USD769263S1 (en) * 2015-07-28 2016-10-18 Microsoft Corporation Display screen with animated graphical user interface
US9880735B2 (en) 2015-08-10 2018-01-30 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback
EP4321088A3 (en) 2015-08-20 2024-04-24 Apple Inc. Exercise-based watch face
US10601894B1 (en) 2015-09-28 2020-03-24 Amazon Technologies, Inc. Vector-based encoding for content rendering
US10691750B1 (en) * 2015-09-28 2020-06-23 Amazon Technologies, Inc. Browser configured to efficiently store browsing session state
CN105718265B (zh) * 2016-01-21 2019-10-11 浙江慧脑信息科技有限公司 一种带标签的并列式嵌套型软件设计和编程方法
JP6590726B2 (ja) * 2016-02-17 2019-10-16 株式会社キーエンス プログラマブル表示器及びこれを備えるプログラマブルシステム、プログラマブル表示器の設計装置、プログラマブル表示器の設計方法、プログラマブル表示器の操作方法、プログラマブル表示器の設計プログラム及びコンピュータで読み取り可能な記録媒体並びに記憶した機器
DK201670595A1 (en) 2016-06-11 2018-01-22 Apple Inc Configuring context-specific user interfaces
AU2017100667A4 (en) 2016-06-11 2017-07-06 Apple Inc. Activity and workout updates
US11816325B2 (en) 2016-06-12 2023-11-14 Apple Inc. Application shortcuts for carplay
USD826977S1 (en) 2016-07-27 2018-08-28 Beckman Coulter, Inc. Display screen with graphical user interface for a laboratory instrument
USD834044S1 (en) 2016-07-27 2018-11-20 Beckman Coulter, Inc. Display screen with graphical user interface for a laboratory instrument
US10950206B2 (en) * 2017-04-13 2021-03-16 Samsung Electronics Co., Ltd. Electronic apparatus and method for displaying contents thereof
US11237635B2 (en) 2017-04-26 2022-02-01 Cognixion Nonverbal multi-input and feedback devices for user intended computer control and communication of text, graphics and audio
US11402909B2 (en) 2017-04-26 2022-08-02 Cognixion Brain computer interface for augmented reality
US11726639B2 (en) * 2017-05-03 2023-08-15 Microsoft Technology Licensing, Llc Stowing and unstowing browser tabs in groups each corresponding to a different subject
DK179412B1 (en) 2017-05-12 2018-06-06 Apple Inc Context-Specific User Interfaces
US10942632B1 (en) * 2017-11-06 2021-03-09 Zocomotion Ltd. Self-clustering rearrangeable stacks of visible information and active in situ link portals in an infinitely zoomable space on a graphical computing device
USD832866S1 (en) * 2017-11-20 2018-11-06 Salesforce.Com, Inc. Display screen or portion thereof with animated graphical user interface
USD845982S1 (en) 2017-11-27 2019-04-16 Microsoft Corporation Display screen with graphical user interface
USD845989S1 (en) 2017-11-27 2019-04-16 Microsoft Corporation Display screen with transitional graphical user interface
USD846568S1 (en) 2017-11-27 2019-04-23 Microsoft Corporation Display screen with graphical user interface
USD844657S1 (en) 2017-11-27 2019-04-02 Microsoft Corporation Display screen with animated graphical user interface
US11327650B2 (en) 2018-05-07 2022-05-10 Apple Inc. User interfaces having a collection of complications
US20190394255A1 (en) * 2018-06-25 2019-12-26 Citrix Systems, Inc. Intermediated retrieval of networked content
CN108959495B (zh) * 2018-06-25 2019-12-06 百度在线网络技术(北京)有限公司 H5网页的页面显示方法、装置、设备和计算机存储介质
USD928194S1 (en) 2018-07-28 2021-08-17 Beckman Coulter, Inc. Display screen or portion thereof with graphical user interface
US11199944B2 (en) * 2018-09-24 2021-12-14 Salesforce.Com, Inc. System and method for navigation within widget-sized browser panels
DK180317B1 (en) 2019-04-15 2020-11-09 Apple Inc Systems, methods, and user interfaces for interacting with multiple application windows
US11675476B2 (en) 2019-05-05 2023-06-13 Apple Inc. User interfaces for widgets
US11131967B2 (en) 2019-05-06 2021-09-28 Apple Inc. Clock faces for an electronic device
KR102393717B1 (ko) 2019-05-06 2022-05-03 애플 인크. 전자 디바이스의 제한된 동작
US11960701B2 (en) 2019-05-06 2024-04-16 Apple Inc. Using an illustration to show the passing of time
DK180392B1 (en) 2019-09-09 2021-03-12 Apple Inc Techniques for managing display usage
CN110830645B (zh) * 2019-09-24 2021-05-18 华为技术有限公司 一种操作方法和电子设备及计算机存储介质
DK202070625A1 (en) 2020-05-11 2022-01-04 Apple Inc User interfaces related to time
CN115904596B (zh) 2020-05-11 2024-02-02 苹果公司 用于管理用户界面共享的用户界面
US11372659B2 (en) 2020-05-11 2022-06-28 Apple Inc. User interfaces for managing user interface sharing
CN111694478A (zh) * 2020-06-10 2020-09-22 广州酷狗计算机科技有限公司 内容展示方法、装置、终端及存储介质
CN112346690A (zh) * 2020-10-30 2021-02-09 深圳Tcl新技术有限公司 显示控制方法、装置及计算机可读存储介质
CN112596648B (zh) * 2020-12-21 2022-07-08 北京百度网讯科技有限公司 页面处理方法、装置、电子设备及可读存储介质
US11694590B2 (en) 2020-12-21 2023-07-04 Apple Inc. Dynamic user interface with time indicator
US11720239B2 (en) 2021-01-07 2023-08-08 Apple Inc. Techniques for user interfaces related to an event
CN112650427B (zh) * 2021-01-15 2022-08-30 五八有限公司 一种信息处理方法及装置
US11921992B2 (en) 2021-05-14 2024-03-05 Apple Inc. User interfaces related to time
US20220391456A1 (en) * 2021-06-06 2022-12-08 Apple Inc. Devices, Methods, and Graphical User Interfaces for Interacting with a Web-Browser
USD1002652S1 (en) * 2021-10-27 2023-10-24 Mcmaster-Carr Supply Company Display screen or portion thereof with animated graphical user interface
USD1002651S1 (en) * 2021-10-27 2023-10-24 Mcmaster-Carr Supply Company Display screen or portion thereof with animated graphical user interface
CN115730092A (zh) * 2022-10-28 2023-03-03 北京字跳网络技术有限公司 用于内容呈现的方法、装置、设备和存储介质
CN116955873B (zh) * 2023-09-18 2023-12-08 北京佰信蓝图科技股份有限公司 一种海量动态面状矢量数据在浏览器上快速显示方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060265417A1 (en) * 2004-05-04 2006-11-23 Amato Jerry S Enhanced graphical interfaces for displaying visual data
KR100733962B1 (ko) * 2005-11-07 2007-06-29 한국전자통신연구원 홈네트워크 간 미디어 컨텐츠 공유 시스템 및 그 방법
KR20090053851A (ko) * 2006-09-06 2009-05-27 애플 인크. 상이한 제스처에 대해 유사한 동작을 수행하는 휴대용 전자 장치
KR20090075079A (ko) * 2008-01-03 2009-07-08 엘지전자 주식회사 이동통신 단말기 및 이를 이용한 북마크 처리방법

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100595925B1 (ko) 1998-01-26 2006-07-05 웨인 웨스터만 수동 입력 통합 방법 및 장치
TWI267006B (en) 2002-10-15 2006-11-21 Sumitomo Rubber Ind Homepage displaying method
US20040261035A1 (en) 2003-06-20 2004-12-23 Xerox Corporation Automatic tab displaying and maximum tab storing user interface and a reprographic machine having same
US20050210416A1 (en) * 2004-03-16 2005-09-22 Maclaurin Matthew B Interactive preview of group contents via axial controller
JP2006146824A (ja) 2004-11-24 2006-06-08 Osaka Univ 情報表示方法、情報表示システム、中継装置、情報表示装置及びコンピュータプログラム
US7725837B2 (en) * 2005-03-31 2010-05-25 Microsoft Corporation Digital image browser
US7596760B2 (en) * 2005-04-07 2009-09-29 Microsoft Corporation System and method for selecting a tab within a tabbed browser
US9740794B2 (en) * 2005-12-23 2017-08-22 Yahoo Holdings, Inc. Methods and systems for enhancing internet experiences
US7814425B1 (en) * 2005-12-30 2010-10-12 Aol Inc. Thumbnail image previews
CN102169415A (zh) 2005-12-30 2011-08-31 苹果公司 具有多重触摸输入的便携式电子设备
US7669142B2 (en) 2006-02-28 2010-02-23 Microsoft Corporation Viewable and actionable search results
JP2007233797A (ja) 2006-03-02 2007-09-13 Matsushita Electric Ind Co Ltd プレビュー再生方法、装置、プログラム、及び媒体
US8683362B2 (en) * 2008-05-23 2014-03-25 Qualcomm Incorporated Card metaphor for activities in a computing device
US8296684B2 (en) * 2008-05-23 2012-10-23 Hewlett-Packard Development Company, L.P. Navigating among activities in a computing device
TWI322360B (en) 2006-05-16 2010-03-21 Sifeon Knowledge Technology Multi-window presentation system, multi-window file editing system and method thereof
US8564544B2 (en) * 2006-09-06 2013-10-22 Apple Inc. Touch screen device, method, and graphical user interface for customizing display of content category icons
US7581186B2 (en) * 2006-09-11 2009-08-25 Apple Inc. Media manager with integrated browsers
JP2008107865A (ja) * 2006-10-23 2008-05-08 Sharp Corp タブブラウザ操作装置、タブブラウザ操作方法、プログラムおよび記録媒体
US8970503B2 (en) 2007-01-05 2015-03-03 Apple Inc. Gestures for devices having one or more touch sensitive surfaces
US20080168402A1 (en) * 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
JPWO2008146784A1 (ja) * 2007-05-29 2010-08-19 株式会社Access 端末装置、ヒストリ管理方法、およびヒストリ管理の為のコンピュータ使用可能な記憶媒体
US9619143B2 (en) * 2008-01-06 2017-04-11 Apple Inc. Device, method, and graphical user interface for viewing application launch icons
US8762878B1 (en) * 2007-11-20 2014-06-24 Google Inc. Selective rendering of display components in a tab view browser
US8490019B2 (en) * 2008-01-29 2013-07-16 Microsoft Corporation Displaying thumbnail copies of each running item from one or more applications
US8174502B2 (en) 2008-03-04 2012-05-08 Apple Inc. Touch event processing for web pages
US20100095219A1 (en) * 2008-10-15 2010-04-15 Maciej Stachowiak Selective history data structures
US8669945B2 (en) 2009-05-07 2014-03-11 Microsoft Corporation Changing of list views on mobile device
JP5446522B2 (ja) 2009-07-07 2014-03-19 セイコーエプソン株式会社 共有管理システム及び共有管理サーバー
US8723988B2 (en) * 2009-07-17 2014-05-13 Sony Corporation Using a touch sensitive display to control magnification and capture of digital images by an electronic device
US8624925B2 (en) 2009-10-16 2014-01-07 Qualcomm Incorporated Content boundary signaling techniques
US20110138313A1 (en) 2009-12-03 2011-06-09 Kevin Decker Visually rich tab representation in user interface
US8736561B2 (en) 2010-01-06 2014-05-27 Apple Inc. Device, method, and graphical user interface with content display modes and display rotation heuristics
US8698762B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface for navigating and displaying content in context
US8786559B2 (en) * 2010-01-06 2014-07-22 Apple Inc. Device, method, and graphical user interface for manipulating tables using multi-contact gestures
US20110252357A1 (en) * 2010-04-07 2011-10-13 Imran Chaudhri Device, Method, and Graphical User Interface for Managing Concurrently Open Software Applications
WO2011133086A1 (en) 2010-04-19 2011-10-27 Shl Group Ab Medicament delivery device
US20120032877A1 (en) 2010-08-09 2012-02-09 XMG Studio Motion Driven Gestures For Customization In Augmented Reality Applications
US20140298240A1 (en) 2011-06-14 2014-10-02 Google Inc. Mega lens style tab management
US20130067420A1 (en) * 2011-09-09 2013-03-14 Theresa B. Pittappilly Semantic Zoom Gestures
US9135022B2 (en) 2011-11-14 2015-09-15 Microsoft Technology Licensing, Llc Cross window animation
US9477642B2 (en) 2012-02-05 2016-10-25 Apple Inc. Gesture-based navigation among content items

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060265417A1 (en) * 2004-05-04 2006-11-23 Amato Jerry S Enhanced graphical interfaces for displaying visual data
KR100733962B1 (ko) * 2005-11-07 2007-06-29 한국전자통신연구원 홈네트워크 간 미디어 컨텐츠 공유 시스템 및 그 방법
KR20090053851A (ko) * 2006-09-06 2009-05-27 애플 인크. 상이한 제스처에 대해 유사한 동작을 수행하는 휴대용 전자 장치
KR20090075079A (ko) * 2008-01-03 2009-07-08 엘지전자 주식회사 이동통신 단말기 및 이를 이용한 북마크 처리방법

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210122884A (ko) * 2016-06-03 2021-10-12 애플 인크. 디스플레이 성능 제어
US11568588B2 (en) 2016-06-03 2023-01-31 Apple Inc. Controlling display performance using display statistics and feedback
KR20180047885A (ko) * 2016-11-01 2018-05-10 주식회사 케이티 미디어 재생 장치 및 화면 캡쳐 방법
KR20190119115A (ko) * 2017-02-27 2019-10-21 스냅 인코포레이티드 디바이스 움직임에 기초한 미디어 콘텐츠의 처리
KR20210076192A (ko) * 2017-02-27 2021-06-23 스냅 인코포레이티드 디바이스 움직임에 기초한 미디어 콘텐츠의 처리
US11106037B2 (en) 2017-02-27 2021-08-31 Snap Inc. Processing a media content based on device movement
KR20220045994A (ko) * 2017-02-27 2022-04-13 스냅 인코포레이티드 디바이스 움직임에 기초한 미디어 콘텐츠의 처리
US11668937B2 (en) 2017-02-27 2023-06-06 Snap Inc. Processing a media content based on device movement

Also Published As

Publication number Publication date
AU2013215357B2 (en) 2016-06-09
AU2016225811B2 (en) 2017-06-08
US20130205244A1 (en) 2013-08-08
CN104205098A (zh) 2014-12-10
TW201619856A (zh) 2016-06-01
TW201348992A (zh) 2013-12-01
EP2798543A1 (en) 2014-11-05
AU2013215357A1 (en) 2014-08-28
JP6144707B2 (ja) 2017-06-07
TWI570580B (zh) 2017-02-11
JP2015506522A (ja) 2015-03-02
US9524272B2 (en) 2016-12-20
KR101683356B1 (ko) 2016-12-06
TWI516962B (zh) 2016-01-11
CN104205098B (zh) 2019-04-02
US9477642B2 (en) 2016-10-25
AU2016225811A1 (en) 2016-09-22
WO2013116219A1 (en) 2013-08-08
US20130205194A1 (en) 2013-08-08
EP3989048A1 (en) 2022-04-27
CN110110259A (zh) 2019-08-09

Similar Documents

Publication Publication Date Title
KR101683356B1 (ko) 브라우저 내의 콘텐츠 아이템들 사이에서의 어레이 모드를 이용한 내비게이션
JP7026183B2 (ja) アプリケーションに対応するユーザインタフェースオブジェクトと対話するためのデバイス、方法、及びグラフィカルユーザインタフェース
CN108334264B (zh) 在便携式终端中用于提供多点触摸交互的方法和设备
KR101760693B1 (ko) 터치 디바이스에서 홈스크린 편집 방법 및 장치
JP6153868B2 (ja) アイテムをディスプレーする方法及び装置
US8839106B2 (en) Method for providing GUI and multimedia device using the same
EP2352284B1 (en) Method for providing GUI and multimedia device using the same
US20140223381A1 (en) Invisible control
US20100259562A1 (en) Display control apparatus, display control method and computer program
CN114766015A (zh) 用于与对应于应用程序的用户界面对象进行交互的设备、方法和图形用户界面

Legal Events

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