KR20160143755A - 확장 가능 애플리케이션 표현, 액티비티 레벨들, 및 데스크탑 표현 - Google Patents

확장 가능 애플리케이션 표현, 액티비티 레벨들, 및 데스크탑 표현 Download PDF

Info

Publication number
KR20160143755A
KR20160143755A KR1020167031010A KR20167031010A KR20160143755A KR 20160143755 A KR20160143755 A KR 20160143755A KR 1020167031010 A KR1020167031010 A KR 1020167031010A KR 20167031010 A KR20167031010 A KR 20167031010A KR 20160143755 A KR20160143755 A KR 20160143755A
Authority
KR
South Korea
Prior art keywords
representation
applications
display
content
application
Prior art date
Application number
KR1020167031010A
Other languages
English (en)
Inventor
지아웨이 구
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority to PCT/CN2014/074825 priority Critical patent/WO2015149363A1/en
Publication of KR20160143755A publication Critical patent/KR20160143755A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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 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 interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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 or an image, setting a parameter value or selecting a range
    • G06F3/04842Selection of a displayed object
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for entering handwritten data, e.g. gestures, text
    • G06F9/4443
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Abstract

확장 가능 애플리케이션 표현 기술들이 설명된다. 상기 기술들은 파일 시스템의 루트 레벨(예를 들어, 개시 메뉴 또는 스크린) 내에서 중개자(intermediary)로서 기능할 수 있는 확장 가능 타일의 지원을 포함할 수 있다. 상기 확장 가능 타일은, 예를 들어, 제스처를 통하여 출력되어 타일의 비확장 버전에 포함되지 않은 부가 정보를 얻는 것, 애플리케이션에 입력들을 제공하는 데에 이용될 수 있는 것 등이다. 따라서, 이것은 유저에 의한 비모달(non-modal) 상호작용을 지원할 수 있다. 확장된 표현이 태스크바에 포함되는 기술들이 또한 설명되며, 이들은 또한 비모달 상호작용과, 상기 표현에서 표현된 콘텐츠를 장치 또는 애플리케이션에 송신하는 것과, 모바일 컴퓨팅 장치에 의해 상기 표현으로 개시된 상호작용의 계속 등에 이용될 수 있다. 확장 가능 타일 기술들은 데스크탑 및 이머시브 쉘과 같은 운영체제의 쉘들 간의 상호작용을 지원하는 데에 이용될 수도 있다. 또한, 확장 가능 타일을 수반하거나 수반하지 않는 이들 및 다른 예들의 추가적인 설명도 고려된다.

Description

확장 가능 애플리케이션 표현, 액티비티 레벨들, 및 데스크탑 표현 {EXPANDABLE APPLICATION REPRESENTATION, ACTIVITY LEVELS, AND DESKTOP REPRESENTATION}

인터넷을 통한 애플리케이션 가용성의 출현과 더불어, 유저에게 제공될 수 있는 애플리케이션들의 수는 유저가 그 애플리케이션들에 액세스할 수 있는 용이함과 함께 증가되어 왔다. 따라서, 유저들은 다수의 애플리케이션들을 선택하고 유저들의 컴퓨팅 장치에 설치할 수 있다.

그러나, 애플리케이션들과 사용자에 의한 상호 작용은 상기 컴퓨팅 장치에 설치되어 있는 애플리케이션들의 수에 의해 방해될 수 있다. 이것은 관심 있는 애플리케이션의 위치를 파악하는 것뿐만 아니라 애플리케이션의 기능에 액세스하는 것을 포함할 수 있다. 예를 들어, 유저는 다수의 다른 애플리케이션들을 통해 날씨 애플리케이션을 선택하여 날씨 정보를 얻고, 그 후 뉴스 애플리케이션과 상호작용하여 최신 뉴스를 접하는 등을 할 수 있다. 따라서, 이 애플리케이션들을 통한 네비게이션으로 원하는 정보의 위치를 파악하는 것은 매우 많은 시간이 걸릴 수 있으며, 이는 컴퓨팅 장치에서 이용 가능한 애플리케이션들의 수에 의해 더욱 복잡해질 수 있다.

확장 가능 애플리케이션 표현 기술들이 설명된다. 이 기술들은 파일 시스템의 루트 레벨(root level)(예를 들어, 개시 메뉴 또는 스크린) 내에서 중개자(intermediary)로서 기능할 수 있는 확장 가능 표현(expandable representation)의 지원을 포함할 수 있다. 확장 가능 표현은, 예를 들어, 제스처를 통해 출력되어 표현의 비확장 버전에 포함되지 않은 부가 정보를 얻는 것, 애플리케이션에 입력들을 제공하는 데에 이용될 수 있는 것 등이다. 따라서, 이것은 파일 시스템의 루트 레벨 내에서 유저에 의한 비모달 상호작용(non-modal interaction)을 지원할 수 있다.

확장된 표현이 태스크바(taskbar)에 포함되어 있는 기술들이 또한 설명되며, 이는 비모달 상호작용을 위해 이용되거나, 상기 표현에서 표현된 콘텐츠를 장치 또는 애플리케이션에 송신하거나, 모바일 컴퓨팅 장치에 의하여 상기 표현으로 개시된 상호작용의 계속 등을 지원할 수도 있다. 확장 가능 표현 기술들은 데스크탑 및 이머시브 쉘들(immersive shells)과 같은 운영체제(operating system)의 쉘들 간의 상호작용을 지원하는 데에 이용될 수도 있다. 상세한 설명에서 더 설명되는 바와 같이 확장 가능 표현을 수반하거나 수반하지 않는 이들 및 다른 예들의 추가적인 설명도 고려된다.

이 개요는 이하의 상세한 설명에서 더 설명되는 간략화된 형태의 개념들의 선택을 도입하는 데에 이용된다. 이 개요는 청구된 주제의 주요한 특징들 또는 본질적 특징들을 식별하는 것을 의도하지 않을 뿐만 아니라, 청구된 주제의 범위를 결정하는 데에 도움이 되는 것을 의도하지도 않는다.

상세한 설명은 첨부의 도면들을 참조하여 설명된다. 도면들에서, 참조번호의 가장 좌측의 숫자(들)는 참조번호가 처음 나타나는 도면을 식별한다. 상세한 설명 및 도면들의 상이한 경우들에서 동일한 참조번호들을 이용하는 것은 유사하거나 동일한 아이템들을 가리킬 수 있다.
도 1은 여기에 설명된 확장 가능 표현 기술들을 수행하도록 구성되는 예시적인 일 구현에서의 환경을 도시한다.
도 2는 애플리케이션과의 유저 상호작용을 지원하는 데에 이용 가능한 복수의 디스플레이 모드들을 도시하는 예시적인 일 구현을 도시한다.
도 3은 애니메이션을 수반하는 확장된 표현의 출력을 야기시키는 제스처의 이용을 보여주는 예시적인 일 구현을 도시한다.
도 4는 도 3의 제스처에 응답하여 출력되는 확장된 표현을 도시한다.
도 5는 확장된 표현과의 유저 상호작용의 일 예시를 보여주는 예시적인 일 구현을 도시한다.
도 6은 아이콘의 선택을 통해 소셜 네트워크 서비스에 포스트될 수 있는 텍스트를 수신하도록 구성되는 텍스트 엔트리 박스를 갖는 확장된 표현의 확대도의 일 예를 도시한다.
도 7은 확장된 표현을 위한 자유 배열의 예시적인 일 구현을 도시한다.
도 8은 확장된 표현을 위한 탭형 배열(tabbed arrangement)의 예시적인 일 구현을 도시한다.
도 9는 확장된 표현을 위한 스팬 배열(span arrangement)의 예시적인 일 구현을 도시한다.
도 10은 리스트, 그리드 및 확장 가능 리스트 레이아웃들 중 하나 이상을 활용할 수 있는 자유, 탭형, 및 스팬 배열들을 도시한다.
도 11은 계산기 및 음악 애플리케이션들의 표현들(representations) 및 확장된 표현들(expanded representations)을 보여주는 예시적인 일 구현이다.
도 12는 뉴스 및 연락처(contacts) 애플리케이션들의 표현들 및 확장된 표현들을 보여주는 예시적인 일 구현이다.
도 13은 표현들 및 통지들(notifications)의 글랜서블(glance-able) 특성 및 확장된 표현을 통해 이용 가능한 증가된 콘텐츠를 예시하는 예시적인 일 구현을 도시한다.
도 14는 다운로드 및 이용을 위한 애플리케이션들에의 액세스를 유저들에게 제공하도록 구성되는 애플리케이션 스토어의 유저 인터페이스를 보여주는 예시적인 일 구현을 도시한다.
도 15는 도 1의 운영체제의 데스크탑 및 이머시브 쉘들을 지원하도록 동작 가능한 예시적인 일 구현에서의 일 환경을 예시한다.
도 16은 도 15의 데스크탑 쉘의 확장된 표현의 예시적인 일 구현을 도시한다.
도 17은 확장된 표현이 도 1의 운영체제의 백 스택(back stack)으로서 구성된 태스크바에 포함되는 예시적인 일 구현의 시스템을 도시한다.
도 18은 확장된 표현이 태스크바에 포함되어 상기 표현에 포함된 콘텐츠의 아이템들을 장치에 송신하는 예시적인 일 구현의 시스템을 도시한다.
도 19는 확장된 표현들이 태스크바에 포함되어 파일 공유 서비스(file sharing service)의 표현에 포함된 콘텐츠의 아이템들을 컴퓨팅 장치에 의해 액세스 가능한 장치에 송신하는 예시적인 일 구현의 시스템을 도시한다.
도 20은 확장된 표현을 수반하는 컴퓨팅 장치들 간의 실행의 전송을 수반하는 장치들 간의 콘텐츠의 전송의 다른 예를 보여주는 예시적인 일 구현을 도시한다.
도 21은 유저가 컴퓨팅 장치와 상호작용하여 맵(map)을 위한 방향들을 생성할 수 있는 예시적인 일 구현을 도시한다.
도 22는 확장된 표현과 연관된 실행의 결과의 장치들 간의 전송의 다른 예시적인 일 구현을 도시한다.
도 23은 확장된 표현들이 공유 네트워크 환경에 관하여 콘텐츠의 액티비티 레벨들을 나타내기 위하여 활용되는 예시적인 일 구현을 도시한다.
도 24는 운영체제의 파일 계층의 루트 레벨에서 표현이 확장되는 예시적인 일 구현에서의 프로시저(procedure)를 도시하는 흐름도이다.
도 25는 확장된 표현을 포함하는 태스크바가 디스플레이되는 예시적인 일 구현에서의 프로시저를 도시하는 흐름도이다.
도 26은 확장된 표현 내에 포함된 콘텐츠가 애플리케이션 또는 장치에 송신되는 예시적인 일 구현에서의 프로시저를 도시하는 흐름도이다.
도 27은 확장된 표현과 연관된 애플리케이션의 실행의 결과가 컴퓨팅 장치들 간에 전송되는 예시적인 일 구현에서의 프로시저를 도시하는 흐름도이다.
도 28은 확장된 표현이 데스크탑 쉘을 위하여 구성되는 예시적인 일 구현에서의 프로시저를 도시하는 흐름도이다.
도 29는 여기에 설명된 기술들의 실시예들을 구현하도록 도 1 내지 28을 참조하여 설명된 바와 같은 컴퓨팅 장치의 임의의 유형으로서 구현될 수 있는 예시적인 장치의 다양한 구성요소들을 예시한다.

개요

유저가 구체적으로 애플리케이션을 론칭하지 않도록 하면서 다양한 기능을 지원하기 위하여 애플리케이션들의 표현들(예를 들어, 아이콘들, 타일들 등)이 이용될 수 있다. 예를 들어, 날씨 애플리케이션의 표현은 현재의 날씨 상태들을 설명하는 통지(notification)를 포함할 수 있다. 그러나, 통지를 디스플레이하기 위해 이용된 종래 기술들은 종종 정적이고 모달(modal)이었으므로, 통지에 대한 추가의 정보를 얻기 위해서는 유저가 표현으로부터 벗어나서 네비게이션할 필요가 종종 있었다.

확장 가능 애플리케이션 표현 기술들이 설명된다. 이 기술들은 파일 시스템의 루트 레벨(예를 들어, 개시 스크린) 내에서 중개자로서 기능할 수 있는 확장 가능 표현(예를 들어, 타일)의 지원을 포함할 수 있다. 예를 들어, 루트 레벨은 개시 메뉴 내에 애플리케이션들의 타일들과 같은 표현들을 포함할 수 있다.

타일의 확장된 버전이 제스처를 통해 출력되어 타일의 비확장 버전에 포함되지 않았던 부가 정보를 획득할 수 있다. 확장된 표현은, 예를 들어, 확장될 때 그리드 내의 다른 표현들의 재배열(rearrangement)을 통해 루트 레벨 내에 포함될 수도 있다. 제 1의 확장된 표현이 이용되어 부가적인 통지들 또는 특정 통지와 연관된 부가 콘텐츠와 같은 부가 콘텐츠를 제공하는 것과, 공유 네트워크 환경 내의 콘텐츠의 액티비티 레벨들을 보는 것 등을 할 수 있다. 다른 확장된 표현이 이용되어, 유저가 제한된 입력들을 애플리케이션에 제공하는 것을 허용하고/거나 전화 걸기, 텍스트 응답하기, 상태 포스팅, 비디오 또는 노래 재생 등과 같은 애플리케이션들 특징들에 대한 제한된 기능을 허용할 수 있다. 루트 레벨 모드에서의 애플리케이션의 다른 확장된 표현은 더 큰 루트 모드 디스플레이 내에서 계산기, 스도쿠 게임, 비디오 플레이어와 같은 앱의 전체 기능 구현을 포함할 수 있다. 애플리케이션의 확장된 프리젠테이션은 아니더라도, 다음 확장은 통상의 풀스크린으로의 애플리케이션 또는 데스크탑의 풀스크린 또는 윈도우 프레임 내에서 실행되는 스플릿 스크린 애플리케이션의 론칭일 것이다. 따라서, 루트 모드 내에서의 애플리케이션의 모든 확장된 프리젠테이션들은, 유저가 루트 레벨로부터 "벗어나서" 네비게션하도록 강제하지 않으면서, 유저에 의한 비모달 상호작용(non-modal interaction)을 지원할 수 있다.

확장된 표현이 태스크바에 포함되는 기술들도 설명되며, 이것은 비모달 상호작용, 상기 표현에서 표현된 콘텐츠의 장치 또는 애플리케이션으로의 송신, 모바일 컴퓨팅 장치에 의해 상기 표현으로 개시된 상호작용의 연속 등에 이용될 수도 있다. 확장 가능 타일 기술들이 이용되어 데스크탑 및 이머시브 쉘과 같은 운영체제의 쉘들 간의 상호작용을 지원할 수도 있다. 이들 및 다른 기술들은 이하의 섹션들에 관하여 더 설명될 수 있다.

