CN101675425B - 实况伴随窗口 - Google Patents

实况伴随窗口 Download PDF

Info

Publication number
CN101675425B
CN101675425B CN2008800144161A CN200880014416A CN101675425B CN 101675425 B CN101675425 B CN 101675425B CN 2008800144161 A CN2008800144161 A CN 2008800144161A CN 200880014416 A CN200880014416 A CN 200880014416A CN 101675425 B CN101675425 B CN 101675425B
Authority
CN
China
Prior art keywords
application program
user interface
data
data content
window
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN2008800144161A
Other languages
English (en)
Other versions
CN101675425A (zh
Inventor
G·P·莫罗米萨托
N·B·埃德尔斯坦
A·G·班达拉卡
R·E·奥奇
A·V·帕拉斯尼斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN101675425A publication Critical patent/CN101675425A/zh
Application granted granted Critical
Publication of CN101675425B publication Critical patent/CN101675425B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)

Abstract

一种装置和方法经由对应于主应用程序所提供的主窗口的伴随窗口来提供伴随应用程序,该伴随窗口提供描述主窗口中的数据的信息或元数据。主应用程序和伴随应用程序可以是分开的应用程序,以使主应用程序不知道伴随应用程序。伴随应用程序可以挂钩到主应用程序(例如经由应用程序编程接口),并可以监视主应用程序活动和/或数据。基于主应用程序中的数据或事件的标识,伴随应用程序可获得表征主应用程序所提供的数据或提供该数据的上下文的信息。主窗口和伴随窗口可以彼此附连,主窗口提供主应用程序数据而伴随窗口提供描述该主应用程序数据的数据。

Description

