应用窗口的自动分组的制作方法
【专利说明】
【背景技术】
[0001]窗口化(windowing)系统是计算技术领域中公知的。窗口化系统常常为用户提供便利来用可在显示器上显示的窗口交互地管理应用(程序)。诸如将应用打开、关闭、最小化、最大化、调整大小、切换和布置的基本功能在一些窗口化系统中是常见的。一些窗口化系统可以针对在显示器上同时显示的各个应用允许多个窗口。
[0002]仅由发明人认识到的一个问题是:有时候由于系统或用户活动而导致用户对显示器上应用窗口的布置或布局可能会丢失或被覆盖。当稍后从显示器驱逐(evict)这些窗口时,用户花在布置窗口上的时间和努力可能就失去了。此外,有时候用户会受益于能够作为逻辑组来操纵一组窗口,其可能响应于诸如启动应用这样的隐式动作。
[0003]以下论述了对应用窗口进行分组的技术。
【发明内容】
[0004]包括以下概述只是为了介绍在以下详细说明中论述的一些概念。本概要不是详尽的,并且不打算界定所要求保护的主题的范围,所要求保护的主题的范围由最后给出的权利要求来阐述。
[0005]本文描述了用于自动形成应用窗口组的技术。这些技术可以用执行窗口化系统的计算设备来执行,所述窗口化系统具有用户界面元素,用户可以与所述用户界面元素交互以管理在计算设备上执行的应用。每个应用可以对应于单独的进程和应用窗口。可以确定已发生了会从显示器驱逐或遮挡目标应用的应用窗口的操作,并且作为响应,可以自动形成应用组。应用组可以具有被驱逐的目标应用的标记。可以将应用组提供给用户界面元素,并且当用户与用户界面元素交互时,用户界面元素针对应用组和除了目标应用以外的应用两者显示用户可选择的图形应用指示符。
[0006]下面将参考以下结合附图考虑的详细说明来阐明许多伴随的特征。
【附图说明】
[0007]从结合附图来阅读的以下详细说明中,将更好地理解本说明,其中在随附的说明中,同样的附图标记用于表示同样的部分。
[0008]图1示出了具有操作系统的计算设备,所述操作系统管理应用进程并在显示器上显示对应的窗口。
[0009]图2示出了由平铺式窗口化系统提供的示例窗口布局。
[0010]图3示出了可以手动执行或作为系统事件的结果而执行的窗口操作。
[0011 ] 图4示出了用于促使对应用窗口的自动分组的平铺式窗口化系统的细节。
[0012]图5示出了由平铺式窗口化系统提供的或实现在平铺式窗口化系统顶部的图形用户界面。
[0013]图6示出了对应用组的另一使用。
[0014]图7示出了多显示器实施例。
[0015]图8示出了可以在其上实现上述实施例的计算设备的示例。
【具体实施方式】
[0016]以下论述的实施例涉及形成应用窗口组并允许用户以可能与应用窗口自身交互的方式与组交互。论述将起始于窗口化系统的概述。接下来论述平铺式窗口化系统中的布局和操作,然后描述可以如何以及何时形成应用组。然后讨论了将应用组整合到窗口化系统中,连同阐明了用户可以如何以类似的方式与应用组和应用窗口交互。
[0017]图1示出了具有操作系统102的计算设备100,所述操作系统102管理应用进程104并在显示器108上显示对应的窗口 106。计算设备100可以是稍后参考图8描述的多种多样类型中的任何一种类型。可以假定计算设备100至少具有存储装置和用于执行操作系统102和应用进程104的处理器。尽管可能存在个体窗口表示多个进程的窗口化系统并且还有不具有窗口的进程,但是为了易于论述,本文假定应用进程104各自至少具有对应的窗口 108。进程是公知的操作系统对象,他们是被分开管理的执行单元,典型地在由操作系统管理的存储器(堆和/或栈存储器)中具有进程标识符,并且进程可以在由操作系统维持的进程标识符等的进程表中被管理。
[0018]图2不出了由平铺式窗口化系统提供的不例窗口布局。第一不例布局120不出了第一应用窗口 122,所述第一应用窗口 122基本上占用了显示器108或由窗口化系统管理的被管理显示区124。第二示例布局126反映了第二应用窗口 128的添加。平铺式窗口化系统自动管理窗口布局以使当前显示的应用窗口 122、128在某种程度上最大化对显示器108的占用,其中一些显示器不动产(real estate)可能用于非窗口图形,比如美学边缘、诸如搜索栏或应用选择列表这样的非应用用户界面元素、用于调整应用窗口的大小的分隔物等等。平铺式窗口管理器可以插入分隔物130,分隔物130可以被用户移动以调整与分隔物130相邻的应用窗口的大小。
[0019]在一个实施例中,平铺式窗口化系统以防止应用窗口遮挡其他应用窗口的方式来管理窗口的布局,可能有例外,比如对手动窗口重新布置进行预览、拖拽窗口以及其他短暂状况。
[0020]第三示例布局132示出已插入了第三应用134。利用平铺式布局管理,用户可能只需要指明要被插入的第三应用窗口 134和/或可能地指明用于插入第三应用窗口 134的缝隙或位置;平铺式窗口管理器可以自动调整所显示的应用窗口的大小或采取其他措施来适应新的应用窗口。第四示例布局136和第五示例布局138示出了可以使用的屏幕不动产的其他划分。为了易于论述,以下论述的示例示出了仅使用单个水平行应用窗口的平铺。
[0021]图3示出了可以手动执行或作为系统事件的结果而执行的窗口操作。在给定显示器108上的初始窗口布置的情况下,平铺式窗口化系统140可以关闭应用A,导致应用B被自动调制大小以占用显示器108。应用可能是被手动关闭的,或者可能由于诸如错误之类的系统事件而被关闭的。当把应用C插入到初始布局中时,平铺式窗口化系统140自动调整应用A和B的大小以容纳新显示的应用C的应用窗口。可以例如通过对分隔物130的用户操纵来执行调整大小操作,以改变对应用窗口的显示空间分派。如果当前显示的应用或另一应用进入全屏模式,则从显示器108驱逐其他应用窗口。用户可以选择应用(例如应用C)来替代所显示的任何其他应用。
[0022]可以看出,各种各样的起源于用户或起源于系统的动作可以触发将应用窗口从显示器108去除。例如,休眠的离屏应用可能接收唤醒信号并自动进入全屏模式(进而取代应用窗口),或者双显示器系统可能失去一个显示器,窗口化系统可能将这解释为应当关闭所失去的显示器上的窗口的事件。或者,应用可能启动另一应用并且所启动的应用可能占用显示器。
[0023]当从显示器108驱逐应用时,可以以不同方式来处理应用。在一些实现中,可以将从显示器108驱逐的应用挂起(suspend)。在其他实现中,应用可以按照定制的方式对于被取代做出响应。例如,一个应用可以通过终止来响应“不活跃”信号,而另一应用可以通过继续在后台执行来响应。如以下将进一步描述的,窗口化系统可以提供用户界面元素来允许用户快速重新激活隐藏的或休眠的应用、打开收藏夹的或近期的应用、在不同应用之间切换等等。窗口化系统的这些相同的特征也可以处理应用分组或应用组对象,其例如可以由显式用户指令形成或者隐式地由导致从显示器驱逐应用窗口的用户或系统动作形成。
[0024]图4示出了用于促使对应用窗口进行自动分组的平铺式窗口化系统140的细节。初始地,在显示器108上显示应用窗口。在图4的示例中,显示应用A和B。平铺式窗口化系统140执行进程162,进程162涉及首先接收已发生分组事件的通知或信号。形成当前显示的应用的标记并将其存储在组存储