KR20170083622A - 탭 스윕핑 및 그룹화 - Google Patents

탭 스윕핑 및 그룹화 Download PDF

Info

Publication number
KR20170083622A
KR20170083622A KR1020177016442A KR20177016442A KR20170083622A KR 20170083622 A KR20170083622 A KR 20170083622A KR 1020177016442 A KR1020177016442 A KR 1020177016442A KR 20177016442 A KR20177016442 A KR 20177016442A KR 20170083622 A KR20170083622 A KR 20170083622A
Authority
KR
South Korea
Prior art keywords
tab
tabs
row
group
grouping
Prior art date
Application number
KR1020177016442A
Other languages
English (en)
Other versions
KR102483505B1 (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 KR20170083622A publication Critical patent/KR20170083622A/ko
Application granted granted Critical
Publication of KR102483505B1 publication Critical patent/KR102483505B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/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/04842Selection of displayed objects or displayed text elements

Landscapes

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

Abstract

복수의 탭들이 탭 행에서 디스플레이되며, 각각의 탭은 콘텐츠의 각각의 디스플레이에 대응한다. 단일 동작 사용자 입력을 수신한 것에 응답하여, 복수의 탭들 중 둘 이상의 탭들이 탭 그룹으로 함께 그룹화되고, 탭 그룹은 둘 이상의 탭들을 대신하여 탭 행에서 디스플레이된다. 이 둘 이상의 탭들은 사용자에 의해 지정될 수 있는 폭넓은 범위의 옵션들에 따라 함께 그룹화될 수 있다. 탭 그룹들은 개별 탭들과 연관된 콘텐츠의 공유, 저장, 및 보기와 같은, 탭 그룹의 개별 탭들과의 동시적인 상호작용을 가능하게 한다. 탭 행에서 디스플레이된 비그룹화되어 있는 탭들 및 탭 그룹들은 콘텐츠의 상이한 디스플레이들과의 상호작용시 전반적인 경험을 향상시키도록 하나 이상의 사용자 선호사항들에 따른 디스플레이를 위해 추가로 정렬될 수 있다.

Description

탭 스윕핑 및 그룹화{TAB SWEEPING AND GROUPING}
본 발명은 탭(tab) 관리 기술에 관한 것이다.
컴퓨팅 기술이 발전함에 따라, 오늘날의 사용자들은 자신들의 컴퓨팅 디바이스를 통해 계속적인 증가량을 보이는 전자 콘텐츠에 액세스하고, 이를 생성하고 공유할 수 있다. 현재 전자 콘텐츠는 웹 브라우저, 애플리케이션, 및 폭넓은 범위의 다른 매체들을 통해 전세계 곳곳에 있는 자원 위치들로부터 액세스가능하다. 이 콘텐츠에 대한 즉각적인 액세스를 원할 경우, 사용자는 단일 디바이스 상에서 많은 이질적인 콘텐츠 디스플레이들을 동시에 열어두는 경우가 종종 있다. 그러나, 이 모든 디스플레이들의 이용가능성은 문제가 없는 것은 아니다. 그러한 문제점 중 하나는 이러한 디스플레이들의 편제(organization)를 관리하는데 어려움이 증가하여 사용자의 불만을 초래시킨다는 점이다.
본 요약은 아래의 상세한 설명에서 더 자세히 설명되는 개념들의 선택을 단순화된 형태로 소개하기 위해 제공된 것이다. 본 요약은 청구된 발명내용의 중요한 특징들 또는 필수적인 특징들을 확인시키려는 의도는 없으며, 또한 청구된 발명내용의 범위를 제한시키려는 의도도 없다.
하나 이상의 양태들에 따르면, 복수의 탭들이 탭 행(tab row)에서 디스플레이되고, 단일 동작 사용자 입력이 수신된다. 이 단일 동작 사용자 입력을 수신한 것에 응답하여, 탭 행의 복수의 탭들은 복수의 탭들을 나타내는 탭 그룹으로 함께 그룹화된다. 이 탭 그룹이 복수의 탭들 대신에 탭 행에서 디스플레이된다.
하나 이상의 양태들에 따르면, 하나 이상의 탭 그룹들 및 하나 이상의 탭들이 탭 행에서 디스플레이된다. 하나 이상의 탭 그룹들 중 하나의 탭 그룹에 대응하는 사용자 입력이 수신된다. 하나 이상의 선택가능한 탭 그룹 옵션들의 선택이 수신되고, 선택된 탭 그룹 옵션이 수행된다.
하나 이상의 양태들에 따르면, 복수의 탭들이 탭 행에서 디스플레이되고, 단일 동작 사용자 입력이 탭 행에서 수신된다. 단일 동작 사용자 입력을 수신한 것에 응답하여, 복수의 탭들이 정렬(sort)되고, 정렬된 복수의 탭들이 탭 행에서 디스플레이된다.
상세한 설명을 첨부 도면들을 참조하여 설명한다. 도면들에서, 참조번호의 가장 좌측의 숫자(들)은 해당 참조번호가 처음 나타나는 도면을 식별한다. 상세한 설명과 도면들에서의 상이한 실례들에서의 동일한 참조번호들의 이용은 유사하거나 또는 동일한 아이템들을 나타낼 수 있다. 도면들에서 나타난 엔티티들은 하나 이상의 엔티티들을 나타낼 수 있으며, 이에 따라 본 논의에서는 엔티티들의 단수 형태 또는 복수 형태를 상호교환적으로 언급할 수 있다.
도 1은 본 명세서에서 설명된 다양한 원리들이 하나 이상의 실시예들에 따라 이용될 수 있는 예시적인 운영 환경을 도시한다.
도 2는 하나 이상의 실시예들에 따른, 사용자 인터페이스의 탭 행의 복수의 비그룹화되어 있는(ungrouped) 탭들을 디스플레이하는 예시를 도시한다.
도 3은 하나 이상의 실시예들에 따른, 탭 행에서 디스플레이된 복수의 탭들을 탭 그룹으로 그룹화하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 4는 하나 이상의 실시예들에 따른, 탭 행의 복수의 비그룹화되어 있는 탭들이 새로운 그룹으로 그룹화되는 예시를 도시한다.
도 5는 하나 이상의 실시예들에 따른, 사용자 선택에 따라 탭 행의 비그룹화되어 있는 탭들을 그룹화하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 6은 하나 이상의 실시예들에 따른, 탭 행의 비그룹화되어 있는 탭들을 그룹화하기 위한 복수의 옵션들을 디스플레이하는 예시를 도시한다.
도 7은 하나 이상의 실시예들에 따른, 탭 행의 복수의 비그룹화되어 있는 탭들이 사용자 선택에 따라 그룹화되는 예시를 도시한다.
도 8은 하나 이상의 실시예들에 따른, 탭 행의 복수의 비그룹화되어 있는 탭들이 사용자 선택에 따라 그룹화되는 예시를 도시한다.
도 9는 하나 이상의 실시예들에 따른, 탭 그룹에 대응하는 동작을 수행하기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 10은 하나 이상의 실시예들에 따른, 탭 그룹에 대응하는 동작을 수행하기 위한 복수의 옵션들을 디스플레이하는 예시를 도시한다.
도 11은 하나 이상의 실시예들에 따른, 탭 행에서 탭 그룹을 펼쳐보기(expand) 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 12는 하나 이상의 실시예들에 따른, 탭 행에서 펼쳐보기된 탭 그룹을 디스플레이하는 예시를 도시한다.
도 13은 하나 이상의 실시예들에 따른, 탭 행에 대한 입력들에 기초하여 디스플레이를 변경시키기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 14는 하나 이상의 실시예들에 따른, 탭 행에서의 하나 이상의 탭들의 미리보기(peek view)를 디스플레이하는 예시를 도시한다.
도 15는 하나 이상의 실시예들에 따른, 탭 행 내에서의 탭의 디스플레이 위치를 조정하는 예시를 도시한다.
도 16은 하나 이상의 실시예들에 따른, 탭 행 내에서 복수의 탭들을 정렬시키기 위한 예시적인 프로세스를 도시하는 흐름도이다.
도 17은 하나 이상의 실시예들에 따른, 탭 행 내에서 복수의 탭들을 정렬시키기 위한 옵션들을 디스플레이하는 예시를 도시한다.
도 18은 하나 이상의 실시예들에 따른, 탭 행 내에서 정렬된 복수의 탭들의 예시를 도시한다.
도 19는 본 명세서에서 설명된 다양한 기술들을 구현할 수 있는 하나 이상의 시스템들 및/또는 디바이스들을 나타내는 예시적인 컴퓨팅 디바이스를 포함하는 예시적인 시스템을 도시한다.
본 명세서에서는 탭 관리 기술에 대해 설명한다. 대응하는 콘텐츠에 대한 개별적인 상이한 디스플레이들을 편제하고 유지하기 위해, 창 디스플레이 환경은 일반적으로 자원 위치로부터의 콘텐츠를 디스플레이하기 위한 개별적인 창들을 지원한다. 탭 지원 디스플레이의 도입은 단일 창에서 다양한 콘텐츠 인스턴스들과의 인터페이싱의 편의성을 크게 향상시켰지만, 탭 관리는 지루하고 비직관적인 프로세스로 남아 있다. 이러한 탭들을 관리하기 위해, 복수의 비그룹화되어 있는 탭들이 탭 행에서 디스플레이된다. 탭 행에서 단일 동작 사용자 입력을 수신한 것에 응답하여, 비그룹화되어 있는 탭들 중 복수의 탭들이 탭 그룹으로 함께 그룹화된다. 그 후, 함께 그룹화되었던 탭들을 대신하여 이 탭 그룹이 탭 행에서 디스플레이되며, 이 탭 그룹은 탭 그룹 내에 포함된 탭들을 대표한다.
그 후, 사용자들은 탭 행에서 디스플레이된 이들 탭 그룹들과 상호작용할 수 있다. 탭 그룹에 대응하는 사용자 입력을 수신한 것에 응답하여, 탭 그룹 및/또는 탭 그룹 내에 포함된 개별적인 탭들의 편제 및 디스플레이의 추가적인 관리를 가능케하도록 하나 이상의 탭 그룹 옵션들이 제공된다. 그 후, 탭 그룹 옵션이 선택되고, 선택된 탭 그룹 옵션에 대응하는 동작이 수행된다. 탭 그룹 행에서 디스플레이된 이들 비그룹화되어 있는 탭들 및 탭 그룹들의 디스플레이 위치는 사용자가 상이한 탭들에 대응하는 콘텐츠와 상호작용하고자 쉽게 스위칭할 수 있도록 사용자의 사양에 따라 디스플레이 위치를 정렬시킴으로써 추가적으로 수정될 수 있다.
본 명세서에서 설명된 탭 관리 기술은 컴퓨팅 디바이스의 사용자가 방대한 양의 콘텐츠를 보고, 공유하고, 상호작용할 수 있게 해주는 한편, 본 기술이 없었다면 이러한 양의 콘텐츠와 상호작용하는데 필요로 했을 디바이스의 연산 자원을 감소시킨다. 예를 들어, 종전에 사용자는 탭 지원 디스플레이 환경을 각각 지원하는 복수의 창들을 열어 놓았을 수 있었지만, 본 발명의 기술은 사용자가 단일 창에서 탭 지원 콘텐츠를 보다 효율적으로 관리할 수 있게 함으로써, 탭 지원 디스플레이 환경을 지원하는 추가적인 창들을 지원하는데 필요한 추가적인 프로세싱 및 메모리 자원을 제거시킨다.
도 1은 본 명세서에서 설명된 다양한 기술들이 하나 이상의 실시예들에 따라 사용될 수 있는 운영 환경(100)을 도시한다. 운영 환경(100)은 네트워크(106)를 통해 하나 이상(m개)의 서버들(104)과 통신할 수 있는 컴퓨팅 디바이스(102)를 포함한다. 네트워크(106)는 인터넷, 근거리 통신망(LAN), 셀룰러 또는 다른 전화 네트워크, 인트라넷, 다른 공개 및/또는 독점 네트워크, 이들의 조합 등을 비롯한 다양한 상이한 네트워크들일 수 있다.
컴퓨팅 디바이스(102)는 물리적 디바이스 또는 가상 디바이스와 같은 다양한 상이한 유형의 디바이스들일 수 있다. 예를 들어, 컴퓨팅 디바이스(102)는 데스크탑 컴퓨터, 서버 컴퓨터, 랩탑 또는 넷북 컴퓨터, 모바일 디바이스(예컨대, 태블릿 또는 페블릿 디바이스, 셀룰러 또는 다른 무선 전화기(예컨대, 스마트폰), 노트패드 컴퓨터, 이동국), 착용식 디바이스(예컨대, 안경, 시계), 엔터테인먼트 디바이스(예컨대, 엔터테인먼트 기기, 디스플레이 디바이스에 통신가능하게 결합된 셋톱 박스, 게임 콘솔), 텔레비전 또는 다른 디스플레이 디바이스, 차량 컴퓨터, 등등과 같은 물리적 디바이스일 수 있다. 컴퓨팅 디바이스(102)는 또한 물리적 디바이스 상에서 실행되는 가상 머신과 같은 가상 디바이스일 수 있다. 가상 머신은 임의의 다양한 상이한 유형의 물리적 디바이스들(예컨대, 위에 나열된 다양한 유형들 중 임의의 유형) 상에서 실행될 수 있다. 따라서, 컴퓨팅 디바이스(102)는 상당한 메모리 및 프로세서 자원들을 갖춘 풀 자원 디바이스(예컨대, 개인 컴퓨터, 게임 콘솔)에서부터 제한된 메모리 및/또는 프로세싱 자원들을 갖춘 로우 자원 디바이스(예컨대, 전통적인 셋탑 박스, 핸드헬드 게임 콘솔)에 이르는 범위를 가질 수 있다.
서버들(104)은 컴퓨팅 디바이스(102)의 웹 애플리케이션(108)에 의해 검색되고 디스플레이될 수 있는 웹 페이지 또는 다른 콘텐츠를 호스팅할 수 있는 다양한 상이한 컴퓨팅 디바이스들일 수 있다. 컴퓨팅 디바이스(102)의 설명과 마찬가지로, 서버들(104)은 상당한 메모리 및 프로세서 자원들을 갖는 풀 자원 디바이스들로부터 제한된 메모리 및/또는 프로세싱 자원들을 갖는 로우 자원 디바이스들에 이르는 다양한 상이한 디바이스들일 수 있다.
컴퓨팅 디바이스(102)는 웹 애플리케이션(108), 애플리케이션들(110), 디스플레이 모듈(114), 및 입력 모듈(120)을 포함한다. 웹 애플리케이션(108)은 그룹화 모듈(116) 및 정렬 모듈(118)을 포함하는 탭 관리 시스템(112)을 포함한다. 탭 관리 시스템(112)은 웹 애플리케이션(108) 내에 포함되는 것으로서 도시되어 있지만, 대안적으로 탭 관리 시스템(112)은 웹 애플리케이션(108)과 별개로 구현될 수 있다. 예를 들어, 탭 관리 시스템(112)은 (예를 들어, 컴퓨팅 디바이스(102)의 운영체제의 일부로서) 웹 애플리케이션(108) 및/또는 애플리케이션들(110) 중 임의의 것과는 독립적으로 컴퓨팅 디바이스(102)에서 구현될 수 있다. 마찬가지로, 그룹화 모듈(116) 및 정렬 모듈(118)은 단지 예시로서 탭 관리 시스템(112) 내에 포함된 것으로서 도시되어 있으며, 그룹화 모듈(116) 및 정렬 모듈(118) 중 하나 또는 둘 모두의 기능들은 탭 관리 시스템(112)에서 함께 구현될 수 있거나 또는 웹 애플리케이션(108) 및/또는 애플리케이션들(110)과는 독립적으로 컴퓨팅 디바이스(102)에서 개별적으로 구현될 수 있다.
하나 이상의 실시예들에서, 웹 애플리케이션(108)은 네트워크(106)를 통해 다양한 웹사이트들로부터 웹 페이지들을 획득하는 웹 브라우저이다. 대안적으로, 웹 애플리케이션(108)은 웹사이트 또는 다른 소스들로부터, 웹 페이지 또는, 오디오/비디오 재생 애플리케이션, 전자책 또는 잡지 리더기 등과 같은, 다른 웹 콘텐츠를 획득하는 다른 유형의 애플리케이션들일 수 있다.
본 명세서의 설명에서는 다양한 실시예들이 웹 애플리케이션의 형태로 특정 최종 사용자 애플리케이션의 환경에서 설명되지만, 이는 실시예들이 활용될 수 있는 특정 환경을 독자에게 제공하기 위한 것이다. 본 명세서에서 설명된 기술들은 웹 애플리케이션 이외의 다른 애플리케이션의 환경에서 사용될 수 있다는 것을 인식하고 이해해야 한다. 이러한 다른 애플리케이션들은, 예를 들어, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 이메일 애플리케이션, 시각적 프리젠테이션 애플리케이션 등을 포함할 수 있다.
디스플레이 모듈(114)은 디스플레이, 재생, 및/또는 다른 프리젠테이션을 위한 콘텐츠를 생성하고, 관리하고/하거나 출력한다. 이 콘텐츠는 디스플레이 모듈(114)에 의해 생성되거나 컴퓨팅 디바이스(102)의 다른 모듈들로부터 획득될 수 있다. 이 콘텐츠는, 예를 들어, 사용자 인터페이스(user interface; UI)의 디스플레이 또는 재생 부분일 수 있다. 콘텐츠는 컴퓨팅 디바이스(102)의 컴포넌트들(예를 들어, 스피커, 대화형 디스플레이 디바이스 등)에 의해 디스플레이되거나 그렇지 않으면 재생될 수 있다. 대안적으로, 디스플레이 모듈(104)은 컴퓨팅 디바이스(102)로부터 분리된 다른 디바이스들 또는 컴포넌트들(예를 들어, 스피커, 디스플레이 디바이스 등)로 출력되는 하나 이상의 신호를 생성할 수 있다.
그룹화 모듈(116)은 디스플레이 모듈(114)에 의해 디스플레이된 웹 애플리케이션(108)의 탭 행 내에 있는 2개 이상의 비그룹화되어 있는 탭들을, 디스플레이 모듈(114)에 의해 탭 행 내에서 디스플레이될 수 있는 하나 이상의 탭 그룹들로 그룹화한다. 그룹화 모듈(116)은 비그룹화되어 있는 모든 탭들을 새로운 단일 탭 그룹으로 그룹화하거나, 비그룹화되어 있는 탭들 각각과 연관된 도메인(domain)에 기초하여 비그룹화되어 있는 탭들을 하나 이상의 탭 그룹들로 그룹화하거나, 활성 탭에 대한 비그룹화되어 있는 탭들의 위치에 기초하여 비그룹화되어 있는 탭들을 그룹화하거나, 비그룹화되어 있는 탭들 각각과 연관된 오프너(opener)에 기초하여 비그룹화되어 있는 탭들을 하나 이상의 탭 그룹들로 그룹화하는 것 등과 같이, 비그룹화되어 있는 탭들을 다양한 상이한 방식으로 그룹화할 수 있다. 그룹화 모듈(116)은 컴퓨팅 디바이스(102)의 사용자로부터 입력 모듈(120)에서 수신된 입력에 기초하여 비그룹화되어 있는 탭들을 그룹화할 수 있고, 디스플레이 모듈(114)로 하여금 이러한 그룹화로부터 초래된 임의의 탭들 또는 탭 그룹들을 웹 애플리케이션(108)의 탭 행 내에서 디스플레이하게 할 수 있다. 대안적으로 또는 추가적으로, 컴퓨팅 디바이스(102)의 사용자는 비그룹화되어 있는 탭들의 여러 탭들을 함께 그룹화하지 않고서 비그룹화되어 있는 탭들을 관리하기를 원할 수 있다.
정렬(sort) 모듈(118)은 디스플레이 모듈(114)에 의해 디스플레이되는 웹 애플리케이션(108)의 탭 행에서 2개 이상의 탭들을 정렬시킨다. 정렬 모듈(118)은 컴퓨팅 디바이스(102)의 사용자에 의해 규정될 수 있는 다양한 방식으로 탭 행의 비그룹화되어 있는 탭들 및 탭 그룹들 둘 다를 정렬시킨다. 예를 들어, 정렬 모듈(118)은 비그룹화되어 있는 탭들 및 탭 그룹들 각각과 연관된 도메인에 기초하여 탭 행의 비그룹화되어 있는 탭들 및 탭 그룹들을 정렬시키고, 비그룹화되어 있는 탭들 및 탭 그룹들 각각과 연관된 오프너에 기초하여 정렬시킬 수 있다. 정렬 모듈(118)이 웹 애플리케이션(108)의 비그룹화되어 있는 탭들 및 탭 그룹들을 정렬시키는 방식은 컴퓨팅 디바이스(102)의 입력 모듈(120)에서 수신된 사용자 입력에 의해 규정될 수 있다.
입력 모듈(120)은 컴퓨팅 디바이스(102)의 사용자로부터 사용자 입력들을 수신한다. 사용자 입력들은 디바이스(102)의 키패드 또는 키보드의 하나 이상의 키들을 누름으로써, 디바이스(102)의 제어기(예를 들어, 원격 제어 디바이스, 마우스, 트랙패드 등)의 하나 이상의 키들을 누름으로써, 디바이스(102)의 터치패드 또는 터치스크린의 특정 부분을 누름으로써, 디바이스(102)의 터치패드 또는 터치스크린 상에서 특정 제스처를 취함으로써, 및/또는 디바이스(102)의 제어기(예를 들어, 원격 제어 디바이스, 마우스, 트랙패드 등) 상에서 특정 제스처를 취함으로써와 같이, 다양한 상이한 방식으로 제공될 수 있다. 사용자 입력들은 또한 디바이스(102)의 임의의 부분을 탭핑하는 것, (예를 들어, 셰이킹 디바이스(102), 회전 디바이스(102) 등과 같은) 디바이스(102)의 모션 검출 컴포넌트에 의해 인식될 수 있는 동작과 같은, 디바이스(102)에 입력되는 다른 물리적 피드백을 통해 제공될 수 있다. 사용자 입력들은 또한 마이크로폰으로의 가청 입력을 통해, 이미지 캡처 디바이스에 의해 관찰되는 손 또는 다른 신체 부분의 움직임 등을 통해서와 같이, 다른 방식으로 제공될 수 있다.
본 명세서에서는 특정 기능이 특정 모듈들을 참조하여 논의되었지만, 본 명세서에서 논의된 개별 모듈들의 기능은 복수의 모듈들로 분리될 수 있고/있거나, 복수의 모듈들의 적어도 일부 기능이 단일 모듈로 결합될 수 있음을 유의해야 한다. 추가적으로, 동작을 수행하는 것으로서 본 명세서에서 논의된 특정 모듈은 동작을 수행하는 해당 특정 모듈 자체를 포함하거나, 또는 대안적으로 동작을 수행하는(또는 해당 특정 모듈과 관련하여 동작을 수행하는) 다른 컴포넌트 또는 모듈을 인보크하거나 또는 이와 달리 액세싱하는 해당 특정 모듈을 포함한다. 따라서, 동작을 수행하는 특정 모듈은 동작을 수행하는 해당 특정 모듈 자체 및/또는 동작을 수행하는 해당 특정 모듈에 의해 인보크되거나 또는 이와 달리 액세스되는 다른 모듈을 포함한다.
추가적으로, 특정 모듈들이 본 명세서에서 설명되지만, 하나 이상의 실시예들에서 이들 모듈들 중 일부는 포함되지 않을 수 있음에 유의해야 한다. 예를 들어, 탭 관리 시스템(112)이 탭들을 그룹화하는 것을 지원하지만 탭들을 정렬시키는 것을 지원하지 않으면 정렬 모듈(118)은 컴퓨팅 디바이스(102) 내에 포함되지 않을 수 있다.
도 2는 하나 이상의 실시예들에 따른, 사용자 인터페이스(202)의 탭 행의 복수의 비그룹화되어 있는 탭들을 디스플레이하는 예시(200)를 도시한다. 사용자 인터페이스(202)는 탭 행(204)에 인접하게 배치된 탭 콘텐츠(218)의 디스플레이를 포함한다. 본 명세서에서 설명된 바와 같이, 탭 행(예시(200)에서 탭 행(204)으로서 도시됨)은 하나 이상의 탭들, 하나 이상의 탭 그룹들, 및 탭 콘텐츠(218)의 디스플레이 및 탭 콘텐츠와의 상호작용에 대한 하나 이상의 탭 제어부들을 디스플레이할 수 있는 지정된 디스플레이 영역(탭 관리 제어부(206), 새로운 탭 제어부(208), 및 탭들(210, 212, 214, 216)을 포함하는, 탭(210)의 좌측과 탭 제어부(208)의 우측에 있는 중괄호로 표시된 영역(204))을 가리킨다. 본 예시는 수평 레이아웃으로 있는 탭 행(204)을 설명하지만, 탭 행은 탭들, 탭 그룹들, 및 탭 제어부들을 다양한 다른 레이아웃들(예를 들어, 열(column) 방식으로 수직 배열됨)로 디스플레이할 수 있음을 유의해야 한다. 일부 실시예들에서, 탭 콘텐츠(218)와 같은 사용자 인터페이스(202)의 다른 영역들로부터 탭 행을 포함하는 영역을 사용자가 시각적으로 식별할 수 있도록 탭 행은 디스플레이될 수 있다. 탭 콘텐츠(218)는 탭 행 내의 활성 탭과 연관된 콘텐츠의 디스플레이에 대응한다. 본 예시에서, 사용자 인터페이스(202)는 웹 애플리케이션이고, 각각의 탭은 그룹화되어 있지 않고 상이한 웹 페이지와 연관되어 있다. 이 웹 애플리케이션 예시에서 탭(214)이 활성 탭이라고 가정하면, 탭 콘텐츠(218)는 대응하는 웹 페이지 "Bing: Spokane"으로부터의 콘텐츠를 디스플레이할 것이다.
도 2에서는 4개의 탭들이 도시되어 있지만, 탭 행 내에서 복수의 비그룹화되어 있는 탭들이 존재하는 한, 탭 행 내에서의 탭들의 수에 관계없이, 탭 관리 제어부의 기능은 동일하게 작동한다는 점에 유의해야 한다. 탭 관리 제어부의 기능은 또한 (예를 들어, 열려 있는 탭들의 수가 탭 행에서 디스플레이될 수 있는 탭들의 최대 개수를 초과할 때) 사용자 인터페이스(202)에서 현재 디스플레이되지 않은 비그룹화되어 있는 탭들을 그룹화하는 것을 포함할 수 있다. 탭 행이 단지 하나의 비그룹화되어 있는 탭을 포함하는 특정 실시예들에서, 탭 관리 제어부의 기능은 디스에이블될 수 있다.
도 3은 하나 이상의 실시예들에 따른, 탭 행에서 디스플레이된 복수의 탭들을 탭 그룹으로 그룹화하기 위한 예시적인 프로세스(300)를 도시하는 흐름도이다. 프로세스(300)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 프로세스(300)는 도 1에서 도시된 탭 관리 시스템(112)에 의해 구현될 수 있다. 프로세스(300)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(300)는 탭 행에서 디스플레이된 복수의 탭들을 탭 그룹으로 그룹화하기 위한 예시적인 프로세스이며, 탭 행에서 디스플레이된 복수의 탭들을 탭 그룹으로 그룹화하는 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(300)에서, 복수의 탭들이 사용자 인터페이스의 탭 행에서 디스플레이된다(동작 302). 복수의 탭들 각각은 상이한 자원 위치들로부터의 콘텐츠에 대응한다. 대안적으로, 복수의 탭들 중 2개 이상은 동일한 자원 위치로부터의 콘텐츠에 대응한다는 점에서 2개 이상의 탭들은 서로 중복된 것일 수 있다. 본 명세서에서 설명된 바와 같이, 자원 위치는 컴퓨팅 디바이스가 콘텐츠에 액세스하고/액세스하거나 이와 상호작용할 수 있도록 콘텐츠를 호스팅하고, 저장하거나, 또는 그렇지 않고 이를 지원하는 위치를 가리킨다. 자원 위치는 일반적으로, 월드 와이드 웹 상의 콘텐츠를 언급하는 모든 유형의 명칭과 주소에 대한 일반적인 용어인 URI(Uniform Resource Identifier)로 표시된다. 자원 위치는 프로세스(300)를 구현하는 컴퓨팅 디바이스로부터 원격지에 있거나(예를 들어, 도 1에서 도시된 바와 같이 네트워크(106)를 통해 서버(104)로부터 액세스가능), 또는 컴퓨팅 디바이스에 로컬(예를 들어, 도 1에서 도시된 바와 같은 컴퓨팅 디바이스(102) 상에 위치된 웹 애플리케이션(108) 또는 애플리케이션들(110))로 있을 수 있다.
단일 동작 사용자 입력이 수신된다(동작 304). 단일 동작 사용자 입력은 도 1의 입력 모듈(120)에 의해 수신될 수 있으며, 상술된 임의의 입력 방식들을 포함한다. 본 명세서에서 설명된 바와 같이, 단일 동작 사용자 입력은 사용자가 단일 동작을 통해 컴퓨팅 디바이스에서 입력할 수 있는 임의의 형태의 입력을 가리킨다. 예를 들어, 단일 동작 사용자 입력은 제어부 또는 아이콘의 좌 클릭, 손가락 스윕핑(finger swipe)과 같이 사용자 디바이스의 트랙패드 또는 터치스크린 상에서의 단일 동작 제스처 등일 수 있다. 이와는 대비되어, 다중 동작 사용자 입력은 더블 클릭, 터치스크린 또는 트랙패드 상에서의 더블 탭핑, 드래그 앤드 드롭 제스처 등과 같은 다중 동작들을 포함한다.
단일 동작 사용자 입력을 수신한 것에 응답하여, 탭 행에서 디스플레이된 복수의 탭들 중 비그룹화되어 있는 탭들이 탭 행에서 새로운 탭 그룹으로 그룹화된다(동작 306). 프로세스(300)를 구현하는 시스템은 그룹화가 특정 유형의 단일 동작 사용자 입력들에만 응답하여 수행되도록 동작 306에서 단일 동작 사용자 입력들의 상이한 사용자 입력들 간을 추가로 식별할 수 있다(예를 들어, 좌 클릭 입력을 수신한 것에 응답하여 그룹화하지만, 우 클릭 입력을 수신한 것에 응답하여 그룹화 이외의 다른 동작을 수행함). 이 그룹화의 일부로서, 새로운 탭 그룹은 비그룹화되어 있는 탭으로부터 시각적으로 식별가능한 것으로서 탭 행에서 디스플레이된다. 예를 들어, 탭 행에서 비그룹화되어 있는 탭으로부터 시각적으로 식별가능한 탭 그룹을 디스플레이하는 것은 그룹 내 탭들의 수를 나타내는 수치값을 탭 그룹에서 디스플레이하는 것, 비그룹화되어 있는 탭 색상과는 상이한 색상으로 탭 그룹을 디스플레이하는 것, 탭 그룹을 복수의 비그룹화되어 있는 탭들로서 계단식 디스플레이에서 디스플레이하는 것 등을 포함할 수 있다.
동작 306에서의 이러한 그룹화는 복수의 탭들이 밀집화되거나 탭 그룹으로 그룹화되기 때문에(예를 들어, 복수의 탭들 대신에 단일 탭 그룹이 디스플레이됨) 컴퓨팅 디바이스 상에서 사용자 인터페이스를 위해 필요한 공간을 감소시킨다. 동작 306에서의 이러한 그룹화는 또한 디스플레이되는 탭들의 수를 감소시키며(예를 들어, 복수의 탭들 대신에 단일 탭 그룹이 디스플레이됨), 이에 따라 디스플레이되는 탭들의 수를 감소시킴으로써 컴퓨팅 디바이스와의 사용자 상호작용의 효율성을 증가시킨다.
새로운 탭이 또한 탭 행에서 디스플레이된다(동작 308). 새로운 탭은 웹 애플리케이션 구현에서의 웹 페이지 또는 워드 프로세싱 애플리케이션 구현에서의 빈 문서와 같은 디폴트 자원 위치로 자동적으로 열릴 수 있다. 탭 행에서 새로운 탭이 디스플레이되는 방식을 사용자가 개인설정할 수 있도록, 새로운 탭 디스플레이 위치 및 새로운 탭과 연관된 콘텐츠에 대한 디폴트 설정이 사용자에 의해 구성될 수 있다.
도 4는 하나 이상의 실시예들에 따른, 탭 행의 새로운 탭에 인접하여 디스플레이된 탭 행의 탭 그룹의 예시(400)를 도시한다. 예시(400)에서, 탭 관리 제어부(206)에서의 단일 동작 사용자 입력(예를 들어, 탭 관리 제어부(206)를 클릭하거나 또는 터치하는 사용자 입력)에 응답하여, 새로운 탭 그룹(402)이 탭 행(204)에서 디스플레이된다. 본 예시에서, 탭 관리 제어부(206)의 디폴트 기능은 비그룹화되어 있는 모든 탭들을 새로운 그룹으로 그룹화하는 것이다. 탭 그룹(402)은 도 2의 비그룹화되어 있는 탭들(210, 212, 214, 216)을 포함하며, 탭 행에서 비그룹화되어 있는 탭으로부터 시각적으로 식별가능한 것으로서 디스플레이된다. 탭 그룹(402)이 비그룹화되어 있는 탭들(210, 212, 214, 216)을 대신하여 디스플레이된다. 비그룹화되어 있는 모든 탭들을 탭 그룹(402)으로 그룹화한 결과로서 새로운 탭(404)이 자동적으로 디스플레이된다. 새로운 탭(404)은 자동적으로 활성화되고, 새로운 탭 콘텐츠(406)가 사용자 인터페이스에서 디스플레이된다. 도시되지는 않았지만, 탭 그룹(402)은 탭 그룹 내에 그룹화된 복수의 탭들의 시각적 표시를 디스플레이할 수 있다.
비그룹화되어 있는 탭들 모두를 새로운 그룹으로 그룹화하는 것은 단일 동작 사용자 입력과 연관된 기능의 한가지 예시이다. 이 예시는 단일 동작 사용자 입력과 관련된 기능을 제한하는 것으로 의도된 것이 아니며 그렇게 해석되어서도 안된다. 단일 동작 사용자 입력을 수신한 것에 응답하여, 비그룹화되어 있는 탭들 각각과 연관된 도메인에 기초하여 비그룹화되어 있는 탭들을 하나 이상의 탭 그룹들로 그룹화하는 것, 활성 탭에 대한 비그룹화되어 있는 탭들의 위치에 기초하여 비그룹화되어 있는 탭들을 그룹화하는 것, 비그룹화되어 있는 탭들 각각과 연관된 오프너에 기초하여 비그룹화되어 있는 탭들을 하나 이상의 탭 그룹들로 그룹화하는 것 등과 같은, 다양한 다른 동작들이 수행될 수 있다. 이러한 추가적인 기능들이 수행되는 방식은 아래에서 더 자세히 설명된다.
도 5는 하나 이상의 실시예들에 따른, 사용자 선택에 따라 탭 행의 비그룹화되어 있는 탭들을 그룹화하기 위한 예시적인 프로세스(500)를 도시하는 흐름도이다. 프로세스(500)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 프로세스(500)는 도 1에서 도시된 탭 관리 시스템(112)의 그룹화 모듈(116)에 의해 구현될 수 있다. 프로세스(500)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(500)는 사용자 선택에 따라 탭 행의 비그룹화되어 있는 탭들을 그룹화하는 예시적인 프로세스이며, 사용자 선택에 따라 탭 행의 비그룹화되어 있는 탭들을 그룹화하는 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(500)에서, 사용자 입력이 수신된다(동작 502). 사용자 입력은 상술한 다양한 방식들 중 임의의 방식으로 수신될 수 있다.
탭들을 그룹화하기 위한 하나 이상의 옵션들이 사용자 입력을 수신한 것에 응답하여 디스플레이된다(동작 504). 이 사용자 입력은 임의의 유형의 적절한 입력을 포함하며, 단일 동작 사용자 입력 또는 다중 동작 사용자 입력 중 하나일 수 있다. 프로세스(500)를 구현하는 시스템은, 특정 유형의 사용자 입력들에만 응답하여 옵션들이 디스플레이되도록, 사용자 입력들 중 상이한 입력들 간을 동작 504에서 식별할 수 있다(예를 들어, 우 클릭 입력을 수신한 것에 응답하여 하나 이상의 옵션들을 디스플레이하지만, 좌 클릭 입력을 수신한 것에 응답하여 하나 이상의 옵션들을 디스플레이하는 것 이외의 다른 동작을 수행함). 하나 이상의 실시예들에서, 사용자가 디스플레이의 여러 영역에 주의를 기울일 필요없이 옵션들 중 하나를 쉽게 선택할 수 있도록, 탭들을 그룹화하기 위한 하나 이상의 옵션들은 사용자 입력이 수신되었던 디스플레이의 대응 위치에서 디스플레이된다. 그러나, 옵션들은 프로세스(500)를 구현하는 컴퓨팅 디바이스의 디스플레이 영역 내의 임의의 위치에서 디스플레이될 수 있음을 알아야 한다.
하나 이상의 옵션들 중 하나의 옵션의 선택을 표시하는 사용자 입력이 수신된다(동작 506). 하나 이상의 옵션들 중 하나의 옵션의 선택을 표시하는 이러한 사용자 입력은 상술한 다양한 방식들 중 임의의 방식으로 수신될 수 있다.
하나 이상의 옵션들 중 하나의 옵션의 선택을 표시하는 사용자 입력을 수신한 것에 응답하여, 탭 행의 비그룹화되어 있는 탭들이 이러한 선택에 따라 그룹화된다(동작 508).
동작 508에서의 이러한 그룹화는 복수의 탭들이 밀집화되거나 탭 그룹으로 그룹화되기 때문에(예를 들어, 복수의 탭들 대신에 단일 탭 그룹이 디스플레이됨) 컴퓨팅 디바이스 상에서 사용자 인터페이스를 위해 필요한 공간을 감소시킨다. 동작 508에서의 이러한 그룹화는 또한 디스플레이되는 탭들의 수를 감소시키며(예를 들어, 복수의 탭들 대신에 단일 탭 그룹이 디스플레이됨), 이에 따라 디스플레이되는 탭들의 수를 감소시킴으로써 컴퓨팅 디바이스와의 사용자 상호작용의 효율성을 증가시킨다.
도 6은 하나 이상의 실시예들에 따른, 탭 행의 비그룹화되어 있는 탭들을 관리하기 위한 하나 이상의 옵션들을 디스플레이하는 예시를 도시한다. 본 예시에서, 탭 관리 제어부(206)에서 사용자 입력을 수신한 것에 응답하여, 탭들을 관리하기 위한 옵션들(602, 604, 606, 608, 610, 612, 614)이 디스플레이된다.
옵션(602)은 도 4를 참조하여 위에서 설명한 바와 같이, 탭 행에서 디스플레이된 비그룹화되어 있는 모든 탭들을 탭 그룹으로 그룹화하는 옵션을 제공한다.
옵션(604)은 탭 행 내에서 활성 탭의 좌측에 위치해 있는 비그룹화되어 있는 모든 탭들을 탭 그룹으로 그룹화하는 옵션을 제공한다. 이 예시에서는, 탭(214)이 활성 탭이다. 옵션(604)의 선택에 응답하여, 탭(214)의 좌측에 디스플레이된 비그룹화되어 있는 모든 탭들이 탭 그룹으로 그룹화된다. 본 예시를 계속 이어가면, "bing.com" 및 "날씨 리포트" 탭들은 탭 행에서 탭(214)의 좌측에 디스플레이되고 있기 때문에 옵션(604)의 선택에 응답하여 탭 그룹으로 그룹화될 것이다. 대안적으로, 탭(214)이 또한 옵션(604)의 선택에 응답하여 탭 그룹으로 그룹화될 수 있다.
도 7은 하나 이상의 실시예들에 따른, 탭 행의 복수의 비그룹화되어 있는 탭들이 사용자 선택에 따라 그룹화되는 예시(700)를 도시한다. 예시(700)에서, "좌측 모두 스윕핑" 옵션(604)의 사용자 선택에 응답하여 활성 탭(214)의 좌측에 배치된 탭 행의 비그룹화되어 있는 탭들이 그룹(702)으로 그룹화된다. 이 예시에서, 활성 탭(214)은 그룹화되지 않은 상태로 남고, 활성 탭(214)과 연관된 콘텐츠(218)가 사용자 인터페이스에서 디스플레이된다. 대안적으로, 전술한 바와 같이, 옵션(604)은 활성 탭(214)을 포함시켜서 그룹화를 수행할 수 있다. 이러한 대안적인 예시에서, 그룹(702)은 탭(214)을 포함하고, 탭(216)이 활성 탭이 되며, 탭(216)에 대응하는 콘텐츠(218)가 사용자 인터페이스에서 디스플레이된다.
도 6으로 되돌아가면, 옵션(606)은 탭 행 내에서 활성 탭의 우측에 위치해 있는 비그룹화되어 있는 모든 탭들을 탭 그룹으로 그룹화하는 옵션을 제공한다. 이 예시에서는, 탭(214)이 활성 탭이다. 옵션(604)의 선택에 응답하여, 탭(214)의 우측에 디스플레이된 임의의 비그룹화되어 있는 탭들이 탭 그룹으로 그룹화된다. 대안적으로, 탭(214)이 또한 옵션(604)의 선택에 응답하여 탭 그룹으로 그룹화될 수 있다.
옵션(608)은 비그룹화되어 있는 탭과 연관된 각각의 도메인에 기초하여 탭 행에서 디스플레이된 비그룹화되어 있는 모든 탭들을 하나 이상의 탭 그룹들로 그룹화하는 옵션을 제공하며, 이는 도 8을 참조하여 심화적으로 설명된다. 웹 애플리케이션 예시에서, 도메인은 해당 도메인 내의 하위 웹사이트 또는 페이지에 액세스할 수 있도록 해주는 최상위 웹사이트에 대응한다. 예를 들어, MSN.com은 도메인 MSN뿐만 아니라 URL MSN.com과 연관된 최상위 웹사이트이다. 이와는 대비되어, MSN.com/Sports가 또한 도메인 MSN과 연관되어 있지만, 이는 URL MSN.com/Sports과 연관된 하위 웹사이트 또는 페이지이다.
도 8은 하나 이상의 실시예들에 따른, 탭 그룹 행의 복수의 비그룹화되어 있는 탭들이 사용자 선택에 따라 그룹화되는 예시(800)를 도시한다. 예시(800)에서, "도메인별로 스윕핑" 옵션(608)의 사용자 선택에 응답하여 탭 행의 비그룹화되어 있는 탭들이 그룹들(802, 804)로 그룹화된다. 탭 그룹들(802, 804)은 공통 도메인을 갖는 그룹화된 탭들을 나타낸다. 이 예시를 계속 이어가면, 그룹(802)은 탭(210)("bing.com")과 탭(214)("Bing: Spokane")을 포함하고, 그룹(804)은 탭(212)("날씨 리포트")과 탭(216)("시애틀 날씨")를 포함한다. 비그룹화되어 있는 탭들이 공통 도메인을 공유하면 탭 행의 비그룹화되어 있는 탭들은 함께 그룹화된다. 특정 실시예들에서, 탭 그룹들(802, 804)은 탭 그룹의 개별 탭들에 의해 공유된 공통 도메인에 기초하여 자동적으로 라벨링된다. 예를 들어, 탭 그룹(802)은 탭들(210, 214)의 공통 도메인(예를 들어, http://www.bing.com)에 기초하여 자동적으로 "Bing 그룹"으로 라벨링된다. 대안적으로 또는 추가적으로, 사용자는 탭 그룹들이 자동적으로 명명되는 방법을 사용자맞춤화할 수 있다.
예시(800)에서, 탭 행 내의 비그룹화되어 있는 모든 탭들이 하나 이상의 탭 그룹들로 그룹화된 것에 응답하여 새로운 탭(806)이 디스플레이된다. 일부 상황 실시예들에서, 탭 행 내에서의 하나 이상의 비그룹화되어 있는 탭들은 탭 행 내에서의 다른 임의의 비그룹화되어 있는 탭들과 공통 도메인을 공유하지 않을 수 있다. 이러한 상황에서, 옵션(608)의 선택은 탭 행에서 공통 도메인을 공유하는 임의의 두 개 이상의 탭들에 대한 하나 이상의 그룹들을 탭 행에서 생성시킨다. 임의의 다른 비그룹화되어 있는 탭과 공통 도메인을 공유하지 않는 비그룹화되어 있는 탭들의 디스플레이는 옵션(608)의 선택에 영향을 받지 않는다. 대안적으로, 임의의 다른 비그룹화되어 있는 탭과 공통 도메인을 공유하지 않는 비그룹화되어 있는 탭들은 탭 그룹으로 함께 그룹화되고 이에 따라 라벨링(예컨대, "기타 그룹")될 수 있다.
도 6으로 되돌아가면, 옵션(610)은 탭과 연관된 오프너에 기초하여 탭 행에서 디스플레이된 비그룹화되어 있는 모든 탭들을 하나 이상의 탭 그룹들로 그룹화하는 옵션을 제공한다. 웹 애플리케이션 예시에서, 오프너는 다른 최상위 웹 사이트들과 하위 웹사이트들에 액세스할 수 있도록 해주는 최상위 웹사이트에 대응한다. 위에서 논의한 도메인에 기초하여 비그룹화되어 있는 탭들을 그룹화하는 것과는 대조적으로, 탭과 연관된 오프너에 기초하여 비그룹화되어 있는 탭들을 그룹화하는 것은 탭과 연관된 도메인과는 독립적으로 수행된다. 예를 들어, 개별 탭들이 상이한 웹 페이지들과 연관되어 있는 웹 애플리케이션에서, 제1 웹 페이지 상의 링크와의 사용자 상호작용은 추가적인 탭에서 제2 웹 페이지가 열리도록 할 수 있다. 추가적인 탭에서 열린 이 제2 웹 페이지로부터, 제2 웹 페이지에서의 제2 링크와의 사용자 상호작용은 다른 추가적인 탭에서 제3 웹 페이지가 열리도록 하는 식으로 진행될 수 있다. 추가적으로, 사용자는 제1, 제2, 또는 제3 웹 페이지들에서의 입력과는 독립적으로 제4 웹 페이지를 열 수 있다. 사용자는 제4 웹 페이지와 추가로 상호작용하여 제5 웹 페이지를 열 수 있다. 이 예시에서, 제1 및 제4 웹 페이지들은 "오프너" 웹 페이지들일 것이다. 제1 웹 페이지는 제2 및 제3 웹 페이지들에 대한 오프너이며, 제4 웹 페이지는 제5 웹 페이지에 대한 오프너이다. 이 예시를 계속 이어가면, 오프너에 기초하여 비그룹화되어 있는 모든 탭들을 그룹화하는 것은 제1, 제2, 및 제3 웹 페이지들에 대응하는 탭들을 하나의 그룹으로 그룹화하고, 제4 및 제5 웹 페이지들에 대응하는 탭들을 제2 그룹으로 그룹화할 것이다.
옵션(612)은 비그룹화되어 있는 탭과 연관된 각각의 도메인에 기초하여 탭 행에서 디스플레이된 비그룹화되어 있는 모든 탭들을 정렬시키는 옵션을 제공하며, 이는 아래에서 심화적으로 설명된다.
옵션(614)은 비그룹화되어 있는 탭과 연관된 각각의 오프너에 기초하여 탭 행에서 디스플레이된 비그룹화되어 있는 모든 탭들을 정렬시키는 옵션을 제공하며, 이는 아래에서 심화적으로 설명된다.
비록 7개의 탭 관리 옵션들이 도 6에서 도시되어 있지만, 설명된 탭 관리 옵션들은 예시로서 개시된 것이고, 디스플레이될 수 있는 탭 관리 옵션들을 망라하거나, 여기에 설명된 탭 관리 기술을 제한하려고 의도된 것이 아님을 유의해야 한다. 추가적으로, 모든 실시예들이 7개의 탭 관리 옵션들 모두를 포함하는 것은 아님을 유의해야 한다. 예를 들어, 옵션(608) "도메인별로 스윕핑" 및/또는 옵션(610) "오프너별로 스윕핑"이 포함되지 않을 수 있다. 또한, 본 예시는 탭 관리 제어부(206)에서 사용자 입력을 수신한 것에 응답하여 하나 이상의 옵션들을 디스플레이하는 것을 예시하고 있지만, 탭 행 내 다른 곳에서(예를 들어, 탭 행에서 디스플레이된 비그룹화되어 있는 탭에서) 사용자 입력을 수신한 것에 응답하여 하나 이상의 옵션들이 또한 디스플레이될 수 있다.
또한, 도 2와 도 4에 관한 상기 설명에서는, 비그룹화되어 있는 모든 탭들을 새로운 그룹으로 그룹화하는 탭 관리 제어부(206)의 디폴트 기능을 참조하였다. 대안적으로, 탭 관리 제어부(206)의 디폴트 기능은 옵션들(604, 606, 608, 610, 612 또는 614) 중 임의의 것을 참조하여 여기에서 설명된 기능일 수 있다.
하나 이상의 탭 그룹들을 생성한 후, 사용자는 탭 그룹으로 함께 그룹화된 비그룹화 형태의 개별 탭들을 추가로 관리하거나/관리하고 이와 상호작용하기 위해 하나 이상의 탭 그룹들 중 하나와 상호작용하는 것을 희망할 수 있다. 예를 들어, 사용자는 탭 그룹으로 그룹화하려고 의도되지 않았던 탭들을 실수로 너무 많이 포함시켰을 수 있다. 대안적으로 또는 추가적으로, 사용자는 탭 그룹의 개별 탭들을 보기 위해 탭 그룹을 펼쳐보기하기, 펼쳐보기된 탭 그룹을 접기, 탭 그룹을 닫기, 탭 그룹을 공유하기, 탭 그룹을 즐겨찾기로 지정하기 등을 원할 수 있다.
도 9는 하나 이상의 실시예들에 따른, 탭 그룹에 대응하는 동작을 수행하기 위한 예시적인 프로세스를 도시하는 흐름도이다. 프로세스(900)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 프로세스(900)는 도 1에서 도시된 탭 관리 시스템(112)에 의해 구현될 수 있다. 프로세스(900)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(900)는 탭 그룹에 대응하는 동작을 수행하기 위한 예시적인 프로세스이며, 탭 그룹에 대응하는 동작을 수행하기 위한 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(900)에서, 탭 그룹에 대응하는 입력이 수신된다(동작 902). 입력은 상술한 다양한 방식들 중 임의의 방식으로 수신될 수 있고, 도 1에서 도시된 입력 모듈(120)에 의해 수신될 수 있다. 예를 들어, 입력은 탭 행에서 디스플레이된 탭 그룹에 대한 우 클릭, 더블 탭핑, 탭 앤드 드래그 제스처 등일 수 있다. 하나 이상의 실시예들에서, 탭 그룹에 대응하는 입력은 탭 행 내의 탭 그룹의 디스플레이 영역에 대응하는 디스플레이 영역에서의 입력을 검출하는 입력 모듈(120)에 의해 표시될 수 있다.
선택적 사항으로서, 탭 그룹에 대응하는 입력을 수신한 것에 응답하여 복수의 탭 그룹 옵션들이 디스플레이된다(동작 904).
선택적 사항으로서, 복수의 탭 그룹 옵션들 중 하나의 탭 그룹 옵션의 선택이 수신된다(동작 906).
탭 그룹에 대응하는 동작이 수행된다(동작 908). 복수의 탭 그룹 옵션들이 디스플레이되고 복수의 탭 그룹 옵션들 중 하나가 선택되는 실시예들에서, 프로세스(900)를 구현하는 시스템은 동작 908에서, 선택된 옵션에 대응하는 동작을 수행한다.
도 10은 하나 이상의 실시예들에 따른, 탭 그룹에 대응하는 동작을 수행하기 위한 하나 이상의 옵션들을 디스플레이하는 예시(1000)를 도시한다. 예시(1000)에서, 탭 그룹(802)에서 사용자 입력을 수신한 것에 응답하여, 하나 이상의 탭 그룹 옵션들(1002, 1004, 1006, 1008, 1010)이 디스플레이된다.
옵션(1002)은 탭 그룹을 펼쳐보기하는 옵션을 제공한다. 탭 그룹을 펼쳐보기하는 것은 탭 그룹의 복수의 탭들이 함께 그룹화되어 있다라는 시각적 표시와 함께 탭 그룹의 복수의 탭들을 탭 행에서 비그룹화되어 있는 탭들로서 디스플레이하는 것을 포함한다. 시각적 표시는 윤곽표시, 음영표시, 채색 코딩 등과 같은 임의의 종류의 시각적 표시일 수 있다. 탭 그룹을 펼쳐보기하는 것에 대한 추가적인 논의가 도 11 및 도 12와 관련하여 이하에서 설명된다.
옵션(1004)은 탭 그룹의 이름을 변경하는 옵션을 제공한다. 적어도 일부 실시예들에서, 사용자는, 옵션(1004)을 선택한 것에 응답하여, 디스플레이된 탭 그룹 이름을 편집하거나 변경할 수 있다.
옵션(1006)은 탭 그룹의 복수의 탭들을 "즐겨찾기"로서 지정하는 옵션을 제공한다. 탭 그룹을 즐겨찾기로서 지정하는 것은 나중의 액세스를 위해 탭 그룹의 복수의 탭들 각각에 대한 자원 위치를 생성하고/생성하거나 저장할 수 있다. 예를 들어, 웹 애플리케이션 구현에서, 탭 그룹을 즐겨찾기로서 지정하는 것은 즐겨찾기 목록 또는 북마크 목록에서의 디스플레이를 위해 탭 그룹 및/또는 탭 그룹의 복수의 탭들의 하나 이상의 표현물들을 생성할 수 있다.
옵션(1008)은 탭 그룹의 복수의 탭들을 공유하는 옵션을 제공한다. 적어도 일부 실시예들에서, 탭 그룹의 복수의 탭들 각각에 대응하는 링크들이 생성되어 사용자가 공유할 때에 이용가능하게 된다. 이러한 링크들은 디바이스에서 구현된 메시징 서비스에 복사되거나, 문서에 저장되거나, 이메일을 통해 전송되거나, 소셜 네트워킹 서비스에 게시되는 등의 다양한 방식으로 공유하는데 이용가능할 수 있다.
옵션(1010)은 탭 그룹의 복수의 모든 탭들을 닫는 옵션을 제공한다. 예를 들어, 옵션(1010)의 선택에 응답하여 탭 그룹의 복수의 탭들은 닫히고 탭 행에서의 디스플레이로부터 제거될 것이다.
비록 5개의 탭 그룹 옵션들이 도 10에서 도시되어 있지만, 설명된 탭 그룹 옵션들은 예시로서 개시된 것이며, 여기에 설명된 기술들을 망라하거나 제한하려고 의도된 것이 아님을 유의해야 한다. 추가적인 탭 그룹 옵션들이 디스플레이될 수 있고/있거나 도 10에서 디스플레이된 하나 이상의 탭 그룹 옵션들이 디스플레이되지 않을 수 있다.
사용자는 이러한 옵션들을 활용하여 탭 그룹으로 그룹화되었던 개별 탭들을 추가로 관리하고 이와 상호작용할 수 있다. 예를 들어, 많은 탭 그룹들이 탭 행에서 디스플레이될 때 사용자는 단하나의 탭 그룹의 개별 탭들만을 보기를 원할 수 있다. 이 경우, 사용자는 탭 그룹들 중 특정 탭 그룹을 펼쳐보기하는 옵션(1002)을 선택할 수 있다. 그룹에 대응하는 동작을 수행하는 것은 사용자가 그룹 내의 각각의 상이한 탭에 대해 개별적으로 조작하기보다는, 사용자가 원하는 탭들의 그룹에 대해 동작들이 수행되도록 함으로써 컴퓨팅 디바이스와의 사용자 상호작용의 효율성을 증가시킨다.
도 11은 하나 이상의 실시예들에 따른, 탭 행에서 탭 그룹을 펼쳐보기 위한 예시적인 프로세스(1100)를 도시하는 흐름도이다. 프로세스(1100)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 프로세스(1100)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(1100)는 탭 행에서 탭 그룹을 펼쳐보기 위한 예시적인 프로세스이며, 탭 행에서 탭 그룹을 펼쳐보는 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(1100)에서, 하나 이상의 탭 그룹들이 탭 행에서 디스플레이된다(동작 1102).
하나 이상의 탭 그룹들 중 선택된 탭 그룹을 펼쳐보기하라는 요청이 수신된다(동작 1104).
선택적 사항으로서, 프로세스(1100)는 하나 이상의 탭 그룹들 중 하나의 탭 그룹이 탭 행에서 현재 펼쳐보기되어 있는지를 체크한다(동작 1106).
하나 이상의 탭 그룹들 중 하나의 탭 그룹이 탭 행에서 현재 펼쳐보기되어 있다고 프로세스(1100)가 결정하면, 현재 펼쳐보기된 탭 그룹은 접혀지고 탭 행에서 탭 그룹으로서 디스플레이된다(동작 1108).
그 후, 프로세스(1100)는 탭 그룹의 펼쳐보기된 탭들이 선택된 탭 그룹에 속한다는 시각적 표시와 함께 탭 행에서 선택된 탭 그룹의 펼쳐보기된 뷰를 디스플레이한다(동작 1110).
도 12는 하나 이상의 실시예들에 따른, 탭 행에서 펼쳐보기된 탭 그룹을 디스플레이하는 예시(1200)를 도시한다. 예시(1200)에서, 탭 그룹(예컨대, 도 8의 탭 그룹(802))은 탭들(1202, 1204)을 포함한다. 탭 그룹(802)을 펼쳐보기하라는 요청을 수신한 것에 응답하여, 탭들(1202, 1204)이 공통 탭 그룹(탭 그룹(802))에 속한다는 시각적 표시와 함께 탭들(1202, 1204)이 탭 행에서 디스플레이된다. 본 예시에서, 시각적 표시는 탭들(1202, 1204)의 음영표시이다. 그러나, 전술한 바와 같이, 시각적 표시는 탭 행 내의 탭 그룹의 펼쳐보기된 탭들을 펼쳐보기되지 않은 탭 그룹들(예컨대, 탭 그룹(804)) 및 비그룹화되어 있는 탭들(예컨대, 탭(806))로부터 시각적으로 식별하는 임의의 표시일 수 있다. 본 예시는 탭(806)을 활성 탭으로서 도시하고 있지만, 특정 구현예들에서, 탭 그룹을 펼쳐보기하라는 요청을 수신한 것에 응답하여, 펼쳐보기된 탭 그룹의 복수의 탭들 중 하나는 자동적으로 활성 탭이 될 수 있다. 활성 탭은 다양한 고려사항에 기초하여(예컨대, 가장 최근에 액세스된 탭에 기초하여, 펼쳐보기된 탭 그룹의 탭이 "즐겨찾기" 탭인지 여부에 기초하여 등등) 자동으로 선택될 수 있다.
도 13은 하나 이상의 실시예들에 따른, 탭 행에 대한 입력들에 기초하여 디스플레이를 변경시키기 위한 예시적인 프로세스(1300)를 도시하는 흐름도이다. 프로세스(1300)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 프로세스(1300)는 도 1의 탭 관리 시스템(112)에 의해 구현될 수 있다. 프로세스(1300)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(1300)는 탭 행에 대한 입력들에 기초하여 디스플레이를 변경하기 위한 예시적인 프로세스이며, 탭 행에 대한 입력들에 기초하여 디스플레이를 변경하는 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(1300)에서, 하나 이상의 탭들 또는 탭 그룹들이 탭 행에서 디스플레이된다(동작 1302).
탭 행 내의 하나 이상의 탭들 및/또는 탭 그룹들에 대응하는 입력이 수신된다(동작 1304). 입력은, 아래에서 보다 상세히 설명되는 바와 같이, 미리보기를 디스플레이하는 것, 탭 행 내의 탭의 디스플레이 위치를 조정하는 것 등과 같은 상이한 동작들에 대응할 수 있다.
수신된 입력에 응답하여 디스플레이가 변경된다(동작 1306). 미리보기를 디스플레이하기, 탭을 탭 행 내의 상이한 위치에서 디스플레이하기 등과 같은 상이한 방식으로 디스플레이가 변경될 수 있다. 동작(1306)에서 디스플레이를 변경하는 것은, 사용자 자신이 원하는 정보에 사용자가 보다 신속하게 액세스할 수 있도록 사용자에게 추가적인 정보를 제공하거나, 또는 디스플레이되는 탭들의 수를 감소시킴으로써, 컴퓨팅 디바이스와의 사용자 상호작용의 효율성을 증가시킨다.
도 14는 하나 이상의 실시예들에 따른, 탭 행에서의 하나 이상의 탭들의 미리보기를 디스플레이하는 예시(1400)를 도시한다. 예시(1400)에서, 탭들(1202, 1204)이 탭 그룹(802)에 속한다는 것을 보여주는 시각적 표시와 함께 탭 행에서 탭들(1202, 1204)을 디스플레이하도록 탭 그룹(예를 들어, 도 8의 탭 그룹(802))이 펼쳐보기된다. 탭들(1202 또는 1204) 중 하나에 대응하는 입력을 수신한 것에 응답하여, 탭들(1202, 1204)과 연관된 콘텐츠의 미리보기들(1402, 1404)이 사용자 인터페이스에서 디스플레이된다. 탭들(1202 또는 1204) 중 하나에 대응하는 입력은 전술한 다양한 방식들 중 임의의 방식으로 수신될 수 있다. 예를 들어, 입력은 호버 이벤트, 더블 클릭, 더블 탭핑, 또는 탭들(1202 또는 1204) 중 하나에서 검출된 임의의 다른 방식의 입력일 수 있다. 예를 들어, 마우스 입력 시나리오를 사용하는 경우, 호버 이벤트는 디스플레이된 엘리먼트를 활성화시킬 필요없이 마우스 포인터가 디스플레이된 엘리먼트 위로 "호버링"하는 경우에 대응한다. 반면에, 해당 엘리먼트를 (해당 엘리먼트를 클릭함으로써) 활성화시키는 것은 상이한 동작을 초래할 수 있다.
사용자 인터페이스에서 탭 행 위에 미리보기들(1402, 1404)이 디스플레이되는 것이 도시되어 있지만, 미리보기(1402, 1404)는 사용자 인터페이스의 임의의 위치에서 디스플레이될 수 있다. 본 명세서에서 설명된 바와 같이, 미리보기는 탭 행에서 디스플레이된 탭과 연관된 콘텐츠의 미리보기 디스플레이를 가리킨다. 미리보기는 사용자로 하여금 개별 탭들을 네비게이팅할 필요없이 탭과 연관된 콘텐츠의 디스플레이를 빠르게 볼 수 있게 해준다. 미리보기에서 디스플레이되는 콘텐츠는 탭과 연관된 웹 페이지의 현재 콘텐츠, 탭이 마지막으로 활성화되었을 때 가장 최근에 보여졌던 디스플레이 영역 등과 같이, 탭과 연관된 콘텐츠의 임의의 디스플레이일 수 있다. 대안적으로 또는 추가적으로, 비그룹화되어 있는 탭으로서 디스플레이된 탭 행에서의 탭들 중 하나에 대응하는 입력을 수신한 것에 응답하여, 비그룹화되어 있는 탭들로서 디스플레이된 탭 행에서의 모든 탭들에 대한 미리보기들이 디스플레이될 수 있다.
도 15는 하나 이상의 실시예들에 따른, 탭 행 내에서의 탭의 디스플레이 위치를 조정하는 예시(1500)를 도시한다. 예시(1500)에서, 탭들(1202, 1204)이 탭 그룹(802)에 속한다는 것을 보여주기 위해 탭들(1202, 1204)이 펼쳐보기된 형태로 디스플레이된다. 예시(1500)는 또한 탭 행에서 디스플레이된 탭 그룹(804)과 비그룹화되어 있는 탭(806)을 포함한다. 입력(1502)이 탭(1204)에서 수신되고 탭(1204)을 그룹(804)으로 드래그시킨다(예를 들어, 터치스크린 제스처 또는 마우스 포인터를 이용하여, 탭(1204)을 드래그하여 탭 그룹(804) 상에 드롭시킨다). 입력(1502)에 기초하여, 탭(1204)은 그룹(802)으로부터 제거되고 그룹(804)에 추가된다. 그룹(802)은 입력(1502) 후에 탭(1202)만을 포함하기 때문에, 탭(1202)은 탭 행에서 비그룹화되어 있는 탭으로서 디스플레이된다. 대안적으로, 입력(1502)이 탭(1204)을 그룹(804)으로 이동시킨 후 탭 그룹(802)에 복수의 탭들이 남아있는 경우, 이 복수의 탭들은 자신들이 탭 그룹(802)에 속해 있다라는 가시적 표시와 함께 탭 라인에서 펼쳐보기 방식으로 디스플레이된 상태로 남는다.
탭 행에서의 탭의 디스플레이 위치를 조정하는 것은 탭을 하나의 탭 그룹으로부터 다른 탭 그룹으로 이동시키는 것으로 제한되지 않는다는 것을 알아야 한다. 입력(1502)은, 탭이 비그룹화되어 있는 탭으로서 디스플레이되도록, 탭을 탭 그룹 밖으로부터 꺼내서 탭 행 내로 드래그할 수 있다. 대안적으로, 입력(1502)은 탭 행 내의 비그룹화되어 있는 탭을 탭 행 내의 탭 그룹 내로 드래그할 수 있다. 대안적으로, 입력(1502)은 비그룹화되어 있는 탭을 다른 비그룹화되어 있는 탭 위로 드래그하여 탭 행에서 새로운 탭 그룹을 생성할 수 있다. 대안적으로, 입력(1502)은 제1 탭 그룹을 제2 탭 그룹 내로 드래그하여 제1 및 제2 탭 그룹들을 포함하는 새로운 탭 그룹을 생성할 수 있다. 대안적으로, 입력(1502)은 탭 행에서 디스플레이되는 비그룹화되어 있는 탭 또는 탭 그룹의 디스플레이 위치를 조정할 수 있다. 예를 들어, 탭 그룹(804)을 비그룹화되어 있는 탭(806)의 우측으로 드래그하면 탭 그룹(804)이 탭 행에서 비그룹화되어 있는 탭(806)의 우측에 디스플레이되도록 디스플레이 위치를 조정할 것이다.
특정 상황에서, 사용자는 복수의 탭들 어느 것도 함께 그룹화하지 않고서 탭 행에서 디스플레이된 복수의 탭들을 관리하고자 할 수 있다. 예를 들어, 유사한 콘텐츠에 대응하는 탭들이 서로 인접하여 디스플레이되도록 함으로써, 사용자가 탭 행에서 탭이 디스플레이되는 곳을 기억할 필요없이 복수의 탭들 사이를 쉽게 네비게이팅할 수 있도록 디스플레이된 탭들을 정렬시키기를 사용자는 원할 수 있다. 이 것은 특히 사용자가 많은 수의 탭들을 동시에 열어서 탭들 모두가 탭 행에서 한꺼번에 디스플레이될 수 없는 상황에 유용하다.
도 16은 하나 이상의 실시예들에 따른, 탭 행 내에서 복수의 탭들을 정렬시키기 위한 예시적인 프로세스(1600)를 도시하는 흐름도이다. 프로세스(1600)는 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 프로세스(1600)는 도 1의 정렬 모듈(118)에 의해 구현될 수 있다. 프로세스(1600)는 일련의 동작들로서 도시되며, 다양한 동작들의 연산들을 수행하기 위해, 도시된 순서로 제한되지는 않는다. 프로세스(1600)는 탭 행에서 복수의 탭들을 정렬시키기 위한 예시적인 프로세스이며, 탭 행에서 복수의 탭들을 정렬시키는 추가적인 논의들이 상이한 도면들을 참조하여 여기에 포함된다.
프로세스(1600)에서, 탭들을 정렬시키기 위한 하나 이상의 옵션들이 탭 행 내에서 디스플레이된다(동작 1602).
하나 이상의 옵션들 중 하나의 옵션의 선택에 대응하는 입력이 수신된다(동작 1604).
그 후, 탭들은 선택된 옵션에 따라 탭 행 내에서 정렬되어 디스플레이된다(동작 1606). 정렬된 탭들을 디스플레이하는 것은, 예를 들어, 알파벳 순서로, 탭이 가장 최근에 액세스된 시간 순서로, 탭이 활성 탭이였던 시간의 양 순서로 등을 비롯하여, 임의의 적절한 방식으로 수행될 수 있다.
동작 1606에서의 선택된 옵션에 따라 탭들을 정렬시키는 것은, 사용자가 희망하거나 예상하는 순서로 탭들이 정렬되기 때문에 컴퓨팅 디바이스와 상호작용할 때 데이터 입력 오류의 가능성을 감소시킨다. 동작 1606에서의 선택된 옵션에 따라 탭들을 정렬시키는 것은 또한, 사용자가 희망하거나 예상하는 순서로 탭들을 배열함으로써 컴퓨팅 디바이스와의 사용자 상호작용의 효율성을 증가시킨다.
도 17은 하나 이상의 실시예들에 따른, 탭 행 내에서 복수의 탭들을 정렬시키기 위한 옵션들을 디스플레이하는 예시(1700)를 도시한다. 예시(1700)에서, 사용자 인터페이스(1702)는 복수의 비그룹화되어 있는 탭들(1706, 1708, 1710, 1712), 탭 관리 제어부(1714), 및 새로운 탭 제어부(1716)를 포함하는 탭 행에 인접하게 배치된 탭 콘텐츠(1704)의 디스플레이를 포함한다. 탭 콘텐츠(1704)는 탭 행 내의 활성 탭과 연관된 콘텐츠를 디스플레이한다. 본 예시에서, 사용자 인터페이스(1702)는 탭 지원 디스플레이에서 복수의 애플리케이션들과의 상호작용을 지원하며, 여기서 각각의 탭은 애플리케이션과 연관된다. 예를 들어, 탭(1706)은 워드 프로세싱 애플리케이션과 연관되고, 탭들(1708, 1712)은 메시징 애플리케이션과 연관되며, 탭(1710)은 웹 애플리케이션과 연관된다.
탭 관리 제어부(1714)에서 입력을 수신한 것에 응답하여, 탭 관리 옵션들(1718, 1720)을 비롯하여, 복수의 탭 관리 옵션들이 디스플레이된다. 본 예시는 탭 관리 제어부(1706)에서 사용자 입력을 수신한 것에 응답하여 복수의 탭 관리 옵션들을 디스플레이하는 것을 예시하고 있지만, 복수의 탭 관리 옵션들은 또한, 탭 행에서 디스플레이된 비그룹화되어 있는 탭에서 사용자 입력을 수신한 것에 응답하여 디스플레이될 수 있다.
탭 관리 옵션(1718)은 전술한 바와 같이, 탭 행 내의 비그룹화되어 있는 탭들 각각과 연관된 도메인별로 비그룹화되어 있는 탭들을 탭 행에서 정렬시킨다. 탭 관리 옵션(1720)은 전술한 바와 같이, 탭 행 내의 비그룹화되어 있는 탭들 각각과 연관된 오프너별로 비그룹화되어 있는 탭들을 탭 행에서 정렬시킨다.
도 18은 하나 이상의 실시예들에 따른, 탭 행 내에서 정렬된 복수의 탭들의 예시(1800)를 도시한다. 이 예시는 탭 관리 옵션(1718) "도메인별로 정렬"의 선택에 응답하여 정렬되고 디스플레이된 탭들(1706, 1708, 1710, 1712)을 도시한다. 전술한 바와 같이, 탭(1706)은 워드 프로세싱 애플리케이션과 연관되고, 탭들(1708, 1712)은 메시징 애플리케이션과 연관되며, 탭(1710)은 웹 애플리케이션과 연관된다. 도 18에서 도시된 바와 같이, 옵션(1718)을 선택하는 것은, 동일한 도메인에 대응하는 다른 탭들에 인접하여 탭들이 탭 행에서 디스플레이되도록 탭 행에서 탭들을 정렬시키고 디스플레이한다. 이 예시에서, 탭들(1708, 1712)은 동일한 도메인에 대응하므로, 탭들(1708, 1712)이 서로 인접하여 디스플레이되도록 탭들(1712, 1710)의 디스플레이 위치는 조정된다.
비록 2개의 정렬 옵션들(1718, 1720)이 도 17에서 도시되어 있지만, 설명된 정렬 옵션들은 예시로서 개시된 것이며, 여기에 설명된 기술들을 망라하거나 제한하려고 의도된 것이 아님을 유의해야 한다. 추가적인 정렬 옵션들이 디스플레이될 수 있고/있거나 도 17에서 디스플레이된 하나 이상의 정렬 옵션들이 디스플레이되지 않을 수 있다.
전술한 정렬 옵션들 중 하나는 위에서 논의된 스윕핑 옵션들 중 하나와 결합될 수 있고, 그 결합은 도 2의 탭 관리 제어부(206)의 디폴트 기능이라는 것을 또한 유의해야 한다. 예를 들어, 탭 관리 제어부(206)의 디폴트 기능은 탭 행 내에서 활성 탭의 좌측에 위치하는 비그룹화되어 있는 모든 탭들을 탭 그룹으로 그룹화하고("좌측 모두 스윕핑") 임의의 비그룹화되어 있는 탭들을 도메인별로 정렬시키는 것("도메인별로 정렬")일 수 있다.
본 명세서의 논의에서는, 다양한 상이한 실시예들이 설명된다. 본 명세서에 기술된 각각의 실시예는 그 자체로 또는 본 명세서에서 설명된 하나 이상의 다른 실시예들과 연결지어서 사용될 수 있다는 것을 알고 이해해야 한다. 예를 들어, 탭 관리 시스템은 도 3의 프로세스(300), 도 5의 프로세스(500), 도 9의 프로세스(900), 도 11의 프로세스(1100), 도 13의 프로세스(1300), 및 도 16의 프로세스(1600) 중 임의의 하나 또는 이들의 조합을 구현할 수 있다.
도 19는 본 명세서에서 설명된 다양한 기술들을 구현할 수 있는 하나 이상의 시스템들 및/또는 디바이스들을 나타내는 예시적인 컴퓨팅 디바이스(1902)를 포함하는 예시적인 시스템을 참조번호 1900으로 개략적으로 나타낸다. 컴퓨팅 디바이스(1902)는, 예컨대, 서비스 공급자의 서버, 클라이언트와 연관된 디바이스(예컨대, 클라이언트 디바이스), 온 칩 시스템, 및/또는 임의의 다른 적절한 컴퓨팅 디바이스 또는 컴퓨팅 시스템일 수 있다.
도시된 예시적인 컴퓨팅 디바이스(1902)는 서로 통신가능하게 결합된, 프로세싱 시스템(1904), 하나 이상의 컴퓨터로 판독가능한 매체(1906), 및 하나 이상의 I/O 인터페이스들(1908)을 포함한다. 도시되지는 않았지만, 컴퓨팅 디바이스(1902)는 다양한 컴포넌트들을 서로 결합시키는 시스템 버스 또는 다른 데이터 및 커맨드 전송 시스템을 더 포함할 수 있다. 시스템 버스는 임의의 다양한 버스 아키텍처들을 활용하는, 메모리 버스 또는 메모리 제어기, 주변 버스, 범용 직렬 버스, 및/또는 프로세서 또는 로컬 버스와 같은, 상이한 버스 구조들 중의 임의의 하나 또는 이러한 상이한 버스 구조들의 조합을 포함할 수 있다. 제어 및 데이터 라인들과 같은, 다양한 다른 예시들이 또한 구상가능하다.
프로세싱 시스템(1904)은 하드웨어를 이용하여 하나 이상의 연산들을 수행하는 기능을 나타낸다. 이에 따라, 프로세싱 시스템(1904)은 프로세서들, 기능 블록들 등으로서 구성될 수 있는 하드웨어 엘리먼트들(1910)을 포함한 것으로서 예시된다. 이것은 하나 이상의 반도체들을 이용하여 형성된 응용 특정 집적 회로 또는 다른 로직 디바이스로서 하드웨어로의 구현을 포함할 수 있다. 하드웨어 엘리먼트들(1910)은 하드웨어 엘리먼트를 형성하는 물질들 또는 그 안에서 활용된 프로세싱 메카니즘들에 의해 제한받지 않는다. 예를 들어, 프로세서들은 반도체(들) 및/또는 트랜지스터(들)(예컨대, 전자 집적 회로(electronic integrated circuit; IC))로 구성될 수 있다. 이러한 상황에서, 프로세서로 실행가능한 명령어들은 전자적으로 실행가능한 명령어들일 수 있다.
컴퓨터로 판독가능한 매체(1906)는 메모리/스토리지(1912)를 포함하는 것으로서 예시된다. 메모리/스토리지(1912)는 하나 이상의 컴퓨터로 판독가능한 매체와 연관된 메모리/스토리지 용량을 나타낸다. 메모리/스토리지(1912)는 (RAM(random access memory)과 같은) 휘발성 매체 및/또는 (ROM(read only memory), 플래쉬 메모리, 광 디스크, 자기 디스크 등과 같은) 비휘발성 매체를 포함할 수 있다. 메모리/스토리지(1912)는 고정 매체(예컨대, RAM, ROM, 고정 하드 드라이브 등)뿐만이 아니라, 탈착가능 매체(예컨대, 플래쉬 메모리, 탈착가능 하드 드라이브, 광 디스크 등)를 포함할 수 있다. 컴퓨터로 판독가능한 매체(1906)는 아래에서 추가로 설명되는 다양한 다른 방식들로 구성될 수 있다.
하나 이상의 입력/출력 인터페이스(들)(1908)은 다양한 입력/출력 디바이스들을 이용하여 사용자로 하여금 컴퓨팅 디바이스(1902)에 커맨드와 정보를 입력할 수 있도록 해주고, 또한 정보가 사용자 및/또는 다른 컴포넌트들 또는 디바이스들에 제시될 수 있도록 해주는 기능을 나타낸다. 입력 디바이스들의 예시들은 키보드, 커서 제어 디바이스(예컨대, 마우스), (예를 들어, 음성 인식 입력을 위한) 마이크로폰, 스캐너, 터치 기능(예컨대, 물리적 터치를 검출하도록 구성된 용량성 또는 다른 센서들), (예컨대, 접촉을 수반하지 않는 움직임을 제스처로서 검출하기 위해 적외선 주파수와 같은 가시적 또는 비가시적 파장을 사용할 수 있는) 카메라 등을 포함한다. 출력 디바이스들의 예시들은 디스플레이 디바이스(예컨대, 모니터 또는 프로젝터), 스피커, 프린터, 네트워크 카드, 촉각 반응 디바이스 등을 포함한다. 따라서, 컴퓨팅 디바이스(1902)는 사용자 상호작용을 지원하기 위한 아래에서 추가로 설명되는 다양한 방식들로 구성될 수 있다.
컴퓨팅 디바이스(1902)는 또한 탭 관리 시스템(1914)을 포함한다. 탭 관리 시스템(1914)은 전술한 바와 같이, 그룹화 및 정렬 기능을 비롯하여, 다양한 탭 관리 기능을 제공한다. 탭 관리 시스템(1914)은 예를 들어, 도 1의 동작 환경(100)을 구현할 수 있다.
소프트웨어, 하드웨어 엘리먼트들, 또는 프로그램 모듈들의 일반적인 상황으로 다양한 기술들이 본 명세서에서 설명될 수 있다. 일반적으로, 이러한 모듈들은 특정한 태스크들을 수행하거나 또는 특정한 추상적 데이터 유형들을 구현하는, 루틴들, 프로그램들, 오브젝트들, 엘리먼트들, 컴포넌트들, 데이터 구조들 등을 포함한다. 여기서 이용된 "모듈", "기능", 및 "컴포넌트" 용어들은 일반적으로 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 조합을 나타낸다. 여기서 설명되는 기술들의 특징들은 플랫폼 독립적인데, 이것은 본 기술들이 다양한 프로세서들을 갖는 다양한 컴퓨팅 플랫폼들 상에서 구현될 수 있다는 것을 의미한다.
설명된 모듈들 및 기술들의 구현은 일부 형태의 컴퓨터로 판독가능한 매체 상에 저장될 수 있거나 또는 이를 통해 송신될 수 있다. 컴퓨터로 판독가능한 매체는 컴퓨팅 디바이스(1902)에 의해 액세스될 수 있는 다양한 매체를 포함할 수 있다. 비제한적인 예시로서, 컴퓨터로 판독가능한 매체는 "컴퓨터로 판독가능한 저장 매체"와 "컴퓨터로 판독가능한 신호 매체"를 포함할 수 있다.
"컴퓨터로 판독가능한 저장 매체"는 단순한 신호 송신, 반송파, 또는 신호 그 자체와 대비되어, 영구적 정보 저장을 가능하게 해주는 매체 및/또는 디바이스들 및/또는 유형적 스토리지를 가리킨다. 따라서, 컴퓨터로 판독가능한 저장 매체는 비신호 함유 매체를 가리킨다. 컴퓨터로 판독가능한 저장 매체는 컴퓨터로 판독가능한 명령어, 데이터 구조, 프로그램 모듈, 로직 엘리먼트/회로, 또는 다른 데이터와 같은 정보의 저장에 적절한 방법 또는 기술로 구현된 휘발성 및 비휘발성의, 탈착가능 및 탈착불가능 매체 및/또는 스토리지 디바이스들과 같은 하드웨어를 포함한다. 컴퓨터로 판독가능한 저장 매체의 예시들은, 비제한적인 예시로서, RAM, ROM, EEPROM, 플래쉬 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다용도 디스크(DVD) 또는 다른 광학 스토리지, 하드 디스크, 자기 카세트, 자기 테이프, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 다른 스토리지 디바이스, 유형적 매체, 또는 희망하는 정보를 저장하는데 적합하고 컴퓨터에 의해 액세스될 수 있는 제조 물품을 포함할 수 있다.
"컴퓨터로 판독가능한 신호 매체"는 네트워크를 통해서와 같이, 명령어들을 컴퓨팅 디바이스(1902)의 하드웨어에 송신하도록 구성된 신호 함유 매체를 가리킨다. 신호 매체는 일반적으로 컴퓨터로 판독가능한 명령어들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터를 반송파, 데이터 신호 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내에 포함시킬 수 있다. 신호 매체는 또한 임의의 정보 전달 매체를 포함한다. "변조 데이터 신호"의 용어는 해당 신호 내에 정보를 인코딩하는 방식으로 설정되거나 또는 변경된 하나 이상의 특성들을 갖는 신호를 의미한다. 비제한적인 예시로서, 통신 매체는 유선 네트워크 또는 직접적 유선 커넥션과 같은 유선 매체, 및 음향, RF, 적외선과 같은 무선 매체, 및 이와 다른 무선 매체를 포함한다.
이전에 설명한 바와 같이, 하드웨어 엘리먼트들(1910)과 컴퓨터로 판독가능한 매체(1906)는, 여기서 설명된 기술들의 적어도 몇몇의 양태들을 구현하기 위한 몇몇의 실시예들에서 활용될 수 있는 하드웨어 형태로 구현된 명령어들, 모듈들, 프로그램가능 디바이스 로직 및/또는 고정 디바이스 로직을 나타낸다. 하드웨어 엘리먼트들은 집적 회로 또는 온 칩 시스템, ASIC(application-specific integrated circuit), FPGA(field-programmable gate array), CPLD(complex programmable logic device), 및 실리콘 또는 다른 하드웨어 디바이스들로의 다른 구현들의 컴포넌트들을 포함할 수 있다. 이러한 상황에서, 하드웨어 엘리먼트는 해당 하드웨어 엘리먼트에 의해 구체화된 로직, 모듈, 및/또는 명령어들에 의해 정의된 프로그램 태스크들을 수행하는 프로세싱 디바이스 뿐만이 아니라, 실행용 명령어들을 저장하는 데에 활용된 하드웨어 디바이스, 예컨대 이전에 설명된 컴퓨터로 판독가능한 저장 매체로서 동작할 수 있다.
본 명세서에서 설명된 다양한 기술들과 모듈들을 구현하기 위해 전술한 내용의 조합들이 또한 활용될 수 있다. 이에 따라, 소프트웨어, 하드웨어, 프로그램 모듈들, 및 다른 프로그램 모듈들이 몇몇 형태의 컴퓨터로 판독가능한 저장 매체 상에 및/또는 하나 이상의 하드웨어 엘리먼트들(1910)에 의해 포함된 하나 이상의 명령어들 및/또는 로직으로서 구현될 수 있다. 컴퓨팅 디바이스(1902)는 해당 소프트웨어 및/또는 하드웨어 모듈들에 대응하는 특정 명령어들 및/또는 기능들을 구현하도록 구성될 수 있다. 이에 따라, 소프트웨어로서 컴퓨팅 디바이스(1902)에 의해 실행가능한 모듈로서의 모듈들의 구현은 적어도 부분적으로 하드웨어로, 예컨대, 프로세싱 시스템의 컴퓨터로 판독가능한 저장 매체 및/또는 하드웨어 엘리먼트들(1910)의 이용을 통해 달성될 수 있다. 여기서 설명된 기술들, 모듈들, 및 예시들을 구현하기 위해 명령어들 및/또는 기능들은 하나 이상의 제조 물품들(예컨대, 하나 이상의 컴퓨팅 디바이스들(1902) 및/또는 프로세싱 시스템들(1904))에 의해 실행가능/동작가능할 수 있다.
도 19에서 추가로 예시된 바와 같이, 예시적인 시스템(1900)은 개인 컴퓨터(PC), 텔레비젼 디바이스, 및/또는 모바일 디바이스 상에서 애플리케이션들을 구동시킬 때의 끊김없는 사용자 경험을 위해 유비쿼터스 환경들을 가능하게 해준다. 애플리케이션을 활용하고, 비디오 게임을 하며, 비디오 시청 등을 하면서 하나의 디바이스로부터 다음 디바이스로 천이할 때 서비스들과 애플리케이션들은 공통적인 사용자 경험을 위해 세가지 모두의 환경들에서 실질적으로 유사하게 구동된다.
예시적인 시스템(1900)에서, 다중 디바이스들은 중앙 컴퓨팅 디바이스를 통해 상호연결된다. 중앙 컴퓨팅 디바이스는 복수의 디바이스들에 대해 로컬방식으로 있을 수 있거나 또는 다중 디바이스들로부터 원격 위치될 수 있다. 하나 이상의 실시예들에서, 중앙 컴퓨팅 디바이스는, 네트워크, 인터넷, 또는 다른 데이터 통신 링크를 통해 복수의 디바이스들에 연결된 하나 이상의 서버 컴퓨터들의 클라우드일 수 있다.
하나 이상의 실시예들에서, 이러한 상호연결 아키텍처는 복수의 디바이스들의 사용자에게 공통적이고 끊김없는 경험을 제공하도록 복수의 디바이스들에 걸쳐 기능이 전달될 수 있게 해준다. 복수의 디바이스들 각각은 상이한 물리적 요건들 및 능력들을 가질 수 있으며, 중앙 컴퓨팅 디바이스는, 디바이스에 맞춤화되며 또한 모든 디바이스들에게 공통되는 경험의 디바이스로의 전달을 가능하게 해주는 플랫폼을 이용한다. 하나 이상의 실시예들에서, 타겟 디바이스들의 클래스가 생성되며 경험들은 디바이스들의 일반적인 클래스에 맞춤화된다. 디바이스들의 클래스는 디바이스들의 물리적 특징들, 사용 유형들, 또는 다른 공통 특성들에 의해 정의될 수 있다.
다양한 구현예들에서, 컴퓨팅 디바이스(1902)는 컴퓨터(1916), 모바일(1918), 및 텔레비젼(1920) 이용들과 같은, 다양한 상이한 구성들을 취할 수 있다. 이러한 구성들 각각은 대체로 상이한 구성들 및 능력들을 가질 수 있는 디바이스들을 포함하며, 이에 따라 컴퓨팅 디바이스(1902)는 하나 이상의 상이한 디바이스 클래스들에 따라 구성될 수 있다. 예컨대, 컴퓨팅 디바이스(1902)는 개인 컴퓨터, 데스크탑 컴퓨터, 멀티 스크린 컴퓨터, 랩탑 컴퓨터, 넷북 등을 포함하는 컴퓨터(1916) 디바이스 클래스로서 구현될 수 있다.
컴퓨팅 디바이스(1902)는 또한 모바일 폰, 휴대용 뮤직 플레이어, 휴대용 게임 디바이스, 태블릿 컴퓨터, 멀티 스크린 컴퓨터 등과 같은 모바일 디바이스들을 포함하는 모바일(1918) 디바이스 클래스로서 구현될 수 있다. 컴퓨팅 디바이스(1902)는 또한 평상시의 시청 환경들에서 대체로 보다 큰 스크린들을 갖거나 또는 이에 연결된 디바이스들을 포함하는 텔레비젼(1920) 디바이스 클래스로서 구현될 수 있다. 이러한 디바이스들에는 텔레비젼, 셋탑 박스, 게이밍 콘솔 등이 포함된다.
본 명세서에서 설명된 기술들은, 컴퓨팅 디바이스(1902)의 이러한 다양한 구성들에 의해 지원될 수 있으며, 본 명세서에서 설명된 기술들의 특정 예시들로 한정되지 않는다. 이 기능은 또한 아래에서 설명되는 플랫폼(1924)을 통한 "클라우드"(1922)를 통해서와 같이, 분산된 시스템의 이용을 통해 전체적으로 또는 부분적으로 구현될 수 있다.
클라우드(1922)는 자원들(1926)을 위한 플랫폼(1924)을 포함하고/포함하거나 이를 나타낸다. 플랫폼(1924)은 클라우드(1922)의 하드웨어(예컨대, 서버들)와 소프트웨어 자원들의 기저 기능을 추상화시킨다. 자원들(1926)은 컴퓨터 프로세싱이 컴퓨팅 디바이스(1902)로부터 원격위치된 서버들 상에서 실행되고 있는 동안에 활용될 수 있는 애플리케이션들 및/또는 데이터를 포함할 수 있다. 자원들(1926)은 또한, 인터넷을 통해 및/또는 셀룰러 또는 Wi-Fi 네트워크와 같은 가입자 네트워크를 통해 제공되는 서비스들을 포함할 수 있다.
플랫폼(1924)은 컴퓨팅 디바이스(1902)를 다른 컴퓨팅 디바이스들에 연결시키기 위해 자원들 및 기능들을 추상화시킬 수 있다. 플랫폼(1924)은 또한 플랫폼(1924)을 통해 구현되는 자원들(1926)에 대한 수요에 맞대응하기 위해 대응하는 스케일 레벨을 제공하도록 자원들의 스케일링을 추상화하는 역할을 할 수 있다. 이에 따라, 상호연결된 디바이스 실시예에서, 여기서 설명된 기능의 구현은 시스템(1900)에 걸쳐 분산될 수 있다. 예를 들어, 본 기능은 컴퓨팅 디바이스(1902) 상에서 뿐만이 아니라 클라우드(1922)의 기능을 추상화하는 플랫폼(1924)을 통해서 부분적으로 구현될 수 있다.
본 명세서의 논의에서는, 다양한 상이한 실시예들이 설명된다. 본 명세서에 기술된 각각의 실시예는 그 자체로 또는 본 명세서에서 설명된 하나 이상의 다른 실시예들과 연결지어서 사용될 수 있다는 것을 알고 이해해야 한다. 본 명세서에서 논의된 기술들의 추가 양태들은 다음의 실시예들 중 하나 이상에 관한 것이다.
본 명세서에서 논의된 기술들의 추가 양태들은 다음의 실시예들 중 하나 이상에 관한 것이다.
사용자 인터페이스를 제어하는 방법에 있어서, 본 방법은, 탭 행에서 복수의 탭들을 디스플레이하는 단계; 단일 동작 사용자 입력을 수신하는 단계; 단일 동작 사용자 입력을 수신한 것에 응답하여 복수의 탭들을 나타내는 탭 그룹으로 탭 행의 복수의 탭들을 그룹화하는 단계; 탭 행에서 복수의 탭들 대신에 탭 그룹을 디스플레이하는 단계를 포함한다.
대안적으로, 또는 전술한 방법에 더하여, 다음 중 임의의 하나 또는 그 조합이 활용된다: 본 방법은 탭 행에서 탭 관리 제어부를 디스플레이하는 단계를 더 포함하고, 단일 동작 사용자 입력을 수신하는 단계는 탭 관리 제어부의 사용자 선택을 수신하는 단계를 포함하고, 탭 행의 복수의 탭들을 탭 그룹으로 그룹화하는 단계는 탭 행의 비그룹화되어 있는 모든 탭들을 탭 그룹으로 그룹화하는 단계를 포함하고, 탭 행의 복수의 탭들을 탭 그룹으로 그룹화하는 단계는 탭 행 내의 활성 탭의 좌측에 디스플레이된 모든 탭들을 탭 그룹으로 그룹화하는 단계 또는 탭 행 내의 활성 탭의 우측에 디스플레이된 모든 탭들을 탭 그룹으로 그룹화하는 단계를 포함하고, 탭 행에서 활성 탭의 좌측에 디스플레이된 모든 탭들을 탭 그룹으로 그룹화하는 단계 또는 탭 행에서 활성 탭의 우측에 디스플레이된 모든 탭들을 탭 그룹으로 그룹화하는 단계는 활성 탭을 탭 그룹으로 그룹화하는 단계를 포함하고, 그룹화하는 단계는 탭 행의 복수의 탭들을 하나 이상의 탭 그룹들로 그룹화하는 단계를 포함하고, 탭 행의 복수의 탭들 각각은 탭과 연관된 도메인에 기초하여 하나 이상의 탭 그룹들 중 하나의 탭 그룹으로 그룹화되고, 그룹화하는 단계는 탭 행의 복수의 탭들을 하나 이상의 탭 그룹들로 그룹화하는 단계를 포함하고, 탭 행의 복수의 탭들 각각은 탭과 연관된 오프너에 기초하여 하나 이상의 탭 그룹들 중 하나의 탭 그룹으로 그룹화되고, 본 방법은 탭 행의 비그룹화되어 있는 모든 탭들이 하나 이상의 탭 그룹들로 그룹화된 것에 응답하여 탭 행에서 새로운 탭을 디스플레이하는 단계를 더 포함하며, 본 방법은 추가적인 사용자 입력을 수신한 것에 응답하여 탭 행의 복수의 탭들을 정렬시키고, 정렬된 복수의 탭들을 탭 행에서 디스플레이하는 단계를 더 포함한다.
디바이스에 있어서, 하나 이상의 프로세서들; 및 동작들을 수행함으로써 컴퓨팅 디바이스의 사용자 인터페이스를 제어하도록 하나 이상의 프로세서들에 의해 실행가능한 실행가능 명령어들을 저장하는 메모리를 포함하고, 상기 동작들은, 탭 행에서 하나 이상의 탭 그룹들을 디스플레이하는 동작; 탭 행에서 하나 이상의 탭들을 디스플레이하는 동작; 하나 이상의 탭 그룹들 중 하나의 탭 그룹에 대응하는 사용자 입력을 수신하는 동작; 하나 이상의 선택가능한 탭 그룹 옵션들의 선택을 수신하는 동작; 및 선택가능한 탭 그룹 옵션들 중 선택된 탭 그룹 옵션을 수행하는 동작을 포함한다.
대안적으로, 또는 전술한 디바이스에 더하여, 다음 중 임의의 하나 또는 그 조합이 활용된다: 하나 이상의 선택가능한 탭 그룹 옵션들은 탭 그룹 내의 모든 탭들을 즐겨찾기로 지정하는 옵션, 탭 그룹 내의 모든 탭들을 공유하는 옵션, 탭 그룹 내의 모든 탭들을 닫는 옵션, 또는 탭 그룹의 이름을 변경하는 옵션 중 하나 이상을 포함하고, 상기 동작들은 탭 행에서 탭 그룹을 펼쳐보기하는 동작을 더 포함하고, 상기 펼쳐보기하는 동작은 탭 행에서 탭 그룹의 하나 이상의 탭들을 비그룹화되어 있는 탭들로서 디스플레이하는 동작을 포함하고, 탭 행에서 탭 그룹의 하나 이상의 탭들을 비그룹화되어 있는 탭들로서 디스플레이는 동작은 탭 그룹의 하나 이상의 탭들이 공통 탭 그룹에 속한다는 시각적 표시를 디스플레이하는 동작을 더 포함하고, 펼쳐보기하는 동작은 탭 그룹이 탭 행에서 펼쳐보기되어 디스플레이된 것에 응답하여 탭 그룹을 접는 동작을 포함하고, 상기 동작들은 탭 행에서 디스플레이된 하나 이상의 탭들 중 하나의 탭에서 입력을 수신하고, 하나 이상의 탭들 중 하나의 탭에서 입력을 수신한 것에 응답하여, 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작을 더 포함하며, 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작은 탭 행에서 디스플레이된 각각의 비그룹화되어 있는 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작을 더 포함한다.
사용자 인터페이스를 제어하는 방법에 있어서, 본 방법은, 탭 행에서 복수의 탭들을 디스플레이하는 단계; 단일 동작 사용자 입력을 수신하는 단계; 단일 동작 사용자 입력을 수신한 것에 응답하여 탭 행에서 복수의 탭들을 정렬시키는 단계; 정렬된 복수의 탭들을 탭 행에서 디스플레이하는 단계를 포함한다.
대안적으로, 또는 전술한 임의의 방법에 더하여, 다음 중 임의의 하나 또는 그 조합이 활용된다: 정렬 단계는 복수의 탭들 각각과 연관된 도메인에 기초하여 복수의 탭들을 좌측에서 우측으로 정렬시키는 단계를 더 포함하고, 정렬 단계는 복수의 탭들 각각과 연관된 오프너에 기초하여 복수의 탭들을 좌측에서 우측으로 정렬시키는 단계를 더 포함하고, 본 방법은 선택가능한 탭 정렬 옵션들의 목록을 디스플레이하는 단계를 더 포함하며, 단일 동작 사용자 입력은 선택가능한 탭 정렬 옵션들의 목록을 디스플레이한 것에 응답하여 수신된다.
본 발명내용은 구조적 특징들 및/또는 방법론적 동작들에 특유적인 용어로 기술되었지만, 첨부된 청구항들에서 정의된 발명내용은 위에서 설명된 이러한 특정한 특징들 또는 동작들로 반드시 제한될 필요는 없다는 것을 이해하여야 한다. 이보다는, 위에서 설명된 특정한 특징들 및 동작들은 청구항들을 구현하는 예시 형태들로서 개시된 것이다.

Claims (15)

  1. 사용자 인터페이스를 제어하는 방법에 있어서,
    탭 행(tab row)에서 복수의 탭(tab)들을 디스플레이하는 단계;
    단일 동작 사용자 입력을 수신하는 단계;
    상기 단일 동작 사용자 입력을 수신한 것에 응답하여 복수의 탭들을 나타내는 탭 그룹으로 상기 탭 행의 상기 복수의 탭들을 그룹화하는 단계; 및
    상기 탭 행에서 상기 복수의 탭들 대신에 상기 탭 그룹을 디스플레이하는 단계
    를 포함하는 사용자 인터페이스 제어 방법.
  2. 제1항에 있어서,
    상기 탭 행에서 탭 관리 제어부를 디스플레이하는 단계
    를 더 포함하며,
    상기 단일 동작 사용자 입력을 수신하는 단계는 상기 탭 관리 제어부의 사용자 선택을 수신하는 단계를 포함한 것인 사용자 인터페이스 제어 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 탭 행의 복수의 탭들을 상기 탭 그룹으로 그룹화하는 단계는 상기 탭 행의 비그룹화되어 있는 모든 탭들을 상기 탭 그룹으로 그룹화하는 단계를 포함한 것인 사용자 인터페이스 제어 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 탭 행의 복수의 탭들을 상기 탭 그룹으로 그룹화하는 단계는 상기 탭 행 내의 활성 탭의 좌측에 디스플레이된 모든 탭들을 상기 탭 그룹으로 그룹화하는 단계 또는 상기 탭 행 내의 활성 탭의 우측에 디스플레이된 모든 탭들을 상기 탭 그룹으로 그룹화하는 단계를 포함한 것인 사용자 인터페이스 제어 방법.
  5. 제1항 또는 제2항에 있어서,
    상기 그룹화하는 단계는 상기 탭 행의 상기 복수의 탭들을 하나 이상의 탭 그룹들로 그룹화하는 단계를 포함하고, 상기 탭 행의 상기 복수의 탭들 각각은 상기 탭과 연관된 도메인(domain)에 기초하여 상기 하나 이상의 탭 그룹들 중 하나의 탭 그룹으로 그룹화되는 것인 사용자 인터페이스 제어 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 그룹화하는 단계는 상기 탭 행의 상기 복수의 탭들을 하나 이상의 탭 그룹들로 그룹화하는 단계를 포함하고, 상기 탭 행의 상기 복수의 탭들 각각은 상기 탭과 연관된 오프너(opener)에 기초하여 상기 하나 이상의 탭 그룹들 중 하나의 탭 그룹으로 그룹화되는 것인 사용자 인터페이스 제어 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 탭 행의 비그룹화되어 있는 모든 탭들이 하나 이상의 탭 그룹들로 그룹화된 것에 응답하여 상기 탭 행에서 새로운 탭을 디스플레이하는 단계
    를 더 포함하는 사용자 인터페이스 제어 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    추가적인 사용자 입력을 수신한 것에 응답하여 상기 탭 행의 상기 복수의 탭들을 정렬(sort)시키는 단계; 및
    상기 정렬된 복수의 탭들을 상기 탭 행에서 디스플레이하는 단계
    를 더 포함하는 사용자 인터페이스 제어 방법.
  9. 디바이스에 있어서,
    하나 이상의 프로세서들; 및
    동작들을 수행함으로써 컴퓨팅 디바이스의 사용자 인터페이스를 제어하도록 상기 하나 이상의 프로세서들에 의해 실행가능한 실행가능 명령어들을 저장하는 메모리
    를 포함하고,
    상기 동작들은,
    탭 행에서 하나 이상의 탭 그룹들을 디스플레이하는 동작;
    상기 탭 행에서 하나 이상의 탭들을 디스플레이하는 동작;
    상기 하나 이상의 탭 그룹들 중 하나의 탭 그룹에 대응하는 사용자 입력을 수신하는 동작;
    하나 이상의 선택가능한 탭 그룹 옵션들의 선택을 수신하는 동작; 및
    상기 선택가능한 탭 그룹 옵션들 중 선택된 탭 그룹 옵션을 수행하는 동작
    을 포함한 것인 디바이스.
  10. 제9항에 있어서,
    상기 하나 이상의 선택가능한 탭 그룹 옵션들은 탭 그룹 내의 모든 탭들을 즐겨찾기로 지정하는 옵션, 탭 그룹 내의 모든 탭들을 공유하는 옵션, 탭 그룹 내의 모든 탭들을 닫는 옵션, 또는 탭 그룹의 이름을 변경하는 옵션 중 하나 이상을 포함한 것인 디바이스.
  11. 제9항 또는 제10항에 있어서,
    상기 동작들은 상기 탭 행에서 탭 그룹을 펼쳐보기(expand)하는 동작을 더 포함하고, 상기 펼쳐보기하는 동작은 상기 탭 행에서 상기 탭 그룹의 하나 이상의 탭들을 비그룹화되어 있는 탭들로서 디스플레이하는 동작을 포함한 것인 디바이스.
  12. 제11항에 있어서,
    상기 탭 행에서 상기 탭 그룹의 하나 이상의 탭들을 비그룹화되어 있는 탭들로서 디스플레이는 동작은 상기 탭 그룹의 하나 이상의 탭들이 공통 탭 그룹에 속한다는 시각적 표시를 디스플레이하는 동작을 더 포함한 것인 디바이스.
  13. 제11항 또는 제12항에 있어서,
    상기 펼쳐보기하는 동작은 상기 탭 그룹이 상기 탭 행에서 펼쳐보기되어 디스플레이된 것에 응답하여 탭 그룹을 접는(collapse) 동작을 포함한 것인 디바이스.
  14. 제9항 내지 제13항 중 어느 한 항에 있어서,
    상기 동작들은, 상기 탭 행에서 디스플레이된 상기 하나 이상의 탭들 중 하나의 탭에서 입력을 수신하고, 상기 하나 이상의 탭들 중 하나의 탭에서 상기 입력을 수신한 것에 응답하여, 상기 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작을 더 포함한 것인 디바이스.
  15. 제14항에 있어서,
    상기 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작은 상기 탭 행에서 디스플레이된 각각의 비그룹화되어 있는 탭과 연관된 콘텐츠의 미리보기를 디스플레이하는 동작을 더 포함한 것인 디바이스.
KR1020177016442A 2014-11-17 2015-11-12 탭 스윕핑 및 그룹화 KR102483505B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/543,742 US10338783B2 (en) 2014-11-17 2014-11-17 Tab sweeping and grouping
US14/543,742 2014-11-17
PCT/US2015/060236 WO2016081249A1 (en) 2014-11-17 2015-11-12 Tab sweeping and grouping

Publications (2)

Publication Number Publication Date
KR20170083622A true KR20170083622A (ko) 2017-07-18
KR102483505B1 KR102483505B1 (ko) 2022-12-30

Family

ID=54754767

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177016442A KR102483505B1 (ko) 2014-11-17 2015-11-12 탭 스윕핑 및 그룹화

Country Status (11)

Country Link
US (1) US10338783B2 (ko)
EP (1) EP3221778B1 (ko)
JP (1) JP2017534115A (ko)
KR (1) KR102483505B1 (ko)
CN (1) CN107111416A (ko)
AU (1) AU2015350360A1 (ko)
BR (1) BR112017008443A2 (ko)
CA (1) CA2965694A1 (ko)
MX (1) MX2017006087A (ko)
RU (1) RU2017116991A (ko)
WO (1) WO2016081249A1 (ko)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2637882C2 (ru) * 2015-03-31 2017-12-07 Общество С Ограниченной Ответственностью "Яндекс" Способ управления отображением веб-ресурсов в браузерном окне, способ помещения вкладок в стек в браузерном окне, электронное устройство и сервер
KR102455232B1 (ko) * 2015-06-23 2022-10-17 삼성전자 주식회사 콘텍스트 기반 탭 관리를 위한 방법 및 전자 장치
USD785005S1 (en) * 2015-07-01 2017-04-25 Microsoft Corporation Display screen with graphical user interface
USD778288S1 (en) * 2015-07-01 2017-02-07 Microsoft Corporation Display screen with graphical user interface
USD789944S1 (en) * 2015-07-01 2017-06-20 Microsoft Corporation Display screen with graphical user interface
USD778287S1 (en) * 2015-07-01 2017-02-07 Microsoft Corporation Display screen with graphical user interface
USD787525S1 (en) * 2015-07-01 2017-05-23 Microsoft Corporation Display screen with graphical user interface
USD769257S1 (en) * 2015-07-01 2016-10-18 Microsoft Corporation Display screen with graphical user interface
USD782499S1 (en) * 2015-07-01 2017-03-28 Microsoft Corporation Display screen with graphical user interface
USD769264S1 (en) * 2015-07-29 2016-10-18 Microsoft Corporation Display screen with graphical user interface
US9703887B2 (en) * 2015-08-04 2017-07-11 International Business Machines Corporation Automatically grouping browser tabs based on a pattern of usage
US10891106B2 (en) * 2015-10-13 2021-01-12 Google Llc Automatic batch voice commands
US9971847B2 (en) 2016-01-07 2018-05-15 International Business Machines Corporation Automating browser tab groupings based on the similarity of facial features in images
US10466871B2 (en) 2017-02-24 2019-11-05 Microsoft Technology Licensing, Llc Customizing tabs using visual modifications
US10409451B2 (en) * 2017-07-01 2019-09-10 Ledvance Llc Apparatus containing color coded group and member icons and method of grouping and degrouping members icons in lighting applications
USD845989S1 (en) 2017-11-27 2019-04-16 Microsoft Corporation Display screen with transitional graphical user interface
USD844657S1 (en) 2017-11-27 2019-04-02 Microsoft Corporation Display screen with animated graphical user interface
USD846568S1 (en) 2017-11-27 2019-04-23 Microsoft Corporation Display screen with graphical user interface
USD845982S1 (en) 2017-11-27 2019-04-16 Microsoft Corporation Display screen with graphical user interface
US11537271B2 (en) 2018-04-16 2022-12-27 Ebay Inc. System and method for aggregation and comparison of multi-tab content
CN109657206A (zh) * 2018-11-22 2019-04-19 天津字节跳动科技有限公司 表格的显示方法、装置和电子设备
CN110193204B (zh) * 2019-03-14 2020-12-22 网易(杭州)网络有限公司 操作单位的编组方法、装置、存储介质及电子装置
US10866704B1 (en) * 2019-06-04 2020-12-15 Microsoft Technology Licensing, Llc Intelligent web browser segregation
US10977331B2 (en) * 2019-07-24 2021-04-13 International Business Machines Corporation Closing a plurality of webpages in a browser
CN110908751B (zh) * 2019-10-31 2024-04-19 维沃移动通信有限公司 信息显示、收藏的方法、装置、电子设备及介质
CA3173409A1 (en) * 2020-05-11 2021-11-18 Sebastian KLAHM Adaptable gui for dashboard software
US11853380B2 (en) 2020-06-08 2023-12-26 Dropbox, Inc. Intelligently generating and managing third-party sources within a contextual hub
US20220365639A1 (en) * 2021-05-12 2022-11-17 Google Llc Browser tab management
US11762537B1 (en) * 2022-05-27 2023-09-19 Microsoft Technology Licensing, Llc Tabbed user interface
USD1032633S1 (en) * 2022-06-17 2024-06-25 Google Llc Display screen or portion thereof with transitional graphical user interface
USD1032634S1 (en) * 2022-06-17 2024-06-25 Google Llc Display screen or portion thereof with transitional graphical user interface

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070162864A1 (en) * 2006-01-10 2007-07-12 International Business Machines Corp. User-directed repartitioning of content on tab-based interfaces
US20080301562A1 (en) * 2007-04-27 2008-12-04 Josef Berger Systems and Methods for Accelerating Access to Web Resources by Linking Browsers
US20090327947A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Tab management in a user interface window
US20120131485A1 (en) * 2010-11-23 2012-05-24 Opera Software Asa System and method for providing interactive tab management in tabbed browsers

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030197735A1 (en) * 2002-04-18 2003-10-23 Intel Corporation (A Delaware Corporation) System for sharing content tabs
US20080177994A1 (en) * 2003-01-12 2008-07-24 Yaron Mayer System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows
US7793226B2 (en) * 2006-08-14 2010-09-07 International Business Machines Corporation Method and system for grouping and stacking tab user interface objects with icon status indicators
US20090287559A1 (en) * 2007-12-20 2009-11-19 Michael Chen TabTab
US20110271217A1 (en) * 2010-04-30 2011-11-03 Microsoft Corporation Configurable presets for tab groups
US9354767B2 (en) * 2010-04-30 2016-05-31 Microsoft Technology Licensing, Llc Custom tab ordering and replacement
US8332381B1 (en) * 2011-11-10 2012-12-11 Search Results, LLC Tab search utility
US8881032B1 (en) * 2011-12-07 2014-11-04 Google Inc. Grouped tab document interface
CN103135885B (zh) * 2012-07-31 2016-11-23 珠海金山办公软件有限公司 管理标签的方法及装置
CN102902788B (zh) * 2012-09-29 2016-07-06 北京奇虎科技有限公司 浏览器网页标签自动分组系统及方法
CN103729106B (zh) * 2012-10-10 2019-03-26 腾讯科技(深圳)有限公司 网页缩略图展示方法和装置
CN102937996A (zh) * 2012-11-26 2013-02-20 北京奇虎科技有限公司 一种浏览器标签管理系统及方法
TWI483174B (zh) * 2012-12-12 2015-05-01 Acer Inc 網頁的群組管理方法
CN103412939B (zh) * 2013-08-21 2017-04-05 广州市动景计算机科技有限公司 浏览模式的切换方法及系统
CN103970841A (zh) * 2014-04-24 2014-08-06 小米科技有限责任公司 标签管理方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070162864A1 (en) * 2006-01-10 2007-07-12 International Business Machines Corp. User-directed repartitioning of content on tab-based interfaces
US20080301562A1 (en) * 2007-04-27 2008-12-04 Josef Berger Systems and Methods for Accelerating Access to Web Resources by Linking Browsers
US20090327947A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Tab management in a user interface window
US20120131485A1 (en) * 2010-11-23 2012-05-24 Opera Software Asa System and method for providing interactive tab management in tabbed browsers

Also Published As

Publication number Publication date
WO2016081249A1 (en) 2016-05-26
US20160139750A1 (en) 2016-05-19
US10338783B2 (en) 2019-07-02
BR112017008443A2 (pt) 2017-12-19
KR102483505B1 (ko) 2022-12-30
MX2017006087A (es) 2017-07-27
CA2965694A1 (en) 2016-05-26
RU2017116991A (ru) 2018-11-19
CN107111416A (zh) 2017-08-29
JP2017534115A (ja) 2017-11-16
EP3221778B1 (en) 2023-02-22
AU2015350360A1 (en) 2017-05-11
EP3221778A1 (en) 2017-09-27

Similar Documents

Publication Publication Date Title
KR102483505B1 (ko) 탭 스윕핑 및 그룹화
US11635928B2 (en) User interfaces for content streaming
CN109074276B (zh) 系统任务切换器中的选项卡
US10496268B2 (en) Content transfer to non-running targets
CN108369456B (zh) 用于触摸输入设备的触觉反馈
US8914739B2 (en) Data processing apparatus and method
US10296206B2 (en) Multi-finger touchpad gestures
JP2017523515A (ja) アイコンサイズ変更
US9576049B2 (en) Semantic searching using zoom operations
CN108140029B (zh) 自动堆叠深度查看卡
US20170024226A1 (en) Information processing method and electronic device
KR102310648B1 (ko) 상황 정보 탐색 및 내비게이션 기법
US20160077685A1 (en) Operating System Virtual Desktop Techniques
CN110520848B (zh) 在异构选项卡环境中浮现与任务相关的应用
JP2014519108A (ja) 高速サイトアクセスユーザインタフェースを備えるウェブブラウザ
JP2018538643A (ja) モバイル・ユーザ・インタフェース
US20160085388A1 (en) Desktop Environment Differentiation in Virtual Desktops
US20130278518A1 (en) Controlling Method for Fixing a Scale Ratio of Browsing Image of Touch Device
KR20170097161A (ko) 브라우저 디스플레이 캐스팅 기법들
CN111684402B (zh) 触摸输入表面上的触觉效果
US9582133B2 (en) File position shortcut and window arrangement
US20130155097A1 (en) Method and apparatus for multiple virtual themes for a user interface (ui)
US20160173563A1 (en) Rotation Control of an External Display Device
US20200082465A1 (en) Method and system to generate a multi-panel ui based on hierarchy data corresponding to digital content
Apers et al. User Experience and Interface Guidelines

Legal Events

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