KR20170088378A - 탭 기반 브라우저 콘텐츠 공유 - Google Patents

탭 기반 브라우저 콘텐츠 공유 Download PDF

Info

Publication number
KR20170088378A
KR20170088378A KR1020177016656A KR20177016656A KR20170088378A KR 20170088378 A KR20170088378 A KR 20170088378A KR 1020177016656 A KR1020177016656 A KR 1020177016656A KR 20177016656 A KR20177016656 A KR 20177016656A KR 20170088378 A KR20170088378 A KR 20170088378A
Authority
KR
South Korea
Prior art keywords
computing device
contact
browser tab
browser
tab
Prior art date
Application number
KR1020177016656A
Other languages
English (en)
Inventor
마이클 제이. 패튼
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20170088378A publication Critical patent/KR20170088378A/ko

Links

Images

Classifications

    • G06F17/30873
    • 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/954Navigation, e.g. using categorised browsing
    • 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
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/14Solving problems related to the presentation of information to be displayed

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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

브라우저 콘텐츠가 공유되는 것이 가능해진다. 제 1 컴퓨팅 디바이스에서 동작하는 웹 브라우저 내에 제 1 브라우저 탭이 호출된다. 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이한다. 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택이 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신된다. 제 1 콘택트에게 공유 알림이 전송된다. 제 1 콘택트를 대신하여 수락 표시가 수신된다. 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이가 가능해진다. 제 1 콘택트는 제 2 컴퓨팅 디바이스에서 제 1 콘텐츠와 상호작용하는 것이 가능해진다. 제 2 컴퓨팅 디바이스에서의 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용들은 제 1 컴퓨팅 디바이스에서 제 1 브라우저 탭 내에 디스플레이된다. 제 2 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이는 제 1 브라우저 탭에 제한된다.

Description