实况伴随窗口
背景
计算机用户在其计算机上可以访问大量数据。例如,用户可能希望获得或访问存储在计算机上的数据文件。在这种情况下,用户可以导航通过一系列视图来获得所需数据文件的文件夹。虽然用户可以选择所需数据文件文件夹,但对数据文件的选择仅仅向用户提供文件本身。类似地,用户可以通过web浏览器导航到感兴趣的特定网页。对该网页中的诸如超链接、应用程序等元素的选择通常导致导航到另一站点或启动所选择的应用程序。
然而,用户通常需要诸如涉及应用程序中的所选元素的附加上下文信息等附加信息。在许多情况下,与所选元素相关联的这种附加信息对用户而言是不可通过选择该元素来获得的。因此,存在以方便且高效的方式提供所选数据或应用程序元素的附加上下文信息的需求。
概述
下面提供本发明的简要概述以便向读者提供基本的理解。本概述不是本发明的详尽概观,并且既不标识本发明的关键/重要元素,也不描绘本发明的范围。其唯一目的是以简化形式提供在此公开一些概念作为稍后提供的更详细描述的序言。
在一个示例中,主应用程序生成包含该主应用程序所生成的数据的主窗口。可以与主应用程序分开的伴随应用程序生成可描述主应用程序中的数据或事件或提供该数据或事件的上下文的附加信息(例如元数据)。在一个示例中,伴随应用程序从分开的位置获得该附加信息而非创建该附加信息。伴随应用程序可进一步生成可附连到主窗口的伴随窗口。伴随窗口可包含该附加信息。
在另一示例中,主应用程序不注意或基本上不注意伴随应用程序,以使在伴随应用程序中所执行的动作或事件实质上不影响主应用程序。在该示例中,伴随应用程序可挂钩到主应用程序以监视主应用程序内的数据,而主应用程序不监视伴随应用程序。主应用程序和伴随应用程序中的每一个都可以生成并显示用户界面,如包含相应信息的窗口。这些窗口可以彼此附连。
许多附带特征将随着参考下面的详细描述并结合附图进行理解而得到更好的认识。
附图描述
根据附图阅读以下详细描述,将更好地理解本发明,在附图中:
图1示出用于提供实况伴随窗口的合适的计算系统环境的示例。
图2示出用于生成涉及感兴趣的数据的信息或元数据的系统的一个示例。
图3是示出标识和/或获得元数据的一个示例的流程图。
图4是示出生成数据内容并提供描述或表征该数据的附加信息的示例的流程图。
图5是示出用于提供数据的方法的另一示例的流程图。
图6是示出连接主应用程序和伴随应用程序以提供数据的示例的流程图。
图7是示出附连和/或修改与不同的应用程序相关联的窗口的示例的流程图。
图8示出作为主应用程序的用户界面的窗口的示例。
图9示出具有附连的伴随窗口的主窗口的示例。
图10示出具有元数据的伴随窗口的示例。
图11示出伴随窗口的另一示例。
图12示出具有重新格式化的伴随窗口的主窗口的示例。
图13示出具有折叠伴随窗口的主窗口的另一示例。
附图中使用相同的附图标记来指代相同的部分。
详细描述
下面结合附图提供的详细描述旨在作为对本示例的描述,而非表示用于解释或利用本示例的唯一形式。本说明书阐述本示例的功能以及用于构造和操作本示例的步骤序列。然而,相同或等效的功能与序列可由不同的示例来实现。此处所描述的系统是作为示例而非限制来提供的。本领域的技术人员将理解,本示例适于在各种不同类型的计算系统中应用。
图1示出其中计算子系统可以提供处理功能的合适的计算系统环境或体系结构的示例。该计算系统环境只是合适的计算环境的一个示例,并且不旨在对本发明的使用范围或功能提出任何限制。也不应将该计算环境解释为对示例性操作环境中示出的任一组件或其组合有任何依赖性或要求。
此处所公开的方法或系统可与多种其它通用或专用计算系统环境或配置一起操作。适合在本发明中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型机、大型计算机、包含上述系统或设备中的任一个的分布式计算环境等。
本方法或系统可在诸如程序模块等由计算机执行的计算机可执行指令的通用上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本方法或系统也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于包括存储器存储设备在内的本地和远程计算机存储介质中。
参考图1,用于实现本方法或系统的示例性系统包括计算机102形式的通用计算设备。计算机102的组件可以包括,但不限于,处理单元104、系统存储器106和将包括系统存储器在内的各种系统组件耦合至处理单元104的系统总线108。系统总线108可以是几种类型的总线结构中的任何一种,包括存储器总线或存储控制器、外围总线、以及使用各种总线体系结构中的任一种的局部总线。作为示例而非局限,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。
计算机102通常包括各种计算机可读介质。计算机可读介质可以是能由计算机102访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非局限,计算机可读介质可以包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机102访问的任何其它介质。上述中任一组合也应包括在计算机可读存储介质的范围之内。
系统存储器106包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)110和随机存取存储器(RAM)112。基本输入/输出系统114(BIOS)包括如在启动时帮助在计算机102内的元件之间传输信息的基本例程,它通常储存在ROM 110中。RAM 112通常包含处理单元104可以立即访问和/或目前正在其上操作的数据和/或程序模块。作为示例而非限制,图1示出操作系统132、应用程序134、其它程序模块136和程序数据138。
计算机102也可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器116,从可移动、非易失性磁盘120中读取或向其写入的磁盘驱动器118,以及从诸如CD ROM或其它光学介质等可移动、非易失性光盘124中读取或向其写入的光盘驱动器122。可以在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器116通常由诸如接口126等不可移动存储器接口连接至系统总线108,而磁盘驱动器118和光盘驱动器122通常通过诸如接口128或130等可移动存储器接口连接至系统总线108。
以上讨论并在图1中示出的驱动器及其相关联的计算机存储介质为计算机102提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。在图1中,例如,硬盘驱动器116被示为存储操作系统132、应用程序134、其它程序模块136和程序数据138。注意,这些组件可以与附加操作系统、应用程序、其它程序模块和程序数据相同或不同,例如是这些元素的任一个的不同副本。用户可以通过输入设备,诸如键盘140和定点设备142(通常指的是鼠标、跟踪球或触摸垫)向计算机102输入命令和信息。其它输入设备(未示出)可包括话筒、操纵杆、游戏手柄、笔、扫描仪等等。这些和其它输入设备通常由耦合至系统总线的用户输入接口144连接至处理单元104,但也可以由其它接口和总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器158或其它类型的显示设备也经由接口,诸如视频接口或图形显示接口156连接至系统总线108。除监视器158之外,计算机也可包括其它外围输出设备,如扬声器(未示出)和打印机(未示出),它们通过输出外围接口(未示出)连接。
计算机102可使用至一个或多个远程计算机,如远程计算机的逻辑连接在网络化环境中操作。远程计算机可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,并且一般包括上面相对于计算机102所述的许多或全部元件。图1中所示的逻辑连接包括局域网(LAN)148和广域网(WAN)150,但也可以包括其它网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机102通过网络接口或适配器152连接至LAN 148。当在WAN联网环境中使用时,计算机102通常包括调制解调器154或用于通过诸如因特网等WAN 150建立通信的其它装置。调制解调器154可以是内置或外置的,它可以经由用户输入接口144或其它适当的机制连接至系统总线108。在网络化环境中,相对于计算机102所描述的程序模块或其部分可被储存在远程存储器存储设备中。作为示例而非限制,远程应用程序可以驻留在存储器设备上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其它手段。
描述了用于在诸如窗口等第一用户界面中向用户提供数据并在第二用户界面中提供对应于该数据的附加信息的方法和系统。第一用户界面和其中所包含的数据可由第一应用程序生成,而第二用户界面中的附加信息可由第二应用程序生成。第一应用程序和第二应用程序可以是不同的应用程序。例如,第二应用程序可以是与第一应用程序分开且不同的应用程序,并且还可以包含在执行时使得第二应用程序挂钩到第一应用程序的可执行代码。在该示例中,第二应用程序可以监视第一应用程序和第一应用程序所提供的数据。第二应用程序对第一应用程序的监视可以用各种方式来实现。例如,监视可包括观察和/或跟踪第一应用程序中所采取或执行的动作或事件。第二应用程序还可以观察或跟踪因第一应用程序中发生的一个或多个动作或事件所产生的、第一应用程序所生成的数据。基于第二应用程序对第一应用程序中的事件、动作、或所生成的数据的观察,第二应用程序可以生成、获得、标识、或检索附加数据。该附加数据可以是与第一应用程序所生成的数据有区别或不同的数据,并可以描述或表征第一应用程序中的事件、动作、或所生成的数据。在另一示例中,第二应用程序可以经由第三应用程序来观察第一应用程序中的事件、动作、或所生成的数据。例如,第二应用程序可以监视可观察第一应用程序中的事件、动作、或所生成的数据的监视应用程序(例如文件系统观察器)。第二应用程序可以从该监视应用程序接收更新或事件信息。在该示例中,第二应用程序不直接监视或观察第一应用程序。相反,监视应用程序可以观察第一应用程序处的事件并生成涉及这些事件的信息。该信息对第二应用程序是可用的。
因此,基于第一应用程序或第一应用程序所提供的数据,第二应用程序可以获得附加数据或信息,并可以在第二用户界面中提供该附加数据或信息。在一个示例中,第二应用程序可以从第一和/或第二应用程序在其中运行的操作环境来获得该信息。从操作环境获得的信息可进一步基于来自第一应用程序的任何动作或事件来选择。在另一示例中,第二应用程序从操作环境所获得的数据描述或表征第一应用程序所提供的数据,但与第一应用程序所提供的数据不同。因此,在该示例中,第一应用程序所提供的数据不包含第二应用程序所提供的信息,并且第二应用程序所提供的信息不包括第一应用程序所提供的数据。
在另一示例中,第二应用程序挂钩到第一应用程序并监视第一应用程序,然而,第一应用程序独立于第二应用程序来运作。在第一应用程序独立于第二应用程序来运作的情况下,第二应用程序所执行的动作或事件实质上不影响第一应用程序处所采取的动作或事件。因此,例如,如果第二应用程序执行了命令并且第一应用程序独立于第二应用程序来运作或操作,则第一应用程序实质上如同第二应用程序处的命令未被执行那样来以相同的方式来执行各个动作或其它功能。换言之,第一应用程序独立于第二应用程序来运作指的是其中第一应用程序的活动实质上不受第二应用程序处所执行的任何活动的影响的情况。同样,如果第一应用程序独立于第二应用程序来操作,则移除第二应用程序不对第一应用程序造成实质影响。
另选地或另外地,在第二应用程序监视第一应用程序时,第一应用程序可以不注意或基本上不注意第二应用程序。在一个示例中,第一应用程序不注意或基本上不注意第二应用程序,指的是其中第一应用程序不知道或基本上不知道第二应用程序的状态。通过不知道第二应用程序,第一应用程序就如同第二应用程序不存在和/或不在执行或操作那样来执行任何功能。在其中第一应用程序不注意或基本上不注意第二应用程序的情况下,第二应用程序可被整体移除并且移除第二应用程序对第一应用程序的任何方面的影响是最小的或不存在的。在另一示例中,第一应用程序不注意第二应用程序,但包含从第二应用程序接收到的指令。
同样,在该示例中,第二应用程序可以监视第一应用程序,来提供其中第二应用程序知道第一应用程序所执行的活动和/或事件并且还可以知道第一应用程序所生成和/或所输出或显示的数据的情况。同时,第一应用程序基本上不注意第二应用程序,使得第一应用程序可能基本上不知道第二应用程序所提供的任何信息或第二应用程序处所执行的动作/事件。
另选地或另外地,第二应用程序可以观察或监视第一应用程序,但不可控制或以其它方式修改第一应用程序。在该示例中,第二应用程序可以监视第一应用程序所生成的信息,但不改变所生成的信息。第二应用程序可以基于从第一应用程序观察到的生成信息来生成附加信息并将所生成的附加信息提供给用户。然而,在该示例中,第二应用程序不控制、修改、或以其它方式影响第一应用程序所生成的信息。同样,第一应用程序不可以控制第二应用程序所生成的附加信息。另外,第一应用程序还可能基本上不注意第二应用程序,使得第一应用程序基本上不知道第二应用程序所生成的附加信息。在该示例中,第一应用程序所执行的活动和功能不受第二应用程序的存在、缺失、或操作的影响。
在又一示例中,第二应用程序经由应用程序编程接口挂钩到第一应用程序。第一应用程序可以包含诸如应用程序编程接口(API)等接口,第二应用程序可以通过该接口访问第一应用程序。例如,第二应用程序可以执行来经由API(或通过任何其它手段)访问第一应用程序以获得关于第一应用程序的一方面的特性的信息,诸如但不限于第一应用程序所生成或输出的数据、第一应用程序的状态、或第一应用程序的上下文。
图2示出用于生成涉及感兴趣的数据的信息或元数据的系统的一个示例。该系统可包括可以接收诸如用户输入等任何类型的输入的输入205。例如,用户可以经由输入205向该系统输入命令,以用于执行动作或事件或选择信息。在一个示例中,可以在显示设备上显示选择列表并且用户可以从该显示中选择一个项或选择。
处理器204可以经由输入205接收输入命令并可以相应地处理数据。在一个示例中,该系统包括用于执行主应用程序的主应用程序模块202。主应用程序可以是用于提供数据或信息的任何数量的各类型应用程序。例如,主应用程序可包括用于提供文件夹、动作项、日历信息、电子邮件信息等的显示的应用程序。主应用程序可以提供任何相关信息。主应用程序模块202可以执行以生成相关信息,并可以进一步提供用于提供该相关信息的用户界面。处理器204可以指示主应用程序模块202来提供相关信息和用户界面。另外,来自主应用程序模块202的信息可进一步从处理器204转发到数据模块206以进行格式化、调整等,并可进一步经由输出207来输出。
该系统还可包括用于获得并提供附加信息的伴随应用程序模块203。伴随应用程序模块203所提供的附加信息可以基于主应用程序模块202所生成的信息来选择。另外,该附加信息可以位于任何数量的数据源或可从任何数量的数据源获得。例如,伴随应用程序模块203可以从操作环境201中定位并获得信息。
伴随应用程序模块203还可以经由数据模块206和输出207来将附加信息包括在数据输出中。该附加信息可包含与主应用程序模块202所生成的信息相关的任何类型的信息。例如,主应用程序模块202可以生成包括存储在计算设备上的文件夹或文件列表的数据。用户可以经由输入205来输入对所需文件夹或文件的选择,该选择可进一步有处理器204来处理。基于该选择输入,处理器204可以控制主应用程序模块202来选择所需选择。例如,主应用程序模块202选择用户所选择的所需文件夹或文件。
伴随应用程序模块203可以执行以监视主应用程序模块202。在该示例中,伴随应用程序模块203挂钩到应用程序,以使该伴随应用程序监视在主应用程序模块202处所执行的活动和/或事件。伴随应用程序可以监视主应用程序中感兴趣的任何元素或组件。例如,伴随应用程序可以监视应用程序进程所生成的文件,或可以监视与该应用程序进程本身分开的组件或事件。另外,伴随应用程序模块203还可以监视主应用程序模块202所生成的数据。在这种情况下,主应用程序模块202选择所需文件夹。伴随应用程序模块203可以检测主应用程序模块202的选择,并可以进一步获得诸如涉及所需文件夹的元数据等附加信息。伴随应用程序模块203可以用任何数量的方式来获得附加信息或元数据。例如,伴随应用程序模块203可以从操作环境201获得所需信息,并可以将所获得的所需信息提供给处理器204和/或数据模块206。该所需信息可以经由输出207来输出。
另选地或另外地,主应用程序模块202可不注意伴随应用程序模块202,以使主应用程序模块202处所执行的动作或所生成的数据不受在伴随应用程序模块203处所执行的活动或动作的影响。相反,伴随应用程序模块203监视主应用程序模块202处的活动和/或所生成的数据。因此,在该示例中,伴随应用程序模块203知道(或不会不注意)主应用程序模块202。
图3是示出标识和/或获得元数据的一个示例的流程图。可以在设备上显示包括感兴趣的任何相关信息的数据。该数据可以进一步在用户界面内显示。例如,可以在显示设备上显示对应于应用程序的窗口。该窗口可以包含诸如计算系统上包含的文件夹、包含任何数量或类型的元素(例如超链接、其它应用程序、图形图像等)的网页、联系人列表、日历信息、约会、图像、文件列表等信息。
可以接收选择(步骤301),如从设备上所显示的数据中选择一个所显示的组分。该选择可对应于对所显示的文件夹、超链接、联系人、或任何类型的相关信息的选择,并可包括第一窗口中的任何动作。例如,该动作可包括将光标或鼠标移动到第一应用程序窗口的特定部分而不实际选择或激活鼠标。
可以确定对应于所显示的数据的元数据的存在或可用性(步骤302)。如果没有元数据可用(步骤302的“否”分支),则该过程结束(步骤305),否则,接收(步骤303)并显示(步骤304)相关元数据。在该示例中,元数据包括描述、表征其它数据,或提供其它数据的上下文的任何信息。因此,该元数据包括描述第一应用程序所生成或提供的任何数据或第一应用程序中采取或执行的任何动作的信息。
例如,第一应用程序可以执行以提供要被选择的元素的选择列表。接收对来自元素列表的这些选择中的一个的选择(步骤301)。元数据(即,描述其它数据的各方面的信息)可由第二应用程序来标识。可以与第一应用程序不同、分开、和/或区别的第二应用程序可以执行以监视、观察、或跟踪第一应用程序和/或第一应用程序所生成或提供的数据。第二应用程序可以确定对应于从来自第一应用程序的元素列表中所选择的元素的元数据是否可用。在一个示例中,在第一应用程序和/或第二应用程序在其中执行的操作环境中标识和定位元数据。该操作环境可包括任何计算设备、操作系统、外围设备、远程设备等。第二应用程序可以获得元数据(步骤303)并可以进一步显示该元数据(步骤304)。
第二应用程序可以进一步显示该元数据,以在分开的用户界面中描述、表征第一应用程序所生成和显示的数据,或提供该数据的上下文。例如,第二应用程序是与第一应用程序分开、不同、和区别的应用程序,其中第一应用程序和第二应用程序中的每一个都生成用户界面。第二应用程序可包含其执行使得第二应用程序挂钩到第一应用程序的可执行代码。在第二应用程序挂钩到第一应用程序后,第二应用程序可以与第一应用程序合作来提供用户界面。在该示例中,第二应用程序监视第一应用程序的动作,但第一应用程序不监视第二应用程序的动作。例如,第一应用程序可以不注意第二应用程序,使得第一应用程序不知道第二应用程序所执行的动作和/或事件。
因此,在该示例中,第一应用程序生成数据和用于提供所生成的数据的用户界面。与第一应用程序不同、区别、和分开的第二应用程序可以挂钩到第一应用程序,并可以监视第一应用程序中所执行的动作或事件。同样,第二应用程序可以观察或跟踪第一应用程序所生成的数据。基于第一应用程序所生成且由第二应用程序所观察/跟踪的数据,第二应用程序可以定位和/或获得与第一应用程序所生成的数据相关联的元数据。该元数据可包括描述、表征第一应用程序所生成的数据,或提供该数据的上下文的任何信息。
另外,第二应用程序可以生成与第一应用程序所生成的第一用户界面分开和区别的用户界面。第二应用程序也可以提供元数据(即,描述第一应用程序所生成的和/或第一应用程序在第一应用程序用户界面中所提供的数据的数据)。第二应用程序可以在该第二应用程序所生成的用户界面中提供该元数据。
同样,第一应用程序所生成的用户界面可以连接或附连到第二应用程序所生成的用户界面。如以下更详细地描述的,第一应用程序所生成的用户界面和第二应用程序所生成的用户界面可以彼此相邻或附连到彼此上。同样,各用户界面可以是不重叠的,以使各用户界面中的任一个的一部分都不遮挡另一用户界面的任何部分。这些用户界面可以彼此相邻并连接或附连到彼此上。另外,如以下更详细地描述的,对各用户界面中的任一个的修改可以对作为单个单元的这两个用户界面来执行。
图4是示出生成数据内容并提供描述或表征该数据的附加信息的示例的流程图。在该示例中,主应用程序和伴随应用程序生成或获得数据内容。在步骤401,伴随应用程序执行。伴随应用程序的执行可以包括例如监视主应用程序(步骤402),如检测在主应用程序中所发生的动作或事件。同样,伴随应用程序的执行可包括伴随应用程序检测主应用程序所生成或提供的数据(步骤403)。
在另一示例中,伴随应用程序监视主应用程序,但不更改或修改主应用程序。例如,与主应用程序相关联的可执行代码相对于伴随应用程序的存在或活动保持不改变。在又一示例中,主应用程序不注意伴随应用程序。例如,主应用程序可以在伴随应用程序不存在或不活动的情况下以预定方式运作,并且可以在伴随应用程序存在或活动的情况下以同一预定方式运作。
如果伴随应用程序检测到主应用程序中的数据(步骤403的“是”分支),则伴随应用程序可以获得对应于在主应用程序中所检测到的数据的元数据。伴随应用程序可以从任何数量的源获得该元数据。例如,伴随应用程序可以从主应用程序和/或伴随应用程序在其中运行的操作环境中定位和/或获得该元数据。
伴随应用程序可以进一步基于对来自主应用程序的所检测到的数据的检测来生成数据内容(步骤405)。来自伴随应用程序的数据内容可以进一步输出给用户或可以在需要时存储。伴随应用程序所生成的数据内容可包括基于从操作环境获得的元数据的信息。例如,该数据内容可包括与从主应用程序所检测到的数据的至少一部分相关的主题、人、对象、实体等的列表。
图5是示出用于提供数据的方法的另一示例的流程图。在该示例中,主应用程序执行以生成感兴趣的数据(步骤501)。从主应用程序生成的感兴趣的数据可包括任何数据,诸如例如所存储的文件夹、联系人信息、日历或电子邮件信息、诸如超链接等web相关信息、等等。同样,可以执行可与主应用程序分开且区别的伴随应用程序来生成附加数据(步骤502)。该附加数据可包括例如元数据,该元数据描述、表征主应用程序所生成的数据的状态、内容、或对该数据的选择,或提供这些状态、内容、或选择的上下文。
主应用程序和伴随应用程序可各自生成诸如窗口等用户界面(步骤503)。在该示例中,主应用程序和伴随应用程序各自生成分开且区别的窗口,其中伴随应用程序窗口(“伴随窗口”)被附连到主应用程序窗口(“主窗口”)(步骤504)。可将伴随窗口附连到主窗口,以使应用于伴随窗口或主窗口中的任一个的动作或修改都使得该动作或修改应用于这两个窗口。例如,如果主窗口在显示器上最大化大小,则主窗口和伴随窗口各自在比例上进行修改以使主窗口和伴随窗口的比例尺寸基本上保持一样,而主窗口和伴随窗口的组合最大化到其中显示主窗口和伴随窗口(或这两个窗口的组合)的显示区域的大小。
另外,可以在主窗口中显示或输出主应用程序所生成的数据,而可以在伴随窗口中显示或输出伴随应用程序所获得或生成的元数据(步骤505)。主应用程序所生成的数据可基本上与伴随应用程序所获得或生成的元数据不同。因此,在该示例中,主应用程序所生成的数据可不包含伴随应用程序所获得或生成的任何元数据,且伴随应用程序所获得或生成的元数据可不包含主应用程序所生成的任何数据。
图6是示出连接主应用程序和伴随应用程序以提供数据的示例的流程图。在该示例中,主应用程序执行以生成诸如窗口等用户界面(步骤601)。该用户界面可以显示在显示设备上。同样,伴随应用程序也可以执行(步骤602)以生成对应的伴随用户界面。伴随应用程序可进一步挂钩到主应用程序(步骤603)。例如,主应用程序可包含应用程序编程接口(API)并且伴随应用程序可以访问主应用程序的该API以挂钩到主应用程序。伴随应用程序可进一步监视主应用程序,而主应用程序可不注意伴随应用程序。另外地或另选地,主应用程序可以独立于伴随应用程序来运作,以使主应用程序的运作不受伴随应用程序的运作的影响。
伴随应用程序可进一步生成涉及主应用程序所生成的数据的附加信息。例如,伴随应用程序可以检测主应用程序所生成和/或提供的数据,并且基于所检测到的数据,伴随应用程序可以(例如从操作环境)定位和/或获得附加信息。该附加信息可包括描述从主应用程序检测到的数据或提供该数据的上下文的元数据。该附加信息(例如元数据)可以输出给用户。例如,可以显示附加信息(步骤605)。
图7是示出附连和/或修改与不同的应用程序相关联的窗口的示例的流程图。在步骤701,将主应用程序窗口附连到伴随应用程序窗口。在该示例中,伴随窗口被附连到主窗口,以形成包括伴随窗口和主窗口两者的组合窗口。伴随窗口可以与主窗口相邻,可以附连到主窗口,且可以与主窗口共享一个面。例如,主窗口可具有左侧、右侧、顶侧、和底侧。伴随窗口也可具有左侧、右侧、顶侧、和底侧。伴随窗口可以与主窗口相邻并连接到主窗口,以使伴随窗口的左侧与主窗口的右侧接触。同样,在该示例中,主窗口和伴随窗口是接触但不重叠的。在主窗口和伴随窗口不重叠时,主窗口不被伴随窗口遮挡。同样,伴随窗口不被主窗口遮挡。注意,以上描述仅仅是一个示例,并且伴随窗口的任一侧可以与主窗口的任一侧相连以附连到组合窗口中。
在步骤702,显示组合窗口。同样,组合窗口可以作为单个单元来更改或修改,以使对组合窗口的组分中的一个的修改可应用于该组合窗口的其它组分。例如,组合窗口可包括附连到伴随窗口的主窗口。用户可以将主窗口从显示器上的第一位置移动到显示器上的第二位置。在该示例中,对组合窗口的主窗口进行移动导致伴随窗口的跟随移动。在主窗口和伴随窗口移动或以其它方式前后被更改或修改时,主窗口和伴随窗口以基本上类似的方式来移动、更改、或修改。因此,在其中主窗口和伴随窗口前后被修改的组合窗口中,主窗口和伴随窗口是在单个单元处操作或修改的,在此过程中改变按比例应用于主窗口和伴随窗口两者。
在步骤703,在主应用程序窗口处接收输入。例如,用户可以从主应用程序窗口上提供的选择菜单中进行选择。该选择可包括任何数量或类型的元素。例如,该选择可以是可包含计算系统上所存储的数据文件的所选文件夹。该选择还可以是对网站、联系人列表上的联系人、“待做”列表上的项、日历上的约会等的选择。任何选择都可以在主应用程序窗口中提供并可被选择。
在步骤704,伴随应用程序可以检测主应用程序中的输入或选择。例如,用户可以从主应用程序所生成或获得的元素列表中选择元素。伴随应用程序可以检测该用户选择,并基于该选择,伴随应用程序可以定位和/或标识与主应用程序中的所选项相关联的附加信息,如元数据。例如,该选择可包括数据文件的文件夹。伴随应用程序可以将该选择标识为数据文件的文件夹,并可以进一步定位与该文件夹相关联的信息。在一个示例中,伴随应用程序在操作环境中定位涉及该文件夹的附加信息。所标识或定位的附加信息可以不由主应用程序访问或提供。同样,主应用程序可以不知道伴随应用程序处执行的动作或事件(例如,定位附加信息)。如此,主应用程序可以不注意伴随应用程序。在该示例中,伴随应用程序所获得或定位的数据内容可包括与所选文件夹相关联的附加信息。例如,具有对该文件夹的访问权限的用户的身份可以由伴随应用程序来获得,并可进一步在对应于伴随应用程序的用户界面(例如伴随窗口)中提供或输出。伴随应用程序可以类似地获得并提供描述来自主应用程序的数据(例如文件夹)或提供该数据的上下文的任何附加信息。
在另一示例中,可以修改伴随应用程序在伴随窗口中所提供的附加信息。例如,该信息可以随涉及主应用程序中所选数据的情况改变而实时地更新。同样,主应用程序可以不注意或不知道对伴随窗口所提供的附加数据的上下文中的所选数据的改变。在该示例中,伴随应用程序经由API挂钩到主应用程序以提供包含描述主应用程序窗口中的所选数据或以其它方式提供该数据的上下文的附加信息的伴随窗口。同样,伴随窗口中所提供的附加数据可以基于对主应用程序中的数据的改变来更新,而主应用程序可以不注意或不知道伴随应用程序的存在或活动。在又一示例中,主应用程序可以不注意或不知道对主应用程序中的数据的改变。
图8示出作为主应用程序的用户界面的窗口的示例。在该示例中,主应用程序可包括资源管理器,然而,可以使用能够提供用户界面的任何主应用程序。例如,主应用程序可以是浏览器、文字处理文档、电子表格文档等。在图8所示的示例中,窗口801包含对应于计算系统上所存储的数据的文件夹的各个图标。例如,主应用程序的窗口801中提供的一个数据文件夹是包含“Pictures(图片)”802的文件夹。
图9示出具有附连的伴随窗口902的图8的主窗口801的示例。在该示例中,主应用程序生成数据和主窗口801。主应用程序在主窗口801中输出或显示所生成的数据。如图9所示,主应用程序所生成的数据包括题为“Pictures”901的文件夹。文件夹901显示在主窗口801内。
同样,伴随窗口902可由伴随应用程序来生成。主应用程序可以与伴随应用程序分开和区别,并可以独立于伴随应用程序或伴随窗口902来生成主窗口801和主窗口801中所提供的数据。例如,主应用程序可以不注意或基本上不注意伴随应用程序,以便以相同或基本上相同的状态来维护主应用程序中所执行的动作或事件的状态和主窗口801中所提供或显示的数据,而不管伴随应用程序或伴随窗口902的状态。
在图9所示的示例中,伴随应用程序生成伴随窗口902。同样,伴随窗口902被附连或连接到主窗口801,并且提供与主应用程序所生成并在主窗口801中提供的数据的至少一部分相关联的信息。在该示例中,选择主窗口801中的“Pictures”文件夹901。伴随应用程序可以挂钩到主应用程序,并监视主应用程序和检测对文件夹901的选择。基于对Pictures文件夹901的选择,伴随应用程序获得描述所选文件夹901的附加数据。例如,伴随应用程序可以从操作环境中定位或接收该附加数据。
同样如图9所示,伴随应用程序可在伴随窗口902中显示可包括描述主窗口801中的所选数据(例如“Pictures”文件夹901)的元数据的附加数据。如上所示,伴随窗口902可以附连或连接到主窗口801,以使对主窗口901的操纵或修改可以按比例地应用于伴随窗口902。例如,调整主窗口801的大小、最小化或最大化主窗口801都可以在伴随窗口902中产生等效或按比例的修改。因此,在该示例中,可以对主窗口801和伴随窗口902进行前后修改、移动等。
伴随窗口9002可包含诸如元数据等任何相关信息,该元数据描述、表征主窗口801中所提供的数据的状态、内容、或对该数据的选择,或提供这些状态、内容、或选择的上下文。图10示出伴随窗口和其中所包含的元数据的示例。在该示例中,伴随窗口1001包含主窗口中的所选数据的名称或其它标识符。在这种情况下,所选数据是图9的主窗口801中显示的“Pictures”文件夹901。伴随窗口1001可附连或连接到主窗口801,以使伴随窗口1001的一个面与主窗口的一面邻接。在该示例中,伴随窗口和主窗口被附连但不重叠。
在图10所示的伴随窗口的示例中,伴随窗口1001可进一步包括成员名或标识符。在该示例中,所标识的成员名可对应于可以访问来共享特定数据的个人。在该示例中,共享对“Pictures”文件夹901的访问的成员可以在伴随窗口中列出。
另外地或另选地,伴随窗口可包括能够访问或被授权访问特定数据的设备列表。例如,用户可具有多个设备(例如,家庭计算机和工作计算机)。可以在伴随窗口中列出可以访问指定数据的多个设备中的任一个。伴随窗口中可包括涉及主窗口中的所选数据的任何附加信息。
图11示出伴随窗口的另一示例。在该示例中,伴随窗口1101包含共享对所选数据的访问的成员列表,所选数据来自主应用程序。主应用程序还可不知道伴随应用程序,以使主应用程序以基本上类似的方式来运作,而不管伴随应用程序做什么或甚至不管伴随应用程序是否存在、活动、或操作。
另外,可以用各种形式来提供伴随窗口。例如,伴随窗口可被更改成不同的大小以向显示器上的其它所显示的组分(如主窗口)提供附加空间。图12示出图9的示例,其中伴随窗口1201大小减小,在该减小的伴随窗口内各元素被显示为图标。图13示出图9的示例,其中伴随窗口大小被进一步减小使得伴随窗口1301被折叠。折叠伴随窗口1301可进一步提供伴随窗口1301的状态的指示,例如通过更改折叠伴随窗口1301的颜色、图案、阴影、色调等。图12或图13的经更改的伴随窗口(1201、1301)可进一步恢复回标准大小和显示。例如,对图12的伴随窗口1201中的图标的选择可以将伴随窗口和主窗口返回到原始比例。
可以理解,本说明书的各方面可以采取多种形式和实施例。此处所示的各实施例旨在例示而非限制本说明书,可以理解,可以做出变型而不背离本发明的精神和范围。虽然示出并描述了各说明性实施例,但上述公开意指各种各样的修改、改变和替换,且在一些情况下可以采用某些特征而不对应地使用其它特征。因此,可以理解,所附权利要求书旨在广义地并以与本发明的范围相一致的方式来解释。