이하의 설명에서, 여기에 설명된 기술들을 채용할 수 있는 예시적인 환경이 먼저 설명된다. 그 후, 예시적인 환경 및 다른 환경들에서 수행될 수 있는 예시적인 프로시저들이 설명된다. 따라서, 예시적인 프로시저들의 수행은 예시적인 환경에 한정되지는 않으며, 예시적인 환경은 예시적인 프로시저들의 수행에 한정되지는 않는다.

예시적인 환경

도 1은 여기에 설명된 확장 가능 애플리케이션 표현 기술들을 채용하도록 동작 가능한 예시적인 일 구현에서의 환경(100)의 일 예이다. 예시적인 환경(100)은 네트워크(106)를 통해 통신적으로 연결되는 웹서비스(102) 및 컴퓨팅 장치(104)를 포함한다. 웹서비스(102) 및 컴퓨팅 장치(104)는 광범위한 컴퓨팅 장치들에 의해 구현될 수 있다.

예를 들어, 컴퓨팅 장치는 네트워크(106)를 통해 통신할 수 있는 데스크탑 컴퓨터, 모바일 스테이션, 엔터테인먼트 어플라이언스, 디스플레이 장치에 통신적으로 연결된 셋탑 박스, 모바일 통신 장치(예를 들어, 컴퓨팅 장치(104)에 대하여 예시된 바와 같은 무선 전화기), 게임 콘솔 등의 컴퓨터로서 구성될 수 있다. 따라서, 컴퓨팅 장치는 실질적인 메모리 및 프로세서 리소스들(예를 들어, 퍼스널 컴퓨터들, 게임 콘솔들)을 구비한 풀 리소스 장치들로부터 제한된 메모리 및/또는 프로세싱 리소스들(예를 들어, 통상의 셋탑 박스들, 휴대형 게임 콘솔들)을 구비한 로우 리소스 장치에 이르는 범위의 장치들 일 수 있다. 또한, 컴퓨팅 장치는, 조작들을 수행하기 위하여 사업체에 의해 이용되는 복수의 서버들, 리모트 제어 및 셋탑 박스 조합, 제스처들을 캡쳐하도록 구성된 이미지 캡쳐 장치 및 게임 콘솔 등과 같은 복수의 상이한 장치들을 대표할 수 있다.

네트워크(106)는 인터넷으로서 예시되어 있지만, 네트워크는 다양하게 구성될 수 있다. 예를 들어, 네트워크(106)는 WAN(wide area network), LAN(local area network), 무선 네트워크, 공중전화 네트워크, 인트라넷 등을 포함할 수 있다. 또한, 단일 네트워크(106)가 예시되지만, 네트워크(106)는 복수의 네트워크들을 포함하도록 구성될 수 있다.

컴퓨팅 장치(104)는 운영체제(108)를 포함하는 것으로 더 예시된다. 운영체제(108)는 컴퓨팅 장치(104)에서 실행 가능한 애플리케이션들(110)에 대하여 클라이언트(104)의 기저 기능(underlying functionality)을 추상화하도록 구성된다. 예를 들어, 운영체제(108)는, 이 기저 기능이 "어떻게" 구현되는지 모르는 상태에서 애플리케이션들(110)이 기입될 수 있도록, 컴퓨팅 장치(104)의 프로세싱, 메모리, 네트워크 및/또는 디스플레이 기능을 추상화할 수 있다. 본 렌더링이 어떻게 수행될 것인지에 대한 이해 없이, 애플리케이션(110)은, 예를 들어, 디스플레이 장치(112)에 의해 렌더링되고 디스플레이될 데이터를 운영체제(108)에 제공할 수 있다.

운영체제(108)는 컴퓨팅 장치(104)의 유저에 의해 네비게이션 가능한 유저 인터페이스 및 파일 시스템을 관리하는 것과 같은 다양한 다른 기능을 표현할 수도 있다. 이것의 예는 컴퓨팅 장치(104)의 디스플레이 장치(112)에서 디스플레이되는 애플리케이션 론처(application launcher)(예를 들어, 개시 스크린)로서 예시된다. 개시 스크린은 애플리케이션 표현들(아이콘들, 타일들 등)의 로우들(rows) 및/또는 컬럼들(columns)의 매트릭스 또는 그리드로 디스플레이될 수 있는 아이콘, 타일들, 텍스트 설명들 등과 같은 복수의 애플리케이션들(110)의 표현들을 포함한다. 개시 스크린은, 예를 들어, 계층 내에서 다른 레벨들의 각각은 루트 레벨의 "아래에" 있는 계층적 파일 구조의 루트 레벨로서 간주될 수 있다. 예시된 예에서 도시된 표현들은 컴퓨팅 장치(104)에서의 실행을 위한 애플리케이션들(110) 중 대응하는 하나를 론칭하도록 선택 가능하다. 이 방식으로, 유저는 파일 구조를 통한 네비게이션을 용이하게 수행하고 관심 있는 애플리케이션들의 실행을 개시할 수 있다.

운영체제(108)는 또한 통지 모듈(114)을 포함하는 것으로 예시된다. 통지 모듈(114)은 애플리케이션들의 표현들의 일부로서 디스플레이될 통지들(116)을 관리하는 기능을 대표한다. 예를 들어, 날씨 애플리케이션의 표현(118)은 명칭 및 현재 날씨 상태들, 예를 들어 "시애틀 65°/흐림"을 나타내는 통지를 포함하는 것으로 예시된다. 유사하게, 여행 애플리케이션을 위한 표현(120)은 현재 비행 상태가 "지연된(delayed)" 것을 나타내는 통지를 포함하는 것으로서 예시된다. 이 방식으로, 유저는 애플리케이션들의 각각을 론칭하고 네비게이션할 필요가 없이 애플리케이션들(110)에 관련되는 정보를 용이하게 볼 수 있다. 특정 애플리케이션들의 표현들이 도시되지만, 예를 들어, 서비스에 대한 유저의 관여(예를 들어, 소셜 네트워크 서비스에서의 친구)를 참조하는 애플리케이션의 표현과 같은 애플리케이션들의 다른 표현들도 고려된다.

하나 이상의 구현들에서, 통지들(116)은 대응하는 애플리케이션들(110)을 실행하지 않고 관리될 수 있다. 예를 들어, 통지 모듈(114)은, 소프트웨어(예를 들어, 컴퓨팅 장치(104)에 의해 실행되는 다른 애플리케이션들)로부터, 네트워크(106)를 통하여 웹서비스(102)로부터 등과 같이 각종 상이한 소스들로부터 통지들(116)을 수신할 수 있다. 이것은 애플리케이션들(110)의 통지 모듈(114)로의 등록에 응답하여 수행되어 통지들이 어느 곳에서 어떻게 수신될 것인지를 특정한다. 통지 모듈(114)은 그 후 애플리케이션들(110)을 실행하지 않으면서 통지들(116)이 표현들의 일부로서 디스플레이되는 방법을 관리할 수 있다. 이것은 통지들(116)을 출력하기 위해 애플리케이션들(110)의 각각을 실행하지 않는 것에 의해 컴퓨팅 장치(104)의 배터리 수명 및 성능을 개선하는 데에 이용될 수 있다.

또한, 통지 모듈(114)은 통지들(116)이 애플리케이션들(110)의 표현의 일부로서 어떻게 디스플레이되는지 각각의 애플리케이션들(110)의 개발자들이 특정하게 해주는 기술들을 지원할 수 있다. 예를 들어, 통지 모듈(114)은, 시스템 콜 등을 이용하는 런타임에서, 애플리케이션(110)을 인스톨하는 데에 이용되는 인스톨 매니페스트(install manifest)와 같은 애플리케이션(110)의 매니페스트(122)를 조사할 수 있다. 매니페스트(122)는, 통지들(116)이 어떻게 그리고 언제 디스플레이되는지 및 어느 통지들(116)이 디스플레이되는지를 결정하기 위해 통지들(116)이 어떻게 관리되는지를 설명할 수 있다.

통지 모듈(114)은 개발자 또는 다른 엔티티(entity)로 하여금 통지들(116)이 어떻게 디스플레이되고 관리되는지 특정하는 것을 가능하게 해주는 다양한 다른 기술들을 이용할 수도 있다. 예를 들어, 통지들(116)은, 통지들(116)이 어떻게 디스플레이되고/거나 관리되는지를 특정하는 대응 태그들과 함께 통신될 수 있다. 따라서, 태그들의 작성자(originator)는 대응 통지들(116)이 어떻게 디스플레이되거나 관리되는지를 특정할 수 있다. 이것은, 이하의 섹션들에서 더 설명되는 바와 같은 각종 상이한 기능을 가능하게 하도록 수행될 수 있다.

본 설명은 클라이언트 측에서의 통지 모듈(114)의 통합을 설명하였지만, 통지 모듈(114)의 기능은 다양한 방식들로 구현될 수 있다. 예를 들어, 통지 모듈(124)의 기능은 전체 또는 부분적으로 웹서비스(102)에 의해 통합될 수 있다. 통지 모듈(124)은, 예를 들어, 다른 웹서비스들로부터 수신된 통지들을 처리하고 네트워크(106)를 통한 컴퓨팅 장치(104)로의 분배를 위하여 통지들을 관리할 수 있다.

위에서 설명된 바와 같이, 종래 기술들은 종종 모달(modal)이므로, 더 많은 정보를 획득하기 위하여 유저가 루트 레벨로부터 벗어나서 네비게이션하는 것을 야기하였다. 예를 들어, 유저는, 날씨 애플리케이션의 표현(118)이 명칭 및 현재 날씨 상태들, 예를 들어, "시애틀 65°/흐림"을 나타내는 통지를 포함하는 것으로 예시되는 것을 볼 수 있다. 본 예에서 부가적인 정보를 얻기 위하여, 유저는 표현(118)을 선택하여 대응 애플리케이션을 론칭하였고, 이는 유저가 개시 메뉴를 떠나게 한다. 그러나, 일부 경우들에 있어서 표현들이 루트 레벨 내에서 확장되어 부가적인 콘텐츠를 제공할 수 있고, 더 확장된 보기(view)에서 유저가 루트 레벨로부터 벗어나서 네비게이션하도록 야기시키지 않으면서 부가적인 기능을 지원함으로써 비모달 상호작용을 지원하는 기술들이 설명되며, 그 예는 이하에 설명되고 대응하는 도면에 도시된다.

도 2는 애플리케이션과의 유저 상호작용을 지원하는 데에 이용될 수 있는 복수의 디스플레이 모드들을 보여주는 예시적인 일 구현(200)을 도시한다. 이 예시적인 구현은 애플리케이션 및 연관된 콘텐츠와의 상호작용을 위한 제 1, 제 2, 제 3, 및 제 4 디스플레이 모드들(202, 204, 206)을 이용하여 예시된다. 제 1 디스플레이 모드(202)에서, 표현(208)은, 연락처(contact)가 유저의 포스트 상에서 코멘트하였다는 통지도 포함하는, 연락처에 대응하는 타일로서 구성된다. 이 통지에 대한 부가적인 정보를 보기 위하여, 유저는 입력(예를 들어, 제스처, 커서 제어 장치를 통한 선택, 스피치 입력 등)을 제공하여 표현(208)의 확장이 제 2 디스플레이 모드(204)로 전환하도록 야기시킬 수 있다.

제 2 디스플레이 모드(204)에서, 전술된 제스처 또는 다른 입력에 응답하여 출력되는 확장된 표현(210)이 도시된다. 본 예에서 확장된 표현(210)은 통지에 관련된 부가 콘텐츠를 포함한다. 예를 들어, 확장된 표현(210)은 포스트의 주제(subject)인 그림(picture), 포스트에 관하여 만들어진 다른 코멘트들, 도 5 및 6과 관련하여 더 설명되는 바와 같은 컴퓨팅 장치(104)의 유저로부터 하나 이상의 입력들을 수신하도록 구성된 입력 부분, 및 연락처에 의해 표현된 유저에 의해 실제로 만들어진 포스트를 포함한다. 따라서, 표현(210)은 비확장 표현(208)에 포함된 통지들 이외의 부가적인 콘텐츠를 포함하며, 이는 통지를 더 설명할 수 있다. 다른 예들에서, 복수의 부가적인 통지들이 디스플레이될 수 있다. 제 2 디스플레이 모드는 확장된 표현의 디스플레이를 수반하는 복수의 상이한 서브 모드들을 가질 수 있다.

확장된 표현(210)은 이 콘텐츠를 다양한 방식으로 수신 및 출력하도록 구성될 수 있다. 예를 들어, 표현(208)을 선택하여 확장된 표현(210)의 출력을 야기시킴으로써 도 1의 대응하는 애플리케이션(110)의 실행을 야기시킬 수 있다. 그 후, 본 예에서 애플리케이션(110)은 "웨이크되어(woken)" 확장된 표현(210) 내의 포함을 위한 콘텐츠를 획득한다.

다른 예에서, 디스플레이(204)의 콘텐츠는 대응하는 애플리케이션(110)을 실행하지 않고 도 1의 통지 모듈(114)에 의해 제공될 수 있다. 예를 들어, 통지 모듈(114)은 애플리케이션(110)을 실행하지 않고 위에서 도 1과 관련하여 설명된 바와 같은 통지들을 획득하도록 구성될 수 있다. 이 방식으로, 통지 모듈(114)은 애플리케이션(110)과 연관된 콘텐츠를 획득하여 애플리케이션을 실제로 실행하지 않고 애플리케이션(110)과의 유저 상호작용을 지원할 수 있다.

제 2 디스플레이 모드(204)는 확장된 표현의 디스플레이를 수반하는 각종 상이한 서브 모드들을 지원할 수도 있다. 예를 들어, 하나의 서브 모드는, 부가적인 통지들 또는 특정의 통지와 연관된 부가적인 콘텐츠와 같은 부가적인 콘텐츠를 제공하는 것, 공유 네트워크 환경 내의 콘텐츠의 액티비티 레벨들을 보는 것 등을 위하여 이용될 수 있는 확장된 표현을 수반할 수 있다. 다른 서브 모드에서의 다른 확장된 표현이 이용되어, 유저가 애플리케이션에 대한 제한된 입력들을 제공하는 것을 허용하고/거나 전화 걸기, 텍스트 응답, 상태 포스팅, 비디오 또는 노래의 재생 등과 같은 애플리케이션들 특징들에 대한 제한된 기능을 허용할 수 있다. 루트 레벨 모드에서의 애플리케이션의 서브 모드들 중 다른 하나에서의 다른 확장된 표현은, 이하에서 더욱 상세히 설명되는 도 11에 도시된 계산기, 도 14에 도시된 스도쿠 게임, 도 4에 도시된 비디오 플레이어 등과 같은 더 큰 루트 모드 디스플레이 내의 앱(app)의 전체 기능 구현을 포함할 수 있다.