탭 기반 브라우저 콘텐츠 공유{TAB BASED BROWSER CONTENT SHARING}
본 발명은 탭 기반 브라우저 콘텐츠 공유에 관한 것이다.
브라우저는, 인터넷 상에서 이용가능한 리소스들과 같은 정보 리소스들을 순회하고(traversing), 검색하고(retrieving), 제시하기(presenting) 위해 사용되는 애플리케이션이다. 오늘날의 사람들은 공동 작업(common task)들을 완료하기 위해 브라우저들을 사용하고, 때로는 브라우저를 사용하여 작업을 완료하기 위해 협력할 수 있다. 예를 들어, 부부가 가족 휴가를 계획하고 있을 수 있으며, 비행기 티켓들을 예약할 필요가 있을 수 있다. 아내는 직장에서 여행 웹사이트 상에서 항공권을 찾기 위해 웹 브라우저를 사용하고 있을 수 있다. 남편은 집에 있을 수 있고, 스스로 웹 브라우저에 직접 액세스할 수 있거나 또는 액세스하지 못할 수 있다. 부부는 두 사람 모두가 선호하는 날짜 및 좌석들이 선택되는 것을 보장하도록 티켓들을 함께 예약하기 원할 수 있다. 이를 달성하기 위해, 아내는 자신의 브라우저의 스크린샷들을 자신의 남편과 공유할 수 있다. 또는 부부가 웹사이트를 동시에 브라우징하는 것을 시도할 수 있지만, 두 사람 모두가 동일한 웹사이트에 내비게이팅할지라도 이들은 자신들이 동일한 세트의 데이터를 보고 있는지 확신하지 못할 수 있다.
데스크탑 스크린 또는 데스크탑 창(window)의 다른 디바이스들에의 공유를 가능하게 하는 다수의 솔루션들이 이용가능하다. 그러한 프로그램들의 예시들은, Citrix® GoToMeeting®과 같은 데스크탑 공유 애플리케이션들, 및 Microsoft® Lync™, Cisco® Webex®과 같은 웹 회의 애플리케이션들을 포함한다. 이들 애플리케이션들은 사람들이 그들의 전체 데스크탑 스크린을 공유/투사(project)하는 것을 가능하게 한다.
본 요약은 아래의 상세한 설명에서 추가로 설명되는 개념들의 선택을 단순한 형태로 소개하기 위해 제공된 것이다. 본 요약은 청구된 발명내용의 중요한 특징들 또는 필수적인 특징들을 식별시키려는 의도는 없으며, 또한 청구된 발명내용의 범위를 한정시키려는 의도도 없다.
브라우저 콘텐츠를 공유하기 위한 방법들, 시스템들, 장치들, 및 컴퓨터 프로그램 제품들이 제공된다. 로컬/호스트 컴퓨팅 디바이스에서 동작하는 웹 브라우저 내에 브라우저 탭이 호출(invoke)된다. 브라우저 탭은 콘텐츠를 디스플레이한다. 브라우저 탭을 공유할 하나 이상의 콘택트(contact)의 선택이 호스트 컴퓨팅 디바이스의 사용자 인터페이스에서 수신된다. 콘택트(들)에게 공유 알림이 전송된다. 콘택트(들)를 대신하여 하나 이상의 원격/클라이언트 컴퓨팅 디바이스로부터 수락 표시가 수신된다. 수락한 콘택트들의 원격 컴퓨팅 디바이스들에서 브라우저 탭의 디스플레이가 가능해진다. 각 콘택트는 각각의 원격 컴퓨팅 디바이스에서 브라우저 탭의 콘텐츠와 상호작용하는 것이 가능해진다. 원격 컴퓨팅 디바이스(들)에서의 콘텐츠와의 콘택트(들)에 의한 상호작용들은 호스트 컴퓨팅 디바이스에서 브라우저 탭 내에 디스플레이된다. 원격 컴퓨팅 디바이스(들)에서의 호스트 컴퓨팅 디바이스의 스크린의 디스플레이는 브라우저 탭에 제한된다.
본 발명의 다양한 실시예들의 구조 및 동작뿐만 아니라, 본 발명의 다른 특징들 및 이점들은 첨부된 도면들을 참조하여 아래에서 상세히 설명된다. 본 발명이 본원에서 설명되는 특정 실시예들에 한정되지 않는다는 점에 유념한다. 그러한 실시예들은 예시적인 목적들만을 위해 본원에 제시된다. 본원에 포함되는 교시들에 기반하여 추가적인 실시예들이 관련 분야(들)에 숙련된 자들에게 명백해질 것이다.
본원에 통합되고 명세서의 일부를 형성하는 첨부된 도면들은 본 출원의 실시예들을 예시하고, 설명과 함께, 본 실시예들의 원리들을 설명하고 당업자가 본 실시예들을 구성하고 사용하도록 또한 역할한다.
도 1은 예시적인 실시예에 따른, 컴퓨팅 디바이스가 하나 이상의 다른 컴퓨팅 디바이스에서의 디스플레이 및 상호작용을 위해 브라우저 탭을 공유하는 통신 시스템의 블록도를 도시한다.
도 2는 예시적인 실시예에 따른, 브라우저 탭들을 하나 이상의 콘택트와 공유하기 위한 프로세스를 제공하는 흐름도를 도시한다.
도 3은 예시적인 실시예에 따른, 하나 이상의 다른 컴퓨팅 디바이스에서의 디스플레이 및 상호작용을 위해 브라우저 탭을 공유하도록 구성되는 컴퓨팅 디바이스의 블록도를 도시한다.
도 4는 예시적인 실시예에 따른, 다수의 열려 있는 브라우저 탭들을 갖는 웹 브라우저를 디스플레이하는 디스플레이 스크린을 도시하고, 여기서 브라우저 탭들 중 하나의 브라우저 탭이 활성화되어 있고 공유를 위해 선택되어 있다.
도 5는 예시적인 실시예에 따른, 도 4의 디스플레이 스크린을 도시하고, 여기서 활성화 브라우저 탭을 공유할 콘택트를 선택하기 위한 인터페이스가 디스플레이된다.
도 6은 예시적인 실시예에 따른, 브라우저 탭을 공유하기 위해 통신 제공자를 선택하기 위한 프로세스를 제공하는 흐름도를 도시한다.
도 7은 예시적인 실시예에 따른, 도 4의 디스플레이 스크린을 도시하고, 여기서 활성화 브라우저 탭을 공유하기 위해 통신 제공자를 선택하기 위한 인터페이스가 디스플레이된다.
도 8은 예시적인 실시예에 따른, 원격 컴퓨팅 디바이스에서의 디스플레이 스크린을 도시하며, 여기서 브라우저 탭을 공유하기 위한 요청이 수신된다.
도 9는 예시적인 실시예에 따른, 원격 컴퓨팅 디바이스에서의 디스플레이 스크린을 도시하며, 여기서 도 4의 활성화 브라우저 탭이 공유된다.
도 10은 예시적인 실시예에 따른, 원격 컴퓨팅 디바이스에서의 브라우저 탭의 디스플레이를 가능하게 하기 위한 프로세스를 제공하는 흐름도를 도시한다.
도 11은 예시적인 실시예에 따른, 도 4의 디스플레이 스크린을 도시하고, 여기서 다수의 브라우저 탭들이 원격 컴퓨팅 디바이스들에서 콘택트들과 공유되고 있다.
도 12는 실시예들이 구현될 수 있는 예시적인 사용자 디바이스의 블록도를 도시한다.
도 13은 실시예들을 구현하기 위해 사용될 수 있는 예시적인 컴퓨팅 디바이스의 블록도를 도시한다.
본 발명의 특징들 및 장점들은, 전반적으로 동일한 참조 문자들이 대응 엘리먼트들을 식별시키는 도면들과 함께 취해질 때 아래에 제시된 상세한 설명으로부터 보다 명백해질 것이다. 도면들에서, 동일한 참조 번호들은 일반적으로, 동일하며 기능적으로 유사하고, 그리고/또는 구조적으로 유사한 엘리먼트들을 표시한다. 엘리먼트가 처음 나타나는 도면은 대응하는 참조 번호에서 가장 좌측 숫자(들)로 표시된다.
I. 소개
본 명세서 및 첨부된 도면들은 본 발명의 특징들을 포함하는 하나 이상의 실시예를 개시한다. 본 발명의 범위는 개시되는 실시예들에 한정되는 것은 아니다. 개시되는 실시예들은 단지 본 발명을 예시할 뿐이며, 개시되는 실시예들의 변형된 버전들이 또한 본 발명에 포함된다. 본 발명의 실시예들은 본원에 첨부된 청구항들에 의해 규정된다.
"일 실시예", "실시예", "예시적인 실시예" 등에 대한 본 명세서에서의 참조들은, 설명되는 실시예가 특정한 피처, 구조, 또는 특성을 포함할 수 있음을 표시하지만, 모든 실시예가 반드시 특정한 피처, 구조, 또는 특성을 포함할 수 있는 것은 아니다. 또한, 그러한 어구(phrase)들은 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 피처, 구조, 또는 특성이 실시예와 관련하여 설명될 때, 명시적으로 설명했는지의 여부에 상관없이 다른 예시적인 실시예들과 관련하여 그러한 피처, 구조, 또는 특성에 영향을 주는 것이 관련 기술(들)의 당업자의 지식 내에 있다는 점이 제기된다.
다양한 예시적인 실시예들이 다음과 같이 설명된다. 본원에서 제공되는 임의의 섹션/서브섹션 표제(heading)들이 한정적으로 의도되는 것은 아니라는 점을 유념한다. 본 문서 전반에 걸쳐 실시예들이 설명되고, 임의의 섹션/서브섹션 하에 임의의 유형의 실시예들이 포함될 수 있다. 또한, 임의의 섹션/서브섹션에서 개시되는 실시예들은 임의의 방식으로 동일한 섹션/서브섹션 및/또는 상이한 섹션/서브섹션에서 설명되는 임의의 다른 실시예들과 결합될 수 있다.
II. 콘택트들과 브라우저 콘텐츠를 공유하기 위한 예시적인 실시예들
브라우저는, 인터넷 상에서 이용가능한 리소스들과 같은 정보 리소스들을 순회하고, 검색하고, 제시하기 위해 사용되는 애플리케이션이다. 오늘날의 사람들은 공동 작업들을 완료하기 위해 브라우저들을 사용하고, 때로는 브라우저를 사용하여 작업을 완료하기 위해 협력할 수 있다. 그러나, 상이한 위치들에 위치한 협력자들이 동일한 웹사이트에 내비게이팅하더라도, 이들은 그들이 동일한 세트의 데이터를 보고 있는지 확신하지 못할 수 있다.
데스크탑 스크린 또는 데스크탑 창의 다른 디바이스들에의 공유를 가능하게 하는 다수의 솔루션들이 이용가능하다. 브라우저 창이 이러한 방식으로 다른 컴퓨팅 디바이스와 공유될 때, 브라우저 창의 모든 열려 있는 탭들 뿐만 아니라 공유 컴퓨팅 디바이스의 나머지 디스플레이 스크린이 공유되고, 이는 바람직하지 않을 수 있다. 콘텐츠를 공유하고 있는 컴퓨팅 디바이스의 사용자는 다른 브라우저 탭들을 비공개(private)/비공유로 유지하면서 단일 탭만을 공유하기 원할 수 있다.
또한, 콘텐츠의 원격 공유의 구성은 장황할 수 있고 공유를 개시하기 위한 다수의 단계들을 포함할 수 있다. 예를 들어, 로컬 사용자는 그들이 콘텐츠를 공유하기 원하는 원격 사용자와 대화를 시작할 필요가 있을 수 있고, 공유를 위해 데스크탑 또는 창을 선택할 필요가 있을 수 있으며, 이어서 원격 사용자가 로컬 사용자의 스크린과 상호작용할 수 있도록 원격 사용자와 컨트롤을 주고받을 필요가 있을 수 있다.
실시예들은 Microsoft Windows®, Apple iOS®, 또는 Google Android™ 운영 체제들을 실행하는 디바이스들을 포함하여, 임의의 유형들의 컴퓨팅 디바이스들 사이에서 브라우징 세션들이 친구, 가족, 및/또는 다른 누군가와 즉시 효과적으로 공유되도록 할 수 있다. 다른 공유 솔루션들과 다르게, 사용자는 단순히 “공유”를 개시하고 공유할 하나 이상의 콘택트를 선택할 수 있으며, 현재 브라우징 세션 탭이 자동으로 공유된다. 원격 사용자들은 가령 패닝(panning)하고, 줌잉(zooming)하고, 그리고 주석(annotation)들을 추가함으로써 공유되는 브라우저 탭과 상호작용할 수 있다. 다른 솔루션들과 다르게, 로컬 사용자는 다른 스크린 정보를 공유하지 않고 어느 탭(들)을 공유할지 선택할 수 있고, 로컬 사용자가 제어권을 갖는다[예를 들어, 공유 세션을 종료할 수 있고, 원격 사용자(들)에 의한 상호작용들을 불가능하게 할 수 있음 등].
예를 들어, 예시의 목적들을 위해 제공되는 일 예시에서, Microsoft® Internet Explorer® 브라우저 내에서, (로컬 컴퓨팅 디바이스, 또는 호스트 머신 상의) 로컬 사용자는 Skype® 버튼을 선택할 수 있다. 온라인인 이용가능한 콘택트들의 리스트를 보여주는 Skype 패널이 나타날 수 있다. 로컬 사용자는 어느 콘택트(들)와 현재 브라우저 탭을 공유하는 것을 시작할지 선택한다. 로컬 컴퓨팅 디바이스 상의 현재 활성화 브라우저 탭은 선택된 콘택트들과 자동으로 공유된다. 콘택트들은 로컬 사용자가 다수 사용자 브라우저 세션을 개시하기 원한다는 알림을 Skype를 통해 수신한다. 콘택트들 각각은 초대를 수락하는 옵션을 갖고, 수락한 각 콘택트에게는 공유되는 탭 콘텐츠의 디스플레이가 제공된다. 모든 참가하는 사용자들[로컬 사용자 및 수락한 콘택트(들)]은 현재 탭 창과 상호작용할 수 있다. 예를 들어, 원격 사용자(들)는 페이지를 패닝하고, 줌잉하고 링크들을 선택하는 등을 할 수 있다. 이는 원격 사용자(들)의 컴퓨팅 디바이스(들)로부터 호스팅 로컬 컴퓨팅 디바이스에 “컨트롤 명령들”을 송신함으로서 달성된다. 이는 키보드, 마우스, 터치, 키넥트(Kinect)(예를 들어, 제스처), 음성 등을 포함하여, 임의의 종류의 사용자 인터페이스들로부터의 입력들을 포함한다.
로컬 사용자(즉, 호스트 사용자)는 명령들을 송신함으로써 어느 원격 사용자들이 공유되는 탭과 상호작용할 수 있는지 구성할 수 있다. 예를 들어, 원격 사용자들(A 및 B)은 상호작용하는 것이 허용될 수 있지만, 사용자(C)는 상호작용하는 것이 불허될 수 있다. 로컬 사용자[진행자(presenter)]는 언제든지 공유를 중단할 수 있다. 로컬 컴퓨팅 디바이스는 다수의 탭들을 동시에 공유할 수 있다. 각 탭은 특정 세트의 하나 이상의 원격 사용자와 공유될 수 있다. 예를 들어, 탭(1)은 원격 사용자들(A 및 B)과 공유될 수 있고, 탭(2)은 원격 사용자들(A 및 C)과 공유될 수 있다.
스크린 상에서 어포던스(affordance)들(예를 들어, 컨트롤들)는 어느 탭들이 현재 공유되고 있는지 표시하고, 탭들이 누구와 공유되고 있는지 표시할 수 있다. 공유되는 브라우저 탭을 보고 있는 원격 사용자들은, 원격 컴퓨팅 디바이스(들) 상에 설치되는 스크린 공유 애플리케이션 및/또는 지원되는 원격 데스크탑을 가질 수 있다.
따라서, 실시예들에서, 하나 이상의 브라우저 탭은 한 명 이상의 사람과 공유되는 것이 가능해진다. 특정 브라우저 탭을 공유하고 있는 모든 사용자들은 컨트롤을 주고받을 필요없이, 공유되는 탭과 동시에 상호작용할 수 있다. 공유는 브라우저 내에서 직접적으로 가능해지고, 적은 셋업 단계들이 포함된다. 브라우저는 동일한 또는 상이한 운영 체제들 및 디바이스 유형들에 걸쳐 사람들과 공유되는 것이 가능해진다.
실시예들은 다양한 환경들에서 구현될 수 있다. 예를 들어, 도 1은 예시적인 실시예에 따른, 컴퓨팅 디바이스가 하나 이상의 다른 컴퓨팅 디바이스에서의 디스플레이 및 상호작용을 위해 하나 이상의 브라우저 탭을 공유하는 통신 시스템(100)의 블록도를 도시한다. 도 1에 도시된 바와 같이, 통신 시스템(100)은 제 1 컴퓨팅 디바이스(102), 제 2 컴퓨팅 디바이스(104a), 및 제 3 컴퓨팅 디바이스(104b)를 포함한다. 네트워크(106)는 컴퓨팅 디바이스들(102, 104a, 및 104b)을 통신가능하게 커플링한다. 컴퓨팅 디바이스(102)는 브라우저 탭 공유 시스템(108) 및 디스플레이 스크린(112)을 포함한다. 컴퓨팅 디바이스(104a)는 애플리케이션(110a) 및 디스플레이 스크린(136a)을 포함하고, 컴퓨팅 디바이스(104b)는 애플리케이션(110b) 및 디스플레이 스크린(136b)을 포함한다. 시스템(100)은 다음과 같이 추가로 설명된다.
컴퓨팅 디바이스들(102, 104a, 및 104b)은 각각, 모바일 컴퓨터 또는 모바일 컴퓨팅 디바이스[예를 들어, Microsoft ® Surface® 디바이스, PDA(personal digital assistant), 랩탑 컴퓨터, 노트북 컴퓨터, Apple iPad™과 같은 태블릿 컴퓨터, 넷북 등], 모바일 폰(예를 들어, 셀 폰, Microsoft Windows® 폰, Apple iPhone, Google® Android™ 운영 체제를 구현하는 폰, Palm® 디바이스, Blackberry® 디바이스와 같은 스마트 폰 등), 웨어러블 컴퓨팅 디바이스[예를 들어, 스마트 워치, Google® Glass™과 같은 스마트 글래스를 포함하는 머리 장착형(head-mounted) 디바이스 등], 또는 다른 유형의 모바일 디바이스(예를 들어, 오토모바일), 또는 데스크탑 컴퓨터 또는 PC(personal computer)와 같은 고정형 컴퓨팅 디바이스일 수 있다. 또한 계속해서, 컴퓨팅 디바이스들(102, 104a, 및 104b)은 각각 포터블 미디어 플레이어, 고정형 또는 핸드헬드 게이밍 콘솔, 개인용 내비게이션 보조기, 카메라, 또는 다른 유형의 고정형 또는 모바일 디바이스일 수 있다. 도 1에서 제 1 컴퓨팅 디바이스(102)는 호스트 또는 로컬 컴퓨팅 디바이스로 간주되고, 제 2 및 제 3 컴퓨팅 디바이스들(104a 및 104b)은 클라이언트 또는 원격 컴퓨팅 디바이스들로 간주된다. 한 쌍의 클라이언트 또는 원격 컴퓨팅 디바이스들이 도 1에 도시되지만, 다른 실시예들에서, 하나 또는 한 자리 다른 개수, 수십 개, 수백 개, 수천 개, 또는 그 훨씬 이상의 개수의 클라이언트 또는 원격 컴퓨팅 디바이스들을 포함하여, 다른 개수의 클라이언트 또는 원격 컴퓨팅 디바이스들이 시스템(100) 내에 있을 수 있다.
컴퓨팅 디바이스들(102, 104a, 및 104b) 각각은 네트워크(106)를 통한 통신들을 가능하게 하는 적어도 하나의 네트워크 인터페이스를 포함할 수 있다. 그러한 네트워크 인터페이스는, 임의의 유형의 네트워크 인터페이스[예를 들어, NIC(network interface card)], 유선 또는 IEEE 802.11 WLAN(wireless LAN)과 같은 무선 인터페이스, Wi-MAX(Worldwide Interoperability for Microwave Access) 인터페이스, 이더넷 인터페이스, USB(Universal Serial Bus) 인터페이스, 셀룰러 네트워크 인터페이스, Bluetooth™ 인터페이스, NFC(near field communication) 인터페이스 등 중 하나 이상일 수 있다. 네트워크 인터페이스들의 추가 예시들은 본원의 다른 곳에서 설명된다. 네트워크(106)의 예시들은 LAN(local area network), WAN(wide area network), PAN(personal area network), 및/또는 인터넷과 같은 통신 네트워크들의 조합을 포함한다.
브라우저 탭 공유 시스템(108)은, 컴퓨팅 디바이스(102)에서의 사용자가 컴퓨팅 디바이스(102)의 디스플레이 스크린(112)에 의해 디스플레이되는 하나 이상의 브라우저 탭을 하나 이상의 다른 사용자와 공유할 수 있도록 구성된다. 예를 들어, 브라우저(114) 내에서 동작하고 콘텐츠(118)를 디스플레이하는 브라우저 탭(116)이 하나 이상의 다른 사용자와 공유될 수 있다. 호스트 사용자는 브라우저 탭(116)의 공유가 개시되도록 하기 위해 브라우저 탭(116)과 연관하여 브라우저 탭 공유 시스템(108)에 의해 제공되는 공유 옵션을 선택할 수 있다. 예를 들어, 사용자는 공유를 개시하기 위해 컨트롤[예를 들어, 터치, 클릭, 미리결정된 단어 또는 어구를 말하기, 미리결정된 제스처를 행하기 등]과 상호작용할 수 있거나, 또는 다른 방식으로 공유가 개시되도록 할 수 있다. 사용자는 공유할 콘택트(식별된 사용자)를 선택할 수 있고, 네트워크(106)를 통한 통신들을 통해 공유가 발생하도록 통신 제공자(예를 들어, 웹 회의 도구, 데스크탑 공유 도구 등)를 선택적으로 선택할 수 있다. 브라우저 탭 공유 시스템(108)에 의해, 이 예시에서 제 2 컴퓨팅 디바이스(104a)인 선택된 콘택트의 컴퓨팅 디바이스에 네트워크(106)를 통해 공유 요청(128)이 전송될 수 있다. 콘택트는 공유 요청(128)을 수락하거나 또는 거절하기 위해 컴퓨팅 디바이스(104a)에서 애플리케이션(110a)과 상호작용할 수 있다. 콘택트가 공유 요청(128)을 수락하면, 제 2 컴퓨팅 디바이스(104a)는 컴퓨팅 디바이스(102)에서의 브라우저 탭 공유 시스템(108)에 네트워크(106)를 통해 공유 수락(130)을 전송할 수 있다.
그 결과로서, 브라우저 탭 공유 시스템(108)은, 애플리케이션(110a)이 디스플레이 스크린(136a) 내에 브라우저 탭(120)으로서 브라우저 탭(116)을 디스플레이하도록 하는 정보를 포함하는 브라우저 탭 디스플레이 정보(132)를 네트워크(106)를 통해 컴퓨팅 디바이스(104a)에 전송할 수 있다. 디스플레이 정보(132)는 컴퓨팅 디바이스(102)에서의 사용자에 의한 브라우저 탭(116)과의 상호작용들을 포함한다. 이러한 방식으로, 컴퓨팅 디바이스(102)에서의 브라우저 탭(116)과의 사용자에 의한 상호작용들은 브라우저 탭(120) 내에 컴퓨팅 디바이스(104a)에서의 콘택트에게 디스플레이될 수 있다. 콘택트는 컴퓨팅 디바이스(104a)에서의 애플리케이션(110a)에 의해 디스플레이되는 브라우저 탭(120)과 상호작용할 수 있고, 애플리케이션(110a)은 컴퓨팅 디바이스(102)에서의 브라우저 탭 공유 시스템(108)에 네트워크(106)를 통해 이들 상호작용들을 기술하는 상호작용 정보(134)를 전송할 수 있다. 이러한 방식으로, 컴퓨팅 디바이스(104a)에서의 브라우저 탭(120)과의 콘택트에 의한 상호작용들은 브라우저 탭(116) 내에 컴퓨팅 디바이스(102)에서의 사용자에게 디스플레이될 수 있다.
유사한 방식으로, 브라우저 탭 공유 시스템(108)은, 컴퓨팅 디바이스(102)에서의 사용자가 제 3 컴퓨팅 디바이스(104b)와 같은, 시스템(100) 내의 추가적 컴퓨팅 디바이스들에서의 추가적 콘택트들과 브라우저 탭(116)을 공유하도록 할 수 있다. 다수의 콘택트들과의 동일한 브라우저 탭의 공유가 동시적일 수 있다. 또한, 브라우저 탭 공유 시스템(108)은, 컴퓨팅 디바이스(102)에서의 사용자가 동일한 콘택트들 또는 상이한 콘택트들과의 추가적 브라우저 탭들을 공유하는 것을 포함하여, 시스템(100) 내의 임의의 수의 컴퓨팅 디바이스들에서의 콘택트들과 브라우저(114)의 브라우저 탭들을 또한 공유할 수 있도록 한다. 동일한 브라우저의 그리고/또는 상이한 브라우저들의 다수의 브라우저 탭들의 공유는 동시적일 수 있다.
실시예들에서, 도 1의 브라우저 탭 공유 시스템(108)은 브라우저 탭 공유를 가능하게 하기 위해 다양한 방식들로 구성될 수 있고, 다양한 방식들로 동작할 수 있다. 예를 들어, 도 2는 예시적인 실시예에 따른, 브라우저 탭들을 하나 이상의 콘택트와 공유하기 위한 프로세스를 제공하는 흐름도를 도시한다. 브라우저 탭 공유 시스템(108)은 실시예들에서의 흐름도(200)에 따라 동작할 수 있다. 예시적인 목적들을 위해, 흐름도(200)는 도 3과 관련하여 아래에서 설명된다. 도 3은 예시적인 실시예에 따른, 하나 이상의 다른 컴퓨팅 디바이스에서의 디스플레이 및 상호작용을 위해 브라우저 탭을 공유하도록 구성되는 컴퓨팅 디바이스(300)의 블록도를 도시한다. 컴퓨팅 디바이스(300)는 컴퓨팅 디바이스(102)의 예시이고, 브라우저 탭 공유 시스템(340)은 도 1의 브라우저 탭 공유 시스템(108)의 예시이다. 도 3에 도시된 바와 같이, 컴퓨팅 디바이스(300)는 브라우저(114), 사용자 인터페이스(310), 네트워크 인터페이스(321), 및 브라우저 탭 공유 시스템(340)을 포함한다. 브라우저(114)는 콘텐츠(118)(예를 들어, 텍스트, 이미지들, 비디오들, 오디오, 하이퍼링크들, 다른 객체들 등)를 포함하는 브라우저 탭(116)을 디스플레이한다. 또한, 브라우저 탭 공유 시스템(340)은 공유 선택기 인터페이스(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 및 원격 상호작용 수신기(308)를 포함한다.
추가적인 구조적 및 동작적 실시예들은 도 2 및 도 3의 이어지는 설명들에 기반하여 당업자(들)에게 명백해질 것이다. 예를 들어, 브라우저 탭 공유 시스템(340)이 도 3에서 브라우저(114)로부터 분리되어 도시되지만, 브라우저 탭 공유 시스템(340)은 브라우저(114) 내에 통합될 수 있다. 브라우저(114) 내에 통합될 때, 브라우저 탭 공유 시스템(340)은 플러그인(plug in) 또는 애드인(add-in)될 수 있거나, 또는 웹 브라우저의 프로그램 코드 내에 직접적으로 통합될 수 있다. 브라우저(114)에 적용가능한 웹 브라우저들의 예시들은 워싱턴주, 레드몬드의 Microsoft Corp.에 의해 개발된 Internet Explorer®, 캘리포니아주, 마운틴 뷰의 Mozilla Corp.에 의해 개발된 Mozilla Firefox®, 캘리포니아주, 쿠퍼티노의 Apple Inc.에 의해 개발된 Safari®, 및 캘리포니아주, 마운틴 뷰의 Google® Chrome을 포함한다.
도 2의 흐름도(200)는 단계(202)로 시작한다. 단계(202)에서, 웹 브라우저 내에 제 1 브라우저 탭 - 이 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 이 호출된다. 실시예에서, 도 3 내의 브라우저(114)는 브라우저 탭(116)을 호출할 수 있다. 예를 들어, 사용자는 가령 풀 다운(pull down) 메뉴를 사용함으로써, 마우스 클릭, 터치, 음성, 제스처 등에 의해 브라우저 컨트롤(예를 들어, 새로운 탭 컨트롤)과 상호작용함으로써 브라우저 탭(116)이 호출되도록 하기 위해 브라우저(114)와 상호작용할 수 있거나, 또는 브라우저 탭이 다른 방식으로 호출되도록 할 수 있다. 브라우저 탭(116)은 브라우저(114)의 다수의 브라우저 탭들 중 하나의 브라우저 탭일 수 있거나, 또는 브라우저(114)의 열려 있는 브라우저 탭만일 수 있다.
브라우저 탭은 콘텐츠를 디스플레이하고 콘텐츠와의 상호작용을 허용하기 위한 브라우저 창처럼 동작하는 엔티티(entity)이다. 브라우저 창[예를 들어, 브라우저(114)의 디스플레이되는 인스턴스(instance)]은 하나의 브라우저 탭 또는 다수의 브라우저 탭들을 포함할 수 있고, 각 브라우저 탭은 각각의 웹 페이지를 디스플레이하도록 사용될 수 있다. 가장 바깥쪽(outermost) 브라우저 탭이 활성화되고 디스플레이되는 반면 다른 브라우저 탭들이 활성화 브라우저 탭 아래에 있고 그들의 콘텐츠가 디스플레이 내에서 보이지 않도록, 브라우저 창은 브라우저 탭들을 타일화(tiled) 방식으로 디스플레이할 수 있다. 그러나, 브라우저 창을 보고 있는 사용자가 활성화 탭만이 아닌 다른 브라우저 탭들을 인식하도록, 웹 브라우저 내에 열려 있는 각 브라우저 탭의 탭화된(tabbed) 부분은 볼 수 있다(몇몇 경우들에서, 미리결정된 최대 개수의 탭화된 부분들이 디스플레이될 수 있음). 다른 구현예들에서, 브라우저 탭들은 다른 방식으로 디스플레이될 수 있다.
예를 들어, 도 4는 예시적인 실시예에 따른, 다수의 호출된, 열려 있는 브라우저 탭들을 갖는 웹 브라우저(402)를 디스플레이하는 디스플레이 스크린(400)을 도시하고, 여기서 브라우저 탭들 중 하나의 브라우저 탭이 활성화되어 있다. 웹 브라우저(402)는 도 1의 브라우저(114)의 예시이다. 도 4에서, 브라우저(402)는 제 1 브라우저 탭(404a), 제 2 브라우저 탭(404b), 및 제 3 브라우저 탭(404c)으로 표시된 3개의 호출된 브라우저 탭들을 포함한다. 가장 바깥쪽 브라우저 탭인 제 1 브라우저 탭(404a)은 볼 수 있고, 따라서 활성화 브라우저 탭이다. 제 1 브라우저 탭(404a)은 상부에 보다 작은 직사각형 탭화된 부분, 및 보다 큰 직사각형 창 부분(406)을 포함한다. 직사각형 탭화된 부분은 창 부분(406)의 상부 에지로부터 연장된다. 제 2 및 제 3 브라우저 탭들(404b 및 404c)의 상부 직사각형 탭화된 부분들만이 도 4에서 볼 수 있는데, 그들의 보다 큰 창 부분들이 제 1 브라우저 탭(404a)의 창 부분(406) 뒤에 은폐되었기 때문이다. 웹 브라우저 및 브라우저 탭이 도 4에 도시된 구성 이외의 다른 구성들을 가질 수 있다는 점을 유념한다.
도 2 내의 흐름도(200)를 다시 참조하면, 단계(204)에서, 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택이 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신된다. 실시예에서, 도 3의 브라우저(114)의 사용자는, 하나 이상의 다른 사용자와의 브라우저 탭(116)의 공유가 개시되도록 브라우저 탭(116)과 연관하여 사용자 인터페이스(310) 내의 공유 선택기 인터페이스(302)에 의해 제공되는 공유 옵션을 선택할 수 있다. 예를 들어, 사용자는 공유를 개시하기 위해 사용자 인터페이스(310)에 의해 제공되는 사용자 인터페이스 컨트롤[예를 들어, 터치, 클릭, 미리결정된 단어 또는 어구를 말하기, 미리결정된 제스처를 행하기 등]과 상호작용할 수 있거나, 또는 다른 방식으로 공유가 개시되도록 할 수 있다.
예를 들어, 도 4에 도시된 바와 같이, 사용자 인터페이스 컨트롤(408)이 웹 브라우저(402)에 의해 디스플레이될 수 있다. 사용자 인터페이스 컨트롤(408)은 특히 탭 공유를 가능하게 하기 위해 구성되는 공유 컨트롤일 수 있거나, 또는 (도 4의 예시에서와 같이) 다수의 옵션들로부터 선택가능한 옵션으로서의 공유를 포함하는 보다 많은 일반적인 컨트롤일 수 있다. 도 4의 예시에서, 사용자 인터페이스 컨트롤(408)은 기어(gear) 형상을 갖는 것으로서 도시되고, 웹 브라우저(402)의 창의 상단 우측 코너에 위치되는 것으로서 도시되지만, 다른 실시예들에서, 사용자 인터페이스 컨트롤(408)은 도 4에 도시된 것과는 상이한 형상을 가질 수 있고/있거나 제 1 브라우저 탭(404a) 내에 또는 다른 곳에 위치되는 것을 포함하여 웹 브라우저(402) 내에 임의의 곳에 위치될 수 있다. 예를 들어, 일 실시예에서, 사용자 인터페이스 컨트롤(408)은 사용자가 브라우저 탭(404a)의 탭화된 부분 또는 윈도우 부분(406)과 상호작용할 때 나타나는 선택부 또는 메뉴(예를 들어, 팝업)일 수 있다.
도 4의 예시에서, 사용자는 포인터(414)로 사용자 인터페이스 컨트롤(408) 상을 클릭함으로써, 터치에 의해, 음성에 의해, 제스처에 의해 등을 포함하여 임의의 방식으로 사용자 인터페이스 컨트롤(408)과 상호작용할 수 있다. 일 실시예에서, 단일 상호작용(예를 들어, 클릭, 터치 등)이 공유 프로세스를 개시한다. 다른 실시예에서, 공유 프로세스를 개시하기 위해 사용자 인터페이스 컨트롤(408)과의 다수의 상호작용들이 사용된다. 예를 들어, 도 4에 도시된 바와 같이, 사용자 인터페이스 컨트롤(408)과의 상호작용으로 인해 “활성화 탭 공유”의 옵션을 포함하는 메뉴(410)가 디스플레이될 수 있다. “활성화 탭 공유”의 옵션이 선택되면, 도 4의 예시에서 브라우저 탭(404a)인 웹 브라우저(402)의 활성화 탭을 공유하기 위한 프로시저가 개시된다. 활성화 탭을 공유하기 위한 프로세스의 일부로서, 웹 브라우저(402)의 사용자는 활성화 탭을 공유할 하나 이상의 콘택트를 선택하도록 요청받을 수 있고/있거나 관련 데이터를 공유하게 하는 통신들을 처리하기 위한 통신 제공자를 선택하도록 요청받을 수 있다.
예를 들어, 도 4 내의 “활성화 탭 공유”를 선택한 후, 사용자는 공유 선택기 인터페이스(302)에 의해 하나 이상의 콘택트를 선택하게 될 수 있다. 공유 선택기 인터페이스(302)는 사용자 인터페이스(310) 내에 디스플레이되는 컨트롤과 같이, 사용자가 콘택트를 선택할 수 있도록 하는 선택 메커니즘을 제공할 수 있다. 예를 들어, 도 5는 실시예에 따른, 도 4의 디스플레이 스크린(400)을 도시하고, 여기서 활성화 브라우저 탭(404a)을 공유할 콘택트를 선택하기 위해 콘택트 리스트(502)가 디스플레이된다. 도 5의 예시에서, 콘택트 리스트(502)는 웹 브라우저(402)의 우측에 도시되는 콘택트들의 리스트이지만, 다른 실시예들에서, 콘택트 리스트(502)는 다른 구성들 및/또는 웹 브라우저(402)의 창의 내측 또는 외측의 다른 위치들을 가질 수 있다. 콘택트 리스트(520) 내에 리스트화되는 각 콘택트는 사용자가 공유를 원할 수 있는 특정 사람에 대응한다. 각 콘택트는 이름, 사진, 상태(예를 들어, 온라인, 비온라인), 위치 및/또는 다른 정보 중 하나 이상을 포함하여, 대응하는 사람에 대한 다양한 식별 정보를 제공할 수 있다.
도 5의 예시에서, 사용자는 선택된 콘택트 상을 포인터(414)로 클릭함으로써, 터치에 의해, 음성에 의해, 제스처에 의해 등을 포함하여, 공유를 위한 콘택트를 임의의 방식으로 선택하기 위해 콘택트 리스트(502)와 상호작용할 수 있다. 도 5의 예시에서, 사용자는 포인터(414)를 사용하여 콘택트 리스트(502) 내의 제 3 콘택트(504)를 선택한다. 몇몇 실시예들에서, 사용자가 다수의 콘택트들과 활성화 탭을 공유하기 원하면, 사용자는 콘택트 리스트(502) 내의 다수의 콘택트들을 선택하게 될 수 있다. 도 3에 도시된 바와 같이, 공유 선택기 인터페이스(302)는 브라우저 탭(116)을 공유하기 위해 사용자에 의해 선택된 하나 이상의 콘택트를 표시하는 선택된 콘택트(314)를 사용자 인터페이스(310)로부터 수신할 수 있다. 공유 선택기 인터페이스(302)는 브라우저 탭 공유 시스템(340)의 다른 컴포넌트들에 의해 수신될 수 있는 선택된 콘택트 표시(318)를 출력할 수 있다.
선택된 콘택트(들)와의 통신들은 미리구성된 통신 제공자에 따라 처리될 수 있다. 대안적으로, 선택된 콘택트(들)와의 통신들은 선택된 통신 제공자에 의해 처리될 수 있다. 도 3의 공유 선택기 인터페이스(302)는 사용자 인터페이스(310) 내에 디스플레이되는 컨트롤과 같이, 사용자가 제공자를 선택할 수 있도록 하는 선택 메커니즘을 제공할 수 있다. 제공자가 선택가능한 실시예에서, 도 6에 도시된 프로세스는 도 2의 흐름도(200)의 일부로서 수행될 수 있다. 도 6은 예시적인 실시예에 따른, 브라우저 탭을 공유하기 위해 통신 제공자를 선택하기 위한 프로세스를 제공하는 흐름도(600)를 도시한다. 흐름도(600)는 다음과 같이 설명된다:
흐름도(600)는 단계(602)로 시작한다. 단계(602)에서, 제 1 브라우저 탭을 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들이 표시된다. 예를 들어, 도 7은 예시적인 실시예에 따른, 도 4의 디스플레이 스크린(400)을 도시하고, 여기서 활성화 브라우저 탭을 공유하기 위해 통신 제공자를 선택하기 위한 제공자 리스트(702)가 디스플레이된다. 도 7의 예시에서, 제공자 리스트(702)는 웹 브라우저(402)의 우측에 도시되는 통신 제공자들의 리스트이지만, 다른 실시예들에서, 제공자 리스트(702)는 다른 구성들 및/또는 웹 브라우저(402)의 창의 내측 또는 외측의 다른 위치들을 가질 수 있다. 제공자 리스트(702) 내에 리스트화된 각 통신 제공자는, 선택된 콘택트(들)와의 공유 관련 통신들을 처리하도록 사용자가 선택할 수 있는 특정 제공자에 대응한다. 제공자 리스트(702)는 제공자명, 로고, 상태(예를 들어, 제공자가 동작가능함, 제공자가 서버/연결 문제들을 가짐 등), 및/또는 다른 정보 중 하나 이상을 포함하여, 각 리스트화된 제공자에 대한 다양한 식별 정보를 제공할 수 있다. 적용가능한 통신 제공자들의 예시들은, Citrix® GoToMeeting®과 같은 데스크탑 공유 애플리케이션들, 및 Skype®, Microsoft® Lync™, Cisco® Webex®과 같은 웹 회의 애플리케이션들을 포함한다. 대안적으로 그리고/또는 추가적으로, 독점(proprietary) 통신 제공자가 리스트화될 수 있다.
단계(604)에서, 복수의 통신 제공자들 중 제 1 브라우저 탭을 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택이 수신된다. 도 7의 예시에서, 사용자는 선택된 제공자 상을 포인터(414)로 클릭함으로써, 터치에 의해, 음성에 의해, 제스처에 의해 등을 포함하여, 임의의 방식으로 제공자를 선택하기 위해 제공자 리스트(702)와 상호작용할 수 있다. 도 7의 예시에서, 사용자는 포인터(414)를 사용하여 제공자 리스트(702) 내의 제 2 제공자를 선택한다. 도 3에 도시된 바와 같이, 공유 선택기 인터페이스(302)는 브라우저 탭(116)을 공유하기 위해 사용자에 의해 선택된 제공자를 표시하는 선택된 제공자(316)를 사용자 인터페이스(310)로부터 수신할 수 있다.
또한, 도 3에 도시된 바와 같이, 공유 선택기 인터페이스(302)는 선택된 제공자를 표시하는 선택된 제공자 표시(320)를 출력할 수 있다. 네트워크 인터페이스(312)는 선택된 제공자 표시(320)를 수신한다. 그와 같이, 네트워크 인터페이스(312)는 선택된 제공자에 따라, 공유되는 브라우저 정보를 콘택트들과 주고받도록 자체 구성한다. 다른 실시예에서 네트워크 인터페이스(312)가 디폴트 통신 제공자를 사용하도록 구성될 수 있다는 점을 유념한다.
다시 도 2를 참조하면, 단계(206)에서 제 1 콘택트에게 공유 알림이 전송된다. 실시예에서, 콘택트 인터페이스(304)는 디폴트 또는 [예를 들어, 도 6의 흐름도(600)에 따라 선택된] 선택된 통신 제공자를 사용하여, 단계(204)에서 선택된 콘택트(들)에게 공유 알림을 전송하도록 구성된다. 예를 들어, 도 3에 도시된 바와 같이, 콘택트 인터페이스(304)는 브라우저 탭(116)을 공유하기 위해 선택된 콘택트들을 표시하는 선택된 콘택트 표시(318)를 수신한다. 콘택트 인터페이스(304)는 선택된 콘택트들 각각에 대한 공유 알림(322)을 생성하도록 구성된다. 네트워크 인터페이스(312)는 공유 알림(들)(322)을 수신하고, 선택된 콘택트들 각각에게 공유 요청(324)을 전송하도록 구성된다. 네트워크 인터페이스(312)는 (예를 들어, 디폴트 또는 선택된) 사용되고 있는 통신 제공자에 따라 공유 요청(들)(324)을 전송한다. 각 공유 요청(324)은 제공자에 따라 구성된 프로토콜에 따라 전달될 수 있고, 제공자에 따라 통신들을 처리하도록 구성되는 선택된 콘택트들의 컴퓨팅 디바이스들에서 애플리케이션들에 의해 수신될 수 있다.
예를 들어, 도 8은 예시적인 실시예에 따른, 원격 컴퓨팅 디바이스(810)에서의 디스플레이 스크린(800)을 도시하며, 여기서 브라우저 탭을 공유하기 위한 요청이 수신된다.
도 8의 예시에서, 컴퓨팅 디바이스(810)는 공유를 위해 컴퓨팅 디바이스(300)에서 선택된 콘택트에 대응한다. 컴퓨팅 디바이스(810)의 네트워크 인터페이스[도 8에는 도시되지 않았으며, 예를 들어 도 3 내의 네트워크 인터페이스(312)와 유사함]는 [예를 들어, 도 1의 공유 요청(128)과 유사하게] 공유 요청(324)을 수신했다. 응답으로, 선택된 통신 제공자에 대응하는 애플리케이션(802)이 호출된다. 도 8의 예시에서, 애플리케이션(802)은, 선택된 콘택트인 컴퓨팅 디바이스(810)의 사용자가 공유 요청(324)을 수락하거나 또는 수락하지 않는 것을 가능하게 하는 사용자 인터페이스 컨트롤(804)을 디스플레이한다. 컨트롤(804)은 임의의 형상 또는 형식을 가질 수 있으며, 애플리케이션(802)의 디스플레이 내에 임의의 위치에 위치될 수 있다. 예를 들어, 사용자 인터페이스 컨트롤(804)은 푸시 버튼, 체크 박스, 메뉴 등 중 하나 이상을 포함할 수 있다. 사용자는, 포인터(806)로 사용자 인터페이스 컨트롤(804) 상을 클릭함으로써, 터치에 의해, 음성에 의해, 제스처에 의해 등을 포함하여, 공유 요청의 수락(또는 비수락)을 표시하기 위한 임의의 방식으로 사용자 인터페이스 컨트롤(804)과 상호작용할 수 있다.
실시예들에서, 애플리케이션(802)은, Citrix® GoToMeeting®과 같은 데스크탑 공유 애플리케이션, Skype®, Microsoft® Lync™, 또는 Cisco® Webex®과 같은 웹 회의 애플리케이션, 독점 통신 애플리케이션, 또는 그러한 통신들을 가능하게 하는 다른 애플리케이션을 포함하여, 본원에서 언급된 또는 그 외에 공지된 프로토콜들 또는 하나 이상의 통신 제공자들에 따라 통신하도록 구성되는 임의의 애플리케이션일 수 있다는 점을 유념한다.
도 2를 다시 참조하면, 단계(208)에서, 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시가 수신된다. 위에서 설명된 바와 같이, 원격 컴퓨팅 디바이스에서의 콘택트는 도 3의 공유 요청(322)을 수락하거나 또는 거절할 수 있다. 예를 들어, 도 8의 컴퓨팅 디바이스(810)에서의 콘택트는 공유 요청(322)을 수락하거나 또는 거절하기 위해 컨트롤(804)과 상호작용할 수 있다. 콘택트가 공유 요청(322)을 수락하면, 애플리케이션(802)은 컴퓨팅 디바이스(810)로부터 도 3에 도시된 컴퓨팅 디바이스(300)에서의 브라우저 탭 공유 시스템(340)에 수락 표시(324)[예를 들어, 도 1에서의, 네트워크(106)를 통해 전송된 공유 수락(130)]를 전송할 수 있다. 콘택트 인터페이스(304)는 대응하는 공유 요청(322)을 수락한 각 콘택트로부터 네트워크 인터페이스(312)를 통해 수락 표시(324)를 수신하고, 브라우저 탭(116)을 실제로 공유할 하나 이상의 콘택트를 표시하는 참가하는 콘택트들(326)을 생성한다.
단계(210)에서, 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이가 가능해진다. 실시예에서, 원격 탭 컨트롤러(306)는 도 8의 컴퓨팅 디바이스(810)와 같이, 참가하는 콘택트들(326) 내에 표시된 수락한 콘택트들의 하나 이상의 컴퓨팅 디바이스에서의 브라우저 탭(116)의 디스플레이를 가능하게 하도록 구성된다. 실시예에서, 원격 탭 컨트롤러(306)는 브라우저 탭(116)[예를 들어, 콘텐츠(118)]을 브라우저(114)에 의해 디스플레이되는 것으로서 규정하는 디스플레이 정보를 표시하는 탭 디스플레이 정보(328)를 브라우저(114)로부터 수신한다. 예를 들어, 탭 디스플레이 정보(328)는 마크업 언어 코드[예를 들어, HTML(hypertext markup language), XML(extensible markup language) 코드 등], 스크립트들, 및/또는 브라우저 탭(116)의 디스플레이되는 정보를 규정하는 다른 정보를 포함할 수 있고/있거나 컴퓨팅 디바이스(300)에서의 브라우저 탭(116)의 디스플레이를 가능하게 하도록 [예를 들어, 브라우저(114)의 엔진을 렌더링함으로써] 브라우저(114)에 의해 생성되는 그래픽 정보를 포함할 수 있다.
도 3에 도시된 바와 같이, 원격 탭 컨트롤러(306)는, 브라우저 탭(116)을 규정하는 디스플레이 정보를 포함하고 참가하는 콘택트들(326)의 수락한 콘택트들을 표시하는 탭 디스플레이 정보(330)를 출력한다. 네트워크 인터페이스(312)는 탭 디스플레이 정보(330)를 수신하고, 탭 디스플레이 정보(330) 내의 브라우저 탭(116)을 규정하는 디스플레이 정보를 참가하는 콘택트들(326)의 콘택트들 각각에 [도 1의 네트워크(106)를 통해] 전송하도록 구성된다. 네트워크 인터페이스(312)는 (예를 들어, 디폴트 또는 선택된) 사용되고 있는 통신 제공자에 따라 디스플레이 정보를 전송한다. 탭 디스플레이 정보(330)는 제공자에 따라 구성된 프로토콜에 따라 전달될 수 있고, 선택된 콘택트들의 컴퓨팅 디바이스들에서 애플리케이션들에 의해 수신될 수 있다. 도 8을 참조하면, 컴퓨팅 디바이스(810)에서의 애플리케이션(802)은 탭 디스플레이 정보(330)를 수신할 수 있고, 그에 기반하여 브라우저 탭(116)의 디스플레이를 생성할 수 있다.
예를 들어, 도 9는 예시적인 실시예에 따른, 브라우저 탭(404a)이 애플리케이션(802)에 의해 디스플레이되는 컴퓨팅 디바이스(810)에서의 디스플레이 스크린(800)을 도시한다. 도 9 내의 브라우저 탭(404a)은 “호스트” 컴퓨팅 디바이스[예를 들어, 도 3의 컴퓨팅 디바이스(300)]의 디스플레이 스크린(400) 상에 디스플레이되는 도 4의 브라우저 탭(404a)의 복사본(copy)이다. 그와 같이, 컴퓨팅 디바이스(810)에서의 클라이언트는 호스트 컴퓨팅 디바이스에서의 사용자와 동시에 브라우저 탭(404a)이 디스플레이되고, 사용자는 따라서 클라이언트와 브라우저 탭(404a)을 공유한다. 하나 이상의 추가적인 콘택트는 그들의 컴퓨팅 디바이스들에서 브라우저 탭(404a)의 복사본이 유사하게 디스플레이될 수 있으므로 공유에 참가할 수 있다.
도 2를 다시 참조하면, 단계(212)에서, 제 1 콘택트는 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것이 가능해진다. 실시예에서, 브라우저 탭(116)의 공유에 참가하는 컴퓨팅 디바이스들에서의 콘택트들은 브라우저 탭(116)의 콘텐츠(118)와 상호작용하는 것이 가능해진다. 예를 들어, 도 9를 참조하면, 컴퓨팅 디바이스(810)와 연관된 콘택트는 포인터(806)를 사용함으로써, 터치에 의해, 음성에 의해, 제스처에 의해 등을 포함하여, 임의의 방식으로 브라우저 탭(404a)과 상호작용할 수 있다.
도 4의 브라우저 탭(404a)과의 사용자(“호스트”)에 의한 진행 중인 상호작용들은 컴퓨팅 디바이스(810)에 디스플레이 정보(330)로 전송되어 애플리케이션(802)에 의해 디스플레이 스크린(800) 내의 브라우저 탭(404a) 내에 디스플레이된다. 디스플레이될 수 있는 그러한 상호작용들의 예시들은, 상호작용 버튼들, 메뉴들의 풀링 업(pulling up)과 메뉴들과의 상호작용, 텍스트 엔트리(entry) 공백들/영역들로의 텍스트의 입력, 웹 페이지들을 통해 앞으로 그리고/또는 뒤로 내비게이팅하기 위해 (하이퍼링크된 이미지들 및/또는 다른 객체들을 포함하는) 하이퍼링크들을 선택하는 것, 데이터를 양식으로 제출하는 것, 일련의 엔트리 양식들을 통한 진행, 비디오들을 재생하는 것, 오디오 파일들을 재생하는 것, 및/또는 브라우저 탭(404a)의 콘텐츠와의 임의의 다른 상호작용들을 포함한다. 반대로, 도 8의 브라우저 탭(404a)과의 콘택트에 의한 상호작용들은, 컴퓨팅 디바이스(810)의 애플리케이션(802)으로부터 호스트 컴퓨팅 디바이스에 원격 디스플레이 정보(332)로 전송되어 브라우저(402)에 의해 디스플레이 스크린(400) 내의 브라우저 탭(404a) 내에 디스플레이된다. 원격 디스플레이 정보(332)는 브라우저 탭(404a)과의 콘택트에 의한 상호작용들(예를 들어, 선택들, 패닝, 줌잉 등)을 표시하는 컨트롤 명령들을 포함하고, 이들 컨트롤 명령들은 호스트 컴퓨팅 디바이스에서 브라우저 탭(404a) 내에 구현될 수 있다.
예를 들어, 도 3에 도시된 바와 같이, 원격 상호작용 수신기(308)는 네트워크 인터페이스(312)를 통해 원격 디스플레이 정보(332)를 수신한다. 원격 디스플레이 정보(332)는 원격 컴퓨팅 디바이스에서 발생하는 공유되는 브라우저 탭과의 상호작용들을 기술하는 정보(예를 들어, 그래픽, 데이터, 코드 등)를 포함한다. 원격 디스플레이 정보(332)는 참가하는 콘택트들(326)의 콘택트들 각각과 연관된 컴퓨팅 디바이스들 각각으로부터 수신될 수 있다. 원격 상호작용 수신기(308)는 브라우저(114)에 의해 수신되는 원격 탭 디스플레이 정보(334)를 생성한다. 원격 탭 디스플레이 정보(334)는 하나 이상의 원격 컴퓨팅 디바이스로부터 수신되는 원격 디스플레이 정보(332)의 정보를 포함한다. 원격 탭 디스플레이 정보(334)에 기반하여, 브라우저(334)는, 컴퓨팅 디바이스(300)에서 로컬로 디스플레이되는 공유되는 브라우저 탭 상에, 원격 컴퓨팅 디바이스들에서의 공유되는 브라우저 탭과의 하나 이상의 콘택트에 의한 상호작용들을 디스플레이한다.
실시예에서, 원격 탭 컨트롤러(306) 및 원격 상호작용 수신기(308)는 도 10에 따라 동작할 수 있다. 도 10은 예시적인 실시예에 따른, 원격 컴퓨팅 디바이스에서의 브라우저 탭의 디스플레이를 가능하게 하기 위한 프로세스를 제공하는 흐름도(1000)를 도시한다. 추가적인 구조적 및 동작적 실시예들은 흐름도(1000)의 이어지는 설명들에 기반하여 당업자(들)에게 명백해질 것이다.
도 10의 흐름도(1000)는 단계(1002)로 시작한다. 단계(1002)에서, 제 1 브라우저 탭과 관련된 디스플레이 정보가 네트워크를 통해 제 2 컴퓨팅 디바이스에 전송된다. 예를 들어, 단계(210)와 관련하여 위에서 설명된 바와 같이, 원격 탭 컨트롤러(306)는 참가하는 콘택트들(326) 내에 표시된 수락한 콘택트들의 하나 이상의 컴퓨팅 디바이스에서의 브라우저 탭(116)의 디스플레이를 가능하게 하도록 구성된다. 실시예에서, 원격 탭 컨트롤러(306)는 브라우저(114)로부터 탭 디스플레이 정보(328)를 수신하고, 탭 디스플레이 정보(330)를 출력한다. 네트워크 인터페이스(312)는 탭 디스플레이 정보(330)를 수신하고, 브라우저 탭(116)을 규정하는 디스플레이 정보를 참가하는 콘택트들(326)의 콘택트들 각각에 네트워크(106)(도 1)를 통해 전송하도록 구성된다. 예를 들어, 도 9는 브라우저 탭(404a)이 애플리케이션(802)에 의해 디스플레이되는 원격 컴퓨팅 디바이스(810)에서의 디스플레이 스크린(800)을 도시한다.
단계(1004)에서, 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용의 표시들이 네트워크를 통해 제 2 컴퓨팅 디바이스로부터 수신된다. 예를 들어, 위에서 설명된 바와 같이, 브라우저 탭(404a)과의 각 콘택트에 의한 상호작용들은, 대응하는 컴퓨팅 디바이스(810)의 애플리케이션(802)으로부터 호스트 컴퓨팅 디바이스에, 원격 디스플레이 정보(332)의 각각의 전송시에 전송된다. 예를 들어, 도 3에 도시된 바와 같이, 원격 상호작용 수신기(308)는 네트워크 인터페이스(312)를 통해 원격 디스플레이 정보(332)를 수신한다. 원격 디스플레이 정보(332)는 참가하는 콘택트들(326)의 콘택트들 각각과 연관된 컴퓨팅 디바이스들 각각으로부터 수신될 수 있다.
단계(1006)에서, 제 2 컴퓨팅 디바이스에서의 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용들은 제 1 컴퓨팅 디바이스에서 제 1 브라우저 탭 내에 디스플레이된다. 실시예에서, 원격 상호작용 수신기(308)는 브라우저(114)에 의해 수신되는 원격 탭 디스플레이 정보(334)를 생성한다. 원격 탭 디스플레이 정보(334)는 하나 이상의 원격 컴퓨팅 디바이스로부터 수신되는 원격 디스플레이 정보(332)의 정보를 포함한다. 원격 탭 디스플레이 정보(334)에 기반하여, 브라우저(334)는, 컴퓨팅 디바이스(300)에서 로컬로 디스플레이되는 공유되는 브라우저 탭 상에, 원격 컴퓨팅 디바이스들에서의 공유되는 브라우저 탭과의 하나 이상의 콘택트에 의한 상호작용들을 디스플레이한다. 이는 진행 중인 것을 기반으로 수행되며, 브라우저 탭(404a)과의 콘택트에 의한 각 원격 상호작용은 디스플레이 스크린(400) 내에 로컬로 디스플레이된다. 마찬가지로, 브라우저 탭(404a)과의 호스트 사용자에 의한 각 로컬 상호작용은 진행 중인 것을 기반으로 디스플레이 스크린(800)의 각각의 인스턴스들 내에 원격으로 디스플레이된다.
단계(1008)에서, 제 2 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이는 제 1 브라우저 탭에 제한된다. 실시예에서, 단계(1002)에서, 활성화 브라우저 탭에 관한 디스플레이 정보만이 원격 컴퓨팅 디바이스들에 전송된다는 점을 유념한다. 호스트 디스플레이 스크린에 관한 다른 디스플레이 정보는 원격 컴퓨팅 디바이스들에 전송되지 않는다. 이러한 방식으로, 호스트 사용자는 호스트 사용자의 나머지 디스플레이 스크린에 관하여 비공개를 유지한다. 환언하면, 원격 컴퓨팅 디바이스들에 전송되는 디스플레이 정보는 브라우저 탭의 다른 에지들에 한정되거나, 또는 브라우저 탭의 다른 에지들에 의해 제한된다.
예를 들어, 도 4에 도시된 바와 같이, 브라우저 탭(404a)에 추가하여, 호스트 사용자의 디스플레이 스크린(400)은 브라우저 탭들(404b 및 404c)의 탭화된 부분들을 보여주고, 웹 브라우저(402)의 상단 좌측 영역 내에 URL 및/또는 검색 엔진 엔트리 박스를 보여주며, 컨트롤(408)을 보여주고, (열려 있는 다른 객체들 또는 도구들을 포함할 수 있는) 웹 브라우저(402)를 둘러싸는 디스플레이 스크린(400)의 영역을 보여준다. 그러나, 도 9에 도시된 바와 같이, 도 4의 디스플레이 스크린(400)의 브라우저 탭(404a)만이 도시된다. 브라우저 탭들(404b 및 404c), 컨트롤(408), 및 웹 브라우저(402)를 둘러싸는 디스플레이 스크린(400)의 영역은 디스플레이 스크린(800) 또는 애플리케이션(802)에서 볼 수 없다. 디스플레이 스크린(400) 내의 브라우저 탭(404a)의 어떤 외부에 관한 디스플레이 정보는 네트워크 인터페이스(312)에 의해 원격 컴퓨팅 디바이스(810)에 전송되는 탭 디스플레이 정보(330) 내에 제공되지 않는다. 그와 같이, 디스플레이 스크린(400) 내의 브라우저 탭(404a)의 제한범위들의 외부에 있는 이들 객체들/도구들 어떤 것도 원격 컴퓨팅 디바이스(810)에서의 디스플레이 스크린(800) 또는 애플리케이션(802) 내에 디스플레이되지 않을 수 있다.
도 11은 예시적인 실시예에 따른, 도 4의 디스플레이 스크린(400)을 도시하고, 여기서 다수의 브라우저 탭들이 원격 컴퓨팅 디바이스들에서 콘택트들과 공유되고 있다. 도 11에 도시된 바와 같이, 브라우저 탭들(404a 및 404b)은 둘 다, 동일한 콘택트들 또는 전체적으로 상이한 콘택트들 중 하나 이상을 포함할 수 있는 각각의 세트들의 하나 이상의 콘택트와 공유되고 있다. 공유됨 표시들(1104a 및 1104b)은 브라우저 탭들(404a 및 404b)과 관련하여 각각 그들이 공유되고 있음을 표시하기 위해 제공될 수 있다. 예를 들어, 공유되는 브라우저 탭들의 상단 탭화된 부분 상에, 공유되는 브라우저 탭들 내의 임의의 다른 곳에, 그리고/또는 웹 브라우저(402)의 제한범위들 내에 단어 “공유됨”, 다른 텍스트, 심벌, 및/또는 다른 표시가 제공될 수 있다.
공유되는 각 브라우저 탭이 도 2와 관련하여 위에서 그리고 본원의 다른 곳에서 설명된 방식과 유사한 방식으로 공유될 수 있다는 점을 유념한다. 따라서, 제 2 콘텐츠를 보여주는 제 2 브라우저 탭은 제 3 컴퓨팅 디바이스[예를 들어, 도 1의 제 3 컴퓨팅 디바이스(104b)]에서 제 2 콘택트와 공유될 수 있고, 제 3 콘텐츠를 보여주는 제 3 브라우저 탭은 제 4 컴퓨팅 디바이스 등에서 제 3 콘택트와 공유될 수 있다.
도 11의 예시에서, 브라우저 탭(404b)이 활성화되어 있으므로, 브라우저 탭(404b)의 콘텐츠를 보여주는 브라우저 탭(404b)의 창 부분(1102)이 볼 수 있다. 이 예시에서, 브라우저 탭(404b)은 도 11에서 볼 수 있는 3개의 포인터들(414, 806, 및 1106)에 의해 표시되는 바와 같이 제 1 및 제 2 콘택트들과 공유된다. 호스트 사용자는 브라우저 탭(404b)에서 포인터(414)(또는 다른 상호작용 형식들)를 사용할 수 있고, 포인터(414)(또는 다른 상호작용 형식들)의 그러한 사용은 제 1 및 제 2 콘택트들이 볼 수 있게 된다. 마찬가지로, 브라우저 탭(404b)과 상호작용하기 위해 자신의 각각의 컴퓨팅 디바이스들에서 제 1 콘택트는 포인터(806)를 사용할 수 있고 제 2 콘택트는 포인터(1106)를 사용할 수 있다. 제 1 및 제 2 콘택트들에 의한 그러한 상호작용들은 호스트 사용자의 컴퓨팅 디바이스에 제공된다. 이러한 방식으로, 호스트 사용자는 상호작용들이 디스플레이될 수 있다. 또한, 호스트 컴퓨팅 디바이스[예를 들어, 원격 탭 컨트롤러(306)]는 브라우저 탭(404b)과의 원격 콘택트들 각각의 상호작용들을 다른 원격 컴퓨팅 디바이스들에 제공하도록 구성되어, 각 원격 콘택트는 브라우저 탭(404b)과의 다른 원격 콘택트들에 의한 상호작용들이 디스플레이될 수 있다.
실시예에서, 호스트 사용자는, 콘택트들 중 하나 이상의 콘택트가 그들 각각의 컴퓨팅 디바이스에서 브라우저 탭의 콘텐츠와 상호작용하는 것을 불가능하게 할 수 있다. 예를 들어, 도 11에 도시된 바와 같이, 웹 브라우저(402)에 의해 공유 컨트롤(1110)이 디스플레이될 수 있다. 도 11의 예시에서, 공유 컨트롤(1110)은 직사각형 형상을 갖는 것으로서 도시되고, [브라우저 탭(404b) 상에 오버레이되는] 웹 브라우저(402)의 창의 상단 우측 코너에 위치되는 것으로서 도시되었지만, 다른 실시예들에서, 공유 컨트롤(1110)은 도 11에 도시된 것 이외의 상이한 형상을 가질 수 있고/있거나 웹 브라우저(402) 내의 다른 곳에 위치될 수 있다. 도 11의 예시에서, 공유 컨트롤(1110)은 활성화 브라우저 탭을 현재 공유하고 있는 각 콘택트를 가령 이름에 의해, 이미지 등에 의해 식별하고, 콘택트에 의한 상호작용들을 가능하게 하고/하거나 불가능하게 하기 위해 상호작용할 수 있는 각 콘택트에 대한 컨트롤(예를 들어, 체크 박스, 토글 스위치 등)을 제공한다. 일 실시예에서, 공유 컨트롤(1110)은, 호스트 사용자가 공유되는 브라우저 탭과의 각 콘택트에 의한 상호작용들을 가능하게 하거나 또는 불가능하게 할 수 있다. 콘택트가 상호작용하는 것이 불가능할 때, 콘택트는 공유되는 브라우저 탭을 여전히 볼 수 있다. 다른 실시예에서, 공유 컨트롤(1110)은, 호스트 사용자가 공유되는 브라우저 탭과의 각 콘택트에 의한 상호작용들을 가능하게 하거나 또는 불가능하게 할 수 있을 뿐만 아니라, 호스트가 원한다면 각 콘택트를 브라우저 탭 공유 세션으로부터 제거하도록 할 수 있다.
III. 예시적인 모바일 및 고정형 디바이스 실시예들
컴퓨팅 디바이스(102), 컴퓨팅 디바이스(104a), 컴퓨팅 디바이스(104b), 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 컴퓨팅 디바이스(300), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), 컴퓨팅 디바이스(810), 흐름도(200), 흐름도(600), 및 흐름도(1000)는 하드웨어, 또는 소프트웨어 및/또는 펌웨어와 결합된 하드웨어로 구현될 수 있다. 예를 들어, 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), 흐름도(200), 흐름도(600), 및/또는 흐름도(1000)는 하나 이상의 프로세서로 실행되도록 구성되고 컴퓨터 판독가능 저장 매체 내에 저장되는 컴퓨터 프로그램 코드/명령어들로서 구현될 수 있다. 대안적으로, 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), 흐름도(200), 흐름도(600), 및/또는 흐름도(1000)는 하드웨어 로직/전자 회로로서 구현될 수 있다.
예를 들어, 실시예에서, 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), 흐름도(200), 흐름도(600), 및/또는 흐름도(1000) 중 하나 이상이 임의의 조합으로 SoC로 함께 구현될 수 있다. SoC는 프로세서[예를 들어, CPU(central processing unit), 마이크로컨트롤러, 마이크로프로세서, DSP(digital signal processor) 등], 메모리, 하나 이상의 통신 인터페이스, 및/또는 추가 회로들 중 하나 이상을 포함하는 집적 회로 칩을 포함할 수 있고, 수신되는 프로그램 코드를 선택적으로 실행하고/실행하거나 기능들을 수행하기 위한 임베디드 펌웨어를 포함할 수 있다.
도 12는 일반적으로 컴포넌트들(1202)로서 도시된, 다양한 선택적 하드웨어 및 소프트웨어 컴포넌트들을 포함하는 예시적인 모바일 디바이스(1200)의 블록도를 도시한다. 예를 들어, 모바일 디바이스 실시예들에서 모바일 디바이스(1200)의 컴포넌트들(1202)은 컴퓨팅 디바이스(102), 컴퓨팅 디바이스(104a), 컴퓨팅 디바이스(104b)(도 1), 컴퓨팅 디바이스(300)(도 3), 및/또는 컴퓨팅 디바이스(810)(도 8) 내에 포함될 수 있는 컴포넌트들의 예시들이다. 당업자에게 알려진 바와 같이, 모바일 디바이스 실시예에서 임의의 수 및 조합의 컴포넌트들(1202)의 피처들/엘리먼트들 뿐만 아니라 추가적인 그리고/또는 대안적인 피처들/엘리먼트들이 포함될 수 있다. 예시의 편의를 위해 모든 연결들이 도시되지 않았지만, 임의의 컴포넌트들(1202)이 임의의 다른 컴포넌트들(1202)과 통신할 수 있다는 점을 유념한다. 모바일 디바이스(1200)는 본원의 다른 곳에서 설명되거나 또는 언급된 임의의 다양한 모바일 디바이스들[예를 들어, 셀 폰, 스마트폰, 핸드헬드 컴퓨터, PDA(Personal Digital Assistant) 등]일 수 있고, 셀룰러 또는 위성 네트워크와 같은 하나 이상의 통신 네트워크들(1204)을 통해, 또는 근거리 통신망 또는 원거리 통신망으로 하나 이상의 모바일 디바이스와의 무선 양방향 통신들을 허용할 수 있다.
예시된 모바일 디바이스(1200)는 신호 코딩, 이미지 프로세싱, 데이터 프로세싱, 입력/출력 프로세싱, 전원(power) 컨트롤, 및/또는 다른 기능들과 같은 작업들을 수행하기 위한 프로세서 회로(1210)로 칭해지는 컨트롤러 또는 프로세서를 포함할 수 있다. 프로세서 회로(1210)는 하나 이상의 물리적 하드웨어 전기 회로 디바이스 엘리먼트 및/또는 집적 회로 디바이스들(반도체 재료 칩들 또는 다이들) 내에 CPU(central processing unit), 마이크로컨트롤러, 마이크로프로세서, 및/또는 다른 물리적 하드웨어 프로세서 회로로서 구현되는 전기 및/또는 광학 회로이다. 프로세서 회로(1210)는 하나 이상의 애플리케이션들(1214), 운영 체제(1212)의 프로그램 코드, 메모리(1220) 내에 저장되는 임의의 프로그램 코드 등과 같은 컴퓨터 판독가능 매체 내에 저장되는 프로그램 코드를 실행할 수 있다. 운영 체제(1212)는 컴포넌트들(1202)의 할당과 사용량을 제어할 수 있고 (애플리케이션들, “앱스” 등으로도 알려진) 하나 이상의 애플리케이션 프로그램들(1214)을 지원할 수 있다. 애플리케이션 프로그램들(1214)은 통상적인 모바일 컴퓨팅 애플리케이션들(예를 들어, 이메일 애플리케이션들, 캘린더들, 콘택트 매니저들, 웹 브라우저들, 메시징 애플리케이션들) 및 임의의 다른 컴퓨팅 애플리케이션들(예를 들어, 워드 프로세싱 애플리케이션들, 맵핑 애플리케이션들, 미디어 플레이어 애플리케이션들)을 포함할 수 있다.
예시된 바와 같이, 모바일 디바이스(1200)는 메모리(1220)를 포함할 수 있다. 메모리(1220)는 비탈착가능 메모리(1222) 및/또는 탈착가능 메모리(1224)를 포함할 수 있다. 비탈착가능 메모리(1222)는 RAM, ROM, 플래시 메모리, 하드 디스크, 또는 다른 잘 알려진 메모리 저장 기술들을 포함할 수 있다. 탈착가능 메모리(1224)는 플래시 메모리 또는 GSM 통신 시스템들에서 잘 알려진 SIM(Subscriber Identity Module) 카드, 또는 "스마트 카드들"과 같은 다른 잘 알려진 메모리 저장 기술들을 포함할 수 있다. 메모리(1220)는 운영 체제(1212) 및 애플리케이션들(1214)을 실행하기 위한 데이터 및/또는 코드를 저장하기 위해 사용될 수 있다. 예시적인 데이터는 하나 이상의 유선 또는 무선 네트워크를 통해 하나 이상의 네트워크 서버 또는 다른 디바이스들에 전송되고/전송되거나 이들로부터 수신될, 웹 페이지들, 텍스트, 이미지들, 사운드 파일들, 비디오 데이터, 또는 다른 데이터 세트들을 포함할 수 있다. 메모리(1220)는 IMSI(International Mobile Subscriber Identity)와 같은 가입자 식별자 및 IMEI(International Mobile Equipment Identifier)와 같은 장비 식별자를 저장하기 위해 사용될 수 있다. 그러한 식별자들은 사용자들 및 장비를 식별하도록 네트워크 서버에 전송될 수 있다.
다수의 프로그램들이 메모리(1220) 내에 저장될 수 있다. 이들 프로그램들은 운영 체제(1212), 하나 이상의 애플리케이션 프로그램(1214), 및 다른 프로그램 모듈들과 프로그램 데이터를 포함한다. 그러한 애플리케이션 프로그램들 또는 프로그램 모듈들의 예시들은, 예를 들어 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), [흐름도들(200, 600, 1000)의 임의의 적절한 단계를 포함하는] 흐름도(200), 흐름도(600), 및/또는 흐름도(1000), 및/또는 본원에서 설명된 추가적인 실시예들을 구현하기 위한 컴퓨터 프로그램 로직(예를 들어, 컴퓨터 프로그램 코드 또는 명령어들)을 포함할 수 있다.
모바일 디바이스(1200)는 터치 스크린(1232), 마이크로폰(1234), 카메라(1236), 물리적 키보드(1238) 및/또는 트랙볼(1240)과 같은 하나 이상의 입력 디바이스들(1230) 및 스피커(1252) 및 디스플레이(1254)와 같은 하나 이상의 출력 디바이스들(1250)을 지원할 수 있다. 터치 스크린(1232)과 같은 터치 스크린들은 상이한 방식들로 입력을 검출할 수 있다. 예를 들어, 용량성 터치 스크린들은 객체[예를 들어, 손가락끝(fingertip)]가 표면을 가로질러 흐르는 전류를 왜곡시키거나(distort) 또는 차단할 때 터치 입력을 검출한다. 다른 예시로서, 터치 스크린들은 광학 센서들로부터의 빔들이 차단될 때 터치 입력을 검출하도록 광학 센서들을 사용할 수 있다. 스크린의 표면과의 물리적 접촉은 몇몇 터치 스크린들에 의해 감지될 입력을 위해 필수적이지는 않다. 예를 들어, 터치 스크린(1232)은 본 분야에서 잘 이해되는 바와 같이, 용량성 감지를 사용하는 손가락 선회(hover) 검출을 지원하도록 구성될 수 있다. 카메라 기반 검출 및 초음파 기반 검출을 포함하여 위에서 이미 설명된 바와 같은 다른 검출 기술들이 사용될 수 있다. 손가락 선회를 구현하기 위해, 일반적으로 사용자의 손가락은, 가령 0.1 인치 내지 0.25 인지 사이의, 또는 0.25 인치 내지 0.5 인치 사이의, 또는 0.5 인치 내지 0.75 인치 사이의 또는 0.75 인치 내지 1 인치 사이의, 또는 1인치 내지 1.5 인치 사이 등의 터치 스크린 위의 미리 결정된 이격 거리 내에 있다.
터치 스크린(1232)은 예시적인 목적들을 위해 컨트롤 인터페이스(1292)를 포함하여 도시된다. 컨트롤 인터페이스(1292)는 터치 스크린(1232) 상에 디스플레이되는 가상 엘리먼트와 연관된 콘텐츠를 제어하도록 구성된다. 예시적인 실시예에서, 컨트롤 인터페이스(1292)는 애플리케이션들(1214) 중 하나 이상에 의해 제공되는 콘텐츠를 제어하도록 구성된다. 예를 들어, 모바일 디바이스(1200)의 사용자가 애플리케이션을 이용할 때, 컨트롤 인터페이스(1292)는 그러한 콘텐츠를 제어하는 컨트롤들에 사용자가 액세스할 수 있도록 터치 스크린(1232) 상에 사용자에게 제시될 수 있다. 컨트롤 인터페이스(1292)의 제시는 터치 스크린(1232)으로부터의 지정된 거리 내의 움직임의 검출 또는 그러한 움직임의 부재(absence)에 기반할 수 있다(예를 들어, 이들에 의해 트리거됨). 움직임 또는 움직임의 부재에 기반하여 컨트롤 인터페이스[예를 들어, 컨트롤 인터페이스(1292)]가 터치 스크린[예를 들어, 터치 스크린(1232)] 상에 제시되도록 하기 위한 예시적인 실시예들은 아래에서 매우 상세히 설명된다.
다른 가능한 출력 디바이스들(도시 생략)은 압전(piezoelectric) 또는 다른 햅틱 출력 디바이스들을 포함할 수 있다. 몇몇 디바이스들은 하나보다 많은 입력/출력 기능을 역할할 수 있다. 예를 들어, 터치 스크린(1232) 및 디스플레이(1254)는 단일 입력/출력 디바이스로 결합될 수 있다. 입력 디바이스들(1230)은 NUI(Natural User Interface)를 포함할 수 있다. NUI는 마우스들, 키보드들, 원격 컨트롤들 등과 같은 입력 디바이스들에 의해 부과되는 인공적인 제약들로부터 벗어나서, 사용자가 디바이스와 "자연스러운" 방식으로 상호작용할 수 있도록 하는 임의의 인터페이스 기술이다. NUI 방법들의 예시들은 말(speech) 인식, 터치 및 스타일러스 인식, 온 스크린 및 스크린 근방 둘 다의 제스처 인식, 에어 제스처들, 머리 및 눈 트랙킹, 음성 및 말, 비전, 터치, 제스처들, 및 기계 지능에 의존하는 것들을 포함한다. NUI의 다른 예시들은 모두 전계 감지 전극(electric field sensing electrode)들[뇌전도(electroencephalogram; EEG) 및 관련 방법들]을 사용하는 뇌 활동을 감지하기 위한 과학 기술들뿐만 아니라, 보다 자연스러운 인터페이스를 제공하는 가속도계들/자이로스코프들을 사용하는 모션 제스처 감지, 안면 인식, 3D 디스플레이들, 머리, 눈, 및 시선 트랙킹, 실감 증강 현실(immersive augmented reality) 및 가상 현실 시스템들을 포함한다. 따라서, 하나의 특정 예시에서, 운영 체제(1212) 또는 애플리케이션들(1214)은 사용자가 음성 명령들을 통해 디바이스(1200)를 동작시키도록 하는 음성 컨트롤 인터페이스의 일부로서 말 인식 소프트웨어를 포함할 수 있다. 또한, 디바이스(1200)는 게이밍 애플리케이션에 입력을 제공하도록 제스처들을 검출 및 해석하는 것과 같이, 사용자의 공간적인 제스처들을 통한 사용자 상호작용을 가능하게 하는 입력 디바이스들 및 소프트웨어를 포함할 수 있다.
무선 모뎀(들)(1260)은 안테나(들)(도시 생략)에 커플링될 수 있고, 본 분야에서 잘 이해되는 바와 같이 프로세서 회로(1210)와 외부 디바이스들 사이의 양방향 통신들을 지원할 수 있다. 모뎀(들)(1260)은 포괄적으로 도시되었으며, 모바일 통신 네트워크(1204)와 통신하기 위한 셀룰러 모뎀(1266) 및/또는 다른 무선 기반(radio-based) 모뎀들[예를 들어, 블루투스(1264) 및/또는 Wi-Fi(1262)]을 포함할 수 있다. 셀룰러 모뎀(1266)은 GSM, 3G, 4G, 5G 등과 같은 임의의 적절한 통신 표준 또는 기술에 따른 폰 콜들(선택적으로 데이터를 전송함)을 가능하게 하도록 구성될 수 있다. 무선 모뎀(들)(1260) 중 적어도 하나는 일반적으로 단일 셀룰러 네트워크 내에서의, 셀룰러 네트워크들 사이에서의, 또는 모바일 디바이스와 PSTN(public switched telephone network) 사이에서의 데이터 및 음성 통신들을 위한 GSM 네트워크와 같은 하나 이상의 셀룰러 네트워크들과 통신하기 위해 구성된다.
모바일 디바이스(1200)는 적어도 하나의 입력/출력 포트(1280), 전원 공급기(1282), GPS(global positioning system) 수신기와 같은 위성 네비게이션 시스템 수신기(1284), 가속도계(1286) 및/또는 USB 포트, IEEE 1394(FireWire) 포트 및/또는 RS-232 포트일 수 있는 물리적 커넥터(1290)를 더 포함할 수 있다. 당업자가 인식할 바와 같이 임의의 컴포넌트들이 존재하지 않을 수 있고 다른 컴포넌트들이 추가적으로 존재할 수 있으므로, 예시된 컴포넌트들(1202)이 필요되지 않거나 또는 모두 포함되지 않는다.
또한, 도 13은 실시예들이 구현될 수 있는 컴퓨팅 디바이스(1300)의 예시적인 구현예를 도시한다. 예를 들어, 컴퓨팅 디바이스(102), 컴퓨팅 디바이스(104a), 컴퓨팅 디바이스(104b), 컴퓨팅 디바이스(300), 및/또는 컴퓨팅 디바이스(810)는, 컴퓨팅 디바이스(1300)의 하나 이상의 피처 및/또는 대안적인 피처들을 포함하여 고정형 컴퓨터 실시예들에서 컴퓨팅 디바이스(1300)와 유사하게 하나 이상의 컴퓨팅 디바이스로 구현될 수 있다. 본원에서 제공되는 컴퓨팅 디바이스(1300)의 설명은 예시의 목적들을 위해 제공되며, 한정적으로 의도되는 것은 아니다. 당업자에게 알려진 바와 같이, 실시예들은 추가적 유형들의 컴퓨터 시스템들에서 구현될 수 있다.
도 13에 도시된 바와 같이, 컴퓨팅 시스템(1300)은 프로세서 회로(1302)로 칭해지는 하나 이상의 프로세서, 시스템 메모리(1304), 및 시스템 메모리(1304)를 포함하여 다양한 시스템 컴포넌트들을 프로세서 회로(1302)에 커플링하는 버스(1306)를 포함한다. 프로세서 회로(1302)는 하나 이상의 물리적 하드웨어 전기 회로 디바이스 엘리먼트 및/또는 집적 회로 디바이스들(반도체 재료 칩들 또는 다이들) 내에 CPU(central processing unit), 마이크로컨트롤러, 마이크로프로세서, 및/또는 다른 물리적 하드웨어 프로세서 회로로서 구현되는 전기 및/또는 광학 회로이다. 프로세서 회로(1210)는 운영 체제(1330), 애플리케이션 프로그램들(1332), 다른 프로그램들(1334) 등의 프로그램 코드와 같은, 컴퓨터 판독가능 매체 내에 저장되는 프로그램 코드를 실행할 수 있다. 버스(1306)는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 가속 그래픽 포트, 및 임의의 다양한 버스 아키텍처들을 사용하는 프로세서 또는 로컬 버스를 포함하는 임의의 몇몇 유형들의 버스 구조물들 중 하나 이상을 나타낸다. 시스템 메모리(1304)는 ROM(read only memory)(1308) 및 RAM(random access memory)(1310)을 포함한다. ROM(1308) 내에 BIOS(basic input/output system)(1312)가 저장된다.
컴퓨터 디바이스(1300)는 또한 하드 디스크로부터 판독하고 하드 디스크에 기록하기 위한 하드 디스크 드라이브(1314), 탈착가능 자기 디스크(1318)로부터 판독하거나 또는 탈착가능 자기 디스크(1318)에 기록하기 위한 자기 디스크 드라이브(1316), 및 CD ROM, DVD ROM, 또는 다른 광학 매체와 같은 탈착가능 광학 디스크(1322)로부터 판독하거나 탈착가능 광학 디스크(1322)에 기록하기 위한 광학 디스크 드라이브(1320) 중 하나 이상을 갖는다. 하드 디스크 드라이브(1314), 자기 디스크 드라이브(1316), 및 광학 디스크 드라이브(1320)는 각각 하드 디스크 드라이브 인터페이스(1324), 자기 디스크 드라이브 인터페이스(1326), 및 광학 디스크 드라이브 인터페이스(1328)에 의해 버스(1306)에 연결된다. 드라이브들 및 그들의 연관된 컴퓨터 판독가능 매체는 컴퓨터로 판독가능한 명령어들, 데이터 구조들, 프로그램 모듈들 및 컴퓨터에 대한 다른 데이터의 비휘발성 저장을 제공한다. 하드 디스크, 탈착가능 자기 디스크 및 탈착가능 광학 디스크가 설명되지만, 플래시 메모리 카드들, 디지털 비디오 디스크들, RAM들, ROM들, 및 다른 하드웨어 저장 매체와 같은 다른 유형들의 하드웨어 기반 컴퓨터 판독가능 저장 매체가 데이터를 저장하기 위해 사용될 수 있다.
하드 디스크, 자기 디스크, 광학 디스크, ROM, 또는 RAM 상에 다수의 프로그램 모듈들이 저장될 수 있다. 이들 프로그램들은 운영 체제(1330), 하나 이상의 애플리케이션 프로그램들(1332), 다른 프로그램들(1334), 및 프로그램 데이터(1336)를 포함한다. 애플리케이션 프로그램들(1332) 또는 다른 프로그램들(1334)은, 예를 들어 브라우저 탭 공유 시스템(108), 브라우저(114), 애플리케이션(110a), 애플리케이션(110b), 공유 선택기(302), 콘택트 인터페이스(304), 원격 탭 컨트롤러(306), 원격 상호작용 수신기(308), 브라우저 탭 공유 시스템(340), 애플리케이션(802), [흐름도들(200, 600, 1000)의 임의의 적절한 단계를 포함하는] 흐름도(200), 흐름도(600), 및/또는 흐름도(1000), 및/또는 본원에서 설명된 추가적인 실시예들을 구현하기 위한 컴퓨터 프로그램 로직(예를 들어, 컴퓨터 프로그램 코드 또는 명령어들)을 포함할 수 있다.
사용자는 키보드(1338) 및 포인팅 디바이스(1340)와 같은 입력 디바이스들을 통해 컴퓨터 디바이스(1300) 내에 명령들 및 정보를 입력할 수 있다. 다른 입력 디바이스들(도시 생략)은 마이크로폰, 조이스틱, 게임 패드, 위성 디쉬(satellite dish), 스캐너, 터치 스크린 및/또는 터치 패드, 음석 입력을 수신하기 위한 음성 인식 시스템, 제스처 입력을 수신하기 위한 제스처 인식 시스템 등을 포함할 수 있다. 이들 및 다른 입력 디바이스들은 종종 버스(1306)에 커플링되는 직렬 포트 인터페이스(1342)를 통해 프로세서 회로(1302)에 연결되지만, 병렬 포트, 게임 포트, 또는 USB(universal serial bus)와 같은 다른 인터페이스들에 의해 연결될 수 있다.
또한, 디스플레이 스크린(1344)이 비디오 어댑터(1346)와 같은 인터페이스를 통해 버스(1306)에 연결된다. 디스플레이 스크린(1344)은 컴퓨팅 디바이스(1300) 외부에 있을 수 있거나 또는 컴퓨팅 디바이스(1300) 내에 통합될 수 있다. 디스플레이 스크린(1344)은 정보를 디스플레이할 수 있을 뿐만 아니라 (예를 들어, 터치, 손가락 제스처들, 가상 키보드 등에 의해) 사용자 명령들 및/또는 다른 정보를 수신하기 위한 사용자 인터페이스일 수 있다. 디스플레이 스크린(1344)에 추가하여, 컴퓨팅 디바이스(1300)는 스피커들 및 프린터들과 같은 다른 주변 출력 디바이스들(도시 생략)을 포함할 수 있다.
컴퓨팅 디바이스(1300)는 어댑터 또는 네트워크 인터페이스(1350), 모뎀(1352), 또는 네트워크를 통한 통신들을 확립하기 위한 다른 수단을 통해 네트워크(1348)(예를 들어, 인터넷)에 연결된다. 내부에 있거나 또는 외부에 있을 수 있는 모뎀(1352)은, 도 13에 도시된 바와 같이 직렬 포트 인터페이스(1342)를 통해 버스(1306)에 연결될 수 있거나, 또는 병렬 인터페이스를 포함하여 다른 인터페이스 유형을 사용하여 버스(1306)에 연결될 수 있다.
본원에서 사용되는 바와 같이, 용어들 “컴퓨터 프로그램 매체”, “컴퓨터 판독가능 매체”, 및 “컴퓨터 판독가능 저장 매체”는, 하드 디스크 드라이브(1314)와 연관된 하드 디스크, 탈착가능 자기 디스크(1318), 탈착가능 광학 디스크(1322), RAM들, ROM들, 플래시 메모리 카드들, 디지털 비디오 디스크들, 집(zip) 디스크들, MEM들, 나노테크놀로지 기반 저장 디바이스들과 같은 다른 물리적 하드웨어 매체, 및 [도 12의 메모리(1220)를 포함하여] 추가적 유형들의 물리적/유형의(tangible) 하드웨어 저장 매체와 같은 물리적 하드웨어 매체를 지칭하기 위해 사용된다. 그러한 컴퓨터 판독가능 저장 매체는 통신 매체와 구별되고 통신 매체와 오버랩되지 않는다(통신 매체를 포함하지 않음). 통신 매체는 컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터를 반송파와 같은 변조된 데이터 신호 내에 포함시킬 수 있다. 용어 “변조된 데이터 신호”는 해당 신호 내에 정보를 인코딩하기 위한 방식으로 설정되거나 또는 변경된 하나 이상의 특성을 갖는 신호를 의미한다. 비제한적인 예로서, 통신 매체는 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체 뿐만 아니라 유선 매체를 포함한다. 실시예들은 또한 컴퓨터 판독가능 저장 매체에 관한 실시예들과 분리적이고 오버랩되지 않는 그러한 통신 매체에 관한 것이다.
위에서 언급된 바와 같이, [애플리케이션 프로그램들(1332) 및 다른 프로그램들(1334)을 포함하여] 컴퓨터 프로그램들 및 모듈들은 하드 디스크, 자기 디스크, 광학 디스크, ROM, RAM, 또는 다른 하드웨어 저장 매체 상에 저장될 수 있다. 그러한 컴퓨터 프로그램들은 또한 네트워크 인터페이스(1350), 직렬 포트 인터페이스(1342), 또는 임의의 다른 인터페이스 유형을 통해 수신될 수 있다. 그러한 컴퓨터 프로그램들은, 애플리케이션에 의해 실행되거나 또는 로딩될 때, 컴퓨터 디바이스(1300)가 본원에서 논의된 실시예들의 피처들을 구현하도록 한다. 따라서, 그러한 컴퓨터 프로그램들은 컴퓨팅 디바이스(1300)의 컨트롤러들을 나타낸다.
실시예들은 또한 임의의 컴퓨터 판독가능 매체 상에 저장되는 컴퓨터 코드 또는 명령어들을 포함하는 컴퓨터 프로그램 제품들에 관한 것이다. 그러한 컴퓨터 프로그램 제품들은 하드 디스크 드라이브들, 광학 디스크 드라이브들, 메모리 디바이스 패키지들, 포터블 메모리 스틱들, 메모리 카드들, 및 다른 유형들의 물리적 저장 하드웨어를 포함한다.
IV. 예시적인 실시예들
일 실시예에서, 제 1 컴퓨팅 디바이스에서의 방법은, 웹 브라우저 내에 제 1 브라우저 탭 - 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 호출하는 단계; 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계; 제 1 콘택트에게 공유 알림을 전송하는 단계; 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계; 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서, 제 2 컴퓨팅 디바이스에서의 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내에 디스플레이하는 단계와, 제 2 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 1 브라우저 탭에 제한시키는 단계를 포함하는, 상호작용하는 것을 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계는, 제 1 브라우저 탭을 공유할 복수의 콘택트들의 선택들을 사용자 인터페이스에서 수신하는 단계를 포함하고, 제 1 콘택트에게 공유 알림을 전송하는 단계는, 복수의 콘택트들에게 공유 알림들을 전송하는 단계를 포함하며, 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계는, 복수의 콘택트들 중 하나 이상의 콘택트를 대신하여 복수의 콘택트들과 연관된 하나 이상의 컴퓨팅 디바이스로부터 하나 이상의 수락 표시를 수신하는 단계를 포함하고, 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계는, 하나 이상의 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계는, 하나 이상의 컴퓨팅 디바이스에서의 복수의 콘택트들 중 하나 이상의 콘택트가 하나 이상의 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 콘택트에게 공유 알림을 전송하는 단계는, 제 1 브라우저 탭을 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들을 표시하는 단계; 및 복수의 통신 제공자들 중 제 1 브라우저 탭을 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택을 수신하는 단계를 포함한다.
실시예에서, 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계는, 제 1 브라우저 탭과 관련된 디스플레이 정보를 네트워크를 통해 제 2 컴퓨팅 디바이스에 전송하는 단계를 포함하고, 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계는, 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용의 표시들을 네트워크를 통해 제 2 컴퓨팅 디바이스로부터 수신하는 단계를 포함한다.
실시예에서, 방법은, 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 불가능하게 하는 단계를 더 포함한다.
실시예에서, 방법은, 웹 브라우저 내에 제 2 브라우저 탭 - 제 2 브라우저 탭은 제 2 콘텐츠를 디스플레이함 - 을 호출하는 단계; 제 2 브라우저 탭을 공유할 제 2 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계; 제 2 콘택트에게 공유 알림을 전송하는 단계; 제 2 콘택트를 대신하여 제 3 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계; 제 3 컴퓨팅 디바이스에서의 제 2 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및 제 2 콘택트가 제 3 컴퓨팅 디바이스에서 제 2 브라우저 탭의 제 2 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서, 제 1 콘텐츠와의 제 1 콘택트의 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내에 디스플레이하는 단계와 동시에, 제 3 컴퓨팅 디바이스에서의 제 2 콘텐츠와의 제 2 콘택트에 의한 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 2 브라우저 탭 내에 디스플레이하는 단계, 및 제 3 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 2 브라우저 탭에 제한시키는 단계를 포함하는, 상호작용하는 것을 가능하게 하는 단계를 더 포함한다.
다른 실시예에서, 제 1 컴퓨팅 디바이스에서의 시스템은, 제 1 컴퓨팅 디바이스 내에서 동작하는 웹 브라우저에 의해 디스플레이되는 제 1 브라우저 탭 - 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 공유할 제 1 콘택트의 선택을 사용자 인터페이스로부터 수신하도록 구성되는 공유 선택기 인터페이스; 제 1 콘택트에게 전송하기 위한 공유 알림을 생성하고, 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하도록 구성되는 콘택트 인터페이스; 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하고, 제 2 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 1 브라우저 탭에 제한시키도록 구성되는 원격 탭 컨트롤러; 및 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용들의 표시들을 수신하고, 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내의 상호작용들의 디스플레이를 가능하게 하도록 구성되는 원격 상호작용 수신기를 포함한다.
실시예에서, 공유 선택기 인터페이스는, 제 1 브라우저 탭을 공유할 복수의 콘택트들의 선택들을 사용자 인터페이스로부터 수신하도록 구성되고, 콘택트 인터페이스는, 복수의 콘택트들에게 전송하기 위한 공유 알림들을 생성하고, 복수의 콘택트들 중 하나 이상의 콘택트를 대신하여 하나 이상의 컴퓨팅 디바이스로부터 하나 이상의 수락 표시를 수신하도록 구성되며, 원격 탭 컨트롤러는, 하나 이상의 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하도록 구성된다.
실시예에서, 원격 탭 컨트롤러는, 하나 이상의 컴퓨팅 디바이스에서의 복수의 콘택트들 중 하나 이상의 콘택트가 하나 이상의 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하도록 구성된다.
실시예에서, 공유 선택기 인터페이스는, 제 1 브라우저 탭을 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들을 사용자 인터페이스에서 표시하고, 복수의 통신 제공자들 중 제 1 브라우저 탭을 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택을 수신하도록 구성된다.
실시예에서, 원격 탭 컨트롤러는, 제 1 브라우저 탭과 관련된 디스플레이 정보가 네트워크를 통해 제 2 컴퓨팅 디바이스에 전송되게 하도록 구성되고, 원격 상호작용 수신기는, 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용의 표시들을 네트워크를 통해 제 2 컴퓨팅 디바이스로부터 수신하도록 구성된다.
실시예에서, 원격 탭 컨트롤러는, 제 1 콘택트가 제 1 콘텐츠와 상호작용하는 것을 불가능하게 하기 위한 요청을 사용자 인터페이스로부터 수신하도록 구성된다.
실시예에서, 공유 선택기 인터페이스는, 웹 브라우저에 의해 디스플레이되는 제 2 브라우저 탭 - 제 2 브라우저 탭은 제 2 콘텐츠를 디스플레이함 - 을 공유할 제 2 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하도록 구성되고,
콘택트 인터페이스는, 제 2 콘택트에게 전송하기 위한 공유 알림을 생성하고, 제 2 콘택트를 대신하여 제 3 컴퓨팅 디바이스로부터 수락 표시를 수신하도록 구성되며, 원격 탭 컨트롤러는, 제 3 컴퓨팅 디바이스에서의 제 2 브라우저 탭의 디스플레이를 가능하게 하고, 제 3 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 2 브라우저 탭에 제한시키도록 구성되고, 원격 상호작용 수신기는, 제 1 콘텐츠와의 제 1 콘택트의 상호작용들의 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내의 디스플레이와 동시에, 제 3 컴퓨팅 디바이스에서의 제 2 콘텐츠와의 제 2 콘택트에 의한 상호작용들을 수신하도록 구성된다.
또 다른 실시예에서, 프로세서에 의해 실행될 때 방법을 수행하는 컴퓨터 실행가능 명령어들을 포함하는 컴퓨터 판독가능 저장 매체로서, 방법은, 웹 브라우저의 제 1 브라우저 탭 - 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 공유할 제 1 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계; 제 1 콘택트에게 공유 알림을 전송하는 단계; 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계; 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서, 제 2 컴퓨팅 디바이스에서의 제 1 콘텐츠와의 제 1 콘택트에 의한 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내에 디스플레이하는 단계와, 제 2 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 1 브라우저 탭에 제한시키는 단계를 포함하는, 상호작용하는 것을 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계는, 웹 브라우저의 제 1 브라우저 탭을 공유할 복수의 콘택트들의 선택들을 사용자 인터페이스에서 수신하는 단계를 포함하고, 제 1 콘택트에게 공유 알림을 전송하는 단계는, 복수의 콘택트들에게 공유 알림들을 전송하는 단계를 포함하며, 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계는, 복수의 콘택트들 중 하나 이상의 콘택트를 대신하여 복수의 콘택트들과 연관된 하나 이상의 컴퓨팅 디바이스로부터 하나 이상의 수락 표시를 수신하는 단계를 포함하고, 제 2 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계는, 하나 이상의 컴퓨팅 디바이스에서의 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계는, 하나 이상의 컴퓨팅 디바이스에서의 복수의 콘택트들 중 하나 이상의 콘택트가 하나 이상의 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계를 포함한다.
실시예에서, 제 1 콘택트에게 공유 알림을 전송하는 단계는, 제 1 브라우저 탭을 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들을 표시하는 단계; 및 복수의 통신 제공자들 중 제 1 브라우저 탭을 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택을 수신하는 단계를 포함한다.
컴퓨터 판독가능 저장 매체의 실시예에서, 방법은, 제 1 콘택트가 제 2 컴퓨팅 디바이스에서 제 1 브라우저 탭의 제 1 콘텐츠와 상호작용하는 것을 불가능하게 하는 단계를 더 포함한다.
컴퓨터 판독가능 저장 매체의 실시예에서, 방법은, 웹 브라우저 내에 제 2 브라우저 탭 - 제 2 브라우저 탭은 제 2 콘텐츠를 디스플레이함 - 을 호출하는 단계; 제 2 브라우저 탭을 공유할 제 2 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계; 제 2 콘택트에게 공유 알림을 전송하는 단계; 제 2 콘택트를 대신하여 제 3 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계; 제 3 컴퓨팅 디바이스에서의 제 2 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및 제 2 콘택트가 제 3 컴퓨팅 디바이스에서 제 2 브라우저 탭의 제 2 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서, 제 1 콘텐츠와의 제 1 콘택트의 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 1 브라우저 탭 내에 디스플레이하는 단계와 동시에, 제 3 컴퓨팅 디바이스에서의 제 2 콘텐츠와의 제 2 콘택트에 의한 상호작용들을 제 1 컴퓨팅 디바이스에서의 제 2 브라우저 탭 내에 디스플레이하는 단계, 및 제 3 컴퓨팅 디바이스에서의 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 제 2 브라우저 탭에 제한시키는 단계를 포함하는, 상호작용하는 것을 가능하게 하는 단계를 더 포함한다.
V. 결론
본 발명의 다양한 실시예들이 위에서 설명되었지만, 이 실시예들이 예시에 의해서만 제시되었으며 한정적이지 않다는 점이 이해되어야 한다. 첨부된 청구항들에서 규정된 바와 같은 본 발명의 사상 및 범위를 벗어나지 않고, 형식 및 세부사항들에서의 다양한 변경들이 행해질 수 있다는 점이 당업자에 의해 이해되어야 한다. 따라서, 본 발명의 폭(breadth) 및 범위는 위에서 설명된 임의의 예시적인 실시예들에 의해 한정되어서는 안되며, 이어지는 청구항들 및 청구항들의 등가성에 따라서만 규정되어야 한다.

