单轴窗口管理器的制作方法

文档序号:6478125阅读:101来源:国知局
专利名称:单轴窗口管理器的制作方法
技术领域
本公开一般地涉及移动计算技术领域,本公开尤其涉及移动计算装置上的窗口和
应用程序管理。
背景技术
移动计算装置正日益成为更强大的功能装置。许多移动装置是具有多种装置作用 的多功能装置,诸如个人数字助理(PDA)、智能电话、蜂窝电话、便携式媒体播放器、录音机、 摄像机全球定位系统(GPS)、照相机以及电子文件存储器。这样增加的功能性使得移动装置 的用户增加通常以迅速连续方式进行交互的应用程序的数量。然而,为了访问和导航这些 应用程序,传统的移动装置每次对用户可视示出与诸如注册屏幕、文本编辑器或者类似专 用界面的单一应用程序相关的数据。这只能使移动装置的用户在给定的时间浏览或者访问 单一应用程序。此外,应用程序之间的转换要求应用程序从该屏幕上移掉,并由覆盖该屏幕 的新应用程序代替。为了进一步导航每个应用程序,在访问时,传统的移动装置可以使用占 据整个移动装置屏幕或者其它显示区域的下拉式或者上托式菜单。尽管这些菜单接收用户 输入,以通过应用程序导航或者访问不同的应用程序,但是这些菜单占据该移动装置的大 部分屏幕,遮挡了最初显示给用户的应用数据。这限制了移动装置用户浏览应用程序数据 和在应用程序之间导航、或者通过应用程序导航的能力。 移动装置利用专用应用程序提供不同的功能,因此,增加功能就增加了该移动装 置使用的应用程序的数量。然而,小尺寸的大多数移动装置限制了可以用于显示各种应用 程序的屏幕尺寸。这种受限的屏幕尺寸限制了应用程序可以对移动装置用户显示的数据 量,并且限制了用户访问或者与该显示数据交互的能力。这种受限的屏幕尺寸通常要求用 户提供多个输入,以在不同应用程序之间切换,或者在单个应用程序的各部分之间导航。此 外,由于大多数传统的移动装置使用整个显示区域显示单一应用程序,所以为了与特定应 用程序交互,需要多个输入,以在应用程序之间转换。通常,为了访问另一个应用程序,必须 使当前运行的窗口终止。这些传统的移动装置不允许在该显示区域上显示多个应用程序, 因此,用户不能在应用程序之间轻易地转换。此外,移动装置通常具有对于诸如直接操作定 位能力的某些类型输入的限制机制。这些受限输入源和小显示尺寸的结合使得在移动计算 装置上实现现有二维窗口管理方法不切实际。 如上可以看出,缺少一种在应用程序之间迅速导航的,并且在具有尺寸受限显示 区域的移动计算装置上同时查看多个应用程序的系统或者方法。

发明内容
利用在此披露的各种实施例,移动计算装置,例如,手持计算装置、利用操作系统 方法沿该装置屏幕的单轴显示和处理一个或者多个应用程序。通过允许利用单独窗口浏览 和访问多个应用程序,这样限制而且还简化和增强移动计算装置的运行。由于可以沿着单 轴,例如垂直轴,改变该窗口的尺寸和移动该窗口 ,所以可以利用最少的输入浏览和转换多
4个应用程序。因为大多数应用程序和各种内容是自顶向下(top-down)数据流,所以沿垂直 轴改变窗口的尺寸和移动窗口可以在不损害应用程序或者内容显示的情况下,改变窗口的 尺寸。 在一个实施例中,在移动装置的存储器内,初始化在第一方位具有固定尺寸的虚 拟显示空间。例如,初始化该虚拟显示空间,以使水平尺度对应于该移动装置的屏幕的水平 尺度。产生在第一方位具有固定尺寸,而在第二方向具有可变尺寸的至少一个窗口。例如, 至少一个窗口具有固定水平尺度,但是垂直尺寸可变。然后,该至少一个窗口被插入至该虚 拟显示空间,并且可以从该虚拟显示空间显示在该装置屏幕上。 在实施例中,接收来自用户的输入,以沿该装置屏幕的单轴操作窗口。例如,收到 的输入沿该第二方向改变该窗口的尺寸,或者沿该第二方向移动该窗口。收到输入还可以 使不同窗口从该虚拟显示空间内显示在该装置屏幕上,允许用户滚动和浏览包括在该虚拟 显示空间内的窗口。 在一个实施例中,该装置屏幕的一个或者多个区域与一个或者多个诸如使用系统 函数的应用程序的系统应用程序或者用户定义的应用程序相关。因此,与该一个或者多个 系统应用程序不相关的该装置屏幕的区域用于显示其它应用程序。因此,该系统应用程序 显示在同一个屏幕区域上,从而有助于用户访问,同时还允许用户访问附加应用程序。
本说明书中描述的特征和优点没有全部包括在内,特别是,根据附图、说明书以及 权利要求书,对于本技术领域内的技术人员,许多特征和优点是显而易见的。此外,应当注 意,本说明书中使用的语言主要是为了可读性和说明问题而选择的,而不是为了解释或者 限定所公开的主题而选择的。