제 3 디스플레이 모드(206)에서, 표현(예를 들어, 연락처 애플리케이션(contacts application))과 연관된 애플리케이션(110)의 실행은, 크롬(chrome) 없이 윈도우 또는 프레임에서 또는 풀스크린 보기 또는 스플릿 스크린에서 데스크탑 모드와 같은 모드에서 완전히 론칭된다. 예를 들어, 운영체제(108)는, 애플리케이션이 크롬 없이, 예를 들어, 윈도우 없이 디스플레이되는 이하에 더 설명되는 이머시브 쉘을 지원할 수 있다. 제 3 디스플레이 모드(206)는, 제 1 디스플레이 모드(202)에서의 표현(208) 또는 제 2 디스플레이 모드(204)에서의 확장된 표현(210) 중의 선택 또는 임의의 다른 적절한 아이콘 또는 애플리케이션 표현과의 유저 상호작용을 통하여 진입될 수 있다.

따라서, 애플리케이션의 확장된 프리젠테이션은 아니지만, 제 3 디스플레이 모드를 통하여 제공된 다음 확장은 데스크탑의 풀스크린 또는 윈도우 프레임 내에서 실행되는 통상의 풀스크린 또는 스플릿 스크린 애플리케이션으로의 애플리케이션의 론칭을 수반한다. 따라서, 루트 모드 디스플레이 내에서의 애플리케이션의 모든 확장된 프리젠테이션들은, 유저가 루트 레벨로부터 "벗어나서(away)" 네비게이션하도록 강제하지 않으면서, 유저에 의한 비모달 상호작용을 지원할 수 있다.

또한, 유저는 다양한 방식들로 모드들 사이에서 네비게이션할 수 있다. 예를 들어, 유저는 표현(208)의 일 부분(예를 들어, 통지의 텍스트)을 선택하여 확장된 표현(210)의 출력을 야기시키고 표현(208)의 다른 부분(예를 들어, 연락처 애플리케이션을 표현하는 섀도우된(shadowed) 사람들)을 선택하여 제 3 디스플레이 모드(206)로의 전환을 야기할 수 있다. 제스처들이 지원될 수도 있으며, 그 일 예는 이하에 설명되고 대응하는 도면에서 도시된다.

도 3은 제스처 또는 아이콘(아래쪽 화살표 등)을 이용하여 다음 계층 보기 또는 표현으로 확장하는 것을 보여주는 예시적인 일 구현(300)을 도시하며 애플리케이션 표현(아이콘, 타일 등)의 다른 부분을 선택하여 완전히 기능하는 애플리케이션을 오픈할 수 있다. 일부 경우들에서, 애플리케이션 표현을 확장하는 것과 연관된 운영체제에 의해 수신된 입력은 애니메이션을 수반하는 확장된 표현의 출력을 야기할 것이다. 이 예시적인 구현(300)은 제 1, 제 2, 및 제 3 스테이지들(302, 304, 306)을 이용하여 도시된다. 제 1 스테이지(302)에서, 유저는 두 개의 손가락들(두 개의 팬텀 서클들(308, 301)을 이용하여 예시됨)을 이용하여 도 2에 도시된 바와 같은 표현(208)에 컨택하고 이들을 따로 이동시켜 확장 제스처를 만든다. 탭(tap) 또는 메뉴나 아이콘을 통한 활성화와 같은 다른 제스처들도 고려된다. 예시된 바와 같이, 본 예에서의 개시 스크린은 그리드 배열을 따르는 타일들로서 구성된 복수의 다른 표현들을 포함한다.

그 후, 운영체제(108)는 제스처를 인식하고 그에 응답하여 제 2 스테이지(304)에 도시된 바와 같이 애니메이션의 출력 또는 다른 적절한 유저 인터페이스 디스플레이 변환을 야기시킨다. 디스플레이된 실시예에서, 본 예의 애니메이션은 제 2 스테이지(304)에 도시된 표현(208)이 펼쳐져서 그 확장된 크기를 갖는 외형을 제공한다. 애니메이션은 또한 다른 표현들의 재배열(rearrangement)을 수반하는 것도 이 스테이지에서 인식되어야 한다. 예시된 바와 같이, 제 1 스테이지(302)에서의 비디오 및 사진들의 표현들(312 및 314)을 포함하는 컬럼 내에 표현(208)이 포함된다. 그 후, 비디오 및 사진들의 표현들(312 및 314)은 제 2 스테이지(304)의 인접 컬럼들로 이동된다(예를 들어, 비디오 표현(312)은 좌측으로 이동하고 사진들 표현(314)은 우측으로 이동). 이 이동은 예시된 바와 같이 다른 컬럼들의 재배열을 야기시킬 수도 있다. 근접 애플리케이션 표현들의 임의의 적절한 이동이 이용되어 루트 모드에서 선택된 애플리케이션 표현의 표현을 확장하기 위한 공간을 만들 수 있다.

제 3 스테이지(306)에서, 확장된 표현(210)은 다른 재배열된 표현들과 함께 도시된다. 이 방식으로, 유저는, 본 예에서의 운영체제(108)의 루트 레벨, 예를 들어 개시 스크린을 떠나지 않고 비모달 방식으로 상기 확장된 표현(210)과 상호작용할 수 있다. 루트 레벨이 설명되지만, 이 기능은, 태스크바 내에서와 같이, 파일 시스템 내에서 그 취지 및 범위를 벗어나지 않고 다른 레벨들에서 채용될 수도 있는 것이 용이하게 명백해야 한다.

확장된 표현들의 이용은 멀티태스킹을 지원하는 데에 활용될 수도 있다. 예를 들어, 제 3 스테이지(306)에서 도시된 바와 같이, 유저는 이전에 설명된 바와 같이 확장 제스처를 반복하지만, 본 예시에서는 비디오 애플리케이션의 표현(312)에 대한 제스처를 수행한다. 이것은 또한 도 4의 예시적인 구현(400)에서 도시된 바와 같이 표현의 확장 및 다른 표현들의 재배열을 야기한다.

도 4에는, 도 3의 제스처에 응답하여 출력되는 확장된 표현(402)이 예시된다. 비디오 애플리케이션에 대한 확장된 표현(402)은 연락처 애플리케이션에 대한 확정된 표현(210)과 동시에 디스플레이된다. 확장된 표현(402)은 표현을 통해 선택되어 일부 실시예들에서 루트 모드 내의 표현 내에서 비디오의 디스플레이를 야기시킬 수 있는 콘텐츠를 포함한다. 이 방식으로, 확장된 표현들(210 및 402)은 유저가 복수의 확장된 표현들과 동시에 상호작용하여 멀티태스킹하는 것, 예를 들어, 비디오를 보고 소셜 네트워크 서비스로부터 포스트들을 보는 것을 허용할 수 있으며, 또한 멀티플 애플리케이션 표현들의 루트 모드 디스플레이와의 다른 루트 모드 유저 상호작용들 또는 패닝(panning)/스크롤링(scrolling)을 허용한다. 따라서, 본 예에서 확장된 표현(402)은 타일 내에서 디스플레이되는 콘텐츠와 상호작용하는 입력들을 지원한다. 확장된 표현은 텍스트 입력들을 지원하도록 구성될 수도 있으며, 그 예는 이하에서 더 설명되고 대응하는 도면들에 도시된다.

도 5는 확장된 표현(210)과의 유저 상호작용의 일 예시를 보여주는 예시적인 일 구현(500)을 도시한다. 이전에 설명된 바와 같이, 본 예에서 확장된 표현(210)은 연락처 애플리케이션에 대응한다. 연락처 애플리케이션은 소셜 네트워크 서비스와의 상호작용을 지원함으로써, 업로드되어 유저의 "친구들"과 공유하는 이미지들, 비디오들, 상태 업데이트들 및 다른 포스트들을 포함할 수 있다. 예시된 바와 같이, 유저는, 예를 들어, 커서 제어 장치의 이용 등을 통해 텍스트 엔트리 박스 상에서 "탭핑(tapping)"함으로써, 텍스트 엔트리 박스를 선택하여 소셜 네트워크 서비스에 포스트되는 텍스트를 입력한다.

확장된 표현(210)의 더 큰 보기를 보여주는 도 6의 예시적인 구현(600)에 도시된 바와 같이, 텍스트 엔트리 박스(602)는 아이콘의 선택을 통하여 소셜 네트워크 서비스에 포스트될 수 있는 텍스트를 수신하도록 구성된다. 유저는 "썸즈업(thumbs up)" 아이콘을 이용해서 포스트에 "좋아함(like)"과 같은 다른 입력들을 제공하고 애플리케이션 표현의 기저의 애플리케이션의 상태 업데이트 또는 임의의 다른 적절하지만 제한된 기능을 제공할 수도 있다. 또한, 확장된 표현(210)은 다른 포스트들을 통해 네비게이션하는 옵션 및 표현(208)의 비확장된 또는 더 작은 계층 확장된 버전으로 복귀하는 옵션(606)(아이콘으로서 도시되지만 제스처일 수 있음)을 포함한다. 이러한 방식으로, 유저는 신속하게 확장하고 확장된 표현(210)과 상호작용하며, 종료시 확장을 제거하여 유저 인터페이스 내의 공간을 보존할 수 있다. 확장된 표현(210)은 다양한 방식으로 구성될 수 있으며, 그 예들이 이하에 설명되고 대응하는 도면들에 도시된다. 연락처 애플리케이션 및 비디오 애플리케이션의 예들이 위에서 설명되었지만, 통지들, 확장 가능 콘텐츠, 및/또는 기능의 제한된 세트들을 갖는 임의의 적절한 애플리케이션은 애플리케이션 확장 가능 콘텐츠 및/또는 기능을 적용할 수 있으며, 예를 들어 계산기 애플리케이션은 단순한 타일 부가로부터 전체 과학 계산기(full scientific calculator)로 확장하고, 설정 애플리케이션은 연결 상태의 표시들 및/또는 소정의 설정들을 연결 또는 설정하는 추가적인 기능을 제공하고, 게임 애플리케이션은 확장하여 이용 가능한 새로운 게임들을 보여주고, 친구들 및/또는 현재의 상태 또는 업데이트들 등을 보여준다.

도 7은 확장된 표현을 위한 자유 배열(700)의 예시적인 일 구현을 도시한다. 본 예에서, 자유 배열(700)은 이전에 설명된 바와 같은 기능을 갖는 하부 및 타이틀들을 포함하도록 구성되는 상부와 함께 통지 엔진으로부터의 하나 이상의 통지들의 콘텐츠를 포함하도록 구성되는 큰 중심 영역을 포함한다.

도 8은 확장된 표현을 위한 탭형 배열(800)의 예시적인 일 구현을 도시한다. 명칭이 암시하는 바와 같이, 본 예에서의 상부를 따라 탭들(tabs)이 포함되어 탭 내의 상이한 보기들 간에 네비게이션하므로, 부가적인 콘텐츠의 지원을 포함할 수 있다.

도 9는 확장된 표현을 위한 스팬 배열(900)의 예시적인 일 구현을 도시한다. 본 예에서, 스팬 배열(900)은 복수의 아이템들의 수직 디스플레이를 지원하여 아이템들을 통한 네비게이션을 지원한다. 스팬 레이아웃(900) 내의 아이템들은 그 후 스크롤될 수 있다.

자유, 탭형, 및 스팬 배열들(700, 800, 900)은 각종 상이한 레이아웃들로 구성될 수 있다. 예를 들어, 도 10의 예시적인 일 구현(1000)에 도시된 바와 같이, 자유, 탭형, 및 스팬 배열들(700, 800, 900)은 리스트, 그리드, 확장 가능 리스트 및 맞춤형(customizable) 레이아웃들 중 하나 이상을 활용할 수 있다. 따라서, 확장된 표현은 각종 상이한 콘텐츠를 받아들이도록 구성될 수 있으며, 그 예들이 이하에 설명되고 대응하는 도면들에 도시된다.

도 11은 계산기 및 음악 애플리케이션들의 표현들 및 확장된 표현들을 보여주는 예시적인 일 구현(1100)이다. 계산기 애플리케이션은 비확장 표현(1102)을 이용하여 이전에 설명된 바와 같이 제 1 디스플레이 모드에서 표현될 수 있다. 그 후, 표현(1102)은 아래쪽 화살표 아이콘 또는 임의의 다른 디스플레이된 유저 인터페이스 또는 디스플레이되지 않은 유저 입력 제스처를 통하는 등의 유저 입력에 응답하여 확장될 수 있다. 그 후, 확장된 표현은 입력들(예를 들어, 키들을 "누름")을 받아들여 상호작용하도록 구성되는 계산기 애플리케이션의 확장된 표현(1104)으로서 루트 모드에서 디스플레이한다.

유사하게, 확장되지 않은 타일 또는 아이콘과 같은 표현(1106)을 이용하여 음악 애플리케이션이 제 1 디스플레이 모드에서 표현될 수 있다. 이 예에서, 표현(1106)은 여전히 음악 애플리케이션의 실행을 야기시키지 않으면서 이전에 설명된 바와 같이 통지들을 출력하도록 구성될 수 있다. 그 후, 표현(1106)은 유저 입력에 응답하여 루트 모드 내에서 확장되어, 입력들을 받아들여 상호작용하도록 구성되는 음악 애플리케이션의 확장된 표현(1108)을 디스플레이할 수 있다. 예를 들어, 유저는 확장된 표현을 이용하여 미디어의 출력을 통해 네비게이션하는 것, 음악 애플리케이션을 이용하여 재생할 상이한 음악 아이템(music item)을 선택하는 것 등을 할 수 있다. 또한, 이 예에서, 확장된 표현(1108)은 배경 이미지로서 앨범 아트(album art)를 포함한다.

도 12는 뉴스 및 연락처 애플리케이션들의 표현들 및 확장된 표현들을 보여주는 예시적인 일 구현(1200)이다. 뉴스 애플리케이션은 위에서와 같이 제 1 디스플레이 모드에서의 디스플레이를 위해 구성된 표현(1202)을 가질 수 있다. 표현(1202)은 그 후 확장되어, 본 예에서는 헤드라인들 및 대응하는 이미지들로서 디스플레이되는 뉴스 애플리케이션에 관련된 콘텐츠를 포함하는 확장된 표현(1204)을 디스플레이할 수 있다.

이전에 설명된 바와 같이, 표현(1202)과 확장된 표현(1204) 사이의 네비게이션은 유저 입력, 예를 들어, 커서 제어 장치, 제스처, 구두 명령 등에 응답하여 수행될 수 있다. 표현(1202)으로부터 확장된 표현(1204)으로의 전환이 자동적으로 유저 개입 없이 수행될 수 있는 다른 구현들도 고려된다. 이 예에서, 통지는 유저에 의해 플래그된(flagged) 주제, 통지의 제공자에 의해 플래그된 주제 등의 통지가 통지 모듈(114)에 의해 수신될 수 있다. 이 플래그(예를 들어, 앰버 경보(Amber alert))에 응답하여, 표현(1202)은 확장된 표현(1204)을 형성하도록 확장되어 통지에 관련된 부가 정보를 제공할 수 있다. 각종의 다른 예들도 고려된다. 추가적인 확장들이 활성화되고 디스플레이되어 검색, 필터, 기사들의 디스플레이 등과 같은 제한된 기능을 제공할 수 있다.