Claims (18)

1.一种用于提供用户界面的方法,包括:
显示包含对应于操作环境中的第一应用程序的第一数据内容的第一用户界面,所述第一应用程序控制所述第一数据内容;以及
显示包含对应于第二应用程序的第二数据内容的第二用户界面,所述第二应用程序访问所述操作环境以生成所述第二数据内容,其中所述第二用户界面是由所述第二应用程序生成的并附连到所述第一用户界面,其中所述第一数据内容和所述第二数据内容是不同的,并且所述第二数据内容描述或表征所述第一应用程序内的事件、动作或生成的数据。
2.如权利要求1所述的方法,其特征在于,所述第二应用程序监视所述第一应用程序。
3.如权利要求2所述的方法,其特征在于,所述第一应用程序独立于所述第二应用程序来操作。
4.如权利要求2所述的方法,其特征在于,所述用户界面是窗口。
5.如权利要求2所述的方法,其特征在于,所述第二应用程序不修改所述第一应用程序。
6.如权利要求5所述的方法,其特征在于,所述第二应用程序包含第一可执行代码,所述第二应用程序经由该第一可执行代码挂钩到所述第一应用程序。
7.如权利要求1所述的方法,其特征在于,还包括以下步骤:
在所述第一应用程序处接收输入事件;
经由所述第二应用程序检测所述输入事件;
所述第二应用程序基于所述第一应用程序处的所述输入事件在所述第二用户界面中生成所述第二数据内容。 
8.如权利要求1所述的方法,其特征在于,所述第一应用程序包括应用程序接口,并且其中所述第二应用程序经由该应用程序接口访问所述第一应用程序。
9.如权利要求8所述的方法,其特征在于,包括以下步骤:所述第二应用程序经由所述第一应用程序的应用程序接口来确定所述第一数据内容的相关联的特性。
10.如权利要求9所述的方法,其特征在于,所述第二应用程序基于所述第一数据内容的相关联的特性来生成所述第二数据内容。
11.如权利要求10所述的方法,其特征在于,所述相关联的特性包括所述第一数据内容的至少一部分的状态、上下文、或对其的选择中的至少一个。
12.一种用于提供用户界面的方法,包括:
第一应用程序显示第一用户界面;
第二应用程序生成第二用户界面;
生成包括附连到所述第一用户界面的所述第二用户界面的组合用户界面;
显示所述组合用户界面;
其中所述第一应用程序生成的并且显示在所述第一用户界面内的第一数据内容与所述第二应用程序生成的并且显示在所述第二用户界面内的第二数据内容是不同的,并且所述第二数据内容描述或表征所述第一应用程序内的事件、动作或生成的数据。
13.如权利要求12所述的方法,其特征在于,所述组合用户界面包括所述第一用户界面与所述第二用户界面相邻。
14.如权利要求13所述的方法,其特征在于,所述组合用户界面中的所述第一用户界面和所述第二用户界面是不重叠的。 
15.如权利要求12所述的方法,其特征在于,还包括:
在所述第一应用程序处接收输入命令;
响应于所述输入命令来修改所述组合用户界面。
16.如权利要求15所述的方法,其特征在于,修改包括前后修改所述第一用户界面和所述第二用户界面。
17.一种用于提供上下文数据的方法,包括:
在操作环境中执行第一应用程序;
响应于执行所述第一应用程序来生成第一用户界面,所述第一用户界面包含与所述第一应用程序相关联的第一数据内容;
执行第二应用程序以生成第二用户界面,所述第二应用程序从所述操作环境中获得与所述第一数据内容相关联的数据并基于从所述操作环境所获得的数据来生成第二数据内容,所述第二数据内容与所述第一数据内容不同,并且所述第二数据内容描述或表征所述第一应用程序内的事件、动作或生成的数据;
显示包含与所述第二用户界面相邻并附连到其上的所述第一用户界面的组合用户界面。
18.如权利要求17所述的方法,其特征在于,所述第二应用程序挂钩到所述第一应用程序,并且所述第一应用程序不被所述第二应用程序修改。 
CN2008800144161A 2007-05-04 2008-05-01 实况伴随窗口 Active CN101675425B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/744,782 2007-05-04
US11/744,782 US8677270B2 (en) 2007-05-04 2007-05-04 Live companion user interface
PCT/US2008/062240 WO2008137559A1 (en) 2007-05-04 2008-05-01 Live companion window