所公开的实施例具有其它优点和特征,根据具体描述、所附权利要求书以及附图,
该实施例的其它优点和特征更加显而易见,其中 图1示出移动计算装置的一个实施例。
图2示出移动计算装置体系结构的一个实施例。 图3示出例如在移动计算装置上实现单轴窗口管理器(single-axis window manager)的方法的一个实施例。 图4示出在移动计算装置的屏幕上再现的单轴窗口管理器的一个实施例。
图5A和5B示出利用单轴窗口管理器改变窗口尺寸的实施例。
图6示出利用单轴窗口管理器进行窗口移动的一个实施例。
图7示出在单轴窗口管理器中使用的虚拟显示空间的一个实施例。
图8示出在单轴窗口管理器中的预定窗口位置的一个实施例。
图9A和9B示出在单轴窗口管理器内窗口分层的实施例。
具体实施例方式
仅作为说明,附图和下面的描述涉及优选实施例。应当注意,根据下面的讨论,在 此公开的结构和方法的变换实施例易于被看作,在不脱离要求保护的发明原理的情况下, 可以采用的切实可行的选择。
5
现在,详细参考几个实施例,附图示出这几个实施例的例子。请注意,只要可行,类 似或者相同的参考编号就可以用于附图中,并且可以表示类似或者相同的功能。该附图仅 为了说明问题示出所公开的系统(或者方法)的实施例。根据下面的描述,本技术领域内 的技术人员明白,在不脱离在此所描述的原理的情况下,可以采用在此所示结构和方法的 变换实施例。移动计算装置的例子 图1示出具有电话功能的,例如移动电话或者智能电话的,移动计算装置110的一 个实施例。配置该移动计算装置,以宿主和执行用于安排和接收电话呼叫的电话应用程序。 请注意,为了便于理解,以运行在移动电信网上具有电话功能的移动计算装置110的典型 情况,描述在此公开的原理。然而,在此公开的原理可以应用于其它双工(或者多工)电话 情况,诸如具有被配置与公用交换电话网(PSTN)或者具有基于网际协议的语音(VoIP)功 能的数据网络直接进行交互的电话功能的装置。此外,在此公开的原理还可以应用于其它 装置,诸如个人数字助理(PDA)、媒体播放器以及其它类似装置。 该移动计算装置110被配置成便于用户握持的形状系数,例如,个人数字助理 (PDA)或者智能电话的形状系数。例如,在一个实施例中,移动计算装置110可以具有长度 介于7. 5至15. 5厘米之间、宽度介于5至12. 75厘米之间、高度介于0. 64至2. 2厘米之间 的尺度以及介于55与230克之间的重量。 移动计算装置110包括扬声器120、屏幕130、导航区域140以及麦克风160。移 动计算装置110还可以包括一个或者多个开关170、170a、170b(统称为170)。该一个或者 多个开关170可以是按钮、滑动开关或者翘板开关,并且可以是机械的或者固态的(例如, 触感固态开关)。在一个实施例中,该移动计算装置IIO还可以包括可选择的小键盘区域 150。 例如,移动计算装置110的屏幕130例如为240X240、320X320或者320X480 的半透反射式显示器(transflectivedisplay)。例如,屏幕130包括有源阵列液晶显示 器(AMLCD)、薄膜晶体管液晶显示器(TFT-LCD)、有机发光二极管(OLED)、干涉调制显示器 (IMOD)、液晶显示器(LCD)或者其它适当的显示器件。在实施例中,该显示器显示彩色图 像。在另一个实施例中,屏幕130进一步包括触感显示器(例如,压敏(电阻性的)、电敏感 (电容性的)、声敏(SAW或者表面声波)、光敏(红外)),该触感显示器包括用于从用户接 收输入数据、命令或者信息的数字化器。用户可以利用指示笔、手指或者另一个适当输入装 置进行数据输入,诸如在菜单上进行选择,或者输入文本数据(text data)。
配置导航区域140,以控制在移动计算装置110内执行应用程序和通过屏幕130可 视的功能。例如,该导航区域包括x向(例如,x是5)导航环(或者控制杆)145,该x向导 航环提供游标控制、选择以及类似功能。此外,该导航区域140还可以包括选择按钮143a、 143b,以在屏幕130上选择仅在该按钮上看到的功能。此外,导航区域140还可以包括专 用功能按钮147,例如,用于诸如日历、万维网浏览器、电子邮件客户机或者起始屏幕(home screen)的功能。在该例中,导航环145可以通过机械或固态开关、拨盘或者它们的组合予 以实现。小键盘区域150可以是数字键区(例如,拨号面板)或者与字母或者字母数字小 键盘160集成在一起的数字小键盘(例如,具有连续键QWERTY、AZERTY的键盘,或者在键盘 上或者Dvorak键盘上具有其它等效键组)。在一个实施例中,小键盘区域150显示在屏幕 上,并且从触感屏幕130接收输入。
6
尽管未示出,但是应当注意,该移动计算装置110还可以包括扩展槽125。配置 该扩展槽125,以接收并且支持扩展卡(或者媒体卡),该扩展卡可以包括存储卡,诸如 CompactFlash 卡、SD卡、XD卡、Memory Sticks 、 MultiMediaCarcT、 SDIO等等。
典型移动计算装置体系结构概览 接着参考图2,方框图示出具有电话功能的移动计算装置110的体系结构的一 个实施例。作为例子,根据图l所示的移动计算装置描述图2所示的体系结构。移动计 算装置110包括中央处理器220、电源240,以及无线电子系统250。中央处理器220与 音频系统210、照相机212、闪速存储器214、 RAM存储器216、短程无线电模块218(例如, 蓝牙、无线保真(WiFi)部件)、以及窗口管理器222通信。电源240对中央处理器220、 无线电子系统250、以及显示驱动器230供电(可以是接触式的,也可以是电感感应式的 (inductive-sensitive))。电源240可以是电池组(例如,可充电)或者电源线连接或者 部件。 在一个实施例中,窗口管理器222包括软件或者固件指令,用于初始化存储在RAM 216和/或者闪速存储器214内的虚拟显示空间。该虚拟显示空间包括当前正由用户执行 的一个或者多个应用程序和所执行的应用程序的当前状态。该窗口管理器222从用户输入 或者从软件处理或者固件处理中接收显示窗口的请求,并且确定该请求窗口的起始位置。 此外,窗口管理器222接收显示并且修改窗口的命令或者指令,诸如沿一个轴向改变该窗 口的尺寸,沿一个轴向移动该窗口或者改变该窗口的外观或者位置的任何其它命令,并由 此相应修改该窗口。 在一个实施例中,窗口管理器222还监视和控制显示在屏幕130上的数据的实际 位置以及哪些数据显示在屏幕130上。作为对来自中央处理器220的输入的响应,窗口管 理器222改变或者更新数据在屏幕130上的位置,以修改屏幕130的外观。在一个实施例 中,窗口管理器222还监视和控制屏幕亮度,并且将控制信号发送到中央处理器220,以修 改屏幕亮度和该屏幕130使用的功率。 无线电子系统250包括无线电处理器260、无线电存储器262、以及收发信机264。 该收发信机264可以是用于发送和接收信号的两个分立部件或者是既用于发送信号又用 于接收信号的单个部件。在这两种情况下,它均被称为收发信机264。收发信机264的接收 机部分与装置110的无线电信号输入,例如天线,可通信地耦合,通过该天线,从接通的呼 叫(例如,被连接的或者正在进行的呼叫)接收通信信号。收到的通信信号包括从呼叫收 到的并由无线电处理器260处理的而通过扬声器120(或者184)输出的语音(或者其它声 音信号)。该收发信机264的发射机部分与装置110的无线电信号输出,例如,天线,可通信 地耦合,通信信号被送到接通的(例如,连接的(或者耦合的)或者激活的)呼叫。发送的 通信信号包括例如通过装置110的麦克风160接收的、由无线电处理器260处理而通过收 发信机264的发射机发送到接通的呼叫的语音(或者其它声音信号)。
在一个实施例中,利用所描述的无线电通信可以通过语音或者数据网络进行通 信。语音网络的例子包括全球移动通信系统(GSM)、码分多址(CDMA系统、以及通用移动通 信系统(UMTS)。数据网络的例子包括通用分组无线业务(GPRS)、第三代(3G)移动、高速 下行链路分组接入(HSDPA)、以及全球微波存取互通性(Worldwide Interoperability for MicrowaveAccess (Wi恵))。
7
尽管其它部件可以设置无线电子系统250,但是所示的基本部件使得该移动计算 装置有能力执行射频通信,包括电话通信。在实施例中,当电话呼叫被接通时,例如,电话呼 叫被连接或者在进行时,无线电子系统250即使不是要求全部也要求许多部件在中央处理 器220的控制下。该无线电处理器260可以利用串行线路278与中央处理器220通信。
卡接口 224适于与扩展槽125通信。该卡接口 224在该中央处理器与包括在该扩 展槽125内的扩展卡或者媒体卡(media card)之间传送数据和/或者指令。该卡接口 224 还将来自中央处理器220的控制信号送到扩展槽125,以配置包括在该扩展槽125内的扩展 卡或者媒体卡。 在一个实施例中,对应于执行通过例如导航区域140或者开关170通信的应用程 序,中央处理器220(通过程序、代码、指令)执行逻辑。请注意,许多其它部件和变型对于 该计算装置200的硬件体系结构是可以接受的,因此,诸如图2所示的实施例仅示出实施例
的一种实现。
系统运行 图3示出用于实现单轴窗口管理器的方法300的一个实施例的流程图。在实施例 中,通过处理器220执行导致所描述的动作的软件指令,该处理器220实现方法300的各步 骤。本技术领域内的技术人员明白,在硬件和/或者软件或者它们的组合的实施例中,可以 实现一个或者多个方法步骤。例如,用于执行所描述的动作的指令嵌入或者存储在计算机 可读介质内,例如,闪速存储器214或者RAM 216,并且它们可以由诸如中央处理器220的处 理器执行。此外,本技术领域内的技术人员明白,其它实施例可以以不同的顺序执行图3所 示的步骤。而且,其它实施例可以包括与在此描述的步骤不同的步骤和/或者附加步骤。
首先,初始化虚拟显示空间310。在一个实施例中,初始化过程建立窗口外观的默 认参数,诸如颜色、窗口尺寸、分辨率、布局或者其它类似参数。在该处理中,该系统考虑到 屏幕大小和方位,并且可以确定将固定哪个轴,以及相对于被弹出或者显示的后续窗口可 以改变或者超越哪个轴。在一个实施例中,可以预先确定这些初始化参数,并将它们存储在 诸如闪速存储器214的长期记忆存储器内。此外,在初始化期间,RAM存储器216和/或者 闪速存储器214的一部分可以留存,用作虚拟显示空间,以在弹出这些应用程序时,存储与 活动应用程序相关的窗口 。在一个实施例中,初始化过程将与一个或者多个默认应用程序 相关的窗口布置在该虚拟显示空间内,或者对应于先前用户窗口配置,将窗口布置在该虚 拟显示空间内。该虚拟显示空间描述在第一方位具有固定尺寸、而在第二方位具有可变尺 寸的区域,该第二方位的可变尺寸由与该虚拟显示空间相关的可用RAM存储器216或者闪 速存储器214限制。例如,该虚拟显示空间的水平尺寸等于屏幕130的水平尺度,而可变垂 直长度超过屏幕130的垂直尺寸,但是由与该虚拟显示空间相关的RAM存储器216或者闪 速存储器214容量的限制。固定该虚拟显示空间的第一方位的尺寸就简化了对显示在屏幕 130上的窗口尺寸和位置进行操作所需的处理。 可以产生320与不同应用程序相关的窗口。在实施例中,作为对诸如请求弹出应 用程序的用户输入的响应,或者通过诸如作为开始序列或者自举序列的一部分弹出应用程 序的自动处理,产生320窗口。利用运行在该处理器220上的一个或者多个软件或者固件 处理,可以产生320该窗口。所产生320的窗口在第一方位具有固定尺寸,而在第二方位具 有可以通过初始化处理设置的可变尺寸。例如,窗口的水平尺寸等于屏幕130的水平尺度,但是可以在垂直方向改变其尺寸。在一个实施例中,垂直改变尺寸的窗口允许以应用程序 内容的最小失真的修改应用程序。例如,垂直改变尺寸的文本编辑器应用程序对文本数据 流的影响最小,并且即使因为窗口尺寸改变而被部分地遮挡,该文本数据仍是可以理解的。 然后,产生的窗口被插入330虚拟显示空间。在一个实施例中,将产生的窗口插入330虚拟 显示空间包括使该虚拟显示空间的一部分与该产生的窗口相关。 然后,使一个或者多个窗口显示330在移动计算装置屏幕130上,允许用户看到与 该显示的窗口相关的应用程序。在一个实施例中,窗口最初显示330在屏幕130上,并且作 为对来自用户或者软件或者固件处理的输入的响应,可以将该窗口移动到该虚拟显示空间 上在屏幕130上不可见的位置。这样在该虚拟显示空间上堆叠应用程序窗口允许对当前没 有装配在可见屏幕内或者用户当前不需要与其交互的、但是可以迅速与其交互的应用程序 进行快速和方便的访问。作为一种选择,由用户或者软件或者固件处理选择一个或者多个 产生的窗口显示330在屏幕130上。 然后,接收340输入,并利用该输入操作350窗口。在各种实施例中,通过选择按 钮143、小键盘区域150、屏幕130、麦克风160或者任意其它适当的部件,从用户接收340该 输入,或者从运行在处理器220上的软件或者固件处理接收输入。作为对不同输入的响应, 对该窗口和/或者虚拟显示空间做不同操作350。为了说明问题,图3示出不同方式的窗口 操作的例子,诸如改变352窗口的尺寸、移动354窗口、叠放356窗口或者通过虚拟显示空 间滚动358。在一个实施例中,叠放356窗口可以使一个窗口部分地或者完全遮挡另一个窗 口。这允许窗口分层,其中一个窗口显示在另一个窗口的上面。通过虚拟显示空间的滚动 358允许用户或者处理改变显示330在该屏幕上的窗口 。由于该虚拟显示空间沿一个轴无 限延伸,所以它包括当前没有显示330在该屏幕130上的窗口,因此,通过虚拟显示空间的 滚动358可以导致当前不在该屏幕130上的该虚拟显示空间内的窗口的显示330。
图3所示窗口操作的方式仅是例子,并且可以执行任何其它适当的操作,以对一 个或者多个产生的窗口进行操作350。此外,请注意,通过在屏幕上操作触摸屏(或者触 摸屏装置配置)、通过装置上的导航机制(例如,5向导航145、导航按钮143)、通过小键盘 150、或者通过另一种适当的输入技术,可以实现如此所述的操作窗口。例如,用户输入键或 者按钮序列,或者选择屏幕上的图标或者菜单来操作窗口。
典型应用 图4至9B示出根据在此公开的原理,应用程序窗口 ("窗口")行为的例子。图4 示出在移动计算装置屏幕130上再现的单轴窗口管理器的一个实施例。为了说明问题,图 4示出三个显示在屏幕130上的、对应于不同应用程序的窗口 410、430、440。然而,这仅是 一个例子,而在其它实施例中,可以显示较多或者较少的窗口 。 窗口 410、430、440均在第一方向402具有固定尺寸。在一个实施例中,该第一方 向402是水平方向,因此,各个窗口 410、430、440的水平尺度基本上均等于屏幕130的水平 宽度。然而,窗口 410、430、440在第二方向上的尺寸是可变的,因此,不同的窗口 410、430、 440在该第二方向可以具有不同的尺度。在一个实施例中,该第二方向是垂直方向,因此, 窗口 410、430、440可以具有不同的垂直尺寸。因此,在图4中,窗口 410在该第二方向(例 如,垂直方向)具有第一尺度412,而窗口 440在该第二方向具有第二尺度442。
在一个实施例中,一旦产生窗口,首先改变各窗口 410、430、440的尺寸,使屏幕
9130上显示的窗口 410、430、440的数量最大。在一个实施例中,当另外的窗口显示在屏幕 130上时,改变现有窗口的尺寸,以保持在屏幕130上被看得见。作为一种选择,作为对用 户输入的响应,改变一个或者多个窗口 410、430、440的尺寸,允许用户分别定制窗口 410、 430、440的尺寸。在另一个实施例中,如果改变窗口 410的尺寸使其基本上完全占据屏幕 130并且改变另一个窗口 430的尺寸占据整个屏幕130,则将窗口 410和其它窗口的尺寸改 变为较小的尺寸,以允许窗口 430完全占据屏幕130。例如,当新应用程序弹出时,最初显示 在屏幕130上的窗口 410、430、440将改变其在该第二方位上的尺寸(例如,垂直方向上的 尺寸改变),以致除了该新窗口,窗口 410、430、440仍显示在屏幕130上。下面将结合图5A 和5B进一步描述这样改变尺寸的过程。此外,在一个实施例中,请注意,各窗口配置可以被 称为特定状态,例如,全屏幕状态、最小化状态,最大化状态。 图5A和5B示出利用单轴窗口管理器改变窗口尺寸的实施例。为了说明问题,图 5A和5B示出显示在屏幕130上的单个窗口 510。然而,在其它实施例中,多个窗口显示在 屏幕130上。 首先,窗口 510占据由位置520所指示的、屏幕130上的指定面积。作为对收到改 变尺寸命令的响应,窗口 510被重新配置以占据由位置530指示的、屏幕130上的不同尺 寸。在一个实施例中,用户在屏幕上的图标或者菜单上进行选择可以改变窗口 510的尺寸。 作为一种选择,来自小键盘150和/或者导航区域140的用户输入导致改变窗口 510的尺 寸。例如,为了改变窗口尺寸,该虚拟显示空间的不同区域是与窗口 510相关的。因此,改 变尺寸命令在第一方向将窗口 510从位置520变更到位置530,但是不影响在第二方向上的 窗口尺寸。例如,窗口 510的垂直尺度从位置520变更为位置530,但是窗口 510的水平尺 度不发生变化,而是继续占据屏幕130的水平宽度。因此,通过改变尺寸调整了窗口 510的 单一尺度,诸如垂直尺度,以占据屏幕130的较大部分,但是不调整窗口 510的第二尺度,诸 如水平尺度。同样,窗口 510可以从位置530到位置520改变尺寸,以占据屏幕130的较小 部分。 同样,图5B示出改变窗口尺寸,以使窗口510b完全占据屏幕130。首先,窗口 510B占据由位置520B指示的屏幕130的大量面积。作为对改变尺寸命令的响应,在第二 方位(例如,垂直方位)改变窗口 510B的尺寸,以在第二方向完全或者基本上完全占据屏 幕130。为了说明问题,位置530B示出完全占据屏幕130的窗口 510B。在一个实施例中, 收到特定类型的改变尺寸命令,诸如最大化命令或者全尺寸命令,自动将窗口 510B的尺寸 变更到位置530B,这样完全占据屏幕130。 如图5A和5B所示,为了增大或者减小窗口 510占据的屏幕130的面积,改变窗口 510的尺寸。这可以使与被改变尺寸的窗口510相关的应用程序或多或少是可见的。因此, 可以在第二方位上改变不同窗口的尺寸,以占据屏幕130的不同面积(或者垂直部分)。
图6示出利用单轴窗口管理器使窗口移动的一个实施例。为了说明问题,图6示 出显示在屏幕130上的两个窗口 610和620。然而,在其它实施例中,屏幕130显示或多或 少的窗口。 收到移动命令后,窗口 610在屏幕130上的显示位置从位置612变更到位置614。 在一个实施例中,该移动命令使得对窗口 610分配虚拟显示空间的不同区域。尽管窗口 610 在第一方向保持固定,但是它可以沿第二方向移动到任何位置。例如,窗口 610不能在水平方向移动,但是可以在垂直方向移动到任何位置,沿着诸如垂直轴的单轴的这种移动允许 用户或者系统对该虚拟显示空间内不同位置的窗口进行设置或者处理。例如,作为对用户 输入的响应,窗口被移动到该虚拟显示空间内的不同位置,允许用户定制窗口显示。作为一 种选择,作为对诸如应用程序弹出、应用程序关闭、消息接收或者类似使用移动计算装置资 源的系统动作的响应,系统处理将在该虚拟显示空间内自动移动窗口。因此,窗口 610不占 据该虚拟显示空间内的静态区域,而根据收到命令、用户设置或者系统处理,占据该虚拟显 示空间内的可变区域。在一个实施例中,一个分组窗口占据该虚拟显示空间内的固定区域, 而且不能移动。例如,与诸如系统函数的选择的应用程序相关的窗口可以常驻在该虚拟显 示空间内的固定区域内,诸如与屏幕130的顶部或者底部相关的区域内,而与其它应用程 序相关的窗口可以在该虚拟显示空间内自由移动。在一个实施例中,常驻在该虚拟显示空 间的不同区域内的应用程序以不同层显示在屏幕130上,以致该虚拟显示空间的一个区域 内的应用程序显示在该虚拟显示空间的另一个区域内的应用程序的顶部之上。下面将结合 图8进一步描述一个分组窗口的这种固定位置。 尽管图6示出在屏幕130的边界内移动的窗口 610,但是作为对收到移动命令的 响应,窗口 610可以移动到屏幕130边界之外的该虚拟显示空间内的位置,这样将窗口 610 移动到该可见屏幕130区域之外。在一个实施例中,用户选择屏幕上的图标或者菜单将窗 口 610从屏幕130移动到屏幕130之外的该虚拟显示空间上的位置。作为一种选择,来自 键盘150和/或者导航区域140(例如,预定键序列或者按钮序列)的用户输入将窗口 610 移动到屏幕130的区域之外。因此,窗口 610可以移动到屏幕130上的不同位置,并且还可 以移动到屏幕130的该可见区域之外的该虚拟显示空间内的位置。 在一个实施例中,移动窗口 610导致窗口 620做相应移动。例如,随着窗口 610移 动,窗口 620同样移动,以使窗口 610和窗口 620互相保持在相同的相对位置上。这限制窗 口自由移动,并且通过保存窗口的相对位置,简化对窗口的访问。例如,如果窗口 610和窗 口 620是互相相邻的,则移动窗口 610也就移动了窗口 620,以致窗口 610和窗口 620保持 互相相邻。 作为一种选择,移动窗口 610不影响窗口 620。如图6所示,即使当窗口 610被移 动时,窗口 620仍保持在同一个位置。通过单独移动不同窗口 610和620,可以调整屏幕130 的内容,以适合各个用户的偏好、应用程序设置或者系统配置。 图7示出用于单轴窗口管理器的虚拟显示空间的一个实施例。该虚拟显示空间 700在第一方向具有固定尺寸,但是在第二方向上延伸,直到其尺寸小于或者等于与该虚拟 显示空间700相关的RAM存储器216或者闪速存储器214的容量。例如,该虚拟显示空间 700具有对应于屏幕130的宽度的固定水平尺度,但是在垂直方位上延伸,最大达到与该虚 拟显示空间700相关的RAM存储器216或者闪速存储器214的容量。这样将要产生的窗口 的数量限制在与该虚拟显示空间700相关的RAM存储器216或者闪速存储器214的容量, 而不是将产生的窗口的数量限制到在屏幕130上可以显示的数量。在各种实施例中,产生 窗口,并且将它插入与该虚拟显示空间700相关的RAM存储器216或者闪速存储器213内 的各个位置。例如,新产生的窗口与和该虚拟显示空间700相关的RAM存储器216或者闪 速存储器214内的地址相关,以致当显示时,使新产生的窗口显现在屏幕130的下部。作为 一种选择,新产生的窗口与和该虚拟显示空间700相关的RAM存储器216或者闪速存储器
11214内的地址相关,因此,当显示时,它们显现在屏幕130的顶部或者显现在屏幕130的中 心部分。在另一个实施例中,产生的窗口被插入与该虚拟显示空间700相关的RAM存储器 216或者闪速存储器214的存储地址中。然而,请注意,在一个实施例中,根据与该虚拟显示 空间700相关的RAM存储器216或者闪速存储器214的容量,窗口的数量可以是一定的或 者预先确定的。可以利用传统的存储管理技术存取该虚拟显示空间700内的不同窗口。例 如,各种窗口与和该虚拟显示空间700相关的RAM存储器216或者闪速存储器214内的不 同存储地址相关,因此,访问存储地址可以将与访问的存储地址相关的窗口显示在屏幕130 上。 作为对收到输入的响应,当显示在屏幕130上的窗口从屏幕130移开、但是仍保留 在该虚拟显示空间700内时,位于该虚拟显示空间700内、但是没有位于屏幕130内的窗口 显示在屏幕130上。本质上,对于该虚拟显示空间700,屏幕130作为窗口 ,使得一个分组的 虚拟显示空间700可见。作为对输入的响应,调整显示在屏幕130上的该分组的虚拟显示 空间700。 在图7所示的例子中,窗口 720和窗口 730显示在屏幕130上,而窗口 710和窗 口 740位于该虚拟显示空间700内,但是不显示在屏幕130上。在一个实施例中,收到的 输入通过虚拟显示空间700滚动,因此,不同窗口显示在屏幕130上。例如,通过虚拟显示 空间700滚动可以从屏幕130上消除窗口 720,而使窗口 740显示在屏幕130上。此外,通 过将窗口 730移动到窗口 720先前占据的位置,滚动改变窗口 730的位置。作为另一个例 子,不同的滚动输入可以使窗口 720和窗口 730移动到窗口 740,而将窗口 710显示在屏幕 130上。因此,在一个实施例中,各窗口一致滚动,以致作为对滚动命令的响应,当前显示的 窗口以相同方向移动。因此,收到滚动命令使该虚拟显示空间700的不同区域显示在屏幕 130上,以致在不关闭当前显示窗口或者改变当前显示窗口的尺寸的情况下,可以看到附加 窗口 。这样有利于使多个窗口 720、730同时和/或者顺序显示在屏幕130上,而不会因为 叠放窗口而遮挡内容,因此,两个窗口 720、730的一部分占据屏幕130的同一个区域。
图8示出在单轴窗口管理器中预定窗口位置的一个实施例。在一个实施例中,与 特定应用程序相关的窗口占据屏幕130上的指定区域。通过将它们相容放置在预定位置, 这样有助于使用特定应用程序。 在一个实施例中,与系统级应用程序相关的窗口被定位在屏幕130的指定或者预 定区域内。系统级应用程序的例子包括应用程序启动器(a卯lication launcher)、联系 人数据库、通知应用程序、键盘守卫(keyguard)、电池电量指示器、信号强度指示器、电话应 用程序、或者另一个用于调整或者使用移动计算装置110的系统级功能或者特性的应用程 序。作为一种选择,用户指定系统级应用程序。例如,用户可以指定文本编辑器、电子邮件 客户机、日历以及万维网浏览器是系统级应用程序,以使与该系统级应用程序相关的窗口 或者各窗口显现在屏幕130的特定区域内。在另一个实施例中,该系统级应用程序包括用 户选择的应用程序和使用系统功能或者特性的应用程序的组合。请注意,在一个实施例中, 通过菜单可以选择所定义的系统级应用程序,该菜单允许用户从可能的系统级应用程序候 选者清单中进行选择。 在图8所示的例子中,窗口 800和窗口 810与系统级应用程序相关,因此,每个窗 口都显现在屏幕130的预定区域内。由于窗口 830与系统级应用程序无关,所以它可以在
12屏幕130上移动。然而,窗口 800和810保留在指定位置,提供从屏幕130上的同一个位置 对该系统级应用程序的相容访问。在一个实施例中,多个窗口 800、810与不同的系统级应 用程序相关,因此,屏幕130的不同区域可以用于访问不同的系统级应用程序。例如,窗口 810是与信号强度指示器和电池电量指示器相关的,因此,这些应用程序持久显示在窗口 810内。窗口 800则与诸如状态通知程序或者电话应用程序的一组不同系统级应用程序相 关,以致这些应用程序相容地显现在窗口 800所指示的屏幕130的区域中。
图9A和9B示出在单轴窗口管理器内分层窗口的实施例。在一个实施例中,一个 或者多个窗口可以层叠,以致第一窗口部分地遮挡或者覆盖第二窗口 。这允许将窗口分层, 以使一个窗口显示在另一个窗口顶部之上。在一个实施例中,配置特定窗口 ,诸如与系统级 应用程序相关的窗口或者用户指定窗口,以显现在其它窗口顶部之上。这样使窗口具有优 先权,以致对用户优先显示特定内容,以使用户瞬间看到特定系统应用程序并与该系统应 用程序交互,而不影响现有应用程序窗口的布局和排列。例如,用户可以使用下拉式菜单, 该下拉式菜单临时遮挡位于该菜单下面的其它应用程序,但是不调整或者影响该应用程序 窗口 ,因此,当不再使用该菜单时,该应用程序窗口不发生变化。 例如,在图9A中,窗口 910A和930被分层。在一个实施例中,窗口 910A与系统级 函数相关,因此,配置它,以显现在其它窗口的顶部之上。因此,窗口 910A至少遮挡窗口 930 的一部分,允许不间断地存取与窗口910A相关的(各)系统级函数。然而,因为这样分层, 所以窗口 930的一部分以及窗口 910A保持可见,也允许访问与窗口 930相关的应用程序。
图9B通过示出例子示出窗口分层的另一个实施例,在该例子中,改变窗口 910A的 尺寸,以基本上完全占据屏幕130。在一个实施例中,因为窗口 910A是与系统级应用程序相 关的,所以窗口 910A遮挡其它显示的窗口。因此,当窗口 910A完全占据屏幕130时,与系 统级应用程序无关的窗口 930和窗口 920被完全遮挡。在一个实施例中,即使窗口 910A和 910B都与系统级函数相关,窗口 910A也完全遮挡窗口 910B。作为一种选择,窗口 910B未 被遮挡,而显现在窗口 910A的顶部之上。在另一个实施例中,改变窗口 910B的尺寸,以占 据屏幕130上未被窗口 910A占据的区域,这样实际上是将该屏幕分割为窗口 910A和窗口 910B的两个区域。在一个实施例中,用户指定与系统级函数相关的哪个窗口将显示在与系 统级函数相关的其它窗口之上。作为一种选择,预定规则规定与系统级函数相关的哪个窗 口显现在与系统级函数相关的另一个窗口的上面。例如,利用系统级函数或者特征与系统 级函数相关的窗口显现在与用户定义的系统级函数相关的窗口的上面。在一个实施例中, 窗口 910A与启动器应用程序相关,以致当用户访问该启动器应用程序时,窗口 910A的尺寸 改变为基本上填充屏幕130。 因此,所公开的窗口管理器使得多个应用程序同时在移动计算装置屏幕上可见。 这样允许用户根据需要在应用程序之间迅速切换。该窗口管理器还允许用户记录和/或者 改变各种窗口的尺寸,以适合特定任务或者偏爱(例如,同时浏览电子邮件和相关聊天消 息)。此外,通过将窗口装载到比该屏幕大的虚拟显示空间内,不要求立即使用的应用程序 可以仍在运行,并且可以被轻而易举地访问,而不占据部分屏幕区域。此外,窗口管理器使 该屏幕的区域与特定应用程序相关,这样可以快速访问这些特定应用程序。
上面所做描述的一些部分根据算法处理或者运算描述实施例。数据处理技术领域 内的技术人员通常利用这些算法描述和说明将其工作的实质内容有效传达给本技术领域
13内的其它技术人员。尽管利用函数、计算或者逻辑描述了这些运算,但是这些运算被认为由 包括处理器或者等效电路执行的指令、微码等等的计算机程序予以实现。此外,还证明,通 常便于将函数运算方法用作模块,而不丧失一般性原则。所描述的运算及其相关模块可以 被嵌入软件、固件、硬件或者它们的任意组合中。 在此使用的任何涉及"一个实施例"或者"实施例"均指,结合该实施例描述的特 定单元、特征、结构或者特性包括在至少一个实施例中。在该说明书各位置出现的短语"在 一个实施例中"不一定都指同一个实施例。 利用词语"耦合"和"连接"以及它们的派生词,描述了一些实施例。应当明白,这 些术语并不表示它们互为同义词。例如,可以利用术语"连接"描述一些实施例,以表示两个 或者更多个单元互相直接物理接触或者电接触。在另一个例子中,利用术语"耦合"描述一 些实施例,以表示两个或者更多个单元是直接物理接触或者电接触。然而,术语"耦合"还 意味着两个或者更多个单元不互相直接接触,但是它们仍互相配合或者互相作用。该实施 例并不局限于这种情况。 在此使用的术语"包括"、"包含"、"含有"、"含括"、"具有"、"有"或者它们的任何其 它变型均用于指非排他性包括。例如,包括一系列单元的处理、方法、产品或者设备不一定 局限于只有这些单元,而且可以包括没有明确列出的或者这些处理、方法、产品或者设备固 有的其它单元。此外,除非有明确相反地说明,"或者"指包含的或,而非指排他性的或。例 如,条件A或者B由下面中的任何一项满足A成立(或者存在),而B不成立(或者不存 在),A不成立(或者不存在),而B成立(存在),以及A和B二者都成立(或者存在)。
此外,在此采用术语"一个"描述实施例的单元和部件。这样做只是为了方便并给 出所披露内容的一般意义。应当认为该描述包括一个或者至少一个,并且该单数形式也包 括多个,除非另外明确指出。 阅读了所披露的内容后,本技术领域内的技术人员明白,根据在此披露的原理,单 轴窗口管理器使用的系统和处理的附加变换结构和功能设计可以用于移动计算装置或者 具有有限显示区域的其它装置。因此,尽管在此示出并描述了特定实施例和应用,但是应当 明白,本发明并不局限于在此披露的具体结构和部件,并且在不脱离所附权利要求书限定 的本发明实质范围的情况下,可以对在此披露的方法和设备的布置、操作和细节进行各种 修改、变更和变型,这对于本技术领域内的技术人员是显而易见的。
权利要求
一种用于配置移动装置的显示器件的方法,该方法包括初始化移动装置的存储器中在第一方位具有固定尺寸的虚拟显示空间;产生在该第一方位具有固定尺寸的至少一个窗口,该至少一个窗口在第二方位具有可变尺寸;将该至少一个窗口插入该虚拟显示空间;以及将该至少一个窗口显示在显示器件上。
2. 根据权利要求1所述的方法,进一步包括作为对收到输入的响应,在该第二方位改变至少一个窗口的尺寸。
3. 根据权利要求1或者2所述的方法,进一步包括作为对收到输入的响应,通过在该虚拟显示空间中滚动,以使至少两个不同窗口显示 在该显示器件上。
4. 根据权利要求3所述的方法,其中从该移动装置的导航键接收该输入。
5. 根据上述权利要求中的任一项所述的方法,进一步包括作为对收到输入的响应,将窗口从在该虚拟显示空间内的第一位置移动到该虚拟显示 空间内的第二位置。
6. 根据上述权利要求中的任一项所述的方法,其中该至少一个窗口的第一分组与移动 装置的至少一个系统应用程序相关。
7. 根据权利要求6所述的方法,其中该至少一个窗口的第二分组与移动装置的至少一 个通用应用程序相关。
8. 根据上述权利要求中的任一项所述的方法,其中至少一个窗口被插入至该虚拟显示 空间内的固定位置。
9. 根据上述权利要求中的任一项所述的方法,进一步包括作为对收到输入的响应,叠放第一窗口和第二窗口,以致该显示器件上的该第一窗口 遮挡该第二窗口的一部分。
10. —种具有存储指令的计算机可读介质,该指令当由处理器执行时使该处理器执行 权利要求1至9中的任一项所述的方法。
11. 一种移动计算装置,运行以执行多个应用程序,该移动装置包括 计算装置屏幕;窗口管理器,运行以初始化在该移动装置的存储器中的虚拟显示空间,该虚拟显示空 间包括一个或者多个窗口 ,该窗口在第一方位具有固定尺寸,而在第二方位具有可变尺寸; 以及用于管理在该装置屏幕上显示的所述窗口。
12. 根据权利要求11所述的移动装置,其中该窗口管理器运行,以作为对收到输入的 响应,将窗口从该虚拟显示空间内的第一位置移动到该虚拟显示空间内的第二位置。
13. 根据权利要求11或者12所述的移动装置,其中该窗口管理器运行,以作为对收到 输入的响应,在该第二方位改变窗口的尺寸。
14. 根据权利要求11至13中的任一项所述的移动装置,其中该窗口管理器运行,以作 为对收到输入的响应,通过该虚拟显示空间滚动,以使至少一个不同窗口显示在该装置屏 幕上。
15. 根据权利要求14所述的移动装置,其中从该移动装置上的导航键接收该输入。
16. 根据权利要求11至15中的任一项所述的移动装置,其中该窗口管理器运行,以使 至少一个窗口与该装置屏幕的预先确定的区域相关。
17. 根据权利要求11至16中的任一项所述的移动装置,其中该窗口管理器运行,以作 为收到输入的响应,使第一窗口和第二窗口叠放,以致该第一窗口遮挡该第二窗口的一部 分。
18. 根据权利要求11至17中的任一项所述的移动装置,其中该移动装置包括移动计算 装置。
全文摘要
公开了一种用于在移动计算装置上实现单轴窗口管理器,以利用有限输入能力,浏览和访问有限显示区域上的多个应用程序的系统和方法。该移动计算装置初始化在第一方位具有固定尺寸的虚拟显示空间。例如,初始化该虚拟显示空间,以使其水平尺度等于该显示屏幕的水平尺度。产生至少一个其在该第一方位具有固定尺寸,而在第二方向具有可变尺寸的窗口。例如,该至少一个窗口具有固定水平尺度,但是在垂直方向,尺寸可变。然后,该至少一个窗口被插入至该虚拟显示空间并显示在显示器件上。
文档编号G06F3/048GK101784983SQ200880104215
公开日2010年7月21日 申请日期2008年6月30日 优先权日2007年7月6日
发明者保罗·默瑟 申请人:帕姆公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1