연락처 애플리케이션 표현은 더 확장되어 제한된 기능을 허용할 수 있다. 확장은 수평방향 또는 수직방향으로 이루어질 수 있다. 예를 들어, 일부 양태들에서, 애플리케이션 표현은 수직방향으로 확장되어 메시지에 대한 응답을 위한 텍스트 엔트리 영역을 디스플레이하고/거나 좌측으로 확장되어 관련된 연락처와의 통화를 개시하기 위한 활성화 아이콘을 포함할 수 있다. 이들은 제한된 기능 또는 연락처 애플리케이션과의 상호작용의 단지 두 가지 예들이며, 표현의 임의의 적절한 확장들 및/또는 기능의 서브세트 및 제한된 세트가 적절히 이용될 수 있다.

예를 들어, 연락처 애플리케이션의 표현(1206)의 경우, 유저는 확장된 표현(1208)의 자동적인 디스플레이를 야기시킬 특정 연락처, 공유 네트워크 리소스(예를 들어, 소셜 네트워크 서비스) 내의 특정 포스트된 콘텐츠 등을 가리킬 수 있다. 유사하게, 통지의 송신자는, 운영체제(108)에 의해 부가적으로 또는 대안적으로 이용되어 확장된 표현의 자동적인 디스플레이를 트리거할 수 있는 특정의 통신(음성 메일, 텍스트, 이메일 등)을 위한 긴급 플래그(urgency flag)를 포함할 수 있다. 통지 모듈(114)에 의한 대응 통지들의 수신은 그 후 확장된 표현(1208)의 자동적인 디스플레이를 야기시킬 수도 있다.

도 13은 표현들 및 통지들의 글랜서블 특성 및 확장된 표현을 통해 이용 가능한 증가된 콘텐츠를 예시하는 일 구현(1300)을 도시한다. 4개의 좌측 예들에서 보여지는 바와 같이, 표현은 예를 들어 주식시장 통지들을 수반하는 통지들의 출력에만 사용되는 다양한 크기들을 가질 수 있다.

부가 정보를 얻기 위해, 통지들의 일부가 아닌 콘텐츠를 포함할 수 있는 두 개의 우측 예들에서 보여지는 바와 같이 확장된 표현이 이용될 수 있다. 예를 들어, 확장된 표현은 표현된 애플리케이션의 실행을 수반할 수 있는 반면 비확장 버전은 그렇지 않다. 이전에 설명된 바와 같이 확장된 표현은 대응 애플리케이션(110)의 실행을 수반하지 않는 다른 구현들도 고려된다.

도 14는 다운로드 및 사용을 위한 애플리케이션들에의 액세스를 유저들에게 제공하도록 구성되는 애플리케이션 스토어의 유저 인터페이스를 보여주는 예시적인 일 구현(1400)을 도시한다. 배경기술에 설명된 바와 같이, 애플리케이션 스토어들은 점차 유저에 의한 애플리케이션들(110)의 획득을 위한 주요 소스로서 여겨져 왔다. 이와 같이, 확장 가능 표현들을 지원하는 애플리케이션들은, 운영체제(108)의 루트 레벨(예를 들어, 개시 스크린) 내에서 상호작용을 지원하도록 구성되는 애플리케이션들을 유저들이 선택하도록 애플리케이션 스토어에서 전용의 애플리케이션 카테고리를 지원할 수 있다. 예시된 바와 같이, 예를 들어, 유저에 의해 구매되어 확장된 표현(1402) 내에서 스도쿠를 플레이할 수 있는 스도쿠 퍼즐 애플리케이션이 확장된 표현(1402)을 지원할 수 있다. 그 취지 및 범위로부터 벗어나지 않는 다양한 다른 예들도 고려된다.

도 15는 운영체제(108)의 이머시브 쉘들 및 데스크탑을 지원하도록 동작 가능한 예시적인 일 구현에서의 환경(1500)을 예시한다. 예시된 환경(1500)은 도 1과 관련하여 이전에 설명된 바와 같이 운영체제(108) 및 애플리케이션(110)을 포함하는 컴퓨팅 장치(104)를 포함한다.

또한, 운영체제(108)는, 네트워크를 통하여 원격으로 그리고 장치에 로컬로, 컴퓨팅 장치(102)의 애플리케이션들(110) 및 다른 데이터와 유저가 상호작용할 수 있게 해주는 이머시브 쉘(1504)을 제공하도록 컴퓨팅 장치(102)의 기능을 대표하는 이머시브 환경 모듈(1502)을 포함하는 것으로 예시된다. 이머시브 쉘(1504)은 입력들을 받아들여 컴퓨팅 장치(102)의 운영체제(108) 및 애플리케이션들(110)과 상호작용함으로써 위에서 언급된 추상화된 기능과 같은 컴퓨팅 장치(102)의 기능에 액세스하도록 구성된다. 또한, 이머시브 쉘(1504)은 아래에서 더 설명되는 바와 같이 데스크탑 쉘(1506)을 지원하도록 구성될 수 있다.

이머시브 쉘(1504)은 윈도우 프레임이 거의 또는 전혀 없이 애플리케이션들과 상호작용하는 것을 지원하도록 구성될 수 있다. 또한, 이머시브 쉘(1504)은, 대응하는 윈도우 프레임의 레이아웃, 다른 윈도우들에 대한 윈도우의 중요성(primacy)(예를 들어, 윈도우가 활성인지 여부, 다른 윈도우들의 앞이나 뒤에 있는지 여부, 윈도우들의 순서 등)을 유저가 관리하도록 요구하지 않으면서, 애플리케이션들(110)과의 상호작용을 지원할 수 있다. 운영체제(108)의 일부로서 예시되지만, 이머시브 환경 모듈(1502)은 독립형(stand-alone) 모듈, 네트워크를 통한 원격 등과 같은 다른 방법들로 다양하게 구현될 수 있다.

하나 이상의 구현들에서, 운영체제(108)의 이머시브 쉘(1504)은 운영체제(108)와는 별개로 클로즈되거나 언인스톨되는 것이 가능하지 않도록 구성된다. 또한, 이머시브 쉘(1504)은 컴퓨팅 장치(104)의 디스플레이 장치(1508)의 이용 가능한 디스플레이 영역의 상당한 부분을 소모하도록 구성될 수 있다. 유저는 커서 제어 장치를 통하는 것, 하나 이상의 제스처를 이용하는 것, 음성 인식을 이용하는 것, 하나 이상의 깊이 감지(depth-sensing) 카메라들을 이용하는 캡쳐 등과 같은 다양한 방법들로 이머시브 쉘(1504)과 상호작용할 수 있다.

따라서, 이머시브 환경 모듈(1502)은, 애플리케이션들(110)의 콘텐츠가 표현될 수 있으며 표현은 애플리케이션들(110)의 콘텐츠를 디스플레이하는 데에 이용되는 윈도우들의 크기, 위치, 중요성 등을 유저가 관리하도록 요구하지 않고 수행될 수 있는 이머시브 쉘(116)을 관리할 수 있다.

예를 들어, 디스플레이 장치(1508)에 의해 디스플레이된 유저 인터페이스 상에 도시된 바와 같이, "스냅된(snapped)" 구성으로 두 개의 애플리케이션들로부터의 데이터(1510, 1512)를 디스플레이하도록 구성되는 유저 인터페이스가 도시된다. 이 예에서, 데이터에 대응하는 두 애플리케이션들은 컴퓨팅 장치(102)에 의해 능동적으로 실행하도록 인에이블되는 한편, 데이터를 현재 디스플레이하고 있지 않은 다른 애플리케이션들에 대해서는 실행이 정지되어 있다. 디스플레이 장치(1508) 상에서 애플리케이션들에 의해 각각 소모되는 디스플레이 영역의 양을 변경하도록 이동 가능한 거터(gutter; 1514)가 데이터(1510, 1512)의 디스플레이들 사이에 배치된다.

이머시브 쉘(1504)은 애플리케이션들(110)에 액세스하도록 유저에게 이머시브 경험(immersive experience)을 제공하는 다양한 기능을 지원할 수 있다. 이하의 설명에서는, 이 기능이, 이 기술들을 활용하여 데스크탑 쉘(1506)과의 상호작용을 가능하게 하는 것과 관련하여 설명된다. 그러나, 이 기술들은 그 취지 및 범위로부터 벗어나지 않고 애플리케이션들(110) 자체와의 상호작용을 관리하는 데에 이용될 수 있는 것이 용이하게 명백해야 한다.

데스크탑 쉘(1506)은, 이 예에서 애플리케이션들(110) 및 다른 데이터와 상호작용하는 경우 운영체제(108)에 의해 출력된 유저 인터페이스의 다른 구성을 대표한다. 예를 들어, 데스크탑 쉘(1506)은 프레임들을 갖는 윈도우들을 통해 애플리케이션들 및 대응하는 데이터를 제공하도록 구성될 수 있다. 이 프레임들은 유저가 애플리케이션과 상호작용할 수 있게 해주는 제어들 및 유저가 윈도우를 이동시키고 크기를 조절하는 것을 가능하게 하는 제어들을 제공할 수 있다. 데스크탑 쉘(1506)은 폴더들을 이용하여 계층적 파일 구조를 통해 네비게이션하고 아이콘들을 이용하여 데이터 및 애플리케이션들을 표현하는 기술들을 지원할 수도 있다. 비록 다른 구현들도 고려되지만, 하나 이상의 구현들에서, 데스크탑 쉘(1506)은 이머시브 쉘(1504)을 통한 액세스를 위하여 구성되지 않고 데스크탑 쉘(1506)을 통한 상호작용을 위해 특정적으로 구성되는 애플리케이션들(110)에 액세스하는 데에 이용될 수도 있다.

여기에 설명된 기술들 중 하나 이상에서, 이머시브 쉘(1504)은, 데스크탑 쉘(1506)이 마치 컴퓨팅 장치(104) 상에서 실행된 다른 애플리케이션인 것처럼, 데스크탑 쉘(1506)에 대한 액세스를 제공한다. 이 방식으로, 더욱 통상적인 기능을 위하여 유저는 이머시브 쉘(1504)의 기능을 이용하여 여전히 데스크탑 쉘(1506)에 액세스할 수 있다. 이머시브 쉘 내의 이머시브 애플리케이션으로서 데스크탑의 구현의 예들은 여기에 설명된 확장 가능 표현 기술들을 이용하는 것을 포함하며, 이에 대해서는 이하에서 설명하고 대응하는 도면에 도시한다.

도 16은 도 15의 데스크탑 쉘(1506)의 확장된 표현(1600)의 예시적인 일 구현을 도시한다. 이전에 설명된 바와 같이 확장된 표현(1600)은 데스크탑 쉘(1506)을 애플리케이션으로서 처리한다. 따라서, 데스크탑 쉘의 확장된 표현(1600)은 데스크탑 쉘과 연관된 콘텐츠를 포함하도록 구성된다.

예시된 예에서, 이 콘텐츠는 데스크탑 쉘(1506) 내에서 "오픈(open)"되어 있는 애플리케이션들(110)을 설명하며, 여기에는 브라우저, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 및 프리젠테이션 애플리케이션이 포함된다. 콘텐츠 아이템들의 각각은 루트 레벨 디스플레이로부터 데스크탑 쉘(1506) 내의 대응 애플리케이션으로 직접 네비게이션하도록 선택될 수 있다. 실행 중인 애플리케이션들은 도 16에 도시된 바와 같이 데스크탑 애플리케이션 표현 내에 디스플레이될 수 있지만, 가장 빈번하게 사용된 애플리케이션의 리스트, 유저에 의해 데스크탑 애플리케이션 표현 내에 고정된(pinned) 애플리케이션들과 같은 임의의 적절한 수 및/또는 상태 유형들의 애플리케이션들이 데스크탑 애플리케이션 표현 내에서 보여질 수 있으며, 이들 중 어느 하나 또는 모두는 루트 모드 디스플레이 내의 데스크탑 애플리케이션 표현의 제 1 또는 더 계층 확장된 보기에서 보여질 수 있다.

확장된 표현(1600)은 데스크탑 쉘(1506)의 태스크바로부터 받은 아이콘들을 포함할 수 있으며, 여기에는 데스크탑 쉘(1506) 내의 대응하는 기능으로의 네비게이션을 위해 선택될 수도 있는 파일 공유 애플리케이션, 안티바이러스 유틸리티, 및 프린터의 표현이 포함된다. 따라서, 확장된 표현(1600)은 양쪽 쉘들의 출력을 필요로 하지 않으면서 쉘들 간의 상호작용을 지원함으로써 운영체제(108)의 쉘들 사이에서 포털(예를 들어, "웜홀(wormhole)")로서 동작할 수 있다. 확장된 표현(1600) 내에서 상기와 같이 포함하는 것 및 디스플레이된 콘텐츠와의 지원된 상호작용은 데스크탑 쉘(1506) 또는 이하에서 더 설명되는 다른 확장된 표현으로부터 장치 또는 애플리케이션에 콘텐츠를 보내는 것과 같은 다양한 다른 기능을 위해 이용될 수도 있다.

도 17은 도 1의 운영체제(108)의 백 스택(back stack)으로서 구성된 태스크바에 확장된 표현이 포함되는 예시적인 일 구현 내의 시스템(1700)을 도시한다. 도 15와 관련하여 이전에 설명된 바와 같이, 운영체제(108)는 하나 이상의 애플리케이션들의 디스플레이가 하나 이상의 디스플레이 장치들의 디스플레이 환경을 실질적으로 소모할 수 있는 이머시브 환경을 유지할 수 있다.

그러나, 애플리케이션들은, 디스플레이 장치(1508) 상에 애플리케이션이 나타날 때까지 애플리케이션의 실행이 중지되는 "백 스택"으로서 동작하는 태스크바(1702)를 이용함으로써 운영체제(108)에 의해 "이용 가능하도록 유지"될 수도 있다. 예를 들어, 유저는 유저들 손의 하나 이상의 손가락들을 통한 스와이프(swipe) 제스처, "클릭 앤 드래그" 제스처 등을 취하여, 현재 디스플레이되고 있는 애플리케이션들 중 하나 이상을 백 스택으로부터의 애플리케이션으로 대체할 수 있다. 태스크바(1702)가 "백 스택" 기능과 연관되지 않는 다른 예들도 고려되며, 예를 들어, 태스크바에 표현된 애플리케이션들이 능동적으로 실행 중인 것, 태스크바에 "고정"되어 있는 것 등이다.

예시된 예에서, 태스크바(1702)는, 예를 들어, 이머시브 쉘의 제 3 디스플레이 상태 "풀 스크린" 보기와 같은 애플리케이션들의 유저 인터페이스들로의 네비게이션을 위해 선택 가능한 표현들을 포함한다. 태스크바 내의 표현들은 이전에 설명된 바와 같이 확장된 표현(본 예에서는 포토 애플리케이션을 위한 확장된 표현)을 포함하기도 한다. 확장된 표현은 각종 상이한 방법들로 태스크바 내에 포함될 수 있다. 예를 들어, 포토 애플리케이션은 백 스택(back stack) 내의 중단된 상태로 되어 애플리케이션의 실행의 선택을 통해 자동적으로 유저의 개입 없이 포함될 수 있다. 확장된 표현은, 예를 들어 "우측 클릭" 메뉴와 같이, 유저에 의한 하나 이상의 커맨드들을 이용하는 등에 의해 태스크바에 "고정(pinned)"될 수도 있다.