Claims (15)

  1. 제 1 컴퓨팅 디바이스에서의 방법에 있어서,
    웹 브라우저 내에 제 1 브라우저 탭 - 상기 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 호출하는(invoking) 단계;
    상기 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택을 상기 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계;
    상기 제 1 콘택트에게 공유 알림을 전송하는 단계;
    상기 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계;
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및
    상기 제 1 콘택트가 상기 제 2 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서,
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 콘텐츠와의 상기 제 1 콘택트에 의한 상호작용들을 상기 제 1 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭 내에 디스플레이하는 단계와,
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 상기 제 1 브라우저 탭에 제한시키는 단계를 포함하는, 상기 상호작용하는 것을 가능하게 하는 단계를 포함하는, 브라우저 탭 기반 콘텐츠 공유 방법.
  2. 제 1 항에 있어서, 상기 제 1 브라우저 탭을 공유할 제 1 콘택트의 선택을 상기 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계는,
    상기 제 1 브라우저 탭을 공유할 복수의 콘택트들의 선택들을 상기 사용자 인터페이스에서 수신하는 단계를 포함하고,
    상기 제 1 콘택트에게 공유 알림을 전송하는 단계는,
    상기 복수의 콘택트들에게 공유 알림들을 전송하는 단계를 포함하며,
    상기 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계는,
    상기 복수의 콘택트들 중 하나 이상의 콘택트를 대신하여 상기 복수의 콘택트들과 연관된 하나 이상의 컴퓨팅 디바이스로부터 하나 이상의 수락 표시를 수신하는 단계를 포함하고,
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계는,
    상기 하나 이상의 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계를 포함하는 것인, 브라우저 탭 기반 콘텐츠 공유 방법.
  3. 제 2 항에 있어서, 상기 제 1 콘택트가 상기 제 2 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계는,
    상기 하나 이상의 컴퓨팅 디바이스에서의 상기 복수의 콘택트들 중 하나 이상의 콘택트가 상기 하나 이상의 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계를 포함하는 것인, 브라우저 탭 기반 콘텐츠 공유 방법.
  4. 제 1 항에 있어서, 상기 제 1 콘택트에게 공유 알림을 전송하는 단계는,
    상기 제 1 브라우저 탭을 상기 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들을 표시하는 단계; 및
    상기 복수의 통신 제공자들 중 상기 제 1 브라우저 탭을 상기 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택을 수신하는 단계를 포함하는 것인, 브라우저 탭 기반 콘텐츠 공유 방법.
  5. 제 1 항에 있어서, 상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계는,
    상기 제 1 브라우저 탭과 관련된 디스플레이 정보를 네트워크를 통해 상기 제 2 컴퓨팅 디바이스에 전송하는 단계를 포함하고,
    상기 제 1 콘택트가 상기 제 2 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계는,
    상기 제 1 콘텐츠와의 상기 제 1 콘택트에 의한 상기 상호작용의 표시들을 상기 네트워크를 통해 상기 제 2 컴퓨팅 디바이스로부터 수신하는 단계를 포함하는 것인, 브라우저 탭 기반 콘텐츠 공유 방법.
  6. 제 1 항에 있어서,
    상기 제 1 콘택트가 상기 제 2 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 불가능하게 하는 단계를 더 포함하는, 브라우저 탭 기반 콘텐츠 공유 방법.
  7. 제 1 항에 있어서,
    상기 웹 브라우저 내에 제 2 브라우저 탭 - 상기 제 2 브라우저 탭은 제 2 콘텐츠를 디스플레이함 - 을 호출하는 단계;
    상기 제 2 브라우저 탭을 공유할 제 2 콘택트의 선택을 상기 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계;
    상기 제 2 콘택트에게 공유 알림을 전송하는 단계;
    상기 제 2 콘택트를 대신하여 제 3 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계;
    상기 제 3 컴퓨팅 디바이스에서의 상기 제 2 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및
    상기 제 2 콘택트가 상기 제 3 컴퓨팅 디바이스에서 상기 제 2 브라우저 탭의 상기 제 2 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서,
    상기 제 1 콘텐츠와의 상기 제 1 콘택트의 상호작용들을 상기 제 1 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭 내에 디스플레이하는 단계와 동시에, 상기 제 3 컴퓨팅 디바이스에서의 상기 제 2 콘텐츠와의 상기 제 2 콘택트에 의한 상호작용들을 상기 제 1 컴퓨팅 디바이스에서의 상기 제 2 브라우저 탭 내에 디스플레이하는 단계, 및
    상기 제 3 컴퓨팅 디바이스에서의 상기 제 1 컴퓨팅 디바이스의 상기 스크린의 디스플레이를 상기 제 2 브라우저 탭에 제한시키는 단계를 포함하는, 상기 상호작용하는 것을 가능하게 하는 단계를 더 포함하는, 브라우저 탭 기반 콘텐츠 공유 방법.
  8. 제 1 컴퓨팅 디바이스에서의 시스템에 있어서,
    상기 제 1 컴퓨팅 디바이스 내에서 동작하는 웹 브라우저에 의해 디스플레이되는 제 1 브라우저 탭 - 상기 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 공유할 제 1 콘택트의 선택을 사용자 인터페이스로부터 수신하도록 구성되는 공유 선택기 인터페이스;
    상기 제 1 콘택트에게 전송하기 위한 공유 알림을 생성하고, 상기 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하도록 구성되는 콘택트 인터페이스;
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하고, 상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 상기 제 1 브라우저 탭에 제한시키도록 구성되는 원격 탭 컨트롤러; 및
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와의 상기 제 1 콘택트에 의한 상호작용들의 표시들을 수신하고, 상기 제 1 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭 내의 상기 상호작용들의 디스플레이를 가능하게 하도록 구성되는 원격 상호작용 수신기를 포함하는, 시스템.
  9. 제 8 항에 있어서, 상기 공유 선택기 인터페이스는, 상기 제 1 브라우저 탭을 공유할 복수의 콘택트들의 선택들을 상기 사용자 인터페이스로부터 수신하도록 구성되고,
    상기 콘택트 인터페이스는, 상기 복수의 콘택트들에게 전송하기 위한 공유 알림들을 생성하고, 상기 복수의 콘택트들 중 하나 이상의 콘택트를 대신하여 하나 이상의 컴퓨팅 디바이스로부터 하나 이상의 수락 표시를 수신하도록 구성되며,
    상기 원격 탭 컨트롤러는, 상기 하나 이상의 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하도록 구성되는 것인, 시스템.
  10. 제 9 항에 있어서, 상기 원격 탭 컨트롤러는, 상기 하나 이상의 컴퓨팅 디바이스에서의 상기 복수의 콘택트들 중 하나 이상의 콘택트가 상기 하나 이상의 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하도록 구성되는 것인, 시스템.
  11. 제 8 항에 있어서, 상기 공유 선택기 인터페이스는, 상기 제 1 브라우저 탭을 상기 제 1 콘택트와 공유하게 할 수 있는 복수의 통신 제공자들을 사용자 인터페이스에서 표시하고, 상기 복수의 통신 제공자들 중 상기 제 1 브라우저 탭을 상기 제 1 콘택트와 공유하게 하기 위해 사용할 통신 제공자의 선택을 수신하도록 구성되는 것인, 시스템.
  12. 제 8 항에 있어서, 상기 원격 탭 컨트롤러는, 상기 제 1 브라우저 탭과 관련된 디스플레이 정보가 네트워크를 통해 상기 제 2 컴퓨팅 디바이스에 전송되게 하도록 구성되고,
    상기 원격 상호작용 수신기는, 상기 제 1 콘텐츠와의 상기 제 1 콘택트에 의한 상기 상호작용의 표시들을 상기 네트워크를 통해 상기 제 2 컴퓨팅 디바이스로부터 수신하도록 구성되는 것인, 시스템.
  13. 제 8 항에 있어서, 상기 원격 탭 컨트롤러는, 상기 제 1 콘택트가 상기 제 1 콘텐츠와 상호작용하는 것을 불가능하게 하기 위한 요청을 상기 사용자 인터페이스로부터 수신하도록 구성되는 것인 시스템.
  14. 제 8 항에 있어서, 상기 공유 선택기 인터페이스는, 상기 웹 브라우저에 의해 디스플레이되는 제 2 브라우저 탭 - 상기 제 2 브라우저 탭은 제 2 콘텐츠를 디스플레이함 - 을 공유할 제 2 콘택트의 선택을 상기 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하도록 구성되고,
    상기 콘택트 인터페이스는, 상기 제 2 콘택트에게 전송하기 위한 공유 알림을 생성하고, 상기 제 2 콘택트를 대신하여 제 3 컴퓨팅 디바이스로부터 수락 표시를 수신하도록 구성되며,
    상기 원격 탭 컨트롤러는, 상기 제 3 컴퓨팅 디바이스에서의 상기 제 2 브라우저 탭의 디스플레이를 가능하게 하고, 상기 제 3 컴퓨팅 디바이스에서의 상기 제 1 컴퓨팅 디바이스의 상기 스크린의 디스플레이를 상기 제 2 브라우저 탭에 제한시키도록 구성되고,
    상기 원격 상호작용 수신기는, 상기 제 1 콘텐츠와의 상기 제 1 콘택트의 상호작용들의 상기 제 1 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭 내의 디스플레이와 동시에, 상기 제 3 컴퓨팅 디바이스에서의 상기 제 2 콘텐츠와의 상기 제 2 콘택트에 의한 상호작용들을 수신하도록 구성되는 것인, 시스템.
  15. 프로세서에 의해 실행될 때 방법을 수행하는 컴퓨터 실행가능 명령어들을 포함하는 컴퓨터 판독가능 저장 매체에 있어서, 상기 방법은,
    웹 브라우저의 제 1 브라우저 탭 - 상기 제 1 브라우저 탭은 제 1 콘텐츠를 디스플레이함 - 을 공유할 제 1 콘택트의 선택을 제 1 컴퓨팅 디바이스의 사용자 인터페이스에서 수신하는 단계;
    상기 제 1 콘택트에게 공유 알림을 전송하는 단계;
    상기 제 1 콘택트를 대신하여 제 2 컴퓨팅 디바이스로부터 수락 표시를 수신하는 단계;
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭의 디스플레이를 가능하게 하는 단계; 및
    상기 제 1 콘택트가 상기 제 2 컴퓨팅 디바이스에서 상기 제 1 브라우저 탭의 상기 제 1 콘텐츠와 상호작용하는 것을 가능하게 하는 단계로서,
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 콘텐츠와의 상기 제 1 콘택트에 의한 상호작용들을 상기 제 1 컴퓨팅 디바이스에서의 상기 제 1 브라우저 탭 내에 디스플레이하는 단계와,
    상기 제 2 컴퓨팅 디바이스에서의 상기 제 1 컴퓨팅 디바이스의 스크린의 디스플레이를 상기 제 1 브라우저 탭에 제한시키는 단계를 포함하는, 상기 상호작용하는 것을 가능하게 하는 단계를 포함하는 것인, 컴퓨터 판독가능 저장 매체.
