CN101133381A - 用于应用程序窗口归组和管理的方法和装置 - Google Patents

用于应用程序窗口归组和管理的方法和装置 Download PDF

Info

Publication number
CN101133381A
CN101133381A CNA200580048776XA CN200580048776A CN101133381A CN 101133381 A CN101133381 A CN 101133381A CN A200580048776X A CNA200580048776X A CN A200580048776XA CN 200580048776 A CN200580048776 A CN 200580048776A CN 101133381 A CN101133381 A CN 101133381A
Authority
CN
China
Prior art keywords
application window
group
window
application
display screen
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.)
Granted
Application number
CNA200580048776XA
Other languages
English (en)
Other versions
CN100552602C (zh
Inventor
C·W·斯塔伯
D·J·林德塞
M·R·里加莫里
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 CN101133381A publication Critical patent/CN101133381A/zh
Application granted granted Critical
Publication of CN100552602C publication Critical patent/CN100552602C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

描述了用于在显示屏上显示多个窗口的方法。该方法包括以下步骤:在显示屏上显示第一应用程序窗口和第二应用程序窗口;将第一应用程序窗口和第二应用程序窗口声明为一组,第二应用程序窗口独立于第一应用程序窗口并位于其外部;将第一应用程序窗口和第二应用程序窗口归组到一组;并将该组显示为显示屏上的表示。随着新应用程序窗口被打开,它们可被添加到该组和/或它们可成为第二应用程序窗口组的成员。用户可在各组之间切换。

Description

用于应用程序窗口归组和管理的方法和装置
发明领域
本发明的各方面一般针对操作系统中的窗口管理。更具体地,本发明的各方面针对用于在操作系统中将多个窗口归组并允许在窗口之间存在某种智能行为的方法和系统。
发明背景
随着在工作和个人生活中对计算机的使用日益增长,允许更容易地使用计算机的需求也增长了。当今的众多操作系统利用基于窗口的应用程序配置。信息被显示在显示屏上表现为若干张纸。通过与窗口交互,用户可如抓取单张纸一般访问任何窗口。基于窗口的配置允许用户在一显示屏上同时打开两个或更多窗口。
应用程序窗口是所有图形用户界面(GUI)系统的用户界面工具。尽管应用程序窗口的外观跨系统而有所不同,但它们共享众多公共属性,诸如被重定大小和被重新定位以及存在于与不同应用程序相关联的其它应用程序窗口之间的能力。多个应用程序窗口可一起同时出现在屏幕上,一般按用户最近访问的每一窗口的顺序层叠在彼此的上方。
现代GUI常见的用户交互情形涉及共享公共屏幕可操作区域(real estate)的多个同时打开的应用程序窗口。支持多个同时打开的应用程序窗口是现代GUI的要求和能力的一部分,但这通常导致应用程序窗口彼此重叠并遮挡,使用户难以定位或导航至特定的应用程序窗口。这种类型的情形及相关联解决方案通常被称为窗口管理问题和解决方案。
用户一般将应用程序窗口与诸如电子邮件等任务相关联,并且还可创建多个应用程序窗口与单个任务或项目之间的精神上的关联。例如,为了产生幻灯片演示,用户可向可能来自于诸如电子邮件、图形应用程序和电子表格应用程序等一个或多个应用程序的三个或四个不同的应用程序窗口请求内容。多个应用程序窗口可在屏幕上可见,且每一应用程序窗口与一个或多个任务相关联。用户必须在这些不同的应用程序窗口之间定位并导航以便于访问或交换内容来完成任务。
在众多GUI中存在一种公共的窗口管理解决方案,凭借该解决方案应用程序窗口可被最小化并从主要工作屏幕空间的视图中移除。最小化的应用程序窗口一般由明显较小的UI元素来表示。在华盛顿州雷德蒙市Microsoft公司生产的WindowsXP中,最小化的应用程序窗口被表示为控制栏上的按钮,诸如任务栏控件。在加利福尼亚州库珀蒂诺市苹果计算机有限公司生产的Mac OS X中,最小化的应用程序窗口被表示为停靠栏(Dock)中的缩小的缩略图按钮。最小化应用程序窗口允许用户从屏幕空间中移除不需要的应用程序窗口,允许他们关注于较小一组应用程序窗口。然而,最小化应用程序窗口仅能个别执行。类似地,应用程序窗口可从最小化的状态中恢复(retrieve),并重新引入到该组可视应用程序窗口中,但这仅可在个别应用程序窗口的基础上进行。
目前,独立和外部窗口不能被归组在一起,因此不同种类的窗口不能被一起管理。操作系统当前不允许多个窗口被彼此归组在一起,因此对一个窗口执行的操作不能对第二独立和外部应用程序窗口自动执行。
发明概述
需要将任何两个或更多应用程序窗口归组在一起的能力,使得不同种类的窗口可被一起管理。需要这样一种方法,用于在显示屏上显示第一应用程序窗口和第二应用程序窗口;将第一应用程序窗口和第二应用程序窗口声明为一组,其中第二应用程序窗口独立于第一应用程序窗口并位于其外部;将第一应用程序窗口和第二应用程序窗口归组到一组内;并将该组显示为显示屏上的表示。
本发明的各方面提供一种协助将多个应用程序窗口作为一组来管理的窗口管理系统。本发明的各方面提供一种创建应用程序窗口组、最小化该组、并允许检索之前标识的组的新方法和装置。该方法允许用户形式化其应用程序窗口与例如创建组等任务的关联,并提供管理这些关联的工具,例如应用程序窗口组图标。
附图简述
当结合附图阅读本发明的前述概述以及以下对说明性实施例的详细描述时,它们能被更好地理解,它们作为示例而非作为关于所要求保护的本发明的限制而被包括在内。
图1A示出了可在其中实现本发明的某些方面的通用数字计算环境的示意图;
图1B到1M示出了支持本发明的一个或多个方面的通用计算机环境;
图2示出了常规窗口管理情形;
图3A示出了根据本发明的至少一个方面的包括归组控件的窗口管理系统的示例;
图3B示出根据本发明的至少一个方面在归组控件执行之后的窗口管理系统的示例;
图3C示出根据本发明的至少一个方面在归组控件执行之后的窗口管理系统的其它示例;
图4示出根据本发明的至少一个方面在归组控件执行之后的窗口管理系统的另一示例;
图5A示出了根据本发明的至少一个方面其中显示多个窗口分组的窗口管理系统的另一示例;
图5B示出根据本发明的至少一个方面的图5A的窗口管理系统在重新打开第一窗口分组之后的示例;
图6是根据本发明的至少一个方面用于将两个窗口归组的方法的说明性示例的流程图;
图7是根据本发明的至少一个方面用于在多个窗口分组之间切换的方法的说明性示例的流程图。
说明性实施例的详细描述
在以下各个说明性实施例的描述中,对附图进行了参考,附图构成各个实施例的一部分,且在其中作为示例示出了可在其中实现本发明的各个实施例。可以理解,可利用其它实施例,且可作出结构和功能上的修改,而不背离本发明的范围。
图1示出了可在其上实现本发明的合适的计算系统环境100的示例。计算系统环境100只是合适的计算环境的一个示例,并不旨在对本发明的使用范围或功能提出任何限制。也不应该把计算环境100解释为对示例性计算系统环境100中示出的任一组件或其组合有任何依赖性或要求。
本发明可用众多其它通用或专用计算系统环境或配置来操作。适合在本发明中使用的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费者电子产品、网络PC、小型机、大型机、包含上述系统或设备中的任一个的分布式计算机环境等。
本发明可在诸如程序模块等由计算机执行的计算机可执行指令的通用语境中描述。一般而言,程序模块包括例程、程序、对象、组件、数据结构等,它们执行特定任务或实现特定抽象数据类型。本发明也可以在分布式计算环境中实现,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备在内的本地和远程计算机存储介质中。
参考图1A,用于实现本发明的一个示例性系统包括计算机110形式的通用计算设备。计算机110的组件可以包括,但不限于,处理单元120、系统存储器130和将包括系统存储器在内的各种系统组件耦合至处理单元120的系统总线121。系统总线121可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、外围总线和使用各种总线体系结构中的任一种的局部总线。作为示例,而非限制,这样的体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、扩展的ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连(PCI)总线(也被称为Mezzanine总线)。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是能够被计算机110访问的任何可用介质,且包括易失性和非易失性介质、可移动和不可移动介质。作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现的用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机110访问的任何其它介质。通信介质通常具体化为诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,且包含任何信息传递介质。术语“已调制数据信号”指的是这样一种信号,其一个或多个特征以在信号中编码信息的方式被设定或更改。作为示例,而非限制,通信介质包括诸如有线网络或直接线连接的有线介质,以及诸如声学、RF、红外线和其它无线介质的无线介质。上述中任一个的组合也应包括在计算机可读介质的范围之内。
系统存储器130包括易失性和/或非易失性存储器形式的计算机存储介质,诸如ROM 131和RAM 132。基本输入/输出系统133(BIOS)包含有助于诸如启动时在计算机110中元件之间传递信息的基本例程,它通常被存储在ROM 131中。RAM 132通常包含处理单元120可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例,而非限制,图1A示出了操作系统134、应用程序135、其它程序模块136和程序数据137。
计算机110也可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图1A示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器141,从可移动、非易失性磁盘152中读取或向其写入的磁盘驱动器151,以及从诸如CD ROM或其它光学介质等可移动、非易失性光盘156中读取或向其写入的光盘驱动器155。可以在示例性操作环境下使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括,但不限于,盒式磁带、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141通常由诸如接口140等不可移动存储器接口连接至系统总线121,磁盘驱动器151和光盘驱动器155通常由诸如接口150等的可移动存储器接口连接至系统总线121。
以上描述和在图1A中示出的驱动器及其相关联的计算机存储介质为计算机110提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图1A中,硬盘驱动器141被示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意,这些组件可以与操作系统134、应用程序135、其它程序模块136和程序数据137相同或不同。操作系统144、应用程序145、其它程序模块146和程序数据147在这里被标注了不同的标号是为了说明至少它们是不同的副本。用户可以通过输入设备,诸如数码相机163、键盘162和定点设备161(通常指鼠标、跟踪球或触摸垫)向计算机110输入命令和信息。其它输入设备(未示出)可以包括笔、指示笔和图形输入板、麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等。这些和其它输入设备通常由耦合至系统总线121的用户输入接口160连接至处理单元120,但也可以由其它接口或总线结构,诸如并行端口、游戏端口或通用串行总线(USB)连接。监视器191或其它类型的显示设备也经由接口,诸如视频接口190连接至系统总线121。除监视器以外,计算机也可以包括其它外围输出设备,诸如扬声器197和打印机196,它们可以通过输出外围接口195连接。
计算机110可使用至一个或多个远程计算机,诸如远程计算机180的逻辑连接在网络化环境下操作。远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其它常见网络节点,且通常包括上文相对于计算机110描述的许多或所有元件,尽管在图1A中只示出存储器存储设备181。图1A中所示逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这样的连网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机110通过网络接口或适配器170连接至LAN 171。当在WAN联网环境中使用时,计算机110通常包括调制解调器172或用于通过诸如因特网等WAN 173建立通信的其它装置。调制解调器172可以是内置或外置的,它可以通过用户输入接口160或其它合适的机制连接至系统总线121。在网络化环境中,相对于计算机110描述的程序模块或其部分可以存储在远程存储器存储设备中。作为示例,而非限制,图1A示出了远程应用程序185驻留在存储器设备181上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其它手段。
可以理解,所示网络连接是示例性的,且可使用在计算机之间建立通信链路的其它手段。假定了各种公知协议,诸如TCP/IP、因特网、FTP、HTTP等中任何一个的存在,且系统可在客户机-服务器配置中操作以允许用户从基于web的服务器检索网页。可使用各种常规web浏览器中的任何一个来显示和操纵网页上的数据。
编程接口(或简称为接口)可被视为用于允许一个或多个代码段与一个或多个其它代码段所提供的功能通信或对其访问的任何机制、过程、协议。或者,编程接口可被视为系统中能够通信上耦合至其它组件的一个或多个机制、方法、功能调用、模块等的一组件的一个或多个机制、方法、功能调用、模块、对象等。前述语句中的术语“代码段”旨在包括一条或多条指令或代码行,且包括例如代码模块、对象、子例程、函数等,而不考虑所应用的术语是什么或者代码段是否被单独编译、或者代码段是否作为源、中间或目标代码来提供、代码段是否在运行时系统或进程中利用、或者它们是否位于相同或不同的机器上或跨多台机器分布、或者代码段所表示的功能是否全部使用软件实现、全部使用硬件实现或使用硬件和软件的组合。
概念上,编程接口一般可如图1B或图1C中所示地查看。图1B示出接口“接口1”为第一和第二代码段可经其通信的管道。图1C将接口示为包括接口对象I1和I2(它们可以是或可以不是第一和第二代码段的一部分),它们允许系统的第一和第二代码段经由介质M来通信。在图1C的视图中,可将接口对象I1和I2认为是同一系统的分开的接口,也可认为对象I1和I2加上介质M构成了接口。尽管图1B和1C示出双向流和位于流两侧的接口,但某些实现可使信息仅在一个方向上流动(或如下所述没有信息流),或仅在一侧有接口对象。作为示例,而非限制,诸如应用程序编程接口(API)、入口点、方法、函数、子例程、远程过程调用、以及组件对象模型(COM)接口等术语均被包含在编程接口的定义内。
这一编程接口的各方面可包括第一代码段将信息发送给第二代码段的方法(其中,“信息”按其最广义来使用,包括数据、命令、请求等);第二代码段接收信息的方法;以及信息的结构、序列、句法、组织、模式、定时和内容。在这一点上,底层传输介质本身对接口的操作而言是无关紧要的,无论该介质是有线还是无线的,或者是其组合,只要信息按照接口所定义的方式传输。在某些情况中,信息可以不在常规意义上的一个或两个方向上传递,因为信息传送或者是经由另一介质(例如,信息被置于与代码段之间的信息流分开的缓冲区、文件等中)或不存在,如当一个代码段仅访问第二代码段所执行的功能时。例如取决于代码段是否是松耦合或紧耦合配置的系统中的一部分,任何或所有这些方面在给定情况中可能是重要的,因此该列表应被认为是说明性而非限定性的。
编程接口的概念为本领域的技术人员所知,并可从本发明的前述详细描述中清楚。然而,存在实现编程接口的其它方式,且除非明确排除,否则这些也旨在包括在本说明书所附的权利要求书中。这些其它方式可能看似比图1B和1C的简单视图更高级或更复杂,但是它们仍执行完成相同的总体结果的类似功能。现在将简要描述编程接口的一些说明性替换实现。
A.分解(factoring)
从一个代码段到另一个代码段的通信可通过将通信分成多个离散通信来间接完成。这在图1D和1E中示意性描述。如图所示,某些接口可按照可分功能集来描述。因此,图1B和1C的接口功能可被分解来实现相同的结果,就如在数学上可提供24或2乘2乘3乘2一样。从而,如图1D中所示,接口“接口1”提供的功能可被细分以将接口的通信转换成多个接口“接口1A”、“接口1B”、“接口1C”等,而同时仍实现相同的结果。如图1E中所示,接口I1提供的功能可被细分成多个接口I1a、I1b、I1c等,同时仍实现相同的结果。类似地,从第一代码段接收信息的第二代码段的接口I2可被分解成多个接口I2a、I2b、I2c等。当分解时,随第一代码段所包括的接口的数目不必与随第二代码段所包括的接口的数目匹配。在图1D和1E中任一情况中,接口“接口1”和I1的功能本质分别与图1B和1C的保持相同。接口的分解也可遵循结合、交换和其它的数学性质,使得分解难以识别。例如,操作的顺序可能是不重要的,因此接口实现的功能可在到达该接口之前由另一代码或接口良好实现,或由系统的单独组件执行。而且,程序设计领域的普通技术人员可以理解,存在进行实现相同的结果的不同功能调用的各种方式。
B.重定义
在某些情况中,有可能忽略、添加或重定义编程接口的特定方面(例如,参数)而仍实现预期的结果。这在图1F和1G中示出。例如,假定图1B的接口“接口1”包括函数调用Square(input,precision,output),即包括三个参数input(输入)、precision(精度)和output(输出),并从第一代码段向第二代码段发出的一个调用。如果中间参数precision在给定情形中无关紧要,则如图1F中所示,它可无妨被忽略甚至使用meaningless(无意义)(在该情况中)的参数来替换。也可添加无关紧要的附加参数。在任一情况中,square(求平方)的功能可被实现,只要在第二代码段对input求平方之后返回output。precision对计算系统的某些下游或其它部分而言可能很好地作为有意义的参数;然而,一旦认识到precision对计算平方的狭窄用途而言不必要时,它可被替换或忽略。例如,可传递诸如生日等无意义的值来代替传递有效的precision值而不会对结果造成不利影响。类似地,如图1G中所示,接口I1被接口I1′替换,它被重定义来忽略参数或向接口添加参数。接口I2可类似地被重定义为接口I2′,它被重定义来忽略不必要的参数或可在别处处理的参数。此处的重点在于在某些情况中,编程接口可包括诸如参数等对某种用途而言不需要的各方面,因此它们可被忽略或重定义或在别处为其它用途而处理。
C.内联代码编写(inline coding)
将两个单独代码模块的某些或全部功能合并使得其间的“接口”改变形式也是可行的。例如,图1B和1C的功能可分别被转换成图1H和1I的功能。在图1H中,图1B的之前的第一和第二代码段被合并成包含两者的模块。在这种情况中,代码段仍可彼此通信,但接口可适应更适于单个模块的形式。因此,例如正式的Call和Return语句可能不再必需,但根据接口“接口1”的类似处理或响应仍有效。类似地,如图1I中所示,来自图1C的接口I2的一部分(或全部)可被内联地写入接口I1以形成接口I1″。如图所示,接口I2被划分成I2a和I2b,接口部分I2a与接口I1内联地编写代码来形成接口I1″。对一个具体的示例,考虑来自图1C的接口I1执行函数调用square(input,output),该函数调用由接口I2接收,在由第二代码段处理随input传递的值(对其求平方)之后,将求平方后的结果随output传回。在这样的情况中,第二代码段执行的处理(对input求平方)可由第一代码段在不调用接口的情况下执行。
D.脱离(divorce)
从一个代码段到另一个代码段的通信可通过将通信分成多个离散通信来间接完成。这在图1J和1K中示意性地示出。如图1J中所示,提供一个或多个中间件(脱离接口,因为它们将功能和/或接口函数从原始接口脱离)来转换对第一接口“接口1”的通信以使其遵循不同的接口,在该情况中为接口“接口2A”、“接口2B”和“接口2C”。这可例如在存在被设计成与例如根据接口1协议的操作系统通信的应用程序库,而该操作系统然后被改为使用不同的接口,在该情况中为接口2A、接口2B和接口2C时进行。重点在于第二代码段使用的原始接口被改变了,使得它不再与第一代码段使用的接口兼容,因此使用中介来使新老接口兼容。类似地,如图1K中所示,随脱离接口DI1可引入第三代码段来接收来自接口I1的通信,并使用脱离接口DI2将接口功能发送给例如被重新设计成与DI2一起工作但提供相同的功能结果的接口I2a和I2b。类似地,DI1和DI2可一起工作将图1C的接口I1和I2的功能转换到新操作系统,而同时提供相同或类似的功能结果。
E.重写
又一可能的变型是动态重写代码以使用别的但实现相同的总体结果的东西来替换接口功能。例如,可能存在其中将以中间语言(例如,Microsoft IL、JavaByteCode等)呈现的代码段提供给执行环境(诸如由.Net框架提供的、Java运行时环境、或其它类似的运行时类型环境)中的运行时编译(Just-in-Time,JIT)编译器或解释器的系统。可编写JIT编译器以便于将来自第一代码段的通信动态转换到第二代码段,即使其遵循如由第二代码段(原始或不同的第二代码段)所需的不同接口。这在图1L和1M中示出。如图1L中可见,该方式类似于上述脱离情形。它例如可在已安装的应用程序库被设计成与根据接口1协议的操作系统通信,但该操作系统然后被改为使用不同的接口时进行。JIT编译器可被用来使来自已安装应用程序库的运行时通信遵循操作系统的新接口。如图1M中所示,动态重写接口的这种方式也可被应用于动态分解以及更改接口。
还注意到,也可按照各种方式、串行和/或并行地或使用其它介入代码来组合上述经由替换实施例实现与接口相同或类似的结果的情形。因此,以上呈现的替换实施例不是互斥的,而是可被混合、匹配和组合来产生与图1B和1C中所呈现的一般情形相同或等效的情形。还注意到,与大多数编程构造一样,存在此处未描述的实现接口的相同或类似功能的其它类似方式,但它们仍由本发明的精神和范围表示,即,注意到它们至少部分是由作为接口的值的基础的接口所表示的功能及其允许的有利结果。
图2示出了图形用户界面系统常见的常规窗口管理情形200。如图所示,多个打开的应用程序窗口被位于前面的其它更大的窗口部分或完全遮挡。具体地,图2示出了Z形顺序配置的四个窗口203a-203d的情形200,其中应用程序窗口203d在该Z形顺序中比窗口203a、203b和203c高。应用程序窗口203a-203被示为位于桌面空间201内。
桌面空间201是允许显示对应于应用程序的窗口的显示区。底部的任务栏210指示可见或被最小化的当前正在使用的应用程序窗口。任务栏210是诸如激活、移动、隐藏和最小化等用于列出和允许操纵窗口的屏幕上窗口远程控制的具体实现。窗口203a由任务栏按钮213a表示,窗口203b由任务栏按钮213b表示,窗口203c由任务栏按钮213c表示,而窗口203d由任务栏按钮213d表示。如该示例中所示,四个窗口203a-203d被示为打开。沿各个窗口的标题栏区223a-223d示出了窗口203a-203d的内容的文件名。这些文件名可由操作窗口的应用程序生成和/或可由用户定制。每一窗口203a-203d的同一文件名在相应的任务栏按钮213a-213d中示出。
窗口203a-203d由应用程序使用来向用户显示内容。与窗口203a相关联的应用程序可以是与对应于窗口203b、203c和/或203d的应用程序相同或不同的应用程序。窗口203a-203d中的每一个独立于窗口203a-203d中的其它窗口并处于其外部。如此处所使用的,当第一窗口不被包含在第二窗口内且第二窗口不被包含在第一窗口内时,第一窗口处于第二窗口外部。应理解,如果两个窗口仅仅是重叠,则第一窗口不被包含在第二窗口中。
如图2中所示,用户显式地打开这组应用程序窗口203a-203d以便完成任务。任务可涉及从每一打开的应用程序窗口203a-203d中获得信息或内容。例如,该任务可能需要因特网浏览器窗口和来自图形编辑应用程序的两个窗口。如果用户打开了与该第一任务无关的其它应用程序窗口,则这些现有的应用程序窗口203a-203d将在桌面空间201中保持不变。使用现有的窗口管理解决方案,用户可单独最小化与第一任务相关联的应用程序窗口203a-203d中的每一个以将其从视图中移除。为了返回至原始任务,用户将必须个别恢复每一最小化的应用程序窗口203a-203d。
如图3A中所示,根据本发明的各方面,提供用户界面控件330来将一组当前打开和/或活动的应用程序窗口203a-203d声明为一窗口组。图3A示出根据本发明的至少一个方面的包括归组控件330的窗口管理系统的示例。如此处所使用的,术语“声明”和“声明了”此处被定义为指启动创建两个独立且外部的应用程序窗口之间的关系的动作。
在情形300a中,用户将指针331移向应用程序窗口归组控件330。尽管在任务栏区210中示出,但本领域的技术人员应理解,归组控件元素330可位于其它位置,诸如在桌面空间201内。此外,尽管在图3A中被示为可激励(actuatable)的按钮,但可按其它方式启动归组控件330来将应用程序窗口归组。例如,在一个实施例中,用户可执行单个键/按钮敲击和/或键/按钮敲击的序列来将两个或更多窗口归组,诸如应用程序窗口203a-203d。用户可在键盘上按下预定义的键击序列来将应用程序窗口归组。在本发明的另一实施例中,用户可点击任务栏按钮213a并将其拖曳至任务栏按钮213b以启动用于将窗口203a和窗口203b归组的过程。在又一实施例中,用户可点击诸如电子鼠标等输入设备上的激励按钮来通过激励任务栏按钮213a和213b直接或间接地将应用程序窗口213a和213b归组。本领域的技术人员应理解,本发明不限于此处所包括的示例。
回到图3A,在按下归组控件330之后,窗口203a-203d可被归组到一起,然后该组可被共同缩小至如图3B中所示的缩略图340a的大小。按下归组控件330的一个说明性示例在图3B的情形300b中示出。在该示例情形300b中,窗口203a-203b的分组被缩小至桌面空间201中的缩略图340a。此外,从任务栏区210处移除了任务栏按钮213a-213d。尽管在该示例中未示出,但应理解,相应的任务栏按钮213a-213d中的一个或多个仍可保留在任务栏区210内。
已归组的窗口是可作为该组的表示来被一起管理,例如保存、刷新等的一组窗口。将窗口归组到一起减少了用户必须执行的窗口管理工作量,并减少了由重叠窗口组成的工作表面的视觉混乱。此外,一组窗口可保持在一起,使得该组窗口可在稍后被恢复。任何应用程序窗口可被添加至应用程序窗口203a-203d的缩略图340a或在稍后从中移除。
为了使之前最小化的应用程序窗口从缩略图340a还原,用户可移动指针331并激励,例如点击缩略图340a。响应于用户对桌面图标340a的点击,窗口203a-203d的分组被还原至其在归组控件330执行之前的状态。在该示例中,窗口的外观与其在图3A中的相同。
图3C示出了根据本发明的至少一个方面在归组控件330执行之后的窗口管理系统的其它示例。如图3B中所示,情形300c可将窗口203a-203d的分组示为某种类型的图标340b而非应用程序窗口203a-203d的缩略图340a。或者和/或此外,可创建任务栏按钮340c来表示窗口203a-203d的分组。与缩略图340a一样,可通过对图标340b和/或任务栏按钮340c的激励来还原窗口203a-203d。在这一示例中,窗口的外观再次与其在图3A中的相同。
图4示出了根据本发明的至少一个方面在归组控件330执行之后的窗口管理系统的另一示例。在此情形400中,四个打开的应用程序窗口203a-203d的一部分,例如其中三个被声明为一组并被缩小成缩略图440。因此,在本发明的一个实施例中,用户可选择将窗口203a-203c归组,而同时保持窗口203d在桌面空间210中打开并活动。可使用众多其它的方法来允许对少于桌面空间201中的所有打开窗口进行归组,而本发明不限于任何一个方法。本领域的技术人员应理解,可被最小化至任务栏区210的打开窗口也可通过对归组控件330的激励被包括在窗口组中。在其它实施例中,系统可被配置成仅对打开且活动的窗口归组,即使它们与另一打开的窗口重叠,而不将任何最小化的窗口归组。
一旦窗口组被声明并最小化至缩略图340a,用户可继续打开新的应用程序窗口,或还原之前最小化的应用程序窗口。在窗口组被隐式声明之后打开的窗口可被认为是第二窗口组的成员。图5A示出了其中窗口组340a被声明并被最小化而另外的应用程序窗口503a和503b随后被打开的情形500a。这些应用程序窗口是第二窗口组的成员。类似于窗口203a-203d,窗口503a和503b在任务栏区210中具有相应的任务栏按钮513a和513b。
一旦窗口组被声明并被最小化之后,用户可通过经由标准的、预先存在的打开机制,诸如对缩略图340a双击或右击并从上下文菜单中选择‘打开组’来打开该组以便恢复该组。如图5A中所示,用户将指针331移至缩略图组340a。如图5B中所示,打开该组导致应用程序窗口203a-203d从缩略图组340a以动画方式变为全屏,而同时应用程序窗口503a-503b被系统声明为应用程序窗口的第二分组,并以动画方式变成缩略图540。本领域的技术人员应理解,在恢复第一窗口组之后第二窗口组可被自动声明。或者,系统可被配置成要求用户主动地声明第二窗口组。
图5B示出了经由缩略图340a打开第一窗口组的情形500b。第二组随后被最小至缩略图540,从而取代第一组的位置作为缩略图340a。一旦窗口组被恢复之后,正常的窗口交互起效。可移动、激活和关闭个别应用程序窗口。应理解,窗口503a和503b可通过另一窗口组已经存在的事实而被隐式归组。因此,用户不必再次激励归组控件330来将窗口503a和503b归组。
本领域的技术人员应理解,本发明的各方面不限于图中所示的窗口和/或组的数目,且可创建任何数目的不同窗口组。此外,应理解,根据本发明的各方面,可添加一个或多个窗口或从窗口组中移除窗口。此外,一个窗口组中的应用程序窗口也可在另一窗口组中出现。此外,本发明的各方面允许窗口组跨机器的开始和/或注销/登录会话来被保存和还原。
本发明的各方面支持对窗口组的窗口操作。例如,激励窗口组以关闭、保存或刷新内容的命令可使该组内的所有窗口关闭、保存或刷新其内容。命令可以是对整个组全局的、对组内一窗口子集专用的、或对一个应用程序窗口专用的。当应用程序窗口处于两个分开的组内时,对一个组中的应用程序窗口执行的命令可被配置成对另一组内的同一应用程序窗口执行或不执行相同的操作。此外,随着新应用程序窗口被添加至组和/或从组中移除,命令选项可改变。例如,如果包括各自能够执行刷新操作的两个窗口的组中添加了不具有刷新其内容的能力的新窗口,则刷新命令不再是当用户操纵该窗口组时可用的选项。取决于系统如何被配置,用于将窗口作为组来使用的命令可以是或可以不是动态的。
图6是根据本发明的至少一个方面用于将多个应用程序窗口归组的方法的说明性示例的流程图。该过程在步骤601处开始,在那里打开了多个应用程序窗口。在步骤603处,接收到将多个打开的应用程序窗口声明为一组的输入。该过程移至步骤605,在那里作出关于所有打开的窗口是否要被归组到一起的判断。如果所有打开的窗口要被归组到一起,则该过程移至步骤607,在那里,这多个窗口的全部被声明为一组,该过程然后前进至步骤611。如果步骤605的判断发现不是所有打开的窗口都要被归组到一起,则该过程前进至步骤609,在那里这多个窗口的一部分被声明为一组,且该过程前进至步骤611。在步骤611处,显示应用程序窗口组的表示。随着在步骤611中显示了窗口的表示,该过程可结束。应理解,步骤611可以是诸如缩略图340a的缩略图、诸如图标340b的图标、和/或诸如任务栏按钮340c的任务栏按钮。
该过程也可继续至步骤613,在那里作出是否接收到要对表示中的应用程序组执行操作的输入。一种类型的操作可包括保存该表示内应用程序窗口的内容的操作。如果未接收到输入,则该过程结束。如果在步骤613处接收到输入,则该过程移至步骤615,在那里对该组内的应用程序窗口执行该操作。在这一保存内容的情况中,如果操作是全局的,则保存每一应用程序窗口的内容。或者,如果该操作是针对该组中的应用程序窗口的一个子集或单个应用程序窗口的,则该操作仅对该操作所针对的子集或一个窗口执行。
从步骤615处,该过程移至步骤617,在那里作出是否接收到恢复来自组中的应用程序窗口的输入。例如,用户可决定她想要使应用程序窗口还原至其原始状态。如果未接收到输入,则该过程结束。如果在步骤617处接收到输入,则该过程移至步骤619,在那里该应用程序窗口被还原至其在桌面空间中的原始状态,该过程结束。
图7是根据本发明的至少一个方面用于在多个窗口分组之间切换的方法的说明性示例的流程图。该过程在步骤701处开始,在那里打开了多个应用程序窗口。在步骤703处,接收到将多个打开的应用程序窗口声明为一组的输入。在步骤705处,这些应用程序窗口被声明为第一组。前进至步骤707,显示了应用程序窗口第一组的表示。
在步骤709处,接收到打开至少一个新应用程序窗口的输入。在步骤711处,打开了至少一个新的应用程序窗口。应理解,该至少一个新应用程序窗口可以是与第一应用程序窗口组中的相同的应用程序窗口。自步骤711,该过程中的两种行进之一可如步骤713-721的实线所定义,以及由步骤723-729的虚线定义。如第一种行进中所示,自步骤711,该过程前进至步骤713,在那里接收到将该至少一个新应用程序窗口声明为一组的输入。在步骤715处,该至少一个新应用程序窗口被声明为第二组。前进至步骤717,显示了该至少一个应用程序窗口的第二组的表示。在步骤719处,作出是否接收到恢复来自所选的第一或第二组的应用程序窗口的输入的判断。如果否,则该过程等待,直到作出并接收了选择。如果在步骤719接收到输入,则该过程前进至步骤721,在那里所选组的应用程序窗口被还原成其桌面空间中的原始状态,该过程结束。
如在由步骤之间的虚线所定义的第二种行进中,自步骤711,该过程前进至步骤723,在那里作出是否接收到恢复来自第一组的应用程序窗口的输入的判断。如果否,则该过程等待,直到接收到输入。如果在步骤723处接收到输入,则该过程前进至步骤725,在那里该系统自动将桌面空间中的至少一个应用程序窗口声明为第二组。因为用户决定返回至第一应用程序窗口组,因此该系统隐式地将新应用程序窗口归组到一新组。该过程前进至步骤727,在那里显示了第二应用程序窗口组的表示。在步骤729处,第一组的应用程序窗口被还原至其桌面空间中的原始状态,该过程结束。本领域的技术人员应理解,用户可按需通过遵循上述步骤中的一个或多个来在应用程序窗口组之间切换。
另一实施例是程序上控制声明并将窗口直接归组到一组。例如,诸如MicrosoftOffice等一个或多个应用程序可共享由多个文档组成的项目的概念。这些文档可被同时打开成一组,或项目中的新文档在被用户打开时被自动添加到一组。
关于应用程序编程接口(API),本发明的各方面可由API执行。例如,公有API可与操作系统接口来允许操作系统提供本发明的各个特征。在一个实施例中,用于处理表示已归组窗口的数据的软件体系结构可包括被配置成将第一打开的窗口和第二打开的窗口归组到一组的组件、和访问该组件的应用程序接口。API可接收将两个窗口归组的请求,访问必要的功能以执行操作,然后将结果发回给操作系统。操作系统可使用从API提供的数据来执行本发明各个特征。
令应用程序利用窗口组的API包括程序上将窗口归组和解除归组,以及令应用程序指示当对一组实现诸如保存、打印、刷新内容、比较版本、编译源代码等命令时如何处理窗口的状态。该状态信息允许当一组被恢复且相应的应用程序窗口被还原时该组中的应用程序窗口被还原至适当的状态而非默认状态。例如,被声明为一组的最小化窗口可被还原成原始状态。
尽管示出了如此处所述具体化本发明的各方面的说明性系统和方法,但本领域的技术人员可以理解,本发明不限于这些实施例。尤其考虑到前述教导时,本领域的技术人员可对其作出修改。例如,前述实施例的各元素中的每一个可被单独或组合或与其它实施例的元素子组合来利用。也可领会和理解,可作出修改,而不背离本发明真正的精神和范围。因此,该描述应被认为是说明性的而非对本发明的限制。

Claims (20)

1.一种用于将多个应用程序归组的方法,所述方法包括:
在显示屏上显示第一应用程序窗口和第二应用程序窗口;
将所述第一应用程序窗口和所述第二应用程序窗口声明为一组,所述第二应用程序窗口独立于所述第一应用程序窗口并位于其外部;
将所述第一应用程序窗口和所述第二应用程序窗口归组到一组;以及
将所述组显示为所述显示屏上的表示。
2.如权利要求1所述的方法,其特征在于,还包括对所述组执行操作的步骤。
3.如权利要求2所述的方法,其特征在于,所述执行步骤是基于从输入设备对命令的接收。
4.如权利要求2所述的方法,其特征在于,所述执行操作的步骤是对所述组的应用程序窗口的一子集执行的。
5.如权利要求1所述的方法,其特征在于,所述第一应用程序窗口对应于第一应用程序,所述第二应用程序窗口对应于第二应用程序。
6.如权利要求5所述的方法,其特征在于,所述第一应用程序和所述第二应用程序是不同的应用程序。
7.如权利要求1所述的方法,其特征在于,还包括以下步骤:
接收从所述组恢复所述第一应用程序窗口和所述第二应用程序窗口的输入;以
将所述第一应用程序窗口和所述第二应用程序窗口还原至所述显示屏上的原始状态。
8.如权利要求1所述的方法,其特征在于,所述声明的步骤包括从输入设备接收将所述第一应用程序窗口和所述第二应用程序窗口归组的输入的步骤。
9.如权利要求1所述的方法,其特征在于,所述表示是显示在所述显示屏的桌面空间中的、所述第一应用程序窗口和所述第二应用程序窗口的缩小的版本的缩略图。
10.如权利要求1所述的方法,其特征在于,所述表示是所述显示屏上的任务栏区中的任务栏按钮。
11.如权利要求1所述的方法,其特征在于,还包括以下步骤:
显示至少一个第三应用程序窗口;
将所述至少一个第三应用程序窗口声明为一组;
将所述至少一个第三应用程序窗口归组到第二组;以及
将所述第二组显示为所述显示屏上的第二表示。
12.如权利要求1 1所述的方法,其特征在于,还包括以下步骤:
接收从所述组恢复所述第一应用程序窗口和所述第二应用程序窗口的输入;以及
将所述第一应用程序窗口和所述第二应用程序窗口还原至所述显示屏上的原始状态。
13.如权利要求11所述的方法,其特征在于,还包括以下步骤:
接收从所述第二组恢复所述至少一个第三应用程序窗口的输入;以及
将所述至少一个第三应用程序窗口还原至所述显示屏上的原始状态。
14.如权利要求1所述的方法,其特征在于,还包括以下步骤:
显示至少一个第三应用程序窗口;
接收从所述组恢复所述第一应用程序窗口和所述第二应用程序窗口的输入;
将所述第一应用程序窗口和所述第二应用程序窗口还原至所述显示屏上的原始状态;
响应于接收所述输入,将所述至少一个第三应用程序窗口归组到第二组;以及
将所述第二组显示为所述显示屏上的第二表示。
15.一种包括用于将多个应用程序窗口归组的一系列计算机可执行指令的计算机可读介质,所述指令执行以下步骤:
在显示屏上显示第一应用程序窗口和第二应用程序窗口;
将所述第一应用程序窗口和所述第二应用程序窗口声明为一组,所述第二应用程序窗口独立于所述第一应用程序窗口并位于其外部;
将所述第一应用程序窗口和所述第二应用程序窗口归组到一组;以及
将所述组显示为所述显示屏上的表示。
16.如权利要求15所述的计算机可读介质,其特征在于,所述指令还执行以下步骤:
接收从所述组恢复所述第一应用程序窗口和所述第二应用程序窗口的输入;以及
将所述第一应用程序窗口和所述第二应用程序窗口还原至所述显示屏上的原始状态。
17.如权利要求15所述的计算机可读介质,其特征在于,所述指令还执行以下步骤:
显示至少一个第三应用程序窗口;
将所述至少一个第三应用程序窗口声明为一组;
将所述至少一个第三应用程序窗口归组到第二组;以及
将所述第二组显示为所述显示屏上的第二表示。
18.如权利要求15所述的计算机可读介质,其特征在于,所述指令还执行以下步骤:
显示至少一个第三应用程序窗口;
接收从所述组恢复所述第一应用程序窗口和所述第二应用程序窗口的输入;
将所述第一应用程序窗口和所述第二应用程序窗口还原至所述显示屏上的原始状态;
响应于接收所述输入,将所述至少一个第三应用程序窗口归组到第二组;以及
将所述第二组显示为所述显示屏上的第二表示。
19.一种用于处理表示已归组窗口的数据的软件架构,包括:
被配置成将第一应用程序窗口和第二应用程序窗口归组到一组的至少一个组件,所述组表示所述第一应用程序窗口和所述第二应用程序窗口的缩略图;以及
访问所述组件的至少一个应用程序接口。
20.如权利要求19所述的软件架构,其特征在于,还包括被配置成在注销会话期间在程序上控制对所述组的保存的至少一个组件。
CNB200580048776XA 2005-03-31 2005-08-25 用于应用程序窗口归组和管理的方法和装置 Expired - Fee Related CN100552602C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/094,140 US7581192B2 (en) 2005-03-31 2005-03-31 Method and apparatus for application window grouping and management
US11/094,140 2005-03-31

Publications (2)

Publication Number Publication Date
CN101133381A true CN101133381A (zh) 2008-02-27
CN100552602C CN100552602C (zh) 2009-10-21

Family

ID=37072091

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200580048776XA Expired - Fee Related CN100552602C (zh) 2005-03-31 2005-08-25 用于应用程序窗口归组和管理的方法和装置

Country Status (6)

Country Link
US (1) US7581192B2 (zh)
EP (1) EP1866730B1 (zh)
JP (1) JP2008535083A (zh)
KR (1) KR20080001706A (zh)
CN (1) CN100552602C (zh)
WO (1) WO2006107324A2 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102486714A (zh) * 2010-12-06 2012-06-06 腾讯科技(深圳)有限公司 移动终端浏览器中多窗口管理方法和设备
CN103229141A (zh) * 2010-10-19 2013-07-31 苹果公司 管理用户界面中的工作空间
CN104115143A (zh) * 2011-12-07 2014-10-22 谷歌公司 多个选项卡堆叠用户界面
CN104571804A (zh) * 2013-10-29 2015-04-29 国际商业机器公司 一种对跨应用程序的文档界面进行关联的方法和系统
CN104704460A (zh) * 2012-09-07 2015-06-10 谷歌有限公司 在电子装置上可叠加的工作空间
CN105183287A (zh) * 2015-09-01 2015-12-23 联想(北京)有限公司 显示处理方法及电子设备
US9542202B2 (en) 2010-10-19 2017-01-10 Apple Inc. Displaying and updating workspaces in a user interface
CN106462411A (zh) * 2014-05-28 2017-02-22 三星电子株式会社 用于应用和设备的用户界面
US9658732B2 (en) 2010-10-19 2017-05-23 Apple Inc. Changing a virtual workspace based on user interaction with an application window in a user interface
US10152192B2 (en) 2011-02-21 2018-12-11 Apple Inc. Scaling application windows in one or more workspaces in a user interface
CN114510176A (zh) * 2021-08-03 2022-05-17 荣耀终端有限公司 终端设备的桌面管理方法和终端设备

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343566B1 (en) 2002-07-10 2008-03-11 Apple Inc. Method and apparatus for displaying a window for a user interface
US8042110B1 (en) * 2005-06-24 2011-10-18 Oracle America, Inc. Dynamic grouping of application components
US7600190B2 (en) * 2005-11-15 2009-10-06 Mitac Technology Corp. Window switching method and system
US20070143702A1 (en) * 2005-12-21 2007-06-21 Fabio Maggi Method, Computer Program, and System Improving the Graphical User Interface of a Desktop
US8108785B2 (en) * 2006-01-09 2012-01-31 Microsoft Corporation Supporting user multi-tasking with clipping lists
US7595810B2 (en) * 2006-03-22 2009-09-29 Apple Inc. Methods of manipulating a screen space of a display device
US10503342B2 (en) * 2006-08-04 2019-12-10 Apple Inc. User interface spaces
KR100800889B1 (ko) * 2006-08-08 2008-02-04 삼성전자주식회사 이동 통신 단말기의 기능 항목이 표시되는 화면의 구성을변경하기 위한 방법 및 이를 위한 단말기
US8375323B2 (en) * 2006-10-13 2013-02-12 Panasonic Corporation Display control device, storage medium, and integrated circuit
US20080115081A1 (en) * 2006-11-09 2008-05-15 Microsoft Corporation Enhanced windows management feature
EP2126695A4 (en) * 2007-01-23 2010-05-05 Agere Systems Inc APPLICATION SWITCHING IN AN ARCHITECTURE WITH SINGLE THREAD FOR FACILITIES
US8839142B2 (en) * 2007-06-08 2014-09-16 Apple Inc. Desktop system object removal
US8615710B2 (en) * 2007-09-11 2013-12-24 Sas Institute Inc. Computer-implemented systems and methods for portlet management
JP5004779B2 (ja) * 2007-12-11 2012-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチウインドウ・システム、マルチウインドウ・システムのセキュリティ保護方法、及びマルチウインドウ・システムのセキュリティ保護プログラム
JP5179171B2 (ja) * 2007-12-28 2013-04-10 キヤノンソフトウェア株式会社 情報処理装置、情報処理方法、プログラム、記録媒体
JP4971203B2 (ja) * 2008-01-07 2012-07-11 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置及びプログラム
US20090260062A1 (en) * 2008-04-15 2009-10-15 International Business Machines Corporation Real-time online communications management
US8276144B2 (en) * 2008-04-15 2012-09-25 International Business Machines Corporation Electronic device workspace restriction
US20100031189A1 (en) * 2008-08-01 2010-02-04 International Business Machines Corporation Connecting Standard Operating System Windows with a Visual Tack
US8543935B2 (en) * 2008-08-20 2013-09-24 Red Hat, Inc. Full-screen heterogeneous desktop display and control
US20100064251A1 (en) * 2008-09-05 2010-03-11 International Business Machines Corporation Toggling window display state by screen in a multi-screened desktop environment
KR101548958B1 (ko) * 2008-09-18 2015-09-01 삼성전자주식회사 휴대단말기의 터치스크린 동작 제어 방법 및 장치
US8694920B2 (en) * 2008-09-25 2014-04-08 Microsoft Corporation Displaying application information in an application-switching user interface
US9760234B2 (en) 2008-10-14 2017-09-12 International Business Machines Corporation Desktop icon management and grouping using desktop containers
US8572502B2 (en) * 2008-11-21 2013-10-29 Honeywell International Inc. Building control system user interface with docking feature
JP5133919B2 (ja) * 2009-02-19 2013-01-30 株式会社沖データ アプリケーションプログラム及び画像処理装置
US8555185B2 (en) * 2009-06-08 2013-10-08 Apple Inc. User interface for multiple display regions
CN105278963A (zh) * 2009-09-10 2016-01-27 联想(北京)有限公司 一种任务栏按钮的管理方法及装置
US9141260B2 (en) * 2009-10-08 2015-09-22 Red Hat, Inc. Workspace management tool
US9152299B2 (en) 2009-10-08 2015-10-06 Red Hat, Inc. Activity management tool
US20110131523A1 (en) * 2009-11-30 2011-06-02 International Business Machines Corporation Grouping of windows based on user-defined contexts
US10397639B1 (en) 2010-01-29 2019-08-27 Sitting Man, Llc Hot key systems and methods
JP5333397B2 (ja) * 2010-09-27 2013-11-06 日本電気株式会社 情報処理端末およびその制御方法
AU2013216607B2 (en) * 2010-10-19 2015-04-30 Apple Inc. Managing workspaces in a user interface
US9292196B2 (en) * 2010-10-19 2016-03-22 Apple Inc. Modifying the presentation of clustered application windows in a user interface
JP5772280B2 (ja) * 2011-06-22 2015-09-02 株式会社リコー プログラムおよび情報処理装置
US9645733B2 (en) 2011-12-06 2017-05-09 Google Inc. Mechanism for switching between document viewing windows
CN102611931B (zh) * 2012-03-15 2014-09-10 中兴通讯股份有限公司 一种交互式网络电视中窗口管理方法和系统
CN103324404B (zh) * 2012-03-20 2017-02-01 宇龙计算机通信科技(深圳)有限公司 图标的移动方法及通信终端
CN102799385B (zh) * 2012-07-19 2016-12-21 腾讯科技(深圳)有限公司 桌面控制方法和装置
CN102999253B (zh) * 2012-11-13 2016-06-15 北京奇艺世纪科技有限公司 一种应用程序的窗口显示方法、系统与移动终端
WO2014085502A1 (en) * 2012-11-29 2014-06-05 Edsense, L.L.C. System and method for displaying multiple applications
KR102183071B1 (ko) * 2012-12-06 2020-11-25 삼성전자주식회사 복수 어플리케이션을 실행하는 디스플레이 장치 및 그 제어 방법
WO2014138187A1 (en) 2013-03-05 2014-09-12 Christmas Coy System and method for cubic graphical user interfaces
US10761673B2 (en) * 2013-03-12 2020-09-01 Oracle International Corporation Managing display of detachable windows in a GUI computing environment
US10261650B2 (en) * 2013-03-12 2019-04-16 Oracle International Corporation Window grouping and management across applications and devices
EP3971695A1 (en) 2013-03-15 2022-03-23 Siemens Healthcare Diagnostics Inc. Windowing system and method for companion software products
KR102127925B1 (ko) * 2013-04-29 2020-06-29 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
US9250761B2 (en) 2013-04-30 2016-02-02 Microsoft Technology Licensing, Llc Auto-grouping of application windows
MX2016000616A (es) 2013-07-18 2017-05-17 Fasetto L L C Sistema y metodo para videos desde multiples angulos.
US10095873B2 (en) 2013-09-30 2018-10-09 Fasetto, Inc. Paperless application
CN103616980B (zh) * 2013-10-19 2017-06-16 广东欧珀移动通信有限公司 一种快速整理桌面图标的方法及终端
US9584402B2 (en) 2014-01-27 2017-02-28 Fasetto, Llc Systems and methods for peer to peer communication
GB2525198A (en) 2014-04-15 2015-10-21 Ibm Controlling an application instance using a graphical user interface
KR102537484B1 (ko) 2014-07-10 2023-05-30 파세토, 인크. 메시지 편집을 위한 시스템들 및 방법들
KR102150961B1 (ko) * 2014-07-31 2020-09-02 삼성전자주식회사 작업 그룹을 이용하는 윈도우 표시 방법 및 장치
US10824291B2 (en) 2014-07-31 2020-11-03 Samsung Electronics Co., Ltd. Device and method of displaying windows by using work group
JP6320241B2 (ja) * 2014-08-22 2018-05-09 アズビル株式会社 エンジニアリング装置および画面表示制御方法
US10437288B2 (en) 2014-10-06 2019-10-08 Fasetto, Inc. Portable storage device with modular power and housing system
JP6695868B2 (ja) 2014-10-06 2020-05-20 ファセット・インコーポレーテッド ポータブル・ストレージ・デバイスのためのシステムおよび方法
US10019970B2 (en) * 2015-02-24 2018-07-10 Barco N.V. Steady color presentation manager
EP3269124B1 (en) 2015-03-11 2020-05-06 Fasetto, Inc. Method and device for web api communications
CN104965697A (zh) * 2015-05-29 2015-10-07 深圳市金立通信设备有限公司 一种窗口显示方法及终端
US10282049B2 (en) 2015-07-08 2019-05-07 International Business Machines Corporation Display screen management system, method and computer program product
US10929071B2 (en) 2015-12-03 2021-02-23 Fasetto, Inc. Systems and methods for memory card emulation
EP4221085A1 (en) 2016-11-23 2023-08-02 Fasetto, Inc. Systems and methods for streaming media
CA3054681A1 (en) 2017-02-03 2018-08-09 Fasetto, Inc. Systems and methods for data storage in keyed devices
US10763630B2 (en) 2017-10-19 2020-09-01 Fasetto, Inc. Portable electronic device connection systems
AU2018374384A1 (en) 2017-12-01 2020-07-23 Fasetto, Inc. Systems and methods for improved data encryption
JP2021522568A (ja) 2018-04-17 2021-08-30 ファセット・インコーポレーテッド リアル・タイム・フィードバックを伴うプレゼンテーションのためのデバイス
US20210397310A1 (en) * 2019-03-07 2021-12-23 Hewlett-Packard Development Company, L.P. Grouping application windows in user interfaces
US20220121325A1 (en) * 2020-10-21 2022-04-21 Lenovo (Singapore) Pte. Ltd. User interface customization per application
US11928320B1 (en) 2022-12-19 2024-03-12 Dropbox, Inc. Storing and arranging application windows for video call scenes
US11960911B1 (en) * 2022-12-19 2024-04-16 Dropbox, Inc. Storing and restoring desktop application scenes

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0511962A (ja) 1990-10-10 1993-01-22 Fuji Xerox Co Ltd ウインドウ管理装置
JPH05189187A (ja) * 1992-01-09 1993-07-30 Fujitsu Ltd マルチウィンドウ表示方式
US5412776A (en) 1992-12-23 1995-05-02 International Business Machines Corporation Method of generating a hierarchical window list in a graphical user interface
US5499334A (en) 1993-03-01 1996-03-12 Microsoft Corporation Method and system for displaying window configuration of inactive programs
US5694561A (en) * 1994-12-12 1997-12-02 Microsoft Corporation Method and system for grouping and manipulating windows
US5856826A (en) 1995-10-06 1999-01-05 Apple Computer, Inc. Method and apparatus for organizing window groups and windows in a table
JPH09128192A (ja) 1995-10-26 1997-05-16 Brother Ind Ltd マルチ画面表示制御装置
EP1016066A4 (en) 1997-03-31 2001-06-13 G & R Associates Inc COMPUTER / TELEPHONE INTEGRATION WITH INTELLIGENT KEYBOARD, AND ASSOCIATED METHOD
US6160554A (en) 1998-03-19 2000-12-12 Hewlett Packard Company Computer file content preview window
US7346850B2 (en) 1998-06-12 2008-03-18 Cygnus Systems, Inc. System and method for iconic software environment management
US6909443B1 (en) * 1999-04-06 2005-06-21 Microsoft Corporation Method and apparatus for providing a three-dimensional task gallery computer interface
JP2001060134A (ja) * 1999-08-24 2001-03-06 Hitachi Ltd マルチウィンドウ制御システム
US6957395B1 (en) * 2000-01-04 2005-10-18 Apple Computer, Inc. Computer interface having a single window mode of operation
US6781611B1 (en) 2000-06-28 2004-08-24 International Business Machines Corporation Method and system for navigating between applications, documents, and files
US7913183B2 (en) * 2002-10-08 2011-03-22 Microsoft Corporation System and method for managing software applications in a graphical user interface
US7176943B2 (en) 2002-10-08 2007-02-13 Microsoft Corporation Intelligent windows bumping method and system
US7159189B2 (en) * 2003-06-13 2007-01-02 Alphabase Systems, Inc. Method and system for controlling cascaded windows on a GUI desktop on a computer
US20050091610A1 (en) * 2003-10-22 2005-04-28 International Business Machines Corporation Selective display of windows on an auxiliary output device
JP4325449B2 (ja) * 2004-03-19 2009-09-02 ソニー株式会社 表示制御装置,表示制御方法,記録媒体
US20050223334A1 (en) * 2004-03-31 2005-10-06 Guido Patrick R Affinity group window management system and method

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9658732B2 (en) 2010-10-19 2017-05-23 Apple Inc. Changing a virtual workspace based on user interaction with an application window in a user interface
CN103229141A (zh) * 2010-10-19 2013-07-31 苹果公司 管理用户界面中的工作空间
CN108319491B (zh) * 2010-10-19 2022-08-09 苹果公司 管理用户界面中的工作空间
US11150780B2 (en) 2010-10-19 2021-10-19 Apple Inc. Updating display of workspaces in a user interface for managing workspaces in response to user input
US10740117B2 (en) 2010-10-19 2020-08-11 Apple Inc. Grouping windows into clusters in one or more workspaces in a user interface
US9542202B2 (en) 2010-10-19 2017-01-10 Apple Inc. Displaying and updating workspaces in a user interface
CN108319491A (zh) * 2010-10-19 2018-07-24 苹果公司 管理用户界面中的工作空间
CN102486714A (zh) * 2010-12-06 2012-06-06 腾讯科技(深圳)有限公司 移动终端浏览器中多窗口管理方法和设备
US10152192B2 (en) 2011-02-21 2018-12-11 Apple Inc. Scaling application windows in one or more workspaces in a user interface
CN104115143A (zh) * 2011-12-07 2014-10-22 谷歌公司 多个选项卡堆叠用户界面
CN104704460B (zh) * 2012-09-07 2018-11-06 谷歌有限责任公司 在电子装置上可叠加的工作空间
CN104704460A (zh) * 2012-09-07 2015-06-10 谷歌有限公司 在电子装置上可叠加的工作空间
CN104571804B (zh) * 2013-10-29 2018-04-17 国际商业机器公司 一种对跨应用程序的文档界面进行关联的方法和系统
CN104571804A (zh) * 2013-10-29 2015-04-29 国际商业机器公司 一种对跨应用程序的文档界面进行关联的方法和系统
CN106462411A (zh) * 2014-05-28 2017-02-22 三星电子株式会社 用于应用和设备的用户界面
CN105183287A (zh) * 2015-09-01 2015-12-23 联想(北京)有限公司 显示处理方法及电子设备
CN114510176A (zh) * 2021-08-03 2022-05-17 荣耀终端有限公司 终端设备的桌面管理方法和终端设备
CN114510176B (zh) * 2021-08-03 2022-11-08 荣耀终端有限公司 终端设备的桌面管理方法和终端设备

Also Published As

Publication number Publication date
CN100552602C (zh) 2009-10-21
JP2008535083A (ja) 2008-08-28
US20060224991A1 (en) 2006-10-05
KR20080001706A (ko) 2008-01-03
EP1866730A4 (en) 2008-11-05
WO2006107324A2 (en) 2006-10-12
EP1866730B1 (en) 2017-09-27
US7581192B2 (en) 2009-08-25
EP1866730A2 (en) 2007-12-19
WO2006107324A3 (en) 2007-04-12

Similar Documents

Publication Publication Date Title
CN100552602C (zh) 用于应用程序窗口归组和管理的方法和装置
CN100549927C (zh) 用于应用程序窗口分组和管理的方法和装置
CN101167122B (zh) 程序窗口的显示方法
US11762634B2 (en) Systems and methods for seamlessly integrating multiple products by using a common visual modeler
CN101180598B (zh) 用于提供过程指南的方法
Calvary et al. A unifying reference framework for multi-target user interfaces
US8204851B2 (en) Method and system for providing a graphical workflow monitor
Florins et al. Graceful degradation of user interfaces as a design method for multiplatform systems
US8037423B2 (en) Apparatus, method and computer-readable medium for organizing the display of visual icons associated with information technology processes
CN100547545C (zh) 用于网络边缘计算的应用拆分的方法和系统
US8924502B2 (en) System, method and computer program product for updating a user session in a mach-derived system environment
CN1936943A (zh) 用于动态地配置基于角色的协作空间的方法和系统
CN101253474A (zh) 用于命令的方法和计算机可读介质
CN101960483A (zh) 来自应用程序页的服务预览和访问
US20090288005A1 (en) Display of Supplementary Information on a Graphical User Interface
CN101223495A (zh) 控制面板架构
CN102436344A (zh) 上下文菜单
CN102446094A (zh) 用于有效地实现系统和桌面配置增强的装置和方法
CN101458746B (zh) 用于在主机上提供第三方安全存储的方法和系统
CN116893807A (zh) 使用浏览器设计机器人流程自动化机器人的系统和方法
US6603492B1 (en) Method and apparatus for generating and displaying a conceal window
JP2007122691A (ja) 情報処理装置、情報処理方法及びプログラム
GB2342735A (en) Transferring information between computer programs
JP2006031301A (ja) 操作監視装置
GB2362485A (en) Computer system that defines navigation of a software application

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: 20150424

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

Effective date of registration: 20150424

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091021

Termination date: 20190825