도 17의 확장된 표현은 확장된 표현에 의해 제공된 "포털" 및 확장된 애플리케이션(예를 들어, 제 3 디스플레이 모드)을 통해 액세스 가능한 포토들의 콘텐츠를 포함한다. 확장 콘텐츠 확장 애플리케이션 표현 내의 포토 애플리케이션이 도시되지만, 루트 레벨 디스플레이 내의 애플리케이션 표현들에 부가하여 또는 대안적으로 태스크 바의 실시예에서는 콘텐츠 확장된 보기를 갖는 임의의 적절한 애플리케이션 유형 및/또는 제한 기능 확장 애플리케이션 표현이 이용될 수 있는 것이 인식되어야 한다. 확장 가능 애플리케이션 표현들을 갖는 태스크 바의 이러한 포털은 그러므로 각종 상이한 기능을 지원하는 데에 활용될 수 있는 확장된 표현에 포함된 콘텐츠로의 비모달 상호작용을 지원할 수 있다.

예시된 예에서, 데스크탑 쉘 내에서의 디스플레이도 고려되지만, 이메일 애플리케이션의 유저 인터페이스(1704)는 이머시브 쉘 내에서 디스플레이된다. 완전 실행 중인 이메일 애플리케이션의 유저 인터페이스는 이메일을 작성하고 발송하는 부분 및 플래그된 이메일들의 디스플레이 포함한다. 본 예에서 유저는 이메일을 작성하고 있고 사진을 첨부하기를 원한다. 이렇게 하기 위하여, 유저는 포토 애플리케이션의 확장된 표현에 액세스하여 이메일 애플리케이션 내에 포함시키기 위한 콘텐츠를 확장된 표현으로부터 선택할 수 있다. 따라서, 이러한 선택은 애플리케이션의 제 3 디스플레이 상태에 진입하지 않고 이루어질 수 있다.

예를 들어, 유저는 각종 상이한 방법들로 태스크바의 디스플레이를 야기할 수 있다. 이것은 태스크바(1702)를 디스플레이할 디스플레이 장치(112)의 측부의 스와이프를 수반하는 베젤(bezel) 제스처를 이용하는 것, 태스크바(1702)의 디스플레이를 야기하도록 커서 제어 장치를 이용하여 커서를 에지 근방에 위치시키는 것, 키 커맨드 또는 아이콘, 음성 커맨드 등을 이용하는 것을 포함할 수 있다.

어떻게 출력이 개시되는 지와는 무관하게, 도 17에 예시된 바와 같이 태스크 바(1702)가 디스플레이되면, 유저는, 원하는 사진과 같이, 확장된 표현 내에 포함되는 하나 이상의 콘텐츠의 아이템들을 선택할 수 있다. 이것은, 유저 인터페이스 내에서 확장된 표현으로부터 이메일로 콘텐츠를 드래그하는 "드래그 앤 드롭" 제스처를 통하는 것, 커서 제어 장치를 이용하여 콘텐츠의 아이템을 선택하는 것(예를 들어, "체크") 등과 같은 다양한 방법들로 수행될 수 있다. 따라서, 이 예에서 유저는 이메일을 작성하고, 다른 애플리케이션들의 확장된 표현들을 이용하여 그 애플리케이션들을 통해 액세스 가능한 아이템들이 이메일 내에 포함되도록 선택할 수 있다. 이 방식으로, 유저는 확장된 표현을 애플리케이션과의 상호작용을 가능하게 하는 포털로서 사용함으로써 확장된 표현으로부터 원하는 애플리케이션으로 콘텐츠를 보낼 수 있다. 확장된 표현은 콘텐츠를 확장된 표현으로부터 장치로 보내는 유사한 기술들을 지원하기 위해 이용될 수도 있으며, 추가의 설명이 이하에서 설명되고 대응하는 도면들에 도시된다.

도 18은 태스크바에 확장된 표현이 포함되어 표현에 포함된 콘텐츠의 아이템들을 장치에 보내는 예시적인 일 구현에서의 시스템(1800)을 도시한다. 본 예에서는, 이전의 예에서와 같이 컴퓨팅 장치(104)에 의해 유저 인터페이스가 출력된다. 또한, 유저 인터페이스는 어느 장치들이 컴퓨팅 장치(104)에 통신적으로 연결되는 지를 관리하는 데에 이용될 수 있는 무선 장치 관리자 애플리케이션의 출력(1802)을 포함한다. 이것은, 전화기들 및 태블릿들과 같은 모바일 컴퓨팅 장치들 등의 다른 컴퓨팅 장치들로의 통신적 연결들(communicative couplings) 및 주변 장치들을 포함할 수 있다. 물리적(예를 들어, 유선) 통신 기술들뿐만 아니라, 예시된 바와 같은 Bluetooth® 무선 통신 연결, Wi-Fi®, 및 다른 무선 통신 기술들 등의 각종 상이한 통신 연결들이 지원될 수 있다.

확장된 표현으로부터 장치로의 콘텐츠의 송신은 애플리케이션의 송신을 위하여 도 17과 관련하여 이전에 설명된 것과 유사한 방식으로 수행될 수 있다. 예를 들어, 유저는 이전에 설명된 바와 같이 포토 애플리케이션(또는 임의의 확장된 애플리케이션으로부터의 임의의 다른 적절한 콘텐츠)의 확장된 표현을 갖는 태스크바(1702)의 출력을 야기시킬 수 있다. 그 후, 유저는 확장된 표현으로부터 콘텐츠의 아이템을 선택하고(예를 들어, 제스처, 커서 제어 장치 등을 통하여), 그 후, 예를 들어, 드래그 앤 드롭 제스처, 연속적인 클릭들 등으로 콘텐츠의 아이템이 송신될 장치의 표현을 선택할 수 있다. 그 후, 운영체제(108)는 콘텐츠의 아이템이 장치에 송신되도록 (예를 들어, 무선 통신 접속 등을 통해 로드되도록) 야기시킬 수 있다.

따라서, 설명된 바와 같이, 확장된 표현은 콘텐츠를 원하는 목적지들에 송신하는 새로운 상호작용 기술들을 지원할 수 있다. 예를 들어, 아이템을 이용 가능하게 하는 애플리케이션으로 네비게이션하고 나서 아이템에 대하여 원하는 목적지를 특정하는 것(예를 들어, 먼저 "무엇(what)"을 선택하고 나서 "어디(where)"를 선택함) 대신, 유저는 먼저 콘텐츠의 아이템에 대하여 원하는 목적지로 네비게이션하고(예를 들어 "어디"), 그 후 그 목적지로 송신될 콘텐츠의 아이템들(예를 들어, "무엇")을 선택할 수 있다. 또한, 확장된 표현은 원격 콘텐츠와의 상호작용을 관리하는 사용 시나리오들을 지원할 수 있으며, 그 예는 이하에 더 설명되고 대응하는 도면에 도시된다.

도 19는 확장된 표현이 태스크바에 포함되어 컴퓨팅 장치(104)에 의해 액세스 가능한 장치에 파일 공유 서비스(file sharing service)의 표현에 포함된 콘텐츠의 아이템들을 보내는 예시적인 일 구현에서의 시스템(1900)을 도시한다. 태스크바(1702)는 파일 공유 환경 애플리케이션의 확장된 표현을 포함하는 것으로 예시된다. 이와 같이, 확장된 표현은, 예를 들어, 예시된 예에서의 프리젠테이션들, 문서들 및 폴더들 등 파일 공유 서비스를 통하여 이용 가능한 콘텐츠의 아이템들을 포함한다.

따라서, 이전의 예와 같이, 콘텐츠의 아이템들은, 원하는 애플리케이션들, 장치들, 예시된 바와 같은 프린터 등과 같은 확장된 표현과의 상호작용을 통하여 원하는 상호작용들에 송신될 수 있다. 또한, 본 예에서 이것은 파일 공유 환경이므로, 먼저 컴퓨팅 장치(104)에 로컬로 문서의 버전을 특정하여 저장하지 않고, 표시된 목적지로 콘텐츠의 아이템이 스트리밍될 수 있다.

이 전송 기술들은 확장된 표현으로부터 원하는 목적지로 콘텐츠를 송신하는 것은 태스크바(1702) 내에 확장된 표현을 포함하는 것으로 설명하지만, 다른 예들도 고려된다. 예를 들어, 이 기술들은 운영체제(108)의 루트 레벨(예를 들어, 개시 스크린)로부터의 확장된 표현을 이용하여 적용되어, 표현된 애플리케이션들과 장치들로 심지어 확장된 표현들 간에 콘텐츠를 전송할 수 있다(예를 들어, 파일 공유 서비스 확장된 표현으로부터 확장된 표현에서의 장치들로서 표현되는 콘텐츠를 포함하는 장치 관리자 애플리케이션으로).

도 20은 확장된 표현을 수반하는 컴퓨팅 장치들 간의 실행의 전송을 수반하는 장치들 간의 콘텐츠의 전송의 다른 예를 보여주는 예시적인 일 구현(2000)을 도시한다. 도 6과 관련하여 이전에 설명된 바와 같이, 확장된 표현(210)은 소셜 네트워크 서비스에 대한 상태 업데이트를 위한 텍스트 엔트리와 같은 입력들의 수신을 지원할 수 있다.

도 20에 도시된 바와 같이, 확장된 표현(210)은 모바일 컴퓨팅 장치(2002)의 디스플레이 장치에 근접한 종횡비 및 해상도를 가질 수 있다. 따라서, 이러한 유사성이 활용되어, 애플리케이션들을 기록하지 않으면서 효율적인 방식으로, 장치들 간에 애플리케이션들의 실행의 결과를 전송할 수 있다. 유저는, 예를 들어, 확장된 표현(210)과의 상호작용을 통하여 상태 업데이트를 위한 텍스트의 엔트리를 시작할 수 있다. 그 후, 유저는, 웨어러블 컴퓨팅 장치, 랩탑, 태블릿, 모바일 전화 등과 같은 모바일 컴퓨팅 장치(2002)와의 상호작용을 계속하는 것을 원할 수 있다.

따라서, 연관된 애플리케이션(110) 및/또는 운영체제(108)는 입력을 인식하여 이 실행의 결과를 전송할 수 있다. 이 입력은, 컴퓨팅 장치(104)에 대한 모바일 컴퓨팅 장치(2002)의 "탭(tap)"의 인식, 커맨드의 이용, 어느 한 장치에서의 제스처 등과 같은 각종 상이한 형태들을 취할 수 있다. 이에 응답하여, 이 실행의 결과(예를 들어, 수신된 입력들 및 연관된 애플리케이션, 렌더링된 스크린 등)는 근거리 통신들(near field communications)과 같은 적절한 기술들을 이용하여 장치들 사이에서 전송될 수 있다. 예시된 예에서, 실행의 결과의 이러한 전송은 유저가 다른 장치 상에서 상태 업데이트를 계속하고/거나 추후의 참조(이하에 더 설명되는 어드레스 또는 맵 등)를 위하여 모바일 장치에 데이터를 전송하게 해준다.

도 21의 예시적인 구현(2100)에서, 유저는 컴퓨팅 장치(104)와 상호작용하여 맵을 위한 방향들을 생성할 수 있다. 그 후, 본 예에서의 실행의 결과(예를 들어, 방향들)는 컴퓨팅 장치(104)로부터 모바일 컴퓨팅 장치(2002)로 전송될 수 있다. 이 예에서, 모바일 컴퓨팅 장치(200)의 유저는 확장된 표현의 디스플레이 위에 모바일 컴퓨팅 장치(200)를 위치시킴으로써 확장된 표현을 "그랩(grab)"할 수 있다.

이 근접성은 근거리 통신(NFC)을 통하는 것, 컴퓨팅 장치(104)의 디스플레이 장치의 센서-인-픽셀(sensor-in-pixel) 구성을 이용하는 것, 모바일 컴퓨팅 장치(2002)의 카메라 등과 같은 다양한 방법들로 검출될 수 있다. 그 후, 상기 실행의 결과는 모바일 컴퓨팅 장치(2002) 상의 대응 애플리케이션을 통하여 연속된 상호작용을 허용할 수 있다. 모바일 컴퓨팅 장치(2002)로부터 컴퓨팅 장치(104)의 확장된 표현으로의 전송과 같은 역동작도 수행될 수 있다. 이 방식으로, 유저는 효율적으로 복수의 상이한 컴퓨팅 장치들과의 심리스(seamless) 상호작용을 수행할 수 있다.

도 22는 장치들 간의 확장된 표현과 연관된 실행의 결과의 전송의 다른 예시적인 구현(2200)을 도시한다. 이 예에서, 제스처 또는 다른 입력이 검출되어 장치들 사이에서 실행의 결과를 전송한다. 이 예에서, 확장된 표현이 두 장치들 상에 부분적으로 디스플레이되어 이 전송을 나타내는 외관을 제공하도록 애니메이션이 이용된다. 전송을 나타내기 위하여 다른 애니메이션들도 고려된다.

도 23은 확장된 표현들이 활용되어 공유 네트워크 환경에 관한 콘텐츠의 액티비티 레벨들을 나타내는 예시적인 일 구현(2300)을 도시한다. 네트워크를 통해 원격으로 각종 상이한 유저들 간의 원격 상호작용 및 협력(collaboration)을 지원하도록 공유 네트워크 환경들이 웹 서비스에 의해 구현될 수 있다. 공유 네트워크 환경들의 예들은 문서들 및 프레젠테이션들과 같은 콘텐츠를 유저들이 편집하고 보는 것이 가능하도록 되어 있는 파일 호스팅 서비스들(file hosting services), 상태 업데이트들 및 이미지들을 공유하기 위한 소셜 네트워크 서비스들 등을 포함한다. 따라서, 공유 네트워크 환경과 연관된 콘텐츠는 그 콘텐츠와 연관된 액티비티들을 지원할 수 있다(예를 들어, 공유, 보기, "좋아함" 등).

이 예에서, 확장된 표현들(2302 및 2304)은 확장된 표현에 포함된 콘텐츠의 상대적 액티비티 레벨들(relative activity levels)을 표시하도록 구성된다. 예를 들어, 확장된 표현(2302)은 파일 호스팅 서비스를 통하여, 즉, "클라우드에서(in the cloud)" 이용 가능한 콘텐츠를 포함한다. 콘텐츠의 아이템들의 각각은, 공유 네트워크 환경, 예를 들어 파일 공유 서비스 내에서 콘텐츠의 각각의 아이템과 연관되는 액티비티의 양을 표시하는 강도 바(strength bar)로서 예시되는 표시를 포함한다.

아이콘들, 하이라이트, 컬러 코딩, 텍스쳐 등과 같은 임의의 적절하게 디스플레이된 표시가 이용되어 액티비티 레벨 및/또는 액티비티의 강도를 표시할 수 있다. 액티비티의 레벨 또는 강도는 액세스된 횟수, 콘텐츠의 편집, 얼마나 최근에 콘텐츠가 액세스되었는지 등에 기초할 수 있다.