Publications (2)

Publication Number Publication Date
CN101675425A CN101675425A (zh) 2010-03-17
CN101675425B true CN101675425B (zh) 2013-03-27

Family

ID=39940474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800144161A Active CN101675425B (zh) 2007-05-04 2008-05-01 实况伴随窗口

Country Status (5)

Country Link
US (2) US8677270B2 (zh)
EP (1) EP2143017A4 (zh)
JP (1) JP2010527478A (zh)
CN (1) CN101675425B (zh)
WO (1) WO2008137559A1 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677270B2 (en) 2007-05-04 2014-03-18 Microsoft Corporation Live companion user interface
US8954507B2 (en) * 2007-06-22 2015-02-10 Microsoft Corporation Gathering and using awareness information
US20090112870A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Management of distributed storage
US8286199B1 (en) * 2008-08-22 2012-10-09 SmartVault Corporation Automated method for creating a graphical user interface for a document management system that is visually integrated with an application having limited native GUI-integration capabilities
US9389877B2 (en) 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
US9348633B2 (en) 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9372711B2 (en) 2009-07-20 2016-06-21 Google Technology Holdings LLC System and method for initiating a multi-environment operating system
US9367331B2 (en) 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US20120290913A1 (en) * 2009-12-14 2012-11-15 Yosef Benraz Computerized tool, system and method for remote access to a computer program
CN101883184B (zh) * 2010-06-23 2014-12-17 中兴通讯股份有限公司 在移动终端上控制应用程序显示的方法和移动终端
US20120030627A1 (en) * 2010-07-30 2012-02-02 Nokia Corporation Execution and display of applications
US9811528B2 (en) 2010-12-09 2017-11-07 Yosef Benraz Systems and methods for providing continuing access to a remote computer program
US10606564B2 (en) * 2010-12-27 2020-03-31 Microsoft Technology Licensing, Llc Companion window experience
US9424052B2 (en) * 2011-03-21 2016-08-23 Amazon Technologies, Inc. Remotely emulating computing devices
US20120278747A1 (en) * 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US9345061B1 (en) 2011-06-29 2016-05-17 Amazon Technologies, Inc. Remote access to mobile communication devices
US20130293573A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US9342325B2 (en) 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device
KR20150081073A (ko) * 2014-01-03 2015-07-13 삼성전자주식회사 글랜스 정보를 제공하는 방법, 저장 매체 및 전자 장치
USD774546S1 (en) * 2014-12-30 2016-12-20 Microsoft Corporation Display screen with icon
US20160344677A1 (en) 2015-05-22 2016-11-24 Microsoft Technology Licensing, Llc Unified messaging platform for providing interactive semantic objects
US10360287B2 (en) 2015-05-22 2019-07-23 Microsoft Technology Licensing, Llc Unified messaging platform and interface for providing user callouts
US11212326B2 (en) 2016-10-31 2021-12-28 Microsoft Technology Licensing, Llc Enhanced techniques for joining communication sessions
JP7076451B2 (ja) 2016-12-21 2022-05-27 ウィックス.コム リミテッド. アクション可能なウィジェットカード
US11256392B2 (en) 2019-11-01 2022-02-22 Microsoft Technology Licensing, Llc Unified interfaces for paired user computing devices
US11546391B2 (en) 2019-11-01 2023-01-03 Microsoft Technology Licensing, Llc Teleconferencing interfaces and controls for paired user computing devices
US11304246B2 (en) 2019-11-01 2022-04-12 Microsoft Technology Licensing, Llc Proximity-based pairing and operation of user-specific companion devices
US11599364B2 (en) 2021-02-23 2023-03-07 Dell Products L.P. System and method for provide persistent companion software in an information handling system
US20220398056A1 (en) * 2021-06-14 2022-12-15 Microsoft Technology Licensing, Llc Companion devices as productivity tools

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1231738A (zh) * 1996-09-27 1999-10-13 霍尼韦尔公司 控制多窗口计算机环境中的显示的呈现方法

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0678812A1 (en) 1994-04-20 1995-10-25 Microsoft Corporation Replication verification
US5978567A (en) 1994-07-27 1999-11-02 Instant Video Technologies Inc. System for distribution of interactive multimedia and linear programs by enabling program webs which include control scripts to define presentation by client transceiver
US5724556A (en) 1995-04-14 1998-03-03 Oracle Corporation Method and apparatus for defining and configuring modules of data objects and programs in a distributed computer system
JP3400193B2 (ja) 1995-07-31 2003-04-28 富士通株式会社 ウィンドウ関係の識別アイコン付木構造一覧表示方法及び装置
US5987506A (en) 1996-11-22 1999-11-16 Mangosoft Corporation Remote access and geographically distributed computers in a globally addressable storage environment
US6029171A (en) 1997-02-10 2000-02-22 Actioneer, Inc. Method and apparatus for group action processing between users of a collaboration system
US6028602A (en) 1997-05-30 2000-02-22 Telefonaktiebolaget Lm Ericsson Method for managing contents of a hierarchical data model
US7260610B2 (en) 1998-02-10 2007-08-21 Gateway Inc. Convergence events notification system
US6446077B2 (en) 1998-09-21 2002-09-03 Microsoft Corporation Inherited information propagator for objects
WO2000020966A1 (fr) 1998-10-02 2000-04-13 Fujitsu Limited Dispositif de cooperation objets
US6728713B1 (en) 1999-03-30 2004-04-27 Tivo, Inc. Distributed database management system
US6401104B1 (en) 1999-07-03 2002-06-04 Starfish Software, Inc. System and methods for synchronizing datasets using cooperation among multiple synchronization engines
JP2001101190A (ja) 1999-07-29 2001-04-13 Jisedai Joho Hoso System Kenkyusho:Kk 受信装置および受信方法
US6694336B1 (en) 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
JP4491902B2 (ja) 2000-04-04 2010-06-30 ソニー株式会社 摺動型グラフックウィンドウを用いたメディアコンテンツとのインターラクティブシステム
US6760721B1 (en) 2000-04-14 2004-07-06 Realnetworks, Inc. System and method of managing metadata data
US6760828B1 (en) 2000-06-27 2004-07-06 Emc Corporation Method and apparatus for using logical volume identifiers for tracking or identifying logical volume stored in the storage system
WO2002059773A1 (en) 2000-12-04 2002-08-01 Thinkshare Corp. Modular distributed mobile data applications
US6954934B2 (en) 2001-03-15 2005-10-11 Intel Corporation Management of links to data embedded in blocks of data
US7472396B2 (en) 2001-05-18 2008-12-30 Qualcomm Incorporated Extensible event notification mechanism
US7409423B2 (en) 2001-06-28 2008-08-05 Horvitz Eric J Methods for and applications of learning and inferring the periods of time until people are available or unavailable for different forms of communication, collaboration, and information access
US7207008B1 (en) 2001-09-12 2007-04-17 Bellsouth Intellectual Property Corp. Method, system, apparatus, and computer-readable medium for interactive notification of events
US7117505B2 (en) 2001-11-29 2006-10-03 Veritas Operating Corporation Methods, systems, and apparatus to interface with storage objects
US20030225753A1 (en) 2001-12-18 2003-12-04 Becomm Corporation Method and system for attribute management in a namespace
US7146573B2 (en) * 2002-01-28 2006-12-05 International Business Machines Corporation Automatic window representation adjustment
US6922757B2 (en) 2002-02-15 2005-07-26 Exanet Inc. Flexible and adaptive read and write storage system architecture
US6954543B2 (en) 2002-02-28 2005-10-11 Ipac Acquisition Subsidiary I, Llc Automated discovery, assignment, and submission of image metadata to a network-based photosharing service
AU2003228416A1 (en) 2002-04-02 2003-10-20 Collabo-Technology, Inc. Method and apparatus for synchronous project collaboration
US7191217B2 (en) 2002-04-10 2007-03-13 Nippon Telegraph And Telephone Corporation Distributed server-based collaborative computing
US20030217098A1 (en) 2002-05-15 2003-11-20 Microsoft Corporation Method and system for supporting the communication of presence information regarding one or more telephony devices
US20030220966A1 (en) 2002-05-24 2003-11-27 International Business Machines Corporation System and method for dynamic content dependent conflict resolution
EP1593045A4 (en) 2003-02-10 2007-08-08 Raindance Comm Inc METHOD AND APPARATUS TO ENSURE EQUAL CONTROL IN A MULTIMEDIA COLLABORATION SESSION
US7743022B2 (en) 2003-02-28 2010-06-22 Microsoft Corporation Method and system for synchronizing data shared among peer computing devices
US7823077B2 (en) 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7904323B2 (en) 2003-06-23 2011-03-08 Intel Corporation Multi-team immersive integrated collaboration workspace
US7512884B2 (en) 2003-06-25 2009-03-31 Microsoft Corporation System and method for switching of media presentation
US7111229B2 (en) * 2003-06-25 2006-09-19 Yahoo! Inc. System and method for providing a webpage
US20050039139A1 (en) * 2003-08-12 2005-02-17 Solance Technologies, Inc. Linked two-paned user interface for selecting and administering objects within a computer system
JP4504643B2 (ja) 2003-08-22 2010-07-14 日本放送協会 デジタル放送受信装置及びコンテンツ再生方法
US20050086384A1 (en) 2003-09-04 2005-04-21 Johannes Ernst System and method for replicating, integrating and synchronizing distributed information
US7734690B2 (en) 2003-09-05 2010-06-08 Microsoft Corporation Method and apparatus for providing attributes of a collaboration system in an operating system folder-based file system
US20050114790A1 (en) * 2003-11-24 2005-05-26 Christopher Dunbar User interface
US8250150B2 (en) 2004-01-26 2012-08-21 Forte Internet Software, Inc. Methods and apparatus for identifying and facilitating a social interaction structure over a data packet network
US20050203935A1 (en) 2004-03-11 2005-09-15 International Business Machines Corporation Clipboard content and document metadata collection
SE528570C2 (sv) * 2004-04-08 2006-12-19 Abb Research Ltd Metod, anordning och system för att upprätta en trådlös förbindelse mellan en bärbar datoranordning med en första applikation till andra anordningar med hjälp av en andra applikation
US7434173B2 (en) * 2004-08-30 2008-10-07 Microsoft Corporation Scrolling web pages using direct interaction
US7788144B2 (en) 2004-09-01 2010-08-31 Microsoft Corporation System and method for storing and presenting images and related items to a user
US7778984B2 (en) 2004-11-19 2010-08-17 Microsoft Corporation System and method for a distributed object store
US7953725B2 (en) 2004-11-19 2011-05-31 International Business Machines Corporation Method, system, and storage medium for providing web information processing services
US20060129917A1 (en) 2004-12-03 2006-06-15 Volk Andrew R Syndicating multiple media objects with RSS
US7660416B1 (en) 2005-01-11 2010-02-09 Sample Digital Holdings Llc System and method for media content collaboration throughout a media production process
US7593943B2 (en) 2005-01-14 2009-09-22 Microsoft Corporation Method and system for synchronizing multiple user revisions to a shared object
US20060218492A1 (en) 2005-03-22 2006-09-28 Andrade Jose O Copy and paste with citation attributes
US7620902B2 (en) 2005-04-20 2009-11-17 Microsoft Corporation Collaboration spaces
US20060247961A1 (en) 2005-04-28 2006-11-02 Klemow Jason L Method and system for providing aggregation and display of notifications
US7487191B2 (en) 2005-06-10 2009-02-03 International Business Machines Corporation Method and system for model-based replication of data
US8732220B2 (en) 2005-06-15 2014-05-20 International Business Machines Corporation Virtualized file system
US7693958B2 (en) 2005-06-20 2010-04-06 Microsoft Corporation Instant messaging with data sharing
US8171394B2 (en) 2005-06-24 2012-05-01 Microsoft Corporation Methods and systems for providing a customized user interface for viewing and editing meta-data
US9286388B2 (en) 2005-08-04 2016-03-15 Time Warner Cable Enterprises Llc Method and apparatus for context-specific content delivery
US7412534B2 (en) 2005-09-30 2008-08-12 Yahoo! Inc. Subscription control panel
US20070124458A1 (en) 2005-11-30 2007-05-31 Cisco Technology, Inc. Method and system for event notification on network nodes
US7440976B2 (en) 2006-03-22 2008-10-21 Intuit Inc. Method and apparatus for performing collaborative searches
US7870193B2 (en) 2006-08-28 2011-01-11 International Business Machines Corporation Collaborative, event driven system management
US9230068B2 (en) 2006-10-03 2016-01-05 Salesforce.Com, Inc. Method and system for managing license objects to applications in an application platform
US20080155112A1 (en) 2006-12-22 2008-06-26 Nokia Corporation System and method for updating information feeds
US20080201338A1 (en) 2007-02-16 2008-08-21 Microsoft Corporation Rest for entities
US8914434B2 (en) 2007-04-11 2014-12-16 International Business Machines Corporation Method and apparatus for syndicating interactions between a client and a web service
US8677270B2 (en) 2007-05-04 2014-03-18 Microsoft Corporation Live companion user interface
US8239479B2 (en) 2007-06-22 2012-08-07 Microsoft Corporation Server-assisted and peer-to-peer synchronization
US8954507B2 (en) 2007-06-22 2015-02-10 Microsoft Corporation Gathering and using awareness information
US9401957B2 (en) 2007-09-14 2016-07-26 International Business Machines Corporation System and method for synchronization between servers
US8145727B2 (en) 2007-10-10 2012-03-27 Yahoo! Inc. Network accessible media object index
US20090112870A1 (en) 2007-10-31 2009-04-30 Microsoft Corporation Management of distributed storage

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1231738A (zh) * 1996-09-27 1999-10-13 霍尼韦尔公司 控制多窗口计算机环境中的显示的呈现方法