KR1020177016656A 2014-11-26 2015-11-17 탭 기반 브라우저 콘텐츠 공유 KR20170088378A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/554,401 US20160147400A1 (en) 2014-11-26 2014-11-26 Tab based browser content sharing
US14/554,401 2014-11-26
PCT/US2015/060958 WO2016085696A1 (en) 2014-11-26 2015-11-17 Tab based browser content sharing

Publications (1)

Publication Number Publication Date
KR20170088378A true KR20170088378A (ko) 2017-08-01

Family

ID=55025317

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177016656A KR20170088378A (ko) 2014-11-26 2015-11-17 탭 기반 브라우저 콘텐츠 공유

Country Status (11)

Country Link
US (1) US20160147400A1 (ko)
EP (1) EP3224743A1 (ko)
JP (1) JP2018504657A (ko)
KR (1) KR20170088378A (ko)
CN (1) CN107003822A (ko)
AU (1) AU2015353962A1 (ko)
BR (1) BR112017008558A2 (ko)
CA (1) CA2965706A1 (ko)
MX (1) MX2017006964A (ko)
RU (1) RU2017118150A (ko)
WO (1) WO2016085696A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10462194B2 (en) * 2015-02-10 2019-10-29 Cisco Technology, Inc. Minimizing productivity loss in a collaborative sharing environment
US10430144B2 (en) * 2015-08-31 2019-10-01 Sugarcrm Inc. Managed screen sharing in an enterprise application
US10209851B2 (en) 2015-09-18 2019-02-19 Google Llc Management of inactive windows
US10261679B2 (en) 2015-09-21 2019-04-16 Knowlio, Inc. Digital resource management system
US10891106B2 (en) * 2015-10-13 2021-01-12 Google Llc Automatic batch voice commands
US20170118135A1 (en) * 2015-10-26 2017-04-27 Knowlio, Inc. Responsive Action in a Resource Management System
US9992517B2 (en) * 2016-02-23 2018-06-05 Comcast Cable Communications, Llc Providing enhanced content based on user interactions
US10740424B2 (en) 2016-04-12 2020-08-11 Knowlio, Inc. Smooth navigation between resources in a digital resource management system
FR3064767B1 (fr) * 2017-03-30 2019-07-12 Addap's Technologies Inc. Systeme informatique et procede correspondant pour la gestion de contenus
JP7210977B2 (ja) 2018-09-28 2023-01-24 ブラザー工業株式会社 画像形成装置
CN111258420B (zh) * 2020-01-13 2023-02-21 维沃移动通信有限公司 信息交互方法、头戴式设备及介质
US11507399B1 (en) 2021-05-25 2022-11-22 Cisco Technology, Inc. Enabling screen-share in online meeting platform based on virtual desktop
CN115146192B (zh) * 2022-09-02 2023-01-24 荣耀终端有限公司 内容接续方法和相关装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190670B2 (en) * 2001-04-16 2012-05-29 Microsoft Corporation Web site cobrowsing
US20100082747A1 (en) * 2008-09-29 2010-04-01 College Of William & Mary Real-time collaborative browsing
US7860956B2 (en) * 2009-02-05 2010-12-28 International Business Machines Corporation Transferring selected open browser tabs from a host computer to a client computer
US20100268694A1 (en) * 2009-04-17 2010-10-21 Laurent Denoue System and method for sharing web applications
US20120209954A1 (en) * 2011-02-15 2012-08-16 Wright John W Systems and Methods for Online Session Sharing
JP5938845B2 (ja) * 2011-02-15 2016-06-22 船井電機株式会社 表示装置
US20140006971A1 (en) * 2012-06-29 2014-01-02 International Business Machines Corporation Selective sharing of windows among participants in a web conference
US9218428B2 (en) * 2012-10-15 2015-12-22 Dell Products, L.P. Techniques for generating different sessions for multiple tabs of a single browser window
EP2823986B1 (en) * 2013-07-10 2018-09-05 Omar Abu Baker Al Jaeedi Apparatus and method for generating power
JP6397312B2 (ja) * 2014-11-06 2018-09-26 キヤノン株式会社 ネットワークシステム、及び、ネットワークシステムの制御方法