또한, 콘텐츠의 아이템들은 서로에 대한 액티비티의 상대적 레벨들에 기초하여 확장된 표현(2302) 내에서 배열된다. 이 방식으로, 확장된 표현(2302)은 상호작용을 지원하고 유저에 대한 관심을 가질 가능성이 증가된 콘텐츠의 아이템들을 포함하는 포털로서 기능하여, 유저가 개시 스크린으로부터 "벗어나서 네비게이션"하는 것, 태스크바에서의 사용을 지원하는 것 등이 필요하지 않을 가능성을 더 지원할 수 있다.

확장된 표현(2304)은 소셜 네트워크 서비스로부터 수신한 통지들을 수반하는 콘텐츠를 포함한다. 이 경우에도, 콘텐츠의 액티비티 레벨들이 표현 내에서 표시되고 배열되며, 본 예에서는 상태 포스트들, "좋아함" 등이다. 뉴스 애플리케이션들에 대한 기사들 등과 같은 다른 예들도 고려된다. 확장된 표현 내에 디스플레이된 콘텐츠 및 연관된 레벨들은, 도 1과 관련하여 이전에 설명된 바와 같이 통지 시스템의 일부와 같은 다양한 방식들로 획득될 수 있다. 따라서, 본 예에서, 유저는 확장된 표현들을 이용하여 공유 네트워크 환경 내에 수반된 콘텐츠에 관하여 용이하게 "최신(up-to-date)"으로 유지될 수 있다. 이 액티비티 레벨 기술들은 이전에 설명된 시나리오들의 취지 및 범위를 벗어나지 않고 그들 중 어느 하나에 포함될 수 있는 것이 용이하게 자명해야 한다.

예시적인 프로시저들

이하의 설명은 이전에 설명된 시스템들 및 장치들을 이용하여 구현될 수 있는 확장 가능한 애플리케이션 표현 기술들을 설명한다. 프로시저들의 각각의 양태들은 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다. 프로시저들은 하나 이상의 장치들에 의해 수행되는 동작들을 특정하는 블록들의 세트로서 도시되지만 각각의 블록들에 의한 동작들의 수행을 위해 도시된 순서들에 한정되어야 하는 것은 아니다. 이하의 설명의 부분들에서, 예시적인 환경에 대한 참조가 이루어질 것이다.

도 24는 표현이 운영체제의 파일 계층의 루트 레벨에서 확장되는 예시적인 일 구현에서의 프로시저(2400)를 도시한다. 표현들은 컴퓨팅 장치의 운영체제의 의해 유지된 파일 계층의 루트 레벨에서의 애플리케이션들의 출력이며, 각각의 애플리케이션들의 실행을 론칭하도록 선택 가능하다(블록 2402). 예를 들어, 표현들은, 예를 들어 도 1의 통지 시스템을 활용하는 것을 통하여, 표현된 애플리케이션의 실행 없이 표현들 내에서 통지들을 출력하도록 구성되는 제 1 디스플레이 모드에서 디스플레이될 수 있다.

표현들 중 하나의 확장을 야기시키도록 구성된 입력의 운영체제에 의한 인식에 응답하여, 하나 이상의 다른 표현들과 함께 루트 레벨에 포함되도록 표현의 디스플레이가 확장되며, 표현의 확장된 디스플레이는 각각의 애플리케이션에 대한 하나 이상의 입력들을 받아들이도록 구성된다(블록 2404). 예를 들어, 유저는 운영체제(108)에 의해 인식되는 제스처를 취하여, 제 1 디스플레이 모드에서 디스플레이된 표현의 제 2 디스플레이 모드에서의 확장된 디스플레이로의 확장을 야기시킬 수 있다. 제 2 디스플레이 모드에서, 입력들이 수신되어 확장된 표현 내에 포함된 콘텐츠와 상호작용할 수 있다(예를 들어, 사진 선택, 텍스트 입력, 문서 인쇄 등)

표현들 중 하나의 확장을 야기시키도록 구성된 입력의 운영체제에 의한 인식에 응답하여, 하나 이상 다른 표현들과 함께 루트 레벨에 포함되도록 표현의 디스플레이의 크기가 확장되며, 확장된 디스플레이는 그리드 레이아웃을 유지하는 그리드 레이아웃 내의 루트 레벨에서의 표현들 중 하나 이상의 다른 표현들의 재배열을 야기시킨다(블록 2406). 이전의 예를 계속하여, 입력의 수신은 도 3에 도시된 바와 같이 표현의 확장 및 다른 표현들의 재배열을 야기시킬 수 있다.

표현들 중 하나의 확장을 야기시키도록 구성된 입력의 운영체제에 의한 인식에 응답하여, 하나 이상의 다른 표현들과 함께 루트 레벨에 포함되도록 표현의 디스플레이가 확장되며, 표현의 확장된 디스플레이는 공유 네트워크 환경에서 콘텐츠 및 콘텐츠를 수반하는 액티비티의 상대적 레벨을 나타내도록 구성된다(블록 2408). 도 23에 도시된 바와 같이, 공유 네트워크 환경 내에서의 액티비티의 상대적 레벨들은, 표시들(예를 들어, "히트 맵(heat map)", 강도 바들(strength bars) 등), 콘텐츠 자체의 배열의 순서 등을 통하여 포함될 수 있다.

확장된 표현이 태스크바에 포함되도록 야기시키도록 구성된 입력의 운영체제에 의한 인식에 응답하여, 확장된 표현은 태스크바의 일부로서의 디스플레이를 위해 포함된다(블록 2410). 예를 들어, 유저는 확장된 표현 상에서 "우측 클릭"하여 확장된 표현을 태스크바에 고정시키는(pin) 옵션을 선택할 수 있다. 다른 예에서, 유저는 루트 레벨로부터 확장된 표현을 선택하고 선택한 것을, 예를 들어, 드래그-앤-드롭 제스처를 통해서 또는 커서 제어 장치를 이용하여, 태스크바의 출력과 연관된 유저 인터페이스의 에지 쪽으로 드래그할 수 있다. 다양한 다른 예들도 고려된다.

도 25는 확장된 표현을 포함하는 태스크바가 디스플레이되는 예시적인 일 구현에서의 프로시저(2500)를 도시한다. 컴퓨팅 장치의 운영체제에 의하여 태스크바의 출력을 야기시키도록 구성되는 입력이 수신된다(블록 2502). 이것은 디스플레이 장치의 에지로부터의 "스와이프(swipe)", 커서 제어 장치의 "우측 클릭"의 이용, 디스플레이 장치의 에지 근방으로의 커서의 위치결정 등을 수반하는 베젤 제스처를 포함할 수 있다.

수신에 응답하여, 컴퓨팅 장치에 의해 유저 인터페이스 내의 태스크바의 디스플레이가 야기되며, 태스크바는 각각의 애플리케이션들의 실행을 론칭하도록 선택 가능한 애플리케이션들의 표현들을 포함하고, 각각의 애플리케이션에 대한 표현들 중 적어도 하나는 확장된 표현 내에서 디스플레이된 콘텐츠를 수반하는 하나 이상의 입력들을 받아들이도록 구성된 확장된 표현으로서 구성된다(블록 2504). 각종 상이한 입력들이 수신되어, 텍스트를 입력하는 것, 확장된 표현 내에 포함된 콘텐츠와 상호작용하는 것 등을 수행한다.

도 26은 확장된 표현 내에 포함된 콘텐츠가 애플리케이션 또는 장치에 송신되는 예시적인 일 구현에서의 프로시저(2600)를 도시한다. 애플리케이션들 또는 하드웨어 장치들의 표현들을 포함하는 유저 인터페이스가 컴퓨팅 장치에 의해 디스플레이된다(블록 2602). 도 18에 도시된 바와 같이, 예를 들어, 유저 인터페이스는 주변 장치들 또는 다른 컴퓨팅 장치들과 같은 장치들의 표현들을 포함할 수 있다. 또한, 유저 인터페이스는 제 1 디스플레이 모드(예를 들어, 타일) 또는 제 2 디스플레이 모드(예를 들어, 확장된 타일)를 포함할 수 있는 애플리케이션들의 표현들을 포함할 수 있다. 하나 이상의 구현들에서, 도 17에 도시된 바와 같이 제 3 디스플레이 모드(예를 들어, 이머시브 쉘 내의 풀스크린 모드)도 고려된다.

컴퓨팅 장치에 의해 유저 인터페이스 내에 태스크바가 디스플레이되며, 태스크바는 애플리케이션들의 실행을 론칭하도록 선택 가능한 애플리케이션들의 표현들을 포함하고, 각각의 애플리케이션에 대한 표현들 중 적어도 하나는 확장된 표현 내에서 디스플레이된 콘텐츠를 수반하는 하나 이상의 입력들을 받아들이도록 구성된 확장된 표현으로서 구성된다(블록 2604). 이전에 설명된 바와 같이 제스처들, 커맨드들 등과 같은 다양한 입력들에 응답하여 태스크가 출력될 수 있다.

확장된 표현 내의 콘텐츠의 표현들 중 특정한 하나의 선택 및 하드웨어 장치들 또는 애플리케이션의 표현들 중 하나의 선택의 수신에 응답하여, 확장된 표현으로부터 하드웨어 장치들 또는 애플리케이션들의 선택된 표현에 대응하는 하드웨어 장치 또는 애플리케이션으로 송신된다(블록 2606). 도 18에 도시된 바와 같이, 예를 들어, 유저는 포토 애플리케이션의 확장된 표현으로부터 콘텐츠(예를 들어, 사진)를 선택하고 그것을 다른 컴퓨팅 장치의 표현으로 드래그하여 상기 사진을 그 장치에 무선으로 송신할 수 있다. 도 19에 도시된 바와 같이, 유저는 확장된 표현으로부터 문서를 선택하고 문서를 출력할 장치를 선택할 수 있다. 이전에 설명된 바와 같이 다양한 다른 예들도 고려된다.

도 27은 확장된 표현과 연관된 애플리케이션의 실행의 결과가 컴퓨팅 장치들 간에 전송되는 예시적인 일 구현에서의 프로시저(2700)를 도시한다. 컴퓨팅 장치의 운영체제에 의해 유지된 파일 계층의 루트 레벨에서 각각의 애플리케이션들의 실행을 론칭하도록 선택 가능한 애플리케이션들의 표현들이 디스플레이되며, 상기 표현들 중 적어도 하나는 각각의 애플리케이션의 실행의 결과를 갖는 확장된 디스플레이를 갖는다(블록 2702). 확장된 표현은, 예를 들어, 유저로부터 수신된 입력들을 포함할 수 있으므로 상기 결과는 도 20에 도시된 바와 같은 입력들을 포함한다. 또한, 상기 결과는 발생한 처리를 포함할 수 있으므로 애플리케이션의 실행 상태를 수반하는 데이터(예를 들어, 도 21에 도시된 바와 같이 유저 입력에 응답하여 생성된 맵에서의 방향들)를 포함할 수 있다.

확장된 디스플레이를 갖는 적어도 하나의 표현과 연관되는 모바일 컴퓨팅 장치로부터의 입력의 수신에 응답하여, 각각의 애플리케이션의 실행의 결과는 모바일 컴퓨팅 장치로 전송된다(블록 2704). 이전의 예에 계속해서, 이러한 전송을 야기시키는 입력은, 컴퓨팅 장치(104) 또는 도 20과 관련하여 설명된 바와 같은 다양한 형태들을 취할 수 있는 다른 컴퓨팅 장치, 예를 들어 컴퓨팅 장치(2002)에 의해 수신될 수 있다. 이에 응답하여, 상기 결과(예를 들어, 입력들, 애플리케이션의 상태 및 구성 데이터 등)는 효율적이고 직관적인 방식으로 장치들 간에 전송될 수 있다.

도 28은 데스크탑 쉘을 위하여 확장된 표현이 구성되는 예시적인 일 구현에서의 프로시저(2800)를 도시한다. 컴퓨팅 장치의 운영체제에 의해 유지된 파일 계층의 루트 레벨에서의 애플리케이션들의 표현들과 함께 데스크탑 쉘의 데스크탑 쉘 표현이 출력되며, 애플리케이션들의 표현들은 각각의 상기 애플리케이션들의 실행을 론칭하도록 선택 가능하다(블록 2802). 이전에 설명된 바와 같이 제 1 디스플레이 모드에서 파일 시스템의 루트 레벨로 다른 애플리케이션들의 표현들과 함께 데스크탑 쉘의 표현이 포함될 수 있다.

데스크탑 쉘 표현의 확장을 야기시키도록 구성된 입력의 운영체제에 의한 인식에 응답하여, 애플리케이션들의 하나 이상의 다른 표현들과 함께 루트 레벨에 포함되도록 데스크탑 쉘 표현의 디스플레이가 확장되며, 상기 표현의 확장된 디스플레이는 데스크탑 쉘 내에서 실행 가능한 애플리케이션들을 설명하는 콘텐츠를 포함하도록 구성된다(블록 2804). 도 16에 도시된 바와 같이, 예를 들어, 상기 확장된 표현은, 예를 들어, 능동적으로, 중단 상태에서 등으로 데스크탑 쉘에서의 실행에 이용 가능한 애플리케이션들을 설명하는 콘텐츠를 포함한다. 표현들은, 예를 들어, 이머시브와 데스크탑 쉘 간의 전환을 자동적으로 야기시키기 위하여, 데스크탑 쉘 내에서 애플리케이션들을 론칭하도록 선택 가능하다.

따라서, 데스크탑 쉘의 확장된 표현은 포털로서 기능하여 운영체제(108)의 쉘들 간의 상호작용을 지원할 수 있다.

예시적인 시스템 및 장치

도 29는 일반적으로 2900에서 예시적인 시스템을 예시하며, 이 시스템은 여기에서 설명된 다양한 기술들을 구현할 수 있는 하나 이상의 컴퓨팅 시스템들 및/또는 장치들을 대표하는 예시적인 컴퓨팅 장치(2902)를 포함하며, 이는 확장된 표현(210)의 포함을 통해 예시된다. 컴퓨팅 장치(2902)는, 예를 들어, 서비스 제공자의 서버, 클라이언트와 연관된 장치(예를 들어, 클라이언트 장치), 온칩 시스템, 및/또는 임의의 다른 적절한 컴퓨팅 장치 또는 컴퓨팅 시스템일 수 있다.

예시적인 컴퓨팅 장치(2902)는 예시된 바와 같이 프로세싱 시스템(2904), 하나 이상의 컴퓨터 판독가능 매체(2906), 및 서로 통신적으로 연결되는 하나 이상의 I/O 인터페이스(2908)를 포함한다. 도시하지는 않지만, 컴퓨팅 장치(2902)는 각종 컴포넌트들을 서로 연결하는 시스템 버스 또는 다른 데이터 및 커맨드 전송 시스템을 더 포함할 수 있다. 시스템 버스는 각종 버스 아키텍처 중 어느 하나를 이용하는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 유니버설 시리얼 버스 및/또는 프로세서 또는 로컬 버스와 같은 상이한 버스 구조들 중 어느 하나 또는 조합을 포함할 수 있다. 제어 및 데이터 라인들과 같은 다양한 다른 예들도 고려된다.