Also Published As

Publication number Publication date
WO2008137559A1 (en) 2008-11-13
EP2143017A1 (en) 2010-01-13
CN101675425A (zh) 2010-03-17
US8677270B2 (en) 2014-03-18
US20140157185A1 (en) 2014-06-05
US9274674B2 (en) 2016-03-01
US20080276195A1 (en) 2008-11-06
JP2010527478A (ja) 2010-08-12
EP2143017A4 (en) 2012-09-26

Similar Documents

Publication Publication Date Title
CN101675425B (zh) 实况伴随窗口
CN101128816B (zh) 用于显示分页内容并与之交互的方法和系统
US8364759B2 (en) Mesh-managing data across a distributed set of devices
EP2477111B1 (en) Computer system and program restoring method thereof
US8996992B2 (en) Image forming apparatus and information processing apparatus
KR20070054942A (ko) 어플리케이션 상태 정보 수집 및 복원 방법 및 시스템
US9785511B2 (en) Network device and operating method thereof
CN105359097A (zh) 用于共享文件的束文件许可
US20100057770A1 (en) System and method of file management, and recording medium storing file management program
US9483630B2 (en) Information processing apparatus, method of controlling the same and storage medium
US9864637B2 (en) Adaptable software resource managers based on intentions
JP2009237659A (ja) 操作ログ情報表示システム
WO2012067034A1 (ja) 設計・開発支援システム
CN101369255B (zh) 信息处理装置、信息处理方法及信息处理程序
JP2015039805A (ja) 画像形成装置、制御方法およびプログラム
US10637909B2 (en) Methods for managing entity profiles and application launching in software applications
JP6799257B2 (ja) 監視サーバ、制御方法、プログラム
JP7372497B1 (ja) 求人サイト募集状況一覧システム
US20140136580A1 (en) Method and system for opening file and computer readable storage medium storing the method
JP7069956B2 (ja) 障害管理システム、障害管理装置及びプログラム
JP4649423B2 (ja) ネットワーク管理システムとそのためのプログラム
JP5125689B2 (ja) 複数環境の運用方法および記録媒体
JP2009176120A (ja) クライアント端末監視システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150508

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150508

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.