Also Published As

Publication number Publication date
US20160147400A1 (en) 2016-05-26
JP2018504657A (ja) 2018-02-15
WO2016085696A1 (en) 2016-06-02
CN107003822A (zh) 2017-08-01
BR112017008558A2 (pt) 2017-12-19
RU2017118150A (ru) 2018-11-26
MX2017006964A (es) 2017-08-10
EP3224743A1 (en) 2017-10-04
CA2965706A1 (en) 2016-06-02
AU2015353962A1 (en) 2017-05-11

Similar Documents

Publication Publication Date Title
KR20170088378A (ko) 탭 기반 브라우저 콘텐츠 공유
US10567481B2 (en) Work environment for information sharing and collaboration
US10771847B2 (en) Setup procedures for an electronic device
JP6492069B2 (ja) 環境を認識した対話ポリシーおよび応答生成
US9559993B2 (en) Virtual agent proxy in a real-time chat service
US10048748B2 (en) Audio-visual interaction with user devices
CN111698230B (zh) 相关通信模式选择
US11636192B2 (en) Secure login with authentication based on a visual representation of data
CN111182152B (zh) 使用机器可读码的设备认证和配对
CN116034385A (zh) 指示相关联内容的可用性的动画视觉提示
US20160378743A1 (en) Method and apparatus for insertion of text in an electronic device
US20230300415A1 (en) Setup procedures for an electronic device
US20170351650A1 (en) Digital conversation annotation
KR101758863B1 (ko) 대화 서비스 제공 방법 및 대화 서비스 제공 디바이스
US9182954B2 (en) Web browser having user-configurable address bar button
US10437410B2 (en) Conversation sub-window
CN110554880B (zh) 用于电子设备的设置程序
US20230297961A1 (en) Operating system facilitation of content sharing
CN117941323A (zh) 用于管理虚拟工作空间的方法、设备和介质
CN106415626B (zh) 从单个项目发起的组选择
US20180091463A1 (en) Collaboration conversation notification
US20230084751A1 (en) User interfaces for managing passwords
US20230315262A1 (en) Sharing multiple applications in unified communication
CN118092720A (zh) 用于电子设备的设置程序
KR20160054999A (ko) 상대 단말의 상태를 표시하는 방법, 단말, 및 어플리케이션