프로세싱 시스템(2904)은 하드웨어를 이용하여 하나 이상의 동작들을 수행하는 기능을 대표한다. 따라서, 프로세싱 시스템(2904)은 프로세서들, 기능 블록들 등으로서 구성될 수 있는 하드웨어 구성요소(2910)를 포함하는 것으로서 예시된다. 이것은 하나 이상의 반도체들을 이용하여 형성된 애플리케이션 특정 집적회로(application specific integrated circuit) 또는 다른 로직 장치로서 하드웨어 내의 구현을 포함할 수 있다. 하드웨어 구성요소(2910)는 그들을 형성하는 재료 또는 그 내부에서 이용된 프로세싱 메커니즘들에 의해 제한되지 않는다. 예를 들어, 프로세서들은 반도체(들) 및/또는 트랜지스터들(예를 들어, 전자 IC(integrated circuits))로 구성될 수 있다. 그런 맥락에서, 프로세서 실행 가능 명령어들은 전자적으로 실행 가능한 명령어들일 수 있다.

컴퓨터 판독가능 저장 매체(2906)는 메모리/저장소(2912)를 포함하는 것으로 예시된다. 메모리/저장소(2912)는 하나 이상의 컴퓨터 판독가능 매체와 연관된 메모리/저장소 용량을 나타낸다. 메모리/저장소 컴포넌트(2912)는 휘발성 매체(RAM(random access memory)과 같은) 및/또는 비휘발성 매체(ROM(read only memory), 플래시 메모리, 광 디스크들, 자기 디스크들 등과 같은)를 포함할 수 있다. 메모리/저장소 컴포넌트(2912)는 고정형 매체(예를 들어, RAM, ROM, 고정형 하드 드라이브 등) 및 분리형 매체(예를 들어, 플래시 메모리, 분리형 하드 드라이브, 광 디스크 등)를 포함할 수 있다. 컴퓨터 판독가능 매체(2906)는 이하에 더 설명되는 바와 같이 다양한 다른 방법들로 구성될 수 있다.

입력/출력 인터페이스(들)(2908)는 유저가 컴퓨팅 장치(2902)에 커맨드들 및 정보를 입력하는 것을 가능하게 해주고, 또한 각종 입력/출력 장치들을 이용하여 정보가 유저 및/또는 다른 컴포넌트들 또는 장치들에 제공되도록 해주는 기능을 대표한다. 입력 장치들의 예들은 키보드, 커서 제어 장치(예를 들어, 마우스), 마이크로폰, 스캐너, 터치 기능(예를 들어, 물리적 접촉을 검출하도록 구성되는 용량성 또는 다른 센서들), 카메라(예를 들어, 적외선 주파수들과 같은 가시적 또는 비가시적 파장들을 이용하여 접촉을 수반하지 않는 제스처들로서 동작을 인식할 수 있음) 등을 포함한다. 출력 장치들의 예들은 디스플레이 장치(예를 들어, 모니터 또는 프로젝터), 스피커들, 프린터, 네트워크 카드, 촉각 응답(tactile-response) 장치 등을 포함한다. 따라서, 컴퓨팅 장치(2902)는 이하에 더 설명되는 바와 같이 다양한 방식들로 구성되어 유저 인터페이스를 지원할 수 있다.

소프트웨어, 하드웨어 구성요소들, 또는 프로그램 모듈들의 일반적인 맥락에서 다양한 기술들이 여기에서 설명될 수 있다. 일반적으로, 그러한 모듈들은 특정 태스크들을 수행하거나 특정 추상 데이터형들을 구현하는 루틴들, 프로그램들, 오브젝트들, 엘리먼트들, 컴포넌트들, 데이터 구조들 등을 포함한다. 여기에 사용된 바와 같은 용어들 "모듈", "기능", 및 "컴포넌트"는 일반적으로 소프트웨어, 펌웨어, 하드웨어 또는 그 조합을 나타낸다. 여기에 설명된 기술들의 특징들은 플랫폼 독립적(platform-independent)이며, 이것은 각종 프로세서들을 갖는 각종 상용 컴퓨팅 플랫폼들에서 기술들이 구현될 수 있는 것을 의미한다.

설명된 모듈들 및 기술들의 구현은 소정 형태의 컴퓨터 판독가능 매체에 저장되거나 또는 그것을 통해 전송될 수 있다. 컴퓨터 판독가능 매체는 컴퓨팅 장치(2902)에 의해 액세스될 수 있는 다양한 매체를 포함할 수 있다. 제한이 아닌, 예로써, 컴퓨터 판독가능 매체는 "컴퓨터 판독가능 저장 매체" 및 "컴퓨터 판독가능 신호 매체"를 포함할 수 있다.

"컴퓨터 판독가능 저장 매체"는 단순한 신호 송신, 반송파들 또는 신호들 그 자체와는 대조적으로 정보의 영구적 및/또는 비일시적(non-transitory) 저장을 가능하게 하는 매체 및/또는 장치들을 의미할 수 있다. 따라서, 컴퓨터 판독가능 저장 매체는 비신호 베어링 매체(non-signal bearing media)를 의미한다. 컴퓨터 판독가능 저장 매체는, 컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들, 로직 구성요소들/회로들 또는 다른 데이터와 같은 정보의 저장에 적합한 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체 및/또는 저장 장치들과 같은 하드웨어를 포함한다. 컴퓨터 판독가능 저장 매체의 예들은, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disks) 또는 다른 광 저장소, 하드 디스크들, 자기 카세트들, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 장치들 또는 다른 저장 장치, 유형(tangible) 매체, 또는 원하는 정보를 저장하는 데에 적합하고 컴퓨터에 의해 액세스될 수 있는 제조 물품을 포함할 수 있지만, 이들에 한정되는 것은 아니다.

"컴퓨터 판독가능 신호 매체"는, 예를 들어 네트워크를 통해, 컴퓨팅 장치(2902)의 하드웨어에 명령어들을 송신하도록 구성되는 신호 베어링 매체를 의미할 수 있다. 통상적으로, 신호 매체는, 반송파들, 데이터 신호들 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내에 컴퓨터 판독가능 명령어들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터를 구체화할 수 있다. 또한, 신호 매체는 임의의 정보 전달 매체를 포함한다. 용어 "변조된 데이터 신호"는 신호 내에 정보를 인코딩하는 방식으로 설정 또는 변경된 특징들 중 하나 이상을 갖는 신호를 의미한다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 연결(direct-wired) 접속과 같은 유선 매체, 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다.

이전에 설명된 바와 같이, 하드웨어 구성요소들(2910) 및 컴퓨터 판독가능 매체(2906)는, 하나 이상의 명령어들을 수행하는 것과 같이, 여기에 설명된 기술들의 적어도 일부의 양태들을 구현하기 위해 일부 실시예들에서 이용될 수 있는 하드웨어 형태로 구현된 모듈들, 프로그래머블 장치 로직 및/또는 고정 장치 로직을 대표한다. 하드웨어는 집적회로 또는 온칩 시스템, ASIC(application-specific integrated circuit), FPGA(field-programmable gate array), CPLD(complex programmable logic device), 및 실리콘 또는 다른 하드웨어 내의 다른 구현들의 컴포넌트들을 포함할 수 있다. 이와 관련하여, 하드웨어는, 실행을 위한 명령어들을 저장하는 데에 이용되는 하드웨어(예를 들어, 이전에 설명된 컴퓨터 판독가능 저장 매체)뿐만 아니라 명령어들에 의해 정의된 프로그램 태스크들 및/또는 하드웨어에 의해 구현된 로직을 수행하는 프로세싱 장치로서 동작할 수 있다.

여기에 설명된 다양한 기술들을 구현하기 위해 상기의 것들의 조합들이 이용될 수도 있다. 따라서, 소프트웨어, 하드웨어 또는 실행 가능 모듈들은 소정 형태의 컴퓨터 판독가능 저장 매체 상에서 및/또는 하나 이상의 하드웨어 구성요소들(2910)에 의해 구현된 하나 이상의 명령어들 및/또는 로직으로서 구현될 수 있다. 컴퓨팅 장치(2902)는 소프트웨어 및/또는 하드웨어 모듈들에 대응하는 특정 명령어들 및/또는 기능들을 구현하도록 구성될 수 있다. 따라서, 소프트웨어로서 컴퓨팅 장치(2902)에 의해 실행 가능한 모듈은, 예를 들어, 컴퓨터 판독가능 저장 매체 및/또는 프로세싱 시스템(2904)의 하드웨어 구성요소들(2910)을 이용하여, 적어도 부분적으로 하드웨어로 구현될 수 있다. 명령어들 및/또는 기능들은 여기에 설명된 기술들, 모듈들 및 예들을 구현하기 위해 하나 이상의 제조 물품들(예를 들어, 하나 이상의 컴퓨팅 장치들(2902) 및/또는 프로세싱 시스템들(2904))에 의해 실행 가능/동작 가능할 수 있다.

도 29에 더 예시되어 있는 바와 같이, 예시적인 시스템(2900)은, 애플리케이션들을 PC(personal computer), 텔레비젼 장치, 및/또는 모바일 장치 상에서 실행하는 경우 심리스 유저 경험(seamless user experience)을 위한 유비쿼터스 환경들(ubiquitous environments)을 가능하게 한다. 애플리케이션을 이용하는 것, 비디오 게임을 플레이하는 것, 비디오를 보는 것 등을 하면서 한 장치로부터 다음의 장치로의 전환시, 공통의 유저 경험을 위하여 모든 세 개의 환경들에 있어서 서비스들 및 애플리케이션들은 실질적으로 유사하게 실행한다.

예시적인 시스템(2900)에서, 중앙 컴퓨팅 장치를 통해 복수의 장치들이 상호접속된다. 중앙 컴퓨팅 장치는 복수의 장치들에 로컬이거나 복수의 장치들로부터 원격 위치될 수 있다. 일 실시예에서, 중앙 컴퓨팅 장치는 네트워크, 인터넷 또는 다른 데이터 통신 링크를 통해 복수의 장치들에 연결되는 하나 이상의 서버 컴퓨터들의 클라우드일 수 있다.

일 실시예에서, 이 상호접속 아키텍처는 복수의 장치들을 통해 기능이 전달되어 복수의 장치들의 사용자에게 공통의 심리스 경험을 제공하는 것을 가능하게 한다. 복수의 장치들의 각각은 상이한 물리적 요구사항들 및 성능들을 가질 수 있고, 중앙 컴퓨팅 장치는 상기 장치에 맞춤화되고 또한 모든 장치들에 공통인 상기 장치에의 경험의 전달을 가능하게 하는 플랫폼을 사용한다. 일 실시예에서, 타겟 장치들의 클래스(class)가 생성되고 경험들은 장치들의 포괄적인 클래스에 맞춤화된다. 장치들의 클래스는 장치들의 물리적 특징들, 사용의 유형들 또는 다른 공통의 특징들에 의해 정의될 수 있다.

각종 구현들에서, 컴퓨팅 장치(2902)는, 컴퓨터(2914), 모바일(2916), 및 텔레비전(2918) 용 등의 각종 상이한 구성들을 취할 수 있다. 이 구성들의 각각은, 일반적으로 상이한 구성물들(constructs) 및 성능들을 가질 수 있는 장치들을 포함하므로, 컴퓨팅 장치(2902)는 상이한 장치 클래스들 중 하나 이상에 따라 구성될 수 있다. 예를 들어, 컴퓨팅 장치(2902)는, 퍼스널 컴퓨터, 데스크탑 컴퓨터, 멀티 스크린 컴퓨터, 랩탑 컴퓨터, 노트북 등을 포함하는 장치의 컴퓨터(2914) 클래스로서 구현될 수 있다.

컴퓨팅 장치(2902)는, 모바일 전화, 휴대형 음악 플레이어, 휴대형 게이밍 장치, 태블릿 컴퓨터, 멀티 스크린 컴퓨터 등과 같은 모바일 장치들을 포함하는 장치의 모바일(2916) 클래스로서 구현될 수도 있다. 컴퓨팅 장치(2902)는 캐주얼 보기(casual viewing) 환경들에서 일반적으로 더 큰 스크린들을 갖거나 그들에 연결되는 장치들을 포함하는 장치의 텔레비젼(2918) 클래스로서 구현될 수도 있다. 이 장치들은 텔레비젼, 셋톱 박스들, 게이밍 콘솔들 등을 포함한다.

여기에서 설명된 기술들은 컴퓨팅 장치(2902)의 이러한 다양한 구성들에 의해 지원될 수 있고 여기에 설명된 기술들의 특정 예들로 한정되는 것은 아니다. 이 기능은, 이하에 설명되는 바와 같이 플랫폼(2922)을 경유하여 "클라우드"(2920)를 통하는 것과 같이, 분산된 시스템을 이용하여 전체 또는 부분적으로 구현될 수도 있다.

클라우드(2920)는 리소스들(2924)을 위한 플랫폼(2922)을 포함하고/거나 대표한다. 플랫폼(2922)은 클라우드(2920)의 하드웨어(예를 들어, 서버들) 및 소프트웨어 리소스들의 기저 기능(underlying functionality)을 추상화한다. 리소스들(2924)은 컴퓨팅 장치(2902)로부터 멀리 있는 서버들 상에서 컴퓨터 프로세싱이 실행되는 동안 이용될 수 있는 애플리케이션들 및/또는 데이터를 포함할 수 있다. 리소스들(2924)은 인터넷 및/또는 셀룰러 또는 Wi-Fi 네트워크와 같은 가입자 네트워크(subscriber network)를 통해 제공된 서비스들을 포함할 수도 있다.

플랫폼(2922)은 리소스들을 추상화하고 컴퓨팅 장치(2902)를 다른 컴퓨팅 장치들과 연결시키는 기능을 할 수 있다. 플랫폼(2922)은 리소스들의 추상 스케일링에 서브하여, 플랫폼(2922)을 통해 구현되는 리소스들(2924)에 대하여 접하게 되는 요구에 대한 스케일의 대응하는 레벨을 제공할 수도 있다. 따라서, 상호 접속된 장치 실시예에서, 여기에서 설명된 기능의 구현은 시스템(2900)에 걸쳐 분산될 수 있다. 예를 들어, 클라우드(2920)의 기능을 추상화하는 플랫폼(2922)을 통해서 뿐만 아니라 컴퓨팅 장치(2902) 상에서 부분적으로 기능이 구현될 수 있다.

결론

본 발명은 구조적인 특징들 및/또는 방법적인 동작들에 특정한 언어로 설명되었지만, 첨부된 청구범위에 한정된 발명은 반드시 설명된 특정한 특징들 또는 동작들에 한정되는 것은 아닌 것이 이해되어야 한다. 오히려, 특정한 특징들 및 동작들은 청구된 발명을 구현하는 예시적인 형태들로서 설명된다.

Claims (20)

  1. 컴퓨팅 장치에 의한 구현 방법에 있어서,
    상기 컴퓨팅 장치의 운영체제에 의해 유지된 파일 계층의 루트 레벨에서의 애플리케이션들의 표현들을 출력하는 단계로서, 상기 표현들은 각각의 상기 애플리케이션들의 실행을 론칭하도록 선택 가능한 것인, 상기 출력 단계; 및
    상기 표현들 중 하나의 확장을 야기시키도록 구성된 입력의 상기 운영체제에 의한 인식에 응답하여, 하나 이상의 다른 상기 표현들과 함께 상기 루트 레벨 내에 포함되도록 상기 표현의 디스플레이를 확장하는 단계로서, 상기 표현의 상기 확장된 디스플레이는 공유 네트워크 환경에서 콘텐츠 및 상기 콘텐츠를 수반하는 액티비티의 상대적 레벨을 표시하도록 구성되는 것인, 상기 확장 단계
    를 포함하는, 컴퓨팅 장치에 의한 구현 방법.
  2. 제 1 항에 있어서, 상기 공유 네트워크 환경은 소셜 네트워크로서 구성되는 것인, 컴퓨팅 장치에 의한 구현 방법.
  3. 제 2 항에 있어서, 상기 액티비티 레벨은, 상기 콘텐츠가 공유되는 횟수에 적어도 부분적으로 기초하는 것인, 컴퓨팅 장치에 의한 구현 방법.
  4. 제 1 항에 있어서, 상기 공유 네트워크 환경은 파일 호스팅 서비스로서 구성되는 것인, 컴퓨팅 장치에 의한 구현 방법.
  5. 제 4 항에 있어서, 상기 액티비티 레벨은, 상기 콘텐츠가 액세스되는 횟수에 적어도 부분적으로 기초하는 것인, 컴퓨팅 장치에 의한 구현 방법.
  6. 제 1 항에 있어서, 상기 콘텐츠는 상기 공유 네트워크 환경을 통하여 복수의 유저들에 의해 액세스 가능한 것인, 컴퓨팅 장치에 의한 구현 방법.
  7. 제 6 항에 있어서, 상기 콘텐츠는 상기 공유 네트워크 환경을 통하여 상기 복수의 유저들의 각각에 의해 편집 가능한 것인, 컴퓨팅 장치에 의한 구현 방법.
  8. 제 7 항에 있어서, 상기 액티비티 레벨은 상기 콘텐츠의 편집에 적어도 부분적으로 기초하는 것인, 컴퓨팅 장치에 의한 구현 방법.
  9. 제 1 항에 있어서, 상기 확장된 디스플레이에 포함된 콘텐츠는 유저에 의해 포함되도록 선택되는 것인, 컴퓨팅 장치에 의한 구현 방법.
  10. 제 1 항에 있어서, 상기 액티비티 레벨들을 기술하는 데이터가, 상기 공유 네트워크 환경을 구현하는 서비스로부터 네트워크를 통하여 상기 컴퓨팅 장치에 의해 수신되는 것인, 컴퓨팅 장치에 의한 구현 방법.
  11. 컴퓨팅 장치에 의한 구현 방법에 있어서,
    상기 컴퓨팅 장치의 운영체제에 의해 유지된 파일 계층의 루트 레벨에서의 애플리케이션들의 표현들 및 데스크탑 쉘의 데스크탑 쉘 표현을 출력하는 단계로서, 상기 애플리케이션들의 상기 표현들은 각각의 상기 애플리케이션들의 실행을 론칭하도록 선택 가능한 것인, 상기 출력 단계; 및
    상기 데스크탑 쉘 표현의 확장을 야기시키도록 구성된 입력의 상기 운영체제에 의한 인식에 응답하여, 상기 애플리케이션들의 하나 이상의 다른 상기 표현들과 함께 상기 루트 레벨 내에 포함되도록 상기 데스크탑 쉘 표현의 디스플레이를 확장하는 단계로서, 상기 표현의 상기 확장된 디스플레이는 상기 데스크탑 쉘 내에서 실행 가능한 애플리케이션들을 기술하는 콘텐츠를 포함하도록 구성되는 것인, 상기 확장 단계
    를 포함하는, 컴퓨팅 장치에 의한 구현 방법.
  12. 제 11 항에 있어서, 상기 파일 계층의 상기 루트 레벨은 이머시브 쉘 내에서 디스플레이되는 것인, 컴퓨팅 장치에 의한 구현 방법.
  13. 제 12 항에 있어서, 상기 데스크탑 쉘 내에서 실행 가능한 상기 애플리케이션들 중 하나 이상은 상기 이머시브 쉘 내에서 실행 가능하지 않은 것인, 컴퓨팅 장치에 의한 구현 방법.
  14. 제 11 항에 있어서, 상기 애플리케이션들의 표현들 및 상기 데스크탑 쉘 표현은 그리드 배열을 따르는 타일들로서 디스플레이되며, 상기 확장하는 단계는 상기 그리드 배열을 따르도록 상기 타일들 중 하나 이상의 재배열을 야기시키는 것인, 컴퓨팅 장치에 의한 구현 방법.
  15. 제 11 항에 있어서, 상기 확장된 데스크탑 쉘 표현이 태스크바에 포함되도록 야기시키도록 구성된 입력의 상기 운영체제의 의한 인식에 응답하여, 상기 콘텐츠가 상기 태스크바에서 보일 수 있도록 상기 태스크바의 일부로서의 디스플레이를 위하여 상기 확장된 데스크탑 쉘 표현을 포함하는 단계를 더 포함하는, 컴퓨팅 장치에 의한 구현 방법.
  16. 시스템에 있어서,
    적어도 부분적으로 하드웨어로 구현되고, 복수의 디스플레이 모드들을 지원하도록 구성되는 컴퓨팅 장치의 운영체제를 구현하도록 구성된 하나 이상의 모듈들을 포함하며, 상기 복수의 디스플레이 모드들은,
    상기 운영체제에 의해 유지된 파일 계층의 루트 레벨에서의 애플리케이션들의 표현들 및 데스크탑 쉘의 데스크탑 쉘 표현을 포함하는 제 1의 상기 디스플레이 모드로서, 상기 애플리케이션들의 표현들은 각각의 상기 애플리케이션들의 실행을 론칭하도록 선택 가능한 것인, 상기 제 1의 상기 디스플레이 모드;
    상기 루트 레벨에서의 디스플레이를 위하여 상기 데스크탑 쉘 표현이 확장 가능한 제 2의 상기 디스플레이 모드로서, 상기 데스크탑 쉘 표현의 상기 확장된 디스플레이는 상기 데스크탑 쉘 내에서 실행 가능한 애플리케이션들을 기술하는 콘텐츠를 포함하는 것인, 상기 제 2의 상기 디스플레이 모드; 및
    상기 제 1의 상기 디스플레이 모드 또는 상기 제 2의 상기 디스플레이 모드에서의 상기 데스크탑 쉘 표현의 선택을 통해 진입되어 상기 데스크탑 쉘의 풀스크린 보기를 야기시킬 수 있는 제 3의 상기 디스플레이 모드
    를 포함하는, 시스템.
  17. 제 16 항에 있어서, 상기 루트 레벨에서의 디스플레이를 위하여 상기 애플리케이션들의 상기 표현들 중 적어도 하나는 확장 가능하며, 상기 적어도 하나의 표현의 상기 확장된 디스플레이는 각각의 상기 애플리케이션에 대한 하나 이상의 입력들을 받아들이도록 구성되는 것인, 시스템.
  18. 제 16 항에 있어서, 상기 제 3의 상기 디스플레이 모드는 상기 운영체제의 이머시브 쉘을 이용하여 구현되는 것인, 시스템.
  19. 제 16 항에 있어서, 상기 애플리케이션들의 상기 표현들 및 상기 데스크탑 쉘 표현은 그리드 배열을 따르는 타일들로서 디스플레이되며, 상기 확장하는 단계는 상기 그리드 배열을 따르도록 상기 타일들 중 하나 이상의 재배열을 야기시키는 것인, 시스템.
  20. 제 16 항에 있어서, 상기 제 2의 상기 디스플레이 모드는 유저 입력에 응답하여 태스크바 내에 상기 확장된 데스크탑 쉘 표현을 포함하도록 구성되는 것인, 시스템.
KR1020167031010A 2014-04-04 2014-04-04 확장 가능 애플리케이션 표현, 액티비티 레벨들, 및 데스크탑 표현 KR20160143755A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/074825 WO2015149363A1 (en) 2014-04-04 2014-04-04 Expandable application representation,activity levels,and desktop representation

Publications (1)

Publication Number Publication Date
KR20160143755A true KR20160143755A (ko) 2016-12-14

Family

ID=54209758

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167031010A KR20160143755A (ko) 2014-04-04 2014-04-04 확장 가능 애플리케이션 표현, 액티비티 레벨들, 및 데스크탑 표현

Country Status (5)

Country Link
US (2) US20150286351A1 (ko)
EP (1) EP3126942A4 (ko)
KR (1) KR20160143755A (ko)
CN (2) CN110347472A (ko)
WO (1) WO2015149363A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD760757S1 (en) * 2013-12-30 2016-07-05 Samsung Electronics Co., Ltd Display screen or portion thereof with graphical user interface
KR20160141838A (ko) 2014-04-04 2016-12-09 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 확장가능한 애플리케이션 표시
EP3129847A4 (en) 2014-04-10 2017-04-19 Microsoft Technology Licensing, LLC Slider cover for computing device
WO2015154273A1 (en) 2014-04-10 2015-10-15 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
USD753165S1 (en) * 2014-06-03 2016-04-05 Microsoft Corporation Display screen with graphical user interface
USD761831S1 (en) * 2014-06-03 2016-07-19 Microsoft Corporation Display screen with graphical user interface
USD760259S1 (en) * 2014-06-03 2016-06-28 Microsoft Corporation Display screen with graphical user interface
USD755218S1 (en) * 2014-06-23 2016-05-03 Microsoft Corporation Display screen with graphical user interface
CN106662891B (zh) 2014-10-30 2019-10-11 微软技术许可有限责任公司 多配置输入设备
USD769308S1 (en) * 2015-01-20 2016-10-18 Microsoft Corporation Display screen with animated graphical user interface
USD771692S1 (en) * 2015-01-20 2016-11-15 Microsoft Corporation Display screen with animated graphical user interface
USD770520S1 (en) * 2015-01-20 2016-11-01 Microsoft Corporation Display screen with animated graphical user interface
USD761302S1 (en) * 2015-01-20 2016-07-12 Microsoft Corporation Display screen with animated graphical user interface
USD759706S1 (en) * 2015-01-20 2016-06-21 Microsoft Corporation Display screen with animated graphical user interface
USD774070S1 (en) * 2015-06-12 2016-12-13 Microsoft Corporation Display screen with transitional graphical user interface
USD774069S1 (en) * 2015-06-12 2016-12-13 Microsoft Corporation Display screen with graphical user interface
USD768205S1 (en) * 2015-08-26 2016-10-04 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
USD793450S1 (en) * 2015-08-28 2017-08-01 S-Printing Solution Co., Ltd. Display screen or portion thereof with graphical user interface
USD792910S1 (en) * 2015-08-28 2017-07-25 S-Printing Solution Co., Ltd. Display screen or portion thereof with graphical user interface

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070157105A1 (en) * 2006-01-04 2007-07-05 Stephen Owens Network user database for a sidebar
US7823076B2 (en) * 2007-07-13 2010-10-26 Adobe Systems Incorporated Simplified user interface navigation
US8812988B2 (en) * 2009-06-26 2014-08-19 T-Mobile Usa, Inc. Dynamic icons associated with remote content
US8893033B2 (en) * 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US8924885B2 (en) * 2011-05-27 2014-12-30 Microsoft Corporation Desktop as immersive application
US9843665B2 (en) * 2011-05-27 2017-12-12 Microsoft Technology Licensing, Llc Display of immersive and desktop shells
US10417018B2 (en) * 2011-05-27 2019-09-17 Microsoft Technology Licensing, Llc Navigation of immersive and desktop shells
US20130159900A1 (en) * 2011-12-20 2013-06-20 Nokia Corporation Method, apparatus and computer program product for graphically enhancing the user interface of a device
US9207837B2 (en) * 2011-12-20 2015-12-08 Nokia Technologies Oy Method, apparatus and computer program product for providing multiple levels of interaction with a program
CN103197837A (zh) * 2013-03-18 2013-07-10 西比(湖州)通信科技有限公司 一种用于智能终端的桌面操作系统
WO2014157894A1 (en) * 2013-03-27 2014-10-02 Samsung Electronics Co., Ltd. Display apparatus displaying user interface and method of providing the user interface
CN103475784B (zh) * 2013-09-18 2016-03-30 广东欧珀移动通信有限公司 一种手机应用程序窗口模式显示和操作方法

Also Published As

Publication number Publication date
US20150286351A1 (en) 2015-10-08
EP3126942A1 (en) 2017-02-08
CN105359074A (zh) 2016-02-24
EP3126942A4 (en) 2017-03-22
US20170131858A1 (en) 2017-05-11
CN110347472A (zh) 2019-10-18
WO2015149363A1 (en) 2015-10-08

Similar Documents

Publication Publication Date Title
JP5974068B2 (ja) 端末及びその表示方法
TWI536242B (zh) 經由瓦來呈現應用程式的變化
EP2697705B1 (en) Three-dimensional icons for organizing, invoking, and using applications
US8266550B1 (en) Parallax panning of mobile device desktop
KR102037734B1 (ko) 컨텐츠 아이템과 관련된 애니메이션 시퀀스
TWI604370B (zh) 用於以圖磚顯示電子訊息的方法、電腦可讀取媒體及系統
US9400585B2 (en) Display management for native user experiences
AU2012231990B2 (en) Method and apparatus of managing items on clipboard of portable terminal
US20140237378A1 (en) Systems and method for implementing multiple personas on mobile technology platforms
US20130212529A1 (en) User interface for touch and swipe navigation
US9049261B2 (en) Prioritized management and presentation of notifications
KR20110074426A (ko) 터치 기반의 입력 인터페이스를 가지는 터치 디바이스의 어플리케이션 운용 방법 및 장치
KR101962502B1 (ko) 전력 효율적인 애플리케이션 통지 시스템
US8055444B2 (en) Content display and navigation interface
JP5933589B2 (ja) コンテキストに残りながら行われる共有のための拡張可能なシステム・アクション
US9448694B2 (en) Graphical user interface for navigating applications
JP2011516936A (ja) モバイル装置イベントの通知
KR20140039575A (ko) 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
JP2015527628A (ja) 異なる機器の間での画像及びコメントの共有
CN101344836B (zh) 简化的用户界面导航
KR20150026162A (ko) 전자 장치의 컨텐츠 공유 방법 및 장치
US20120054778A1 (en) Using Expanded Tiles to Access Personal Content
US20130111579A1 (en) Electronic device mode, associated apparatus and methods
KR20140105735A (ko) 확장형 통신 서비스를 위한 동적인 최소화된 내비게이션 바
US10387025B2 (en) Multi-mode user interface

Legal Events

Date Code Title Description
A201 Request for examination
WITB Written withdrawal of application