CN103282955B - 当设备打开时显示桌面 - Google Patents

当设备打开时显示桌面 Download PDF

Info

Publication number
CN103282955B
CN103282955B CN201180058017.7A CN201180058017A CN103282955B CN 103282955 B CN103282955 B CN 103282955B CN 201180058017 A CN201180058017 A CN 201180058017A CN 103282955 B CN103282955 B CN 103282955B
Authority
CN
China
Prior art keywords
display
window
desktop
equipment
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.)
Active
Application number
CN201180058017.7A
Other languages
English (en)
Other versions
CN103282955A (zh
Inventor
S.瑟帕尔
P.E.里维斯
A.德帕兹
R.W.施罗克
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.)
Flex Electronics Id Co ltd
Original Assignee
Flex Electronics Id Co ltd
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 Flex Electronics Id Co ltd filed Critical Flex Electronics Id Co ltd
Priority claimed from US13/248,138 external-priority patent/US20120081318A1/en
Publication of CN103282955A publication Critical patent/CN103282955A/zh
Application granted granted Critical
Publication of CN103282955B publication Critical patent/CN103282955B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

提供用于响应于打开设备来显示多屏幕设备的桌面的系统和方法。窗口堆栈可以基于设备的方向而改变。系统可以接收将设备从关闭状态转换到打开状态的方向改变。当打开时,堆栈中之前创建的可以扩展到构成设备的两个或者更多个显示器区域。当设备被关闭时,桌面扩展以填充显示器区域并且在第二显示器上被显示。

Description

当设备打开时显示桌面
对相关申请的交叉引用
本申请根据35U.S.C.§119(e)要求以下美国临时申请的优先权:第61/389,000号、于2010年10月01日提交的题为“双显示器窗口系统”;第61/389,117号、于2010年10月01日提交的题为“多操作系统便携式对接设备”;第61/389,087号、于2010年10月01日提交的题为“平板电脑用户界面”;第61/458,150号、于2010年11月17日提交的题为“双屏幕电子邮件客户端”;第61/539,884号、于2011年09月27日提交的题为“移动设备”。针对前述文档中的每个的全部教导以及全部目的,以引用的方式将其全文合并在此。
背景技术
相当数量的手持计算设备,诸如手机、平板电脑和电子阅读器使用触摸屏幕显示器,以不仅提供给用户显示信息,而且还从用户界面命令接收输入。虽然触摸屏幕显示器可以增加手持设备的可配置性,并提供种类繁多的用户界面选项,这种灵活性通常是有代价的。尽管对用户来说是灵活的,但是触摸屏幕的提供内容和接收用户命令的双重用途,可能会混淆显示并造成视觉上的混乱,从而导致用户受挫和生产力的损失。
手持式计算设备的小巧的外形需要所显示的图形和供接收输入的区域之间的谨慎的平衡。一方面,小的显示器限制了显示空间,这可能会增加解释操作或结果的难度。另一方面,虚拟键盘或其它用户界面方案被叠加到或相邻定位到正在执行的应用程序,这需要应用程序被挤压到显示器的更小的部分。
对于单显示触摸屏幕设备来说,这种平衡操作是特别困难的。单显示触摸屏幕设备被他们的有限的屏幕空间所削弱。当用户通过单显示器将信息输入到设备中,特别是当要求显示器和界面之间复杂互动时,解释显示器中的信息的能力可能被严重阻碍。
发明内容
需要双多显示器的手持计算设备,可提供与现有的单个显示器手持计算设备相比增强的功能和/或通用性。这些和其它的需要由本公开的各个方面、实施例和/或配置解决。此外,尽管本公开以示例性实施例提出,应该被理解的是,本公开的各个方面可以单独要求权利。
在实施例中,提供了一种计算机可读介质,它包括使得处理器为多屏幕设备管理窗口堆栈的指令。计算机可执行指令包括接收多屏幕设备中的方向改变的指令,其中方向改变使得多屏幕设备从关闭状态转换到打开状态,其中,在关闭状态,第一显示器时活动的,并且在打开状态,第一显示器和第二显示器都是活动的;确定桌面是否应该在第二显示器上被显示的指令;以及,在确定桌面应该在第二显示器上被显示之后,在第二显示器上显示桌面并且在第一显示器上显示第一窗口的指令。
在另一个实施例中,设备包括至少两个显示器、存储器以及与存储器和至少两个显示器中的每个通信的处理器。设备可操作来提供符合显示,其中,所述复合显示器在关闭状态包括一个触摸敏感显示器;接收多屏幕设备的方向改变,其中所述方向改变使得多屏幕设备从关闭状态转换到打开状态,其中,在打开状态,复合显示器包括与第一触摸敏感显示器相关联的第一部分以及与第二触摸敏感显示器相关联的第二部分;扩展桌面以覆盖该复合显示器;以及确定第一窗口在复合显示器的第一部分被显示并且桌面在所述复合显示器的第二部分被显示;以及在第二触摸敏感显示器上显示桌面并且在第一触摸敏感显示器上显示第一窗口。
在另一个实施例中,为多屏幕设备呈现显示的方法,包括:当多屏幕设备在关闭状态时,提供至少扩展第一触摸显示器部分的复合显示器;当设备在关闭状态,在窗口堆栈的顶部显示第一窗口;接收多屏幕设备的方向改变,其中方向改变是从关闭状态到打开状态的转换;改变复合显示器以扩展多屏幕设备的第一触摸敏感显示器和第二触摸敏感显示器的至少部分,其中,复合显示器的第一部分与第一触摸敏感显示器相关联,复合显示器的第二部分与第二触摸敏感显示器相关联;确定桌面与复合显示器相关联;确定桌面与复合显示器相关联;修改桌面以扩展到复合显示器上;确定第一窗口在复合显示器的第一部分的窗口堆栈的顶部;确定桌面在复合显示器的第二部分中的窗口堆栈的顶部;在第一触摸敏感显示器上显示第一窗口;以及在第二 触摸敏感显示器上显示桌面。
本公开可以提供许多的优点,这取决于特定的方面、实施例中和/或配置。窗口堆栈布置提供用户容易理解的保持窗口的逻辑布置的优点。“一副牌”布置允许用户快速导航两个显示器之间的活动的和非活动的窗口。这些和其它优点从本公开看将是显而易见的。
短语“至少一个”、“一个或多个”以及“和/或”是开放式的表述,它在操作中既是连接的也是分离的。例如,每个表述“A、B和C中的至少一个”、“A、B、或C中的至少一个”、“A、B、和C中的一个或多个”,“A、B或C中的一个或多个”和“A、B、和/或C”是指一个单独的A、单独的B、单独的C、A和B一起、A和C一起、B和C一起、或者A、B和C一起。
术语“一”或“一个”实体是指一个或多个该实体。因此,术语“一”(或“一个”),“一个或多个”和“至少一个”在本文中可以互换使用。还应该指出的是术语“包括”,“包含”,以及“具有”可以互换使用。
如本文所使用的术语“自动”及其变体是指当进行处理或操作时无实质人工输入的任何处理或操作。但是,即使处理或操作的执行使用了实质的或非实质的人工输入,如果处理或操作执行之前接收到输入,处理或操作也可以是自动的。人工输入被认为是实质的,如果这种输入影响如何执行处理或操作。同意处理或操作的执行的人工输入不被认为是“实质的”。
本文所用的术语“计算机可读介质”指的是参与提供指令给处理器以供执行的任何有形存储和/或传输介质。这种介质可以采取许多形式,包括但不限于,非易失性介质,易失性介质和传输介质。非易失性介质包括,例如,NVRAM或磁盘或光盘。易失性介质包括动态存储器,例如主存储器。计算机可读介质的常见形式包括,例如,软盘、柔性盘、硬盘、磁带或任何其它磁介质、磁光介质、CD-ROM、任何其它光学介质、穿孔卡片、纸带、具有孔的形态的任何其它物理介质、RAM、PROM和EPROM、FLASH-EPROM、类似存储卡的固态介质、任何其它存储器芯片或盒、下文描述的载波、或计算机可以从中读取的任何其它介质。电子邮件的数字文件附件、或其他自带信息档案或档案组被认为是相当于有形存储介质的分布式介质。当计算机可读介质被配置为数据库时,应当理解,该数据库可以是任何类型的数据库,诸如关系的、层次的、面向对象的等。因此,本公开被认为包括有形存储介质或分布式介质以及现有技术认可的等同物和后续介质,在其中存储实现本公开的软件。
术语“桌面”是指用于描述系统的比喻。桌面通常被认为是“表面”,它通常包括图片、图标、窗口小部件、文件夹等,它可以激活示出的应用程序、窗口、柜、文件、文件夹、文挡以及其他图形。图标一般都是可选择的,以通过用户界面交互来启动任务,从而允许用户执行应用程序或进行其它的操作。
术语“屏幕”、“触摸屏幕”或“触摸屏幕”是指包括一个或多个硬件组件的物理结构,它为设备提供呈现用户界面和/或接收用户输入的能力。屏幕可以包括手势捕捉区域、触摸敏感显示器和/或可配置的区域的任意组合。该设备可具有嵌入在硬件中的一个或多个物理屏幕。然而,屏幕也可以包括可以从设备安装和拆卸的外部的外围设备。在实施例中,多个外部设备可以连接到该设备。因此,在实施例中,屏幕可以使用户能够通过触摸屏幕上的区域与该设备交互,并通过显示器给用户提供信息。触摸屏幕可以以一些不同的方式感测用户接触,如通过改变电参数(例如,电阻或电容)的变化、声波变化、红外辐射接近检测、光变化检测等。在电阻触摸屏幕中,例如,屏幕上的通常分离的导电的和电阻的金属层通过电流。当用户触摸屏幕时,两个层在接触位置进行接触,从而注意到在电场中的变化并计算出接触位置的坐标。在电容式触摸屏幕中,电容层存储的电荷,当与触摸屏幕接触时它被放电到用户,引起在电容层的电荷减少。测量该减少并确定接触的位置坐标。在一个表面声波触摸屏幕中,通过屏幕发送的声波,并且由用户接触干扰声波。接收换能器检测到用户接触实例并确定接触的位置坐标。
术语“显示器”是指用来显示一台计算机向用户的输出的一个或多个屏幕的部分。显示器可以是单一的屏幕显示器或称为复合显示器的多屏幕显示器。复合显示器可以包括一个或多个屏幕的触摸敏感显示器。单一的物理屏幕可以包含作为独立的逻辑显示器管理的多个显示器。因此,虽然部分在相同的物理屏幕,不同的内容可以显示在单独的显示器上。
术语“显示的图像”是指在显示器上产生的图像。典型的显示的图像是窗口或桌面。所显示的图像可以占用的显示器的部分或全部。
术语“显示方向”是指长方形的显示器由用户进行观看时定向的方式。最常见的两种类型的显示方向是纵向和横向。在横向模式下,显示器被定向使得显示器的宽度大于显示器的高度(诸如即4单位的宽和3单位的高的4:3比例,或16单位宽和9单位的高的16:9比例)。换句话说,显示器的较长尺 寸在横向模式下基本被水平定向,而显示器的较短的尺寸基本被垂直定向。相比之下,在纵向模式,显示器被定向使得显示器的宽度是小于显示器的高度。换句话说,在纵向模式下,显示器的较短的尺寸基本上被水平定向,而显示器的较长尺寸的基本上被垂直定向。
术语“复合显示器”指定义了可以包括一个或多个屏幕的显示器的逻辑结构。多屏幕显示器可以与包含了所有的屏幕的复合显示器相关联。复合显示器基于设备的不同的方向可以具有不同的显示特性。
术语“手势”是指表达意图的想法、行动、含义、结果和/或成果的用户动作。用户动作可以包括操纵设备(例如,打开或关闭设备、改变设备的方向、移动轨迹球或滚轮等),身体部分相关于该设备的移动,相关该设备的实施或工具的移动、音频输入等。手势可以在设备(例如,在屏幕上)上或与该设备交互的设备做出。
本文所用的术语“模块”是指能够执行与该元件相关联的功能的任何已知的或以后开发的硬件、软件、固件、人工智能、模糊逻辑或者是硬件和软件的组合。
术语“手势捕获”是指对用户手势的实例和/或类型的感测或检测。手势捕获可发生在屏幕的一个或多个区域,手势区域可以是显示屏上,在那里它可以被称为为触摸敏感显示器;或与显示器分离,在那里它可以被称为手势捕捉区域。
“多屏幕应用程序”是指启用多个模式的应用程序。多屏幕应用模式可以包括,但不限于,一个单一的屏幕模式(其中在单个屏幕上显示应用程序)或复合显示模式(其中在两个或多个屏幕上显示应用程序)。多屏幕应用程序可以具有针对模式优化的不同布局。因此,多屏幕应用程序具有针对单一屏幕或者可以跨越两个或多个屏幕的复合显示器的不同布局。不同的布局可以有不同的屏幕/显示器尺寸和/或配置,其上可以呈现多屏幕应用程序的用户界面。不同的布局允许应用程序针对显示器的类型(例如单个屏幕或多个屏幕)等优化应用程序的用户界面。在单屏幕模式下,多屏幕应用程序可以呈现一个窗口窗格的信息。在复合显示模式中,多屏幕应用程序可以呈现多个窗口窗格的信息或可提供更大和更丰富的演示,这是因为有更多的空间用于显示内容。多屏幕应用程序可被设计来根据系统分配给多屏幕应用程序的显示器(单一或复合)动态适应设备中的变化和模式。在可替代的实施例中, 用户可以使用手势请求应用程序过渡到不同的模式,并且,如果显示器可用于所请求的模式,该设备可以允许应用程序转移到该显示器和过渡模式。
“单屏幕应用程序”是指能够单屏幕模式的应用程序。因此,在单屏幕应用程序只可以产生一个窗口,并不能在不同模式或不同的显示维度。单屏幕应用程序不能处于讨论的多屏幕应用程序的几种模式。
术语“窗口”通常是指矩形,即在显示器的至少部分上的显示的图像,其中包含或提供与屏幕的其余部分不同的内容。该窗口可能会遮盖桌面。
术语“确定”、“计算(calculate)”和“计算(compute)”及其变体,如本文所使用的,可以互换使用,并包括任何类型的方法、过程、数学运算或技术。
应当理解的是,根据35USC,第112部分,第6段此处所用的术语“装置”应当给予其可能的最宽泛的解释。因此,结合术语“装置”权利要求应包括本文所阐述的所有的结构、材料或动作,及其所有的等同物。此外,其结构、材料或动作及其等同物应包括所有在本发明内容、附图说明、具体实施方式、摘要和权利要求书中描述的对应部分。
以上是本公开的简化概要,以提供本公开的某些方面的理解。此概要既不是广泛的,也不是本公开及其各个方面、实施例和/或配置的详尽概述。它的目的是既不确定本公开的关键或重要元素,也不描绘本公开的范围,而是以简化的形式呈现选定的本公开的概念,作为下面给出的更详细描述的介绍。正如将被理解的是,单独或组合时,本公开的其它方面、实施例和/或配置可能利用一个或更多的上面阐述的或在下面详细描述的特征。
附图说明
图1A包括多屏幕用户设备的实施例的第一视图;
图1B包括多屏幕用户设备的实施例的第二视图;
图1C包括多屏幕用户设备的实施例的第三视图;
图1D包括多屏幕用户设备的实施例的第四视图;
图1E包括多屏幕用户设备的实施例的第五视图;
图1F包括多屏幕用户设备的实施例的第六视图;
图1G包括多屏幕用户设备的实施例的第七视图;
图1H包括多屏幕用户设备的实施例的第八视图;
图1I包括多屏幕用户设备的实施例的第九视图;
图1J包括多屏幕用户设备的实施例的第十视图;
图2是设备的硬件的实施例的框图;
图3A是基于设备的方向和/或配置的设备的状态模型的实施例的框图;
图3B是基于设备的方向和/或配置的设备的状态模型的实施例的表;
图4A是在设备接收到的用户手势的实施例的第一表示;
图4B是在设备接收到的用户手势的实施例的第二表示;
图4C是在设备接收到的用户手势的实施例的第三表示;
图4D是在设备接收到的用户手势的实施例的第四表示;
图4E是在设备接收到的用户手势的实施例的第五表示;
图4F是在设备接收到的用户手势的实施例的第六表示;
图4G是在设备接收到的用户手势的实施例的第七表示;
图4H是在设备接收到的用户手势的实施例的第八表示;
图5A是设备软件和/或固件的实施例的框图;
图5B是设备软件和/或固件的实施例的第二框图;
图6A是响应于设备状态生成的设备配置的实施例的第一表示;
图6B是响应于设备状态生成的设备配置的实施例的第二表示;
图6C是响应于设备状态生成的设备配置的实施例的第三表示;
图6D是响应于设备状态生成的设备配置的实施例的第四表示;
图6E是响应于设备状态生成的设备配置的实施例的第五表示;
图6F是响应于设备状态生成的设备配置的实施例的第六表示;
图6G是响应于设备状态生成的设备配置的实施例的第七表示;
图6H是响应于设备状态生成的设备配置的实施例的第八表示;
图6I是响应于设备状态生成的设备配置的实施例的第九表示;
图6J是响应于设备状态生成的设备配置的实施例的第十表示;
图7A是逻辑窗口堆栈的表示;
图7B是逻辑窗口栈的实施例的另一种表示;
图7C是逻辑窗口栈的实施例的另一种表示;
图7D是逻辑窗口栈的实施例的另一种表示;
图7E是逻辑窗口栈的实施例的另一种表示;
图7F是逻辑窗口栈的实施例的另一种表示;
图7G是逻辑窗口栈的实施例的另一种表示;
图7H是逻辑窗口栈的实施例的另一种表示;
图7I是逻辑窗口栈的实施例的另一种表示;
图7J是逻辑窗口栈的实施例的另一种表示;
图8是窗口堆栈的逻辑数据结构的实施例的框图;
图9是基于窗口堆栈改变显示的方法的实施例的流程图;
在附图中,相似的部件和/或特征可以具有相同的附图标记。另外,相同类型的各种组件可以通过附图标记后面的区分相似的部件的字母来区分。如果在本说明书中只使用第一附图标记,那么不论所述第二附图标记是什么,描述适用具有相同的第一附图标记的类似的部件中的任何一个。
具体实施方式
本文提出的是设备的实施例。该设备可以是通信设备,如蜂窝电话,或其它智能设备。该设备可以包括用于被定向来提供几个独特的显示配置的两个屏幕。另外,该设备可以以独特的方式接收用户输入。设备的整体设计和功能提供增强的用户体验,使设备更有用并且更高效。
机械特点:
图1A-1J根据本公开的实施例示出了设备100。正如在下面更详细地描述的,设备100可以以若干不同的方式被定位,其每一个为用户提供不同的功能。设备100是包括主屏幕104和辅助屏幕108的多屏幕设备,这两者都是触摸敏感的。在实施例中,屏幕104和108的整个前表面可以是触摸敏感的,并且能够接收由用户在触摸屏幕104和108的前表面上的输入。主屏幕104包括触摸敏感显示器110,其除了是触摸敏感之外,也向用户显示信息。辅助屏幕108包括触摸敏感显示器114,它也向用户显示信息。在其它实施例中,屏幕104和108可以包括多于一个的显示区域。
主屏幕104还包括可配置区域112,该可配置区域112已被配置用于在用户触摸配置区域112的部分时的特定输入。辅助屏幕108还包括配置来用于特定输入的可配置区域116。区域112a和116a已被配置为接收指示用户想查看以前显示的信息的“返回”输入。区域112b和116b已被配置为接收指示用户想要查看菜单选项的“菜单”输入。区域112c和116c已被配置为接 收指示用户想查看与“主页”视图相关的信息的“主页”输入。在其他实施例中,除了上述的配置,区域112a-c及116a-c可以被配置用于包括控制设备100的特性的其它类型的特定输入,一些非限制性示例包括调整整个系统的电源、调整音量、调整亮度、调整振动、选择显示的项目(在屏幕104或108上)、操作相机、操作麦克风和发起/终止电话呼叫。而且,在一些实施例中,区域112a-C及116a-C可以被配置用于根据设备100上运行的应用程序和/或显示在触摸敏感显示器110和/或114上显示的信息的特定输入。
除了触摸感测,主屏幕104和辅助屏幕108还可以包括接收来自用户的输入的区域,而不需要用户触摸屏幕上的显示区域。例如,主屏幕104包括手势捕捉区域120,辅助屏幕108包括手势捕捉区域124。这些区域能够通过识别用户做出的手势来接收输入,而无需用户实际触摸显示区域的表面。与触摸敏感显示器110和114相比,手势捕捉区域120和124通常不能够呈现显示的图像。
如图1C清楚地示出的(示出设备100的后视图)那样,两个屏幕104和108被铰链128连接在一起。在图1A-1J中所示的实施例中的铰链128是连接屏幕104和108的中心铰链,使得当铰链被关闭时,如图1B所示(示出设备100的前视图),屏幕104和108并列设置(即,并排)。可以打开铰链128以将两个屏幕104和108定位在不同的相对位置。正如下面更详细描述的,设备100可以根据屏幕104和108的相对位置具有不同的功能。
图1D示出了设备100的右侧。如图1D中所示,辅助屏幕108还包括在其侧面的卡插槽132和端口136。实施例中的卡插槽132容纳不同类型的卡,包括订户身份模块(SIM)。在实施例中的端口136是输入/输出端口(I/O端口),它允许设备100被连接到其他的外围设备,诸如显示器、键盘或打印设备。可以理解的是,这些仅仅是一些示例,在其它实施例中,设备100可以包括诸如用于容纳额外的存储设备和/或连接其他外围设备的其他插槽和端口。图1D还示出了音频插孔140,所述音频插孔140可容纳例如末端、环、套筒(TRS)连接器,以允许用户利用头戴耳机或头戴耳麦。
设备100还包括多个按钮158。例如,图1E示出了设备100的左侧。如图1E中所示,主屏幕104侧面包括三个按钮144、148和152,它们可以被配置用于特定的输入。例如,按钮144、148和152可以被配置来组合或单独控制设备100的若干方面。一些非限制性的示例包括整个系统的电源、音量、 亮度、振动、显示的项目的选择(在屏幕104或108上)、相机、麦克风和电话呼叫的启动/终止。在一些实施例,代替单独的按钮,两个按钮可以组合成摇杆按钮。这种安排在按钮被配置为控制例如音量或亮度之类的特征的情况下是有用的。除了按钮144、148和152,如示出了设备100的顶部的图1F所示,设备100还包括按钮156。在一个实施例中,按钮156被配置为用于控制设备100的整个系统的电源的开/关按钮。除了或代替控制系统电源,在其它实施例中,按钮156被配置来控制设备100的其他方面。在一些实施例中,一个或更多的按钮144、148、152和156能够支持不同的用户命令。例如,正常按压具有通常小于约1秒的持续时间,并且类似于快速的轻敲。中等的按压具有通常1秒或以上但少于约12秒的持续时间。长的按压具有通常约12秒钟或更长时间的持续时间。按钮的功能通常是应用程序特定的,所述应用程序是当前在各个显示器110和114上的焦点。例如,在电话应用中,根据特定的按钮,正常的、中等的或长的按压可以意味着结束通话,呼叫音量的增加,呼叫音量的减少和切换麦克风静音。例如,在相机或视频摄像机的应用中,根据特定的按钮,正常的、中等的或长的按压可以意味着增加变焦,减少变焦,并拍照或记录视频。
设备100内还有若干硬件组件。如图1C所示,设备100包括扬声器160和麦克风164。设备100还包括相机168(图1B)。此外,设备100包括:两个位置传感器172A和172B,它们被用于确定屏幕104和108的相对位置。在一个实施例中,位置传感器172A和172B是霍尔效应传感器。然而,在其他实施例中,其它的传感器可附加于或代替霍尔效应传感器使用。还可以包括加速度计176作为设备100的一部分,用于确定设备100的方向和/或屏幕104和108的方向。在下面围绕图2说明可以被包括在设备100中的附加内部硬件组件。
设备100的整体设计使得它能够提供其它通信设备不提供的额外的功能。一些功能是基于设备100可以具有的各种位置和方向。如图1B-1G所示,设备100可以被操作在“打开”的位置,其中屏幕104和108是并排的。这个位置可以使大的显示区域用于显示信息给用户。当位置传感器172A和172B确定设备100处于打开位置时,它们可以产生用来触发不同的事件的信号,如在两个屏幕104和108上显示信息。如果加速度计176确定设备100在与横向位置(图中未示出)相对的纵向位置(图1B),则可能会触发额外的事 件。
除了打开位置,设备100也可能有“关闭”位置,如图1H所示。同样,位置传感器172A和172B可以产生指示设备100处于“关闭”位置的信号。这可以触发导致屏幕104和/或108上的显示信息的变化的事件。例如,由于当设备100处于“关闭”位置时用户一次只能查看一个屏幕,因此设备100可以被编程来在其中一个屏幕(例如,屏幕108)上停止显示信息。在其它实施例中,由位置传感器172A和172B所产生的指示设备100处于“关闭”位置的信号,可以触发的设备100来回答来电呼叫。“关闭”位置还可以是用于利用设备100作为移动电话的优选位置。
如图1I所示,设备100也可以使用在“支架”的位置。在“支架”的位置,屏幕104和108相对于彼此互成角度和朝向外面,屏幕104和108的边缘大致水平。在这个位置上,设备100可以被配置来在屏幕104和108上显示信息,以允许两个用户同时与设备100交互。当设备100是在“支架”的位置,传感器172A和172B生成指示屏幕104和108被定位在彼此成角度的信号,并且加速度计176可以产生指示设备100已经被放置使得屏幕104和108的边缘基本上是水平的信号。然后信号可以被组合使用,以产生用于触发在屏幕104和108上的显示的信息的变化的事件。
图1J示出在“修改的支架”的位置的设备100。在“修改的支架”的位置,屏幕104或108之一用作底座并且面向下在诸如桌子之类的物体的表面上。这个位置提供了一种在横向方向上向用户显示信息的方便的方式。与支架位置相似,当设备100处于“修改的支架”位置时,位置传感器172A和172B生成指示屏幕104和108被定位在互成角度的信号。加速度计176将生成指示设备100已被定位、使得屏幕104和108之一面向下并且基本上是水平的信号。然后信号可以被用来生成触发屏幕104和108的信息的显示变化的事件。例如,因为用户不能看到屏幕,因此信息不会被显示在面朝下的屏幕上。
过渡状态也是可能的。当位置传感器172A和B和/或加速度计指示显示屏幕(从打开)正在被关闭或折叠时,确认关闭的过渡状态。相反,当位置传感器172A和B指示屏幕正被打开或折叠(从关闭)时,确认打开的过渡状态。关闭和打开的过渡状态通常是基于时间的,或从感测到的起点开始有最大的持续时间。通常,当关闭和打开状态之一是有效时,没有用户输入的是 可能的。在这种方式中,在屏幕的关闭或打开的功能期间的偶然的用户接触不被误解为用户输入。在实施例中,当设备100被关闭时,另一种过渡状态是可能的。当设备100被关闭时,基于一些用户输入(例如屏幕110、114上的双击),这种额外的过渡状态可以将显示器从一个屏幕104切换到辅助屏幕108。
可以理解的是,设备100的描述仅用于说明的目的,实施例不限于如上所述的和图1A-1J中示出的特定的机械特性。在其它实施例中,设备100可以包括额外的特征,其中包括一个或多个额外的按钮、插槽、显示区域、铰链和/或锁定机制。此外,在实施例中,上述特征也可以位于设备100的不同部分,并仍然提供类似的功能。因此,图1A-1J和上面提供的描述是非限制性的。
硬件特性:
图2示出根据本公开的实施例的设备100的组件。在一般情况下,设备100包括主屏幕104和辅助屏幕108。虽然通常是在打开和关闭两个位置或状态下启用主屏幕104和它的组件,通常是在打开的状态下启用辅助屏幕108和它的组件而在关闭状态下禁用。然而,即使当在关闭状态下时,用户或应用程序触发的中断(例如,响应于电话应用或相机应用的操作)通过合适的命令可以翻转活动的屏幕,或禁用主屏幕104和启用辅助屏幕108。每个屏幕104、108可以是触摸敏感的,并且可以包括不同的操作区域。例如,在每一个触摸感应屏幕104和108的第一操作区域,可以包括触摸敏感显示器110、114。在一般情况下,触摸敏感显示器110、114可包括全彩色的触摸敏感显示器。在每一个触摸屏幕104和108内的第二操作区域可以包括手势捕捉区域120、124。手势捕捉区域120、124可以包括触摸敏感显示器110、114区域之外的、并且能够接收输入(例如,以用户提供的手势的形式)的区域或范围。然而,手势捕捉区域120、124不包括可以执行显示功能或能力像素。
触摸敏感的屏幕104和108的第三区域可以包括可配置的区域112、116。可配置的区域112、116能够接收输入,并具有显示或有限显示能力。在实施例中,可配置的区域112、116可以呈现给用户的不同的输入选项。例如,可配置的区域112、116可以显示按钮或其他的相关条目。此外,显示的按钮的标识,或任何按钮是否被显示在触摸敏感屏幕104或108的可配置区域112、116内,可以从设备100被使用和/或操作的上下文中确定。在示例性实施例中,触摸敏感屏幕104和108包括至少跨越触摸敏感的屏幕104和108的、能够向用户提供视觉输出的那些区域的液晶显示设备、以及在触摸敏感屏幕104和108那些区域上的能够接收来自用户的输入的电容输入矩阵。
可提供一个或多个显示控制器216a,216b来控制触摸敏感屏幕104和108的操作,包括输入(触摸感测)和输出(显示)的功能。在如图2所示的示例性实施例中,为每个触摸屏幕104和108提供单独的触摸屏幕控制器216a或216b。根据替代实施例,共同的或共享的触摸屏幕控制器216可以用于控制被包括的触摸敏感屏幕104和108中的每一个。根据另一些实施例,触摸屏幕控制器216的功能可以被并入其他组件,诸如处理器204。
处理器204可以包括用于执行应用程序编程或指令的通用可编程处理器或控制器。根据至少一些实施例,处理器204可包括多个处理器核心,和/或实现多个虚拟处理器。根据另一些实施例,处理器204可包括多个物理处理器。作为特定的示例,处理器204可以包括专门配置的特定应用集成电路(ASIC)或其他集成电路、数字信号处理器、控制器、硬连线的电子或逻辑电路、可编程逻辑器件或门阵列、特殊用途的计算机等。处理器204通常起作用以运行实现设备100的各种功能的编程代码或指令。
通信设备100还可以包括存储器208,其用于与处理器204应用程序编程或指令相关联的执行中,并用于程序指令和/或数据的暂时或长期存储。作为示例,存储器208可包括RAM、DRAM、SDRAM或其他固态存储器。替代地或另外地,可提供数据存储装置212。类似于存储器208,数据存储装置212可包括固态存储器设备。替代地或另外,数据存储装置212可包括硬盘驱动器或其他随机存取存储器。
在支持通信功能或能力方面,设备100可以包括蜂窝电话模块228。作为示例,蜂窝电话模块228可以包括能够通过蜂窝网络支持语音、多媒体和/或数据传输的GSM,CDMA,FDMA和/或模拟蜂窝电话收发信机。可替换地或另外地,设备100可以包括附加的或其他的无线通信模块232。作为示例,其他的无线通信模块232可以包括Wi-Fi、蓝牙TM、WiMax、红外线或其他的无线通信链路。蜂窝电话模块228和其他的无线通信模块232中的每一个都可以与共享或专用的天线224相关联。
可以包括端口接口252。端口接口252可以包括支持设备100互连到其他设备或组件(如对接器(dock))的专有的或通用的端口,其他设备或组件 可以或可以不包括附加的功能或与集成到设备100的功能不同的功能。除了支持设备100和其他设备或组件之间的通信信号的交换之外,对接端口(docking port)136和/或端口接口252可以支持到设备100或来自设备100的电源供给。端口接口252还包括智能的元件,该元件包括用于控制设备100和所连接的设备或组件之间的通信或其他交互的对接模块。
可以包括输入/输出模块248和关联端口以支持例如与其他的通信设备、服务器设备和/或外围设备的通过有线网络或链接的通信。输入/输出模块248的示例包括以太网端口、通用串行总线(USB)端口、电气与电子工程师学会(IEEE)1394或其他接口。
可以包括音频输入/输出接口/设备244以为相互关联的扬声器或其他的设备提供模拟音频,并接收来自连接的麦克风或其他的设备的模拟音频输入。作为示例,音频输入/输出接口/设备244可以包括相关联的放大器和模拟-数字转换器。可替换地或另外地,设备100可以包括集成的音频输入/输出设备256和/或用于与外部扬声器或麦克风互连的音频插孔。例如,可以提供集成的扬声器和集成的麦克风,以支持附近的通话或免提电话操作。
可以包括硬件按钮158,以例如与特定的控制操作关联使用。如结合图1A至1J的描述那样,示例包括主电源开关,音量控制等。可以包括一个或多个的图像捕捉接口/设备240(诸如相机),用于捕捉静止和/或视频图像。替代地或另外地,图像捕捉接口/设备240可以包括扫描仪或代码阅读器。图像捕捉接口/设备240可以包括或可以与额外的元件(诸如闪光灯或其它光源)相关联。
设备100还可以包括全球定位系统(GPS)接收器236。根据本发明的实施例,GPS接收器236可以进一步包括能够提供绝对位置信息到设备100的其他组件的GPS模块。还可以包括加速度计176。例如,与向用户显示信息和/或其他功能相关联地,来自加速度计176的信号可以用来确定向用户显示该信息的方向和/或格式。
本发明的实施例还可以包括一个或多个位置传感器172。位置传感器172可以提供指示触摸敏感屏幕104和108相对于彼此的位置的信号。此信息可作为输入提供给例如用户界面应用程序,以确定触摸敏感显示器110、114的操作模式、特性和/或其他设备100操作。作为示例,屏幕位置传感器172可以包括一系列的霍尔效应传感器、多位置开关、光开关,惠斯登电桥,电位 器或能够提供指示触摸屏幕所在的多个相对位置的信号的其他布置。
设备100的各种组件之间的通信可以由一个或多个总线222执行。另外,可以从功率源和/或功率控制模块260提供功率给设备100的组件。功率控制模块260可以(例如)包括电池、AC-DC转换器、功率控制逻辑和/或用于互连设备100到外部的电源的端口。
设备状态:
图3A和3B表示设备100的示例性状态。虽然示出一些示例性的状态,以及从第一状态到第二状态的过渡,可以理解示例的状态图可能不涵盖所有可能的状态和/或所有可能的从第一状态到第二状态的过渡。如图3所示,状态(由在圆中表示的状态示出)之间的不同的箭头表示设备100发生的物理变化,所述变化由一个或多个硬件和软件检测到,所述检测触发硬件和/或软件中的一个或多个中断,所述中断用于控制和/或管理设备100的一个或多个功能。
如图3A所示,有十二个示范性“物理”状态:关闭304、过渡308(或打开过渡状态)、支架312、修改的支架316、打开320、呼入/呼出通话或通信324、图像/视频捕捉328、过渡332(或关闭过渡状态)、横向340、对接336、对接344和横向348。除了状态324和328之外,每个示出的状态旁边是设备100的物理状态的图示,状态324和328中的状态通常由电话的国际图标和照相机的图标分别表示。
在状态304中,该设备是在关闭状态,设备100通常在纵向方向上定向,主屏幕104和辅助屏幕108在不同的平面背对背(参见图1H)。设备100可以从关闭状态进入例如对接状态336,其中设备100耦合到对接站、对接电缆,或通常与一个或多个其他设备或外围设备相对接或关联,或进入横向状态340,其中设备100通常定向于主屏幕104面向用户,并且主屏幕104和辅助屏幕108是背对背的。
在关闭状态下,该设备也可以转移到过渡状态,其中该设备保持关闭,但显示基于用户输入(例如在屏幕110、114上的双击)从一个屏幕104转移到另一个屏幕108。本发明的又一实施例包括双边(biliteral)状态。在双边状态下,该设备仍然关闭,但单一的应用程序至少在第一显示器110和第二显示器114上显示一个窗口。在第一和第二显示器110、114上显示的窗口,基于应用程序和该应用程序的状态可以是相同的或不同的。例如,在用相机获取图像的同时,该设备可以在第一显示器110上显示取景器,并在第二显示器114上显示照片主题的预览(全屏和左到右的镜像)。
在状态308,即,从关闭状态304到半打开状态或支架状态312的过渡状态,示出设备100打开,其主屏幕104和辅助屏幕108围绕与铰链重合的轴线的点旋转。一旦进入支架状态312,主屏幕104和辅助屏幕108彼此分离,使得例如设备100可以以类似支架的结构位于表面上。
在状态316,称为修改的支架位置,设备100具有与在支架状态312中类似的主屏幕104和辅助屏幕108彼此间的相对关系,其区别在于主屏幕104或辅助屏幕108中的一个被放置在表面上,如图所示。
状态320是打开状态,其中主屏幕104和辅助屏幕108通常是在同一平面上。设备100可以从打开状态过渡到对接状态344或打开的横向状态348。在打开状态320中,在主屏幕104和辅助屏幕108通常都在类似纵向的方向上,而在横向状态348,主屏幕104和辅助屏幕108通常是在类似横向的方向上。
状态324是通信状态的图示,例如当设备100正分别接收或处于呼入或呼出时。虽然为清楚起见未示出,应当理解设备100可以从图3所示的任何状态过渡到图中示出呼入/呼出的呼叫状态324。以类似的方式,可以从图3中的任何其他状态进入图像/视频捕捉状态328,图像/视频捕捉状态328使得设备100通过相机拍摄一个或多个图像和/或利用视频捕捉设备240拍摄视频。
过渡状态322示意性地示出主屏幕104和辅助屏幕108被关闭以进入例如关闭状态304。
参考图中的参考关键信息,图3示出被接收来检测从第一状态到第二状态的过渡的输入。在图3B中,示出状态的各种组合,总体来说,列的一部分被指向纵向状态352、横向状态356,行的一部分被指向纵向状态360和横向状态364。
在图3B中,关键信息指示“H”表示来自一个或多个霍尔效应传感器的输入,“A”表示来自一个或多个加速计的输入,“T”表示来自计时器的输入,“P”表示通信触发输入,“I”表示图像和/或视频捕捉请求输入。因此,在图表的中央部分376,示出表示设备100如何检测从第一物理状态过渡到第二物理状态的输入或输入组合。
如讨论的,在图表376的中央部分,接收到的输入启用从例如纵向打开状态到横向支架状态(以粗体显示的“HAT”)的过渡的检测。对于从纵向打开到横向支架的状态的这个示例性的过渡,可能需要霍尔效应传感器(“H”),加速度计(“A”)和计时器(“T”)输入。计时器输入可以从例如与处理器相关联的时钟得到。
除了纵向和横向状态之外,还示出了对接状态368,其基于对接信号372的接收而被触发。正如上面所讨论的,并且联系图3,可以通过设备100与一个或多个其它的设备100、配件、外设、智能对接器等的关联来触发对接信号。
用户交互:
图4A至4H描绘屏幕104、108可以识别的手势输入的各种图形表示。这些手势可以不仅通过用户的身体部分(诸如手指)执行,也可以由诸如触控笔之类的其他设备执行,所述触控笔可由屏幕104、108的接触感测部被感测到。一般而言,根据手势在哪里进行(直接在显示器110、114上或在手势捕捉区域120、124中),手势被不同地解释。例如,在显示器110、114的手势可以定向到桌面或应用程序,手势捕捉区域120、124的手势可以被解释为用于系统。
参考图4A-4H,第一类型的手势,触摸手势420基本上是在一个选定的时间长度上在屏幕104、108静止。圆428表示屏幕上的接触检测部的特定位置处接收到的触摸或其他接触类型。圆428可以包括边界432,边界432的厚度指示在接触位置该接触基本上保持静止的时间长度。例如,轻敲420(或短按)具有比长按424(或正常的按压)的边界432b更细的边界432a。长按424可以涉及在屏幕上基本上保持静止时间段比轻敲420更长的接触。正如将被理解的是,可以根据接触停止或在屏幕上的移动之前触摸保持静止的时间长度来注册不同定义的手势。
参照图4C,在屏幕104、108上的拖动手势400是初始接触(由圆428表示)以及在选定的方向的接触移动436。初始接触428可以在屏幕104、108上、在边界432表示的一定量的时间内保持静止。拖动手势通常需要用户在第一位置接触图标、窗口或其他的显示图像,随后,在拖动方向上接触移动到所选择的显示图像所期望的新的第二位置上。只要从第一到第二位置的接触基本上是连续的,所述接触移动不必在一条直线上,而是有任何的移动路径。
参照图4D,在屏幕上104、108的轻弹手势404是初始接触(由圆428表示)以及在选定的方向上的截断的接触移动436(相对于拖动手势)。在实施例中,与拖动手势相比,轻弹在手势的最后移动中有更高的退出速度。例如,轻弹手势可以是初始接触后手指快速敲击。与拖动手势相比,轻弹的手势通常并不需要从所显示的图像的所述第一位置到预定的第二位置的、与屏幕104、108的持续接触。接触的显示图像通过轻弹的手势在轻弹的手势的方向上被移动到预定的第二位置。虽然两个手势通常都可以从第一位置到第二位置移动所显示的图像,但是在持续时间和在屏幕上的接触的行进距离方面,轻弹手势通常比拖动手势更少。
参照图4E,描绘了在屏幕104、108上的捏手势408。捏手势408可以(例如由第一手指)到屏幕104、108的第一接触428和(例如由第二手指)到屏幕104、108的第二接触428b发起。第一和第二接触428a、b可以被共同的屏幕104、108的共同的接触感测部、被共同的屏幕104或108的不同的接触检测部,或被不同屏幕的不同接触检测部检测到。如边界432a所示,第一接触428a被保持第一时间量,并且如边界432b所示,第二接触428b被保持第二时间量。第一和第二时间量通常是基本上相同的,第一和第二接触428a、b通常基本上同时出现。第一和第二接触428a、b通常还分别包括相应的第一和第二接触移动436a、b。第一和第二接触移动436a、b通常在相反的方向。换种方式来说,第一接触移动436a朝向第二接触436b,所述第二接触移动436b朝向第一接触436a。更简单地说,捏手势408可通过用户的手指以捏动作触摸屏幕104、108来完成。
参照图4F描绘了在屏幕104、108上的扩展手势410。扩展手势410可以通过(例如由第一手指)到屏幕104、108的第一接触428a和(例如由第二手指)到屏幕104、108的第二接触428b发起。在第一和第二接触428a、b可以被共同的屏幕104、108的共同接触检测部、被共同的屏幕104、108的不同的接触检测部、或被不同的屏幕的不同接触检测部检测到。如边界432a所示,第一接触428a被保持第一时间量,如边界432b所示,第二接触428b被保持第二时间量。第一和第二时间量通常是基本上相同的,第一和第二触428a、b通常基本上同时出现。在第一和第二触428a、b通常还分别包括相应的第一和第二接触移动436a、b。第一和第二接触移动436a、b通常在共 同的方向上。换种方式来说,第一和第二接触移动436a、b远离所述第一和第二接触428a、b。更简单地说,扩展手势410可通过用户的手指以扩展动作触摸屏幕104、108来完成。
诸如通过图4G和4H中所示的那些,上述的手势可以以任何方式被组合以产生确定的功能结果。例如,在图4G中,在从轻敲手势420远离的方向上,轻敲手势420与拖动或轻弹手势412组合。在图4H中,在朝向轻敲手势420的方向上,轻敲手势420与拖动或轻弹手势412组合。
接收手势的功能结果可以取决于若干因素而变化,其中包括设备100、显示器110、114、或屏幕104、108的状态、与该手势相关联的上下文、或手势的被感测到的位置。设备的状态通常是指设备100的一个或多个配置、显示方向以及由设备100接收的用户和其他输入。上下文通常指手势所选择的一个或多个特定的应用程序和当前正在执行的应用程序中的部分,该应用程序是否是单或多屏幕的应用程序,以及该应用程序是否是在一个或多个堆栈或一个或者多个屏幕中显示一个或者多个窗口的多屏幕应用程序。手势的感测到的位置通常是指感测到的手势的位置坐标的集合是在触摸敏感显示器110、114还是在手势捕捉区域120、124上,感测到的手势的位置坐标的集合与共同的还是与不同的显示器或屏幕104、108相关联,和/或手势捕捉区域的什么部分包含感测到的手势的位置坐标的集合。
当触摸敏感显示器110、114接收到轻敲时,使用该轻敲,例如,来选择图标以启动或终止相应的应用程序的执行,以最大化或最小化窗口,重新排序堆栈中的窗口,并且诸如通过键盘显示或其它显示的图像提供用户输入。当摸敏感显示器110、114接收到拖动时,可以使用该拖动,例如,以重新定位图标或窗口到显示器内的所期望的位置,在显示器上重新排序堆栈,或跨越两个显示器(使得选择的窗口同时占据每个显示器的部分)。当触摸敏感显示器110、114或手势捕捉区域120、124接收到轻弹时,可以使用该轻弹以将窗口从第一显示器重定位到第二显示器或跨越两个显示器(使得选择的窗口同时占据每个显示器的部分)。然而,不同于拖动手势,通常不使用轻弹手势来将所显示的图像移动到特定的用户选择的位置,而是到用户不可配置的默认位置。
当触摸敏感显示器110、114或手势捕捉区域120、124接收到捏手势时,所述捏手势可用于最小化或增加显示区域或窗口的大小(通常当由共同的显 示器完全接收时),将显示在每个显示器的堆栈的顶部的窗口切换到其它显示器的堆栈的顶部(通常当由不同的显示器或屏幕接收时),或者显示应用程序管理器(在堆栈中显示窗口的“弹出式窗口”)。当被触摸敏感显示器110、114或手势捕捉区域120、124接收时,扩展手势可用于最大化或减小显示区域或窗口的大小,将在显示每个显示器的堆栈的顶部的窗口切换到其它显示器的堆栈的顶部(通常是当由不同的显示器或屏幕接收时),或者显示应用程序管理器(通常当由相同的或不同的屏幕上的离屏手势捕捉区域接收到时)。
当由在共同的显示器或屏幕104、108中的共同显示捕捉区域接收到图4G的组合手势时,图4G的组合手势可以用于为接收该手势的显示器保持第一堆栈中的第一窗口堆栈位置不变,同时在第二窗口堆栈中重排序第二窗口堆栈位置以在接收的手势的显示器中包括窗口。当由共同的显示器或屏幕104、108或不同的显示器或屏幕的不同的显示捕捉区域接收图4H的组合手势时,图4H的组合手势可以用来针对接收手势的轻敲部分的显示器保持第一窗口堆栈中的第一窗口堆栈位置不变,同时在第二窗口堆栈中重排序第二窗口堆栈位置,以在接收轻弹或拖动手势的显示器中包括窗口。虽然在前述实施例中的特定的手势和手势捕捉区域已与功能结果的相应集合相关联,要理解的是,这些关联可以以任何方式重新定义,以在手势和/或手势捕捉区域和/或功能性结果之间产生不同的关联。
固件和软件:
存储器508可以存储,而处理器504可以执行一个或多个软件组件。这些组件可以包括至少一个操作系统(OS)516、应用程序管理器562、桌面566和/或来自应用程序存储装置560的一个或更多的应用程序564a和/或564b。OS516可以包括框架520、一个或多个帧缓冲器548、如先前结合图2所描述的一个或多个驱动器512和/或内核518。OS516可以是由程序和数据组成的任何软件,其管理计算机硬件资源,并为各种应用程序564的执行提供公共服务。OS516可以是任何操作系统,并且至少在一些实施例中,专用于设备,包括但不限于Linux、ANDROID TM、iPhone OS(IOS TM)、WINDOWS PHONE7TM等。如本文所述地,OS516通过执行一个或多个操作来可操作地为手机提供功能。
应用程序564可以是为用户执行特定功能的任何更高级的软件。应用564可以包括诸如电子邮件客户端、Web浏览器、短信应用程序、游戏、媒体播 放器、办公软件等的程序。应用程序564可以存储在应用程序存储装置560中,应用程序存储装置560可以表示用于存储应用程序564的任何存储器和数据存储装置,以及与其相关联的管理软件。一旦执行,应用程序564可以运行在内存508的不同的区域。
框架520可以是允许多个任务在设备上运行以进行交互的任何软件或数据。在实施例中,框架520的至少部分和下文中描述的分立组件可以被认为是操作系统516或应用程序564的部分。然而,这些部分将被描述为框架520的一部分,但是这些组件并不限于此。框架520可以包括但并不限于多屏幕显示管理(MDM)模块524、表面高速缓存模块528、窗口管理模块532、输入管理模块536、任务管理模块540、应用程序模型管理器542、显示控制器、一个或多个帧缓冲器548,任务堆栈552、一个或多个窗口栈堆550(它是显示区域中的窗口和/或桌面的逻辑排列)和/或事件缓冲器556。
MDM模块524包括一个或多个模块,用于可操作地管理在设备的屏幕上的应用程序或其它数据的显示。结合图5B描述MDM模块524的实施例。在实施例中,MDM模块524从例如驱动器512之类的其他OS516组件以及应用程序564接收输入来持续地确定设备100的状态。该输入协助MDM模块524确定如何根据应用程序的优选项和要求以及用户的动作来配置和分配显示。一旦确定了显示配置,MDM模块524可以绑定应用程序564到显示器。然后配置可以被提供给一个或多个其他组件来通过显示器生成窗口。
表面高速缓存模块528包括任何存储器或存储装置以及与其相关联的软件,来存储或高速缓存一个或多个窗口的图像。一系列的活动和/或非活动窗口(或其他诸如桌面显示之类的显示对象)可以与每个显示器相关联。当前显示活动窗口(或其他显示对象)。非活动窗口(或其他显示对象)被打开,并在某些时候被显示,但当前不被显示。为了提高用户体验,在窗口从活动状态过渡到非活动状态之前,可以存储窗口(或其他显示对象)的最后生成的图像的“屏幕截图”。表面高速缓存模块528可以可操作来存储当前没有被显示的窗口(或其他显示对象)的最后的活动图像的位图。因此,表面高速缓存模块528在数据存储中存储非活动窗口(或其他显示对象)的图像。
在实施例中,窗口管理模块532可操作来管理每个显示器上的活动或不活动的窗口(或其他显示对象)。基于来自MDM模块524、OS516或其他组件的信息,窗口管理模块532确定窗口(或其他显示对象)何时是可见的或不 活动的。窗口管理模块532可以把不可见的窗口(或其他显示对象)置于“非活动状态”,并且结合任务管理模块,任务管理540暂停应用程序的运行。此外,窗口管理模块532可以通过与MDM模块524协作交互来将显示器标识符分配到窗口(或其他显示对象),或管理与该窗口(或其他显示对象)相关联的数据的一个或多个其他项目。窗口管理模块532还可以提供所存储的信息到应用程序564、任务管理模块540、或与该窗口(或其他显示对象)互动或相关联的其他组件。窗口管理模块532还可以基于窗口焦点以及动作空间内的显示坐标将输入任务与窗口相关联。
输入管理模块536可操作来管理设备所发生的事件。事件是任何到窗口环境中的输入,例如,与用户的用户界面交互。输入管理模块536接收事件并逻辑地在事件缓冲器556中存储事件。事件可以包括以下用户界面交互:当屏幕104、108接收来自用户的触摸信号发生的“向下事件”,当屏幕104、108确定用户的手指在屏幕上移动时发生的“移动事件”,当屏幕104、108确定用户已经停止触摸屏幕104、108的“向上事件”等。这些事件被输入管理模块536接收、存储并转发到其他模块。输入管理模块536还可以将屏幕输入映射到动作空间,这是设备上可用的所有物理和虚拟显示的终极。
动作空间是虚拟的空间,它包括所有触摸敏感显示器110、114“平铺”在一起,以模仿设备100的物理尺寸。例如,当设备100被展开,动作空间的大小可以是960x800,这可以是在两个触摸敏感显示器110、114的合并的显示区域的像素的数量。如果用户在位置(40,40)触摸第一触摸敏感显示器110,全屏幕窗口可以接收到位置(40,40)的触摸事件。如果用户触摸的第二触摸敏感显示器114的位置(40,40),全屏幕窗口可以接收到位置(520,40)的触摸事件,这是因为第二触摸敏感显示器114在第一触摸显示器110的右侧,所以设备100可以通过480像素的第一触摸显示器110的宽度偏置该触摸。当硬件事件发生并具有来自驱动器512的位置信息时,框架520可以将物理位置转换(up-scale)到动作空间,这是因为该事件的位置可以基于设备朝向和状态而不同。动作空间可以是题为“用于接收跨越多个输入设备的手势输入的系统和方法”、在2011年7月20日提交的美国专利申请第13/187,026号所描述的动作空间,为了教导及全部目的,在此通过引用的方式将其全部内容合并在此。
任务可以是应用程序,子任务可以是提供窗口的应用程序组件,用户可以 通过与其交互来做一些事情,诸如拨打电话、拍照、发送电子邮件或查看地图。可以给予每个任务在其中绘制用户界面的窗口。窗口通常填充显示器(例如,触摸敏感显示器110、114),但也可以小于显示器110、114并且浮在其他窗口的顶部。应用程序通常是由彼此松散地绑定的多个子任务组成。通常情况下,应用程序中的一个任务被指定为“主”任务,它在首次启动应用程序时向用户呈现。然后每个任务可以启动另一个任务或子任务以执行不同的操作。
任务管理模块540可操作来管理可以由设备执行的一个或多个应用程序564的操作。因此,任务管理模块540可以接收信号来启动、暂停、终止等存储在应用程序存储装置560中的应用程序或应用程序子任务。任务管理模块540然后可以实例化应用程序564的一个或多个任务或子任务以开始应用程序564的操作。另外,任务管理模块540可以启动、暂停或终止任务或子任务,以作为用户输入的结果或作为来自合作框架520组件的信号的结果。任务管理模块540负责管理应用程序(任务和子任务)的、从应用程序启动时到应用程序终止时的生命周期。
任务堆栈552辅助任务管理模块540的处理,其为与任务管理模块540相关联的逻辑结构。任务堆栈552维护设备100上的所有任务和子任务的状态。当操作系统516的一些组件需要任务或子任务在其生命周期中过渡,OS516组件可以通知任务管理模块540。任务管理模块540然后可以使用标识信息在任务堆栈552定位任务或子任务,并将指示任务需要执行什么样的生命周期过渡的信号发送到任务或子任务。通知任务或子任务过渡允许任务或子任务为生命周期状态过渡做准备。任务管理模块540然后可以执行任务或子任务的状态过渡。在实施例中,状态过渡可能需要触发OS内核518,以当需要终止时终止任务。
此外,任务管理模块540可基于来自窗口管理模块532的信息暂停该应用程序564。暂停应用程序564可以在内存中保持应用程序数据,但可以限制或停止应用程序564呈现窗口或用户界面。一旦应用程序又变为活动的,任务管理模块540可以再次触发应用程序呈现其用户界面。在实施例中,如果任务被暂停,如果任务结束,则任务可以保存任务的状态。在暂停状态下,应用程序任务可能不接收输入,因为该应用程序窗口对用户是不可见的。
帧缓冲器548是用于呈现用户界面的逻辑结构。OS内核518可以创建并 销毁帧缓冲器548。然而,显示控制器544可以为可见的窗口写入图像数据到帧缓冲器548中。帧缓冲器548可以与一个或多个屏幕相关联。帧缓冲器548与屏幕的关联可以通过与操作系统内核518的交互来动态控制。可以通过将多个屏幕关联到单一的帧缓冲器548来创建复合显示。然后用于呈现应用程序的窗口用户界面的图形数据可以被写入到用于复合显示的单个帧缓冲器548中,它被输出到多个屏幕104、108。显示控制器544可以将应用程序的用户界面引导到映射到特定的显示器110、114的帧缓冲器548的一部分,因此,只在一个屏幕104或108上显示用户界面。显示控制器544可以将对用户界面的控制延伸到多个应用程序,为与帧缓冲器548或其部分相关联的多个显示器控制用户界面。这种方法补偿显示控制器544上的软件组件使用的多个物理屏幕104、108。
应用程序管理器562是为窗口环境提供展示层的应用程序。因此,应用程序管理器562提供了由任务管理模块540呈现的图形化模型。同样,桌面566为应用程序存储装置560提供展示层。因此,桌面为应用程序存储装置560中的应用程序564提供具有可选择的应用程序图标的表面的、可以提供给窗口管理器556来呈现的图形化模型。
此外,该框架可以包括应用程序模型管理器(AMM)542。应用程序管理器562可以与AMM542接口。在实施例中,AMM542从设备100接收关于应用程序的状态(正在运行或暂停)的状态变化信息。AMM542可以将位图图像从表面高速缓存模块528关联到活动(运行或暂停)的任务。此外,AMM542可以将保持在任务管理器模块540的逻辑窗口堆栈转换为线性(“胶片”或“一副卡牌”)组织(organization),当使用离屏手势捕捉区域120进行窗口排序时用户感觉到所述线性组织。此外,AMM542可以为应用程序管理器562提供执行应用程序的列表。
MDM模块524的实施例示于图5B。MDM模块524可操作来确定设备的环境的状态,包括但不限于该设备的方向、设备100是否被打开或关闭、什么应用程序564正在执行、应用程序如何564被显示、用户进行什么样的行动,被显示的任务等。为了配置显示器,如结合图6A-6J描述的那样,MDM模块524解释这些环境因素并确定显示配置。然后,MDM模块524可以将应用程序564或其他设备组件绑定到显示器。然后,该配置可以被发送到显示控制器544和/或OS516内的其它组件来生成显示。MDM模块524可以包括一个或多 个,但不限于,显示配置模块568、偏好模块572、设备状态模块574、手势模块576、要求模块580、事件模块584和/或绑定模块588。
显示配置模块568确定显示的布局。在实施例中,显示配置模块568可以确定环境因素。可以从一个或多个其他MDM模块524或其它来源接收环境因素。然后显示配置模块568可以从因素列表中确定显示的最佳配置。结合图6A-6F描述可能的配置和与其相关联的因素的一些实施例
偏好模块572可操作来确定应用程序564或其它组件的显示偏好。例如,应用程序可以有单或双显示器的偏好。如果设备100在可适应该偏好模式的状态下,偏好模块572可确定应用程序的显示偏好(例如,通过检查应用程序的偏好设置)并且可以允许应用程序564改变到一个模式(例如,单屏幕、双屏幕、最大等)。然而,即使一个模式是可用的,一些用户界面策略可能不允许该模式。由于设备的配置改变,可以检查偏好以确定是否可以实现应用程序564的更好的显示配置。
设备状态模块574可操作来确定或接收设备的状态。可以结合图3A和图3B描述设备的状态。显示配置模块568可以使用设备的状态来确定显示的配置。因此,设备状态模块574可以接收输入,并解释该设备的状态。然后提供状态信息到显示配置模块568。
手势模块576作为MDM模块524的一部分示出,但是,在实施例中,手势模块576可以是从MDM模块524分离的独立的框架520组件。在实施例中,手势模块576可操作来确定是否用户在用户界面的任何部分上进行任何操作。在可替代的实施例中,手势模块576只从可配置的区域112、116接收用户界面操作。手势模块576可以通过输入管理模块536接收发生在可配置区域112、116(或可能的其他用户界面区域)的触摸事件,并且可以(通过使用方向、速度、距离、时间和其他各种参数)解释触摸事件,以确定用户执行什么手势。当解释手势时,手势模块576可以发起对手势的处理,并通过与其它框架520组件协作可以管理所需窗口动画。手势模块576与应用程序模型管理器542协作以收集关于当用户手势进行时哪些应用程序正在运行(活动或暂停)和应用程序必须出现的顺序状态信息。手势模块576还可以(从表面高速缓存模块528)接收位图的参考和活动的窗口,使得在发生手势时,它可以指示显示控制器544如何在显示器110、114上移动窗口。因此,当这些窗口在显示屏上110、114上移动时,暂停的应用程序可能会显现正在 运行。
此外,手势模块576可以从任务管理模块540或输入管理模块536接收任务信息。这些手势可以结合图4A至4H定义。例如,移动窗口使显示器呈现一系列图示窗口的移动的显示帧。与这样的用户界面交互相关联的手势可以由手势模块576接收和解释。然后与用户手势有关的信息被发送到任务管理模块540来修改任务的显示绑定。
要求模块580,类似于偏好模块572,可操作来确定应用程序564或其他组件的显示要求。应用程序可以有一组必须遵守的显示要求。一些应用程序需要特定的显示方向。例如,应用程序“愤怒的小鸟”只能以横向显示。这种类型的显示要求可以由要求模块580确定或接收。由于设备的方向变化,要求模块580可以再次确定应用程序564的显示要求。显示配置模块568可以生成如要求模块580所提供的、根据应用程序显示要求的显示配置。
事件模块584,类似于手势模块576,可操作来确定可以影响用户界面的、与应用程序或其他组件发生的一个或多个事件。因此,事件模块584可以从事件缓冲器556或任务管理模块540接收事件信息。这些事件可以改变任务如何绑定到显示器。事件模块584可以从其他框架520组件收集状态变化信息,并根据状态变化信息采取行动。在示例中,当手机被打开或关闭或当朝向发生变化时,新的消息可以在辅助屏幕呈现。事件模块584可以接收和解释基于事件的状态变化。然后关于事件的信息可以被发送到显示配置模块568来修改显示的配置。
绑定模块588,可操作来将应用程序564或其他组件绑定到显示配置模块568确定的配置。绑定在内存中将每个应用程序的显示配置与应用程序的显示和模式相关联,因此,绑定模块588可以将应用程序与应用程序的显示配置(如横向、纵向、多屏幕等)相关联。然后,绑定模块588可以分配显示器标识符到显示器。显示器标识符将应用程序与设备100的特定显示器相关联。此绑定然后被存储并提供给显示控制器544、OS516的其它组件或者正确地呈现显示的其它组件。绑定是动态的,并且可以基于与事件、手势、状态变化、应用程序偏好或要求等相关联的配置更改或更新。
用户界面配置:
现在参考图6A-J,由设备100实现的各种类型的输出配置将在下文描述。
图6A和6B描绘了在第一状态的设备100的两个不同的输出配置。具体 而言,图6A描绘了设备100在关闭纵向状态304,其中数据被显示在主屏幕104上。在这个示例中,设备100以第一纵向配置604,通过触摸敏感显示器110显示数据。可以理解的是,第一纵向配置604只可显示桌面或操作系统主页屏幕。可替换地,当设备100以第一纵向配置604显示数据时,可以在纵向方向呈现一个或多个窗口。
图6B描绘了设备100仍然是在关闭纵向状态304下,但是在辅助屏幕108上显示数据。在这个示例中,设备100以第二纵向配置608,通过触摸敏感显示器114显示数据。
可以以第一或第二纵向配置604、608显示相似的或不同的数据。也可以通过提供给设备100用户手势(例如,双击手势)、菜单选择或其他方式来在第一纵向配置604和第二纵向配置608之间过渡。也可以采用其它合适的手势来在配置之间过渡。此外,根据设备100被移动到哪个状态,也可以使设备100从第一或第二纵向配置604、608过渡到本文所描述的任何其他配置。
在第二状态的设备100可适应另一种输出配置。具体而言,图6C描绘了第三纵向配置,其中数据同时显示在主屏幕104和辅助屏幕108上。第三纵向配置可被称为为双纵向(PD)输出配置。在PD输出配置中,当辅助屏幕108的触摸敏感显示器114以第二纵向配置608描绘数据时,主屏幕104的触摸敏感显示器110以第一纵向配置604描绘数据。当设备100是在打开纵向状态320时,第一纵向配置604和第二纵向配置608的同时呈现可以发生。在此配置中,设备100可以在一个显示器110或114中显示一个应用程序窗口、两个应用程序窗口(在每个显示器110和114中各一个)、一个应用程序窗口和一个桌面、或一个桌面。其他的配置是可能的。应当理解的是,根据设备100被移动到哪个状态,也可以使设备100从配置604、608的同时显示过渡到本文所描述的任何其他配置。此外,在此状态下,应用程序的显示偏好可以将设备放置到双边模式,在这种模式下两个显示器都是活动的,以在相同的应用程序中显示不同的窗口。例如,相机应用程序可以在一侧显示取景器以及控制,而另一侧显示可以由照片主题看到的镜像预览。涉及两名玩家同时玩的游戏也可以利用双边模式的优点。
图6D和6E描绘了在第三状态的设备100的另外两个输出配置。具体而言,图6D描绘了在数据被显示在主屏幕104上的关闭横向状态340的设备100。在这个示例中,设备100以第一横向配置612通过触摸敏感显示器110 显示数据。就像本文中说明的其他配置,第一横向配置612可以显示桌面、主页屏幕,显示应用程序数据的一个或多个窗口等。
图6E描绘了仍然是在关闭横向状态340的设备100,但是数据被显示在辅助屏幕108上。在这个示例中,设备100以第二横向配置616通过触摸敏感显示器114显示数据。可以以第一或第二纵向配置612、616显示相似或不同的数据。也可以通过提供设备100扭曲和轻敲手势或轻弹和滑动手势中的一个或两个来在第一横向配置612和第二横向配置616之间过渡。也可以采用其它合适的手势在配置之间过渡。此外,也可以根据设备100被移动到哪个状态来将设备100从所述第一或第二横向配置612、616过渡到本文所描述的任何其他配置。
图6F描绘了第三横向配置,其中数据同时显示在主屏幕104和辅助屏幕108上。第三横向配置可以被称为双横向(LD)输出配置。在LD输出配置中,主屏幕104的触摸敏感显示器110以第一横向配置612描绘数据,而辅助屏幕108的触摸敏感显示器114以第二横向配置616描绘数据。当设备100在打开横向状态340时,第一横向配置612和第二横向配置616的同时呈现可能会发生。应当理解的是,也可以根据设备100被移动到哪个状态,将显示设备100从配置612、616的同时显示过渡到本文所描述的任何其他配置。
图6G和图6H描绘了在另一种状态的设备100的两个视图。具体而言,设备100被描述为在支架状态312。图6G示出了第一支架输出配置618可以被显示在触摸敏感显示器110上。图6H示出了第二支架输出配置620可以被显示在触摸敏感显示器114上。设备100可以被配置为分别描绘第一支架输出配置618或第二支架输出配置620。或者,可以同时呈现支架输出配置618、620。在一些实施例中,支架输出配置618、620可以与横向输出配置612、616相似或相同。在修改的支架状态316下,设备100还可以被配置为显示一个或两个支架输出配置618、620。应该理解的是支架输出配置618、620的同时利用可以促进双人游戏(例如,国际象棋、跳棋等)、两个或多个用户共享同一台设备100的多用户会议和其他应用程序。可以理解的是,也可以根据设备100被移动到哪个状态,使显示设备100从显示一个或两个配置618、620过渡到这里所描述的任何其他配置。
图6I描绘了当设备100在打开纵向状态320下可以适应的另一种输出配置。具体而言,在这里被称为纵向最大(PMAX)配置624的纵向配置中,设 备100可以被配置为提供跨越两个触摸敏感显示器110、114的单一的连续图像。在此配置中,可以分割并且在触摸敏感显示器之一上部分显示数据(例如,单一图像、应用程序、窗口、图标、视频等),而数据的其它部分被显示在另一触摸敏感显示器上。Pmax配置624可有助于在设备100上显示特定的图像的更大的显示和/或更好的分辨率。与其他的输出配置类似,根据设备100被移动到哪个状态,可以将设备100从Pmax配置624过渡到本文描述的任何其他的输出配置。
图6J描绘了当设备100在打开横向状态348下可以适应的另一个输出配置。具体而言,在这里被称为横向最大(LMAX)配置628的横向配置中,设备100可以被配置为提供跨越两个触摸敏感显示器110、114的单一的连续图像。在此配置中,可以分割并且在触摸敏感显示器之一上部分显示数据(例如,单一的图像、应用程序、窗口、图标、视频等),而数据的其它部分被显示在另一触摸敏感显示器上。Lmax的配置628可有助于在设备100上显示特定的图像的更大的显示和/或更好的分辨率。与其他的输出配置类似,根据设备100被移动到哪个状态,可以将设备100从Lmax的配置628过渡到本文描述的任何其他的输出配置。
如图7A和7B所示,设备100管理具有至少一个窗口堆栈700的桌面和/或窗口。窗口堆栈700是多屏幕设备的活动的或者非活动的窗口或者显示对象的逻辑布置。例如,如图7A和7B所示,窗口堆栈700可以逻辑地类似于一副扑克牌或砖块的堆叠,其中,一个或者更多的窗口或者显示对象(例如,桌面)被按顺序布置。活动的窗口是当前在至少一个触摸敏感显示器110、114上正在被显示的窗口。例如,窗口1708是活动的窗口并且被显示在触摸敏感显示器114中的至少一个上。在图7A所示的实施例中,设备100处于关闭状态304,以配置608显示窗口1708。非活动的窗口是被打开并且被显示的、但是在活动的窗口“后面”的窗口,并且没有被显示。在实施例中,非活动的窗口可以用于暂停的应用程序,因此窗口不显示活动的内容。例如,窗口2712和窗口3716是非活动的窗口。
窗口堆栈700可以具有各种布置或者组织结构。在图7A所示的实施例中,当设备100以第二纵向配置处于关闭状态304时,设备100包括与第一触摸敏感显示器114相关联的第一堆栈704。因此,每个触摸敏感显示器114可以具有相关联的窗口堆栈704。在其它实施例中,存在包括所有复合显示器 的单个的窗口堆栈。该复合显示器是限定了包括两个触摸敏感显示器110、114的整个显示空间的逻辑结构。设备100可以具有复合显示器的单个堆栈,其中窗口或者显示对象被调整大小以占据复合显示器的部分或者全部。因此,堆栈704可以表示更大的复合窗口堆栈的部分,由于设备100在关闭状态304,因此其中的部分没有显示。
在图7B中,两个窗口堆栈(或者窗口堆栈的两个部分)704、724可以具有布置在各个堆栈704、724的不同数量的窗口或者显示对象。而且,两个窗口堆栈704、724也可以被不同地识别并且被分别地管理。如图7A所示,第一窗口堆栈704可以从第一窗口708到下一个窗口712到最后一个窗口716并且最后到桌面720按顺序布置,在实施例中,桌面720在窗口堆栈704的“底部”。在实施例中,桌面720并不总是在“底部”,因为应用程序窗口可以被布置在窗口堆栈中的桌面720的下方,并且在桌面或者其它方向改变期间,桌面720可以被放到在其它窗口上方的堆栈的“顶部”。例如,如图7B所示,设备100转换到打开状态320。设备100转换到如图6C所示的显示配置。因此,触摸敏感显示器110没有与触摸敏感显示器110相关联的窗口。因此,为触摸敏感显示器110显示桌面720。因此,第二堆栈724可以包括桌面720,在实施例中,所述桌面720是单个的桌面区域,桌面720在窗口堆栈704和窗口堆栈724中的所有窗口的下面。用于管理两个窗口堆栈或者具有两个部分704、724的单个窗口堆栈的逻辑数据结构可以结合图8被描述。
设备被打开后窗口的堆栈704的布置如图7C至7E中所示。窗口堆栈704被示出在三个“立面”视图中。在图7C中,示出了窗口堆栈704/724的顶部。图7D和7E中示出了窗口堆栈704/724的两个相邻的边。在这个实施例中,窗口堆栈704/724类似于一摞砖。窗口被互相堆叠。从图7C中的窗口堆栈704/724的顶部看,只有窗口堆栈704/724中的最顶部的窗口在复合显示器728的不同部分被看见。桌面786或者窗口可以占据复合显示器728的部分或者全部。图C示出了复合显示器728.复合显示器728涵盖或者包括所有的触摸敏感显示器110、114的显示区域。复合显示器728的大小可以基于设备100的方向改变。例如,如图7A所示,当在关闭状态时,设备100的复合显示器728的大小可以只包括触摸敏感显示器110或者114之一的区域。当设备100被打开时,如图7B和7C所示,复合显示器728扩张以包括两个触摸敏感显示器110、114。当复合显示器728改变尺寸,一些窗口或者显示对 象与复合显示器728相关联并且也改变尺寸。在实施例中,一个这样的显示对象可以是桌面720,当设备打开以填充复合显示器728所述桌面720可以改变尺寸。
在示出的实施例中,桌面720是窗口堆栈704/724中最低的显示对象、窗口或者“砖”。在那上面,窗口1708、窗口2712以及窗口3716被层叠。窗口1708、窗口2712和窗口3716只占据复合显示器728的部分。因此,堆栈724的另一个部分只包括桌面718。仅仅实际地呈现并显示复合显示器728的任何部分中的顶部窗口或者显示对象。因此,如图7C中的顶视图所示,窗口1708和桌面718被显示在窗口堆栈704/724的不同部分的顶部。窗口可以被调整大小以只占据复合显示器728的部分以“显露”窗口堆栈704中的较低的窗口。例如,桌面718比窗口1708、窗口2712和窗口3716低,但是仍然被显示。当正显示窗口堆栈704中的顶部窗口的设备被打开时,发生窗口和桌面的这种布置。
桌面718在堆栈中放置于哪里以及如何放置可以是设备100的方向、在设备100上正在被执行的程序、函数、软件等的上下文、设备100被打开时如何放置堆栈等的函数。当设备100打开时,与桌面718或者其它窗口相关联的逻辑数据结构可以不改变,但是逻辑数据结构可以确定如何显示窗口和桌面。当用户界面或者其它事件或者任务改变堆栈的布置时,窗口或者桌面的逻辑结构可以被改变以反映布置中的改变。
图7F至7J示出了窗口堆栈布置724的另一个实施例,所述窗口堆栈布置724由于设备从图7A至7C的不同的布置被打开而改变。在图7F中示出的实施例中,设备100在关闭状态304,以配置608显示窗口1708。窗口2712和窗口3716是非活动的窗口。在图7F中示出的实施例中,当设备100在第一纵向配置604的关闭状态304时,设备100包括与第二触摸敏感显示器110相关联的第二堆栈724。因此,触摸敏感显示器110可以具有相关联的窗口堆栈724。在其它实施例中,存在涵盖复合显示器的全部的单个窗口。设备100可以具有复合显示器的单个堆栈,其中窗口或者显示对象被调整大小以占据复合显示器的部分或者全部。因此,堆栈724可以表示更大的复合窗口堆栈的部分,由于设备100在关闭状态304,因此其中的部分没有显示。
在图7G中,两个窗口堆栈(或者窗口堆栈的两个部分)704、724可以具有布置在各个堆栈704、724的不同数量的窗口或者显示对象。而且,两个 窗口堆栈704、724也可以被不同地识别并且被分别地管理。如图7F所示,第二窗口堆栈724可以按照从第一窗口708到下一个窗口712到最后一个窗口716并且最后到桌面720的顺序布置,在实施例中,桌面720在窗口堆栈704的“底部”。在实施例中,桌面720并不总是在“底部”,因为应用程序窗口可以被布置在窗口堆栈中的桌面720的下方,并且在桌面或者其它方向改变期间,桌面720可以被放到在其它窗口上方的堆栈的“顶部”。例如,如图7G所示,设备100转换到打开状态320。设备100转换到如图6C所示的显示配置。因此,触摸敏感显示器114没有与触摸敏感显示器114相关联的窗口。因此,为触摸敏感显示器114显示桌面720。因此,第二堆栈704可以包括桌面720,在实施例中,所述桌面720是单个的桌面区域,桌面720在窗口堆栈704和窗口堆栈724中的所有窗口的下面。用于管理两个窗口堆栈或者具有两个部分704、724的单个窗口堆栈的逻辑数据结构可以结合图8被描述。
设备被打开后的窗口堆栈724的布置如图7H至7J中所示。窗口堆栈704被示出在三个“立面”视图中。在图7H中,示出了窗口堆栈704/724的顶部。图7I和7J中示出了窗口堆栈704/724的两个相邻的“边”。在这个实施例中,窗口堆栈704/724类似于一摞砖。窗口被互相堆叠。从图7H中的窗口堆栈704/724的顶部看,只有窗口堆栈704/724中的最顶部的窗口/显示对象在复合显示器728的不同部分被看见。桌面720或者窗口可以占据复合显示器728的部分或者全部。
在示出的实施例中,桌面720是窗口堆栈704/724中最低的显示对象、窗口或者“砖”。在那上面,窗口1708、窗口2712以及窗口3716被层叠。窗口1708、窗口2712和窗口3716只占据复合显示器728的部分。因此,堆栈724的另一个部分只包括桌面718。仅仅实际地呈现并显示复合显示器728的任何部分中的顶部窗口或者显示对象。因此,如图7H中的顶视图所示,窗口1708和桌面720被显示在窗口堆栈704/724的不同部分的顶部。窗口可以被调整大小以只占据复合显示器728的部分以“显露”窗口堆栈704中的较低的窗口。例如,桌面718比窗口1708、窗口2712和窗口3716低,但是仍然被显示。当正显示窗口堆栈704中的顶部窗口的设备被打开时,发生窗口和桌面的这种布置。
桌面718在堆栈中放置于哪里以及如何放置可以是设备100的方向、在 设备100上正在被执行的程序、函数、软件等的上下文、设备100被打开时如何放置堆栈等的函数。当设备100打开时,与桌面718或者其它窗口相关联的逻辑数据结构可以不改变,但是逻辑数据结构可以确定如何显示窗口和桌面。当用户界面或者其它事件或者任务改变堆栈的布置时,窗口或者桌面的逻辑结构可以被改变以反映布置中的改变。
用于管理在窗口堆栈中的窗口或桌面的布置的逻辑数据结构800示于图8。逻辑数据结构800可以是用于存储(无论是对象、记录、文件等)数据的任何数据结构。逻辑数据结构800可以被存储在任何类型的数据库或数据存储系统,而无论协议或标准。在实施例中,逻辑数据结构800包括在允许便于存储和检索信息的逻辑布置中存储数据的一个或多个部分、字段、属性等。在下文中,这些一个或多个部分、字段、属性等将被简单描述为字段。字段可以存储窗口标识符804、尺寸808、窗口堆栈位置标识符812,显示器标识符816和/或活性指示符820。在窗口堆栈中的每个窗口可以有相关联的逻辑数据结构800。如椭圆828所表示的,虽然只有单一的逻辑数据结构800示于图8,可以有与窗口用户界面700一起使用的更多或更少的逻辑数据结构800(基于在堆栈中的窗口或桌面的数量)。另外,如椭圆828所表示的,也可以有比图8中所示的更多或更少的字段。
窗口标识符804可以包括任何标识符(ID),所述标示符唯一地标识与窗口堆栈中的其他窗口或者显示对象有关的相关联的窗口或者显示对象。窗口标识符804可以是全局唯一标识符(GUID)、数字ID、字母数字ID或其他类型的标识符。在实施例中,该窗口标识符804可以是基于可以打开的窗口或者显示对象的数量的一个、两个或任何数量的数字。在可替代的实施例中,窗口标识符804的大小可以基于打开的窗口或者显示对象的数量改变。当窗口或者显示对象是打开的,该窗口标识符804可以是静态的并保持不变。
尺寸808可以包括在复合显示器704中的窗口或者显示对象的尺寸。例如,尺寸808可以包括窗口或者显示对象的两个或更多个角的坐标或者可以包括窗口或者显示对象的宽和高的一个坐标和尺寸。这些尺寸808可以界定窗口或者显示对象可以占据复合显示器704的什么部分,它可以是整个的复合显示器704或者只是复合显示器704的部分。例如,如图7C和7H所示,窗口1708可以具有指示窗口1708将占据复合显示器728的显示区域的仅仅部分的尺寸880。由于窗口或者显示对象在窗口堆栈中被移动或者插入, 因此尺寸808可以改变。
堆栈位置标识符812可以是任何标识符,该任何标识符可以识别窗口或者显示对象在堆栈中的位置,或者该堆栈位置标识符812可以从数据结构中的窗口的控制记录(诸如列表或者堆栈)推断。堆栈位置标识符812可以是GUID、数字ID、字母数字ID或其他类型的标识符。每个窗口或显示对象可以包括堆栈位置标识符812。例如,如图7A所示,在堆栈1704中的窗口1708可以具有识别窗口708是堆栈704中的第一个窗口并且是活动的窗口的堆栈位置标识符812。同样地,窗口2712可以具有表示窗口2712是堆栈704中的第二个窗口的堆栈位置标识符812。因此,根据堆栈的类型,堆栈位置标识符812可以表示堆栈中的窗口或者显示对象的位置。
显示器标识符816可以识别窗口或显示对象与特定显示器(诸如第一显示器110第二显示器114)或者由两个显示器组成的复合显示器728相关联。如图7A所示,虽然多堆栈系统可能并不需要显示器标识符816,但是显示器标识符816可以指示在图7的系列堆栈中的窗口或者显示对象是否在特定显示器上显示。因此,桌面720可以具有图7C所示的两个部分。第一部分可以具有第一显示器110的显示器标识符,而第二部分可以具有第二显示器114的显示器标识符816.然而,在可替代的实施例中,桌面720可以具有识别复合显示器728的单个显示器标识符816。
与显示器标识符816相似,由于堆栈位置1中的窗口或者显示对象是活动的并且被显示,图7A的双堆栈系统可以不需要活动指示符820。在可替代的实施例中,活动指示符820可以指示堆栈中的那个(些)窗口正在被显示。因此,窗口1708可以被示出,并且具有活动指示符820。活动指示符820可以是表示窗口或者显示对象是活动的或者被显示的简单的标记或者位。
用于改变窗口堆栈的方法900的实施例示于图9。图9中示出了方法900的步骤的一般顺序,一般来说,方法900以开始操作904开始并且以结束操作924结束。方法900可以包括更多的或更少的步骤,或者可以以不同于图9所示的步骤顺序来排列步骤的顺序。方法900可以作为由计算机系统执行并且在计算机可读介质上编码或存储的计算机可执行指令的集合来被执行。在下文中,参照结合图1-8描述的系统、组件、模块、软件、数据结构、用户界面将要来说明方法900。
多屏幕设备100可以接收如图3A-3B描述的方向改变,所述方向改变在 步骤908中将设备100从关闭状态304改变到打开状态320。方向改变可以被检测到并且接收来自霍尔效应传感器、计时器等的硬件输入的信号。方向改变可以被任务管理模块540接收并发送到多显示器管理模块524。多显示器管理模块524可以解释该改变以将显示器的配置从关闭的纵向显示604、608改变到打开的纵向显示(如图6C所示),或者从横向关闭显示612、616到打开的横向配置(如图6F所示,如与图6A至6F结合所描述的)。在实施例中,任务管理模块540将用户界面交互放置到任务堆栈552中以被多显示器管理模块524作用。此外,任务管理模块540等待来自多显示器管理模块524的信息以发送指令到窗口管理模块532来在窗口堆栈704中创建窗口。
当从任务管理模块540接收指令时,在步骤912,多显示器管理模块524确定是否显露桌面786。在实施例中,在设备100被打开前,桌面786可以在窗口堆栈704/724的底部。然而,设备100可以显示堆栈704/724中的最后一个窗口。换句话说,堆栈704/724中的顶部窗口正在被显示,在填充打开状态中的新近显露的显示器的位置的没有窗口。例如,在图7A中,窗口1的“左侧”没有窗口。因此,如图7B所示,多显示器管理模块524需要在显示器110中呈现桌面720。由于桌面720通常跨越复合显示器728展开,桌面720总是在打开的设备100上显示除非另一个窗口覆盖桌面720。如图7B和7F所示,由于没有窗口覆盖桌面720,多显示器管理模块524确定在打开的显示器中显示桌面720。
在实施例中,多显示器管理模块524的设备状态模块574可以确定设备是如何被定向的或者设备处于什么状态,例如打开的、关闭的、纵向的等。此外,偏好模块572和/或要求模块580可以基于桌面786的偏好确定桌面786如何被显示。然后显示配置模块568可以使用来自设备状态模块574、偏好模块572和/或其它框架组件520的输入来评估当前的窗口堆栈704/724。因为其它窗口不移动,正示出在新的显示器中的桌面720通常不影响窗口堆栈704/724中的其它窗口。然而,在桌面720被修改以填充复合显示器728时桌面720的尺寸808可以改变,桌面720在打开设备100是扩张。
在实施例中,可见性算法为复合显示器728的所有部分确定那些窗口/显示对象在堆栈704/724的顶部。例如,如图7B或者7F所示,可见性算法确定在设备100被打开以后,桌面786在堆栈704的一部分中被显露。此外,如图7B或者7F所示,窗口1708在堆栈704中的其它部分中被显示。当确 定了在哪里显露桌面720时,显示配置模块568可以改变桌面720的显示尺寸808、显示器标识符816和/或堆栈位置标识符812。多显示器管理模块524然后可以将尺寸808、显示器标识符816和/或堆栈位置标识符812发送回任务管理模块540。
在实施例中,任务管理模块540发送尺寸808、显示器标识符816和/或堆栈位置标识符812和/或其它信息和指令来将桌面786呈现到窗口管理模块532。在步骤920,窗口管理模块532和任务管理模块540可以改变逻辑数据结构800。任务管理模块540和窗口管理模块532都可以管理窗口堆栈704/724的副本。窗口堆栈704/724的这些副本可以通过窗口管理模块532和任务管理模块540之间的通信被同步或者被保持相似。因此,基于多显示管理模块524确定的信息,窗口管理模块532和任务管理模块540可以改变桌面720的尺寸808、显示器标识符816和/或堆栈位置标识符812以及一个或者更多个窗口。然后逻辑数据结构800可以被窗口管理模块532和任务管理模块540存储。而且,窗口管理模块532和任务管理模块540可以在此后管理窗口堆栈704/724和逻辑数据结构800。
本公开的示例性系统和方法已经相关于与多屏幕设备相关联的窗口堆栈进行了描述。然而,为了避免不必要地模糊本公开,前面的描述省略了若干公知的结构和设备。这种省略不应被理解为对权利要求的范围的限制。阐明具体细节以提供对本公开的理解。然而,应当理解的是,本公开可以以超出本文所阐述的具体细节的各种方式来实践。
此外,虽然本文示出的示例性方面、实施例和/或配置显示并列配置的系统的各个组成部分,该系统的某些组件可以在分布式网络(诸如LAN和/或因特网)中或在专用系统内的远距离部分远程定位。因此,应该理解的是,该系统的组件可以结合到一个或多个设备(诸如计算机、笔记本电脑、上网本、平板电脑、智能手机、移动装置等,或在分布式网络中的特定的节点并列配置(如模拟和/或数字电信网络、分组交换网络或电路交换网络)。从前面的描述可以理解,由于计算效率的原因,系统的组件可以被布置在组件的分布式网络内的任何位置,而不会影响系统的操作。例如,在一个或多个用户的前提下,各个组件可以位于诸如PBX和媒体服务器、网关之类的转换器(switch)中,一个或多个通信设备中或它们的一些组合中。同样地,系统的一个或多个功能部分可以分布在电信设备和相关联的计算设备之间。
此外,应当理解的是,连接元件的各种链路可以是有线或无线链路,或它们的任何组合,或能够到和从所连接的元件提供和/或通信数据的任何其它已知或以后开发的元件。这些有线或无线链路还可以是安全链路并且可以能够通信加密的信息。用作链路的传输介质可以是例如用于电信号的任何适当的载体,包括同轴电缆、铜线和光纤,并且可以采取声波或光波的形式,诸如在无线电波和红外线红色数据通信过程中产生的那些。
而且,虽然已与事件的特定序列相关地讨论并示出流程图,应理解的是,该序列的变化、添加和省略可以发生而不显著影响所公开的实施例、配置和方面的操作。
可以使用本公开的一些变化和修改。可以为本公开的某些特征提供而不提供其它。例如,在一个替代性实施例中,窗口堆栈类似于传送带或者关系网而非一副纸牌。因此,窗口可以从一个触摸敏感显示器110循环到另一个触摸敏感显示器114。例如,窗口可以被推送到右侧并且在另一个窗口后面的堆栈的末端结束。如果堆栈继续移动到右侧,即使窗口在第一触摸敏感显示器110中被打开,最终窗口将在第二触摸敏感显示器上出现。堆栈中的这些移动和改变可以通过使用以上讨论的方法和逻辑数据结构来被管理。在另一个可替代实施例中,可以存在窗口堆栈的其它布置。
在又一实施例中,本公开的系统和方法可以结合专用计算机、编程微处理器或微控制器和外围集成电路元件、ASIC或其它集成电路、数字信号处理器、诸如离散元件电路之类的硬连线电子或逻辑电路、(诸如PLD,PLA,FPGA,PAL之类的)可编程逻辑器件或门阵列、专用计算机、任何类似设备等来实现。在通常情况下,能够实现本文所示的方法的任何设备可以用于实现本公开的各个方面。可用于所公开的实施例、配置和方面的示例性硬件包括计算机、手持设备、电话(例如,蜂窝电话、启用的互联网、数字、模拟、混合式以及其他)和本领域中已知的其它硬件。这些设备的一些包括处理器(例如,单个或多个微处理器)、存储器、非易失性存储器、输入设备和输出设备。此外,包括但不限于分布式处理或组件/对象分布式处理、并行处理或虚拟机处理的替代软件实现也可以被构建来实现这里描述的方法。
在又一实施例中,所公开的方法可以结合使用对象或面向对象的软件开发环境的软件容易地实现,所述软件开发环境提供了可以使用在各种计算机或工作站平台上的便携式源代码。可替换地,所公开的系统可以部分或全部 以使用标准逻辑电路或VLSI设计的硬件实现。使用软件还是者硬件来实现根据本发明的系统取决于系统的速度和/或效率的要求、特定功能以及所正在使用的特定软件或硬件系统或微处理器或微计算机系统。
在又一实施例中,所公开的方法可部分地在软件实现,所述软件可以被存储在存储介质上并且与控制器和存储器、专用计算机、微处理器等合作在编程的通用计算机上执行。在这些例子中,本公开的系统和方法可以被实现为嵌入在个人计算机上的程序,如applet,或CGI脚本,作为驻留在服务器或计算机工作站上的资源,作为嵌入在专用测量系统的常规程序、系统组件等。该系统还可以通过物理地将系统和/或方法结合到软件和/或硬件系统来实现。
虽然本公开参照特定标准和协议描述在方面、实施例和/或配置中实现的组件和功能,所述方面、实施例和/或配置并不限于这些标准和协议。存在本文未提及的其它类似的标准和协议并且被认为包括在本公开内。此外,这里提到的标准和协议和这里未提到的其他类似的标准和协议周期性地被更快或更有效的具有基本上相同功能的等效物取代。具有相同功能的这样的替代标准和协议被认为是包括在本公开内的等同物。
基本上如本文中描述和说明的,本公开在各个方面、实施例中和/或配置中包括组件、方法、处理、系统和/或设备,包括各个方面,实施例,配置实施例,子结合和/或其子集。本技术领域的技术人员将明白在理解本公开内容后如何制造和使用所揭示的方面、实施例和/或配置。本公开在各个方面、实施例和/或配置包括提供没有本文所描绘的项目和/或未描述项目的设备或过程,和\或在各个方面、实施例和/或其配置包括没有可在先前的设备或过程使用的这种项目,例如,用于改善性能、实现轻松减少实施成本。
以说明和描述的目的呈现前面的讨论。前述内容并不意在以本文所公开的形式限制本公开。例如在前述示例的详细描述中,为简化本公开的目的,本公开的各种特征在一个或多个方面、实施例和/或配置中分组在一起。本公开的方面、实施例和/或配置的特征可以在替代方面、实施例和/或上面讨论的那些以外的配置被组合。公开的这种方法不被解释为反映权利要求要求比在每个权利要求中记载的特征更多的特征的意图。相反,正如以下权利要求所反映的,创造性方面在于比单一的上述公开的方面、实施例和/或配置的所有特征少。因此,下面的权利要求被并入到该详细描述中,每个权利要求本 身独立作为本公开的单独的优选实施例。
此外,虽然描述包括了一个或多个方面、实施例和/或配置的描述,特定的变化和修改、其他的变化、组合和修改在本公开的范围内,例如,可以在本领域技术人员理解本发明后的技能和知识范围内。意图获取权利,所述权利在允许的范围内包括替代方面、实施例和/或配置,包括对权利要求的可替代的、可互换的和/或等同的结构、功能、范围或步骤,而不论这些替代、互换和/或等同的结构、功能、范围或步骤是否被本文公开,并且不意图公开地贡献任何可专利主题。

Claims (14)

1.一种使得处理器执行为设备管理窗口堆栈的方法,所述方法包括:
接收方向改变,其中所述方向改变使得设备从关闭状态转换到打开状态,其中,在所述关闭状态:
第一显示器是激活的;
所述第一显示器和第二显示器面对相反方向;以及
所述第一显示器是用户可见的;
在所述打开状态,
所述第一显示器和所述第二显示器面对相同方向;以及
所述第一显示器和所述第二显示器是用户可见的;
所述第一显示器和第二显示器都是激活的;
确定桌面是否应该在所述第二显示器上被显示;以及
在确定所述桌面应该在所述第二显示器上被显示之后,在所述第二显示器上显示所述桌面并且在所述第一显示器上显示第一窗口,其中
窗口堆栈是多屏幕设备的活动的和非活动的窗口的逻辑布置;
所述窗口堆栈向用户提供窗口或者显示对象的表示;
所述桌面是显示对象;
所述桌面跨复合显示器而被显示;
所述复合显示器基本上占据了所述第一和第二显示器的全部;
所述第一显示器和所述第二显示器是复合显示器的部分;以及
在所述第二显示器上显示桌面包括实现从在所述复合显示器上进行显示到在所述第二显示器上进行显示的桌面调整。
2.如权利要求1所述的方法,进一步包括修改与桌面相关联的逻辑数据结构。
3.如权利要求2所述的方法,其中,所述逻辑数据结构包括一个或者更多个:
窗口标识符,适用于识别在所述窗口堆栈中与其它窗口相关的桌面;
窗口堆栈位置标识符,适用于识别桌面在窗口堆栈中的位置;以及
显示器标识符,适用于识别与所述桌面相关联的多屏幕设备的复合显示器。
4.如权利要求2所述的方法,其中,所述多屏幕设备的第一显示器与所述窗口堆栈的第一部分相关联,并且所述多屏幕设备的第二显示器与所述窗口堆栈的第二部分相关联。
5.如权利要求4所述的方法,其中,所述逻辑数据结构进一步包括窗口堆栈标识符,所述窗口堆栈标识符适用于识别与桌面相关联的第一部分和第二部分两者。
6.一种多显示器设备,包括:
至少两个显示器;
存储器;以及
与所述存储器和所述至少两个显示器中的每个通信的处理器,所述处理器可操作来:
提供复合显示器,其中所述复合显示器包括一个处于关闭状态的显示器,其中,在所述关闭状态第一显示器是激活的,所述第一显示器和第二显示器面对相反方向;以及所述第一显示器是用户可见的;
接收多屏幕设备的方向改变,其中所述方向改变使得所述多屏幕设备从关闭状态转换到打开状态,其中,在所述打开状态,所述复合显示器包括与第一显示器相关联的第一部分以及与第二显示器相关联的第二部分,在所述打开状态,所述第一显示器和所述第二显示器面对相同方向,以及所述第一显示器和所述第二显示器是用户可见的,所述第一显示器和第二显示器都是激活的;
扩展桌面以覆盖所述复合显示器;
确定第一窗口在所述复合显示器的第一部分被显示;
响应于方向改变,确定所述桌面在所述复合显示器的第二部分被显示,其中没有窗口覆盖在复合显示器的第二部分上;
调整大小、重定向、以及在所述第二显示器上显示所述桌面并且在所述第一显示器上显示所述第一窗口,其中所述桌面与两个显示器均相关联。
7.如权利要求6所述的设备,进一步包括响应于调整大小、重定向、以及在第二显示器上显示桌面,修改与所述桌面相关联的逻辑数据结构。
8.如权利要求7所述的设备,其中,所述逻辑数据结构包括一个或者更多个:
窗口标识符,适用于识别在所述设备上执行的激活和非激活窗口的窗口堆栈中与其它窗口相关的桌面;
窗口堆栈位置标识符,适用于在所述复合显示器的至少第二部分识别所述桌面在窗口堆栈中的顶部位置;以及
至少两个显示器标识符,适用于识别与所述桌面相关联的多屏幕设备的至少两个显示器中的每个。
9.如权利要求8所述的设备,其中,所述桌面在窗口堆栈的底部被打开,并且因为在所述复合显示器的至少部分中没有窗口覆盖所述桌面,所以所述桌面被显示。
10.如权利要求9所述的设备,其中第一窗口在复合显示器的第一部分中的窗口堆栈中的顶部位置,其中所述第一窗口覆盖所述桌面和第一部分中的两个或更多窗口,其中所述桌面和两个或更多窗口不显示在第一部分上,并且其中暂停与两个或更多窗口相关联的应用程序。
11.一种为多屏幕设备呈现显示的方法,所述方法包括:
当所述多屏幕设备在关闭状态时,提供至少扩展第一触摸显示器的部分的复合显示器,其中,在所述关闭状态第一显示器是激活的,所述第一显示器和第二显示器面对相反方向;以及所述第一显示器是用户可见的;
当所述设备在关闭状态,在窗口堆栈的顶部位置显示第一窗口;
接收多屏幕设备的方向改变,其中所述方向改变是从所述关闭状态到打开状态的转换,其中在所述打开状态,所述第一显示器和所述第二显示器面对相同方向,以及所述第一显示器和所述第二显示器是用户可见的,所述第一显示器和第二显示器都是激活的,扩展桌面以覆盖所述复合显示器;
改变所述复合显示器以扩展所述多屏幕设备的第一显示器和第二显示器的至少部分,其中,所述复合显示器的第一部分与所述第一显示器相关联,所述复合显示器的第二部分与所述第二显示器相关联;
确定桌面与所述复合显示器相关联;
修改所述桌面以扩展到复合显示器上;
确定所述第一窗口在所述复合显示器的第一部分中的窗口堆栈的顶部位置;
响应于方向改变,确定所述桌面在所述复合显示器的第二部分中的窗口堆栈的顶部位置;
在所述第一显示器上显示所述第一窗口;以及
在所述第二显示器上显示所述桌面。
12.如权利要求11所述的方法,其中,确定所述桌面在所述复合显示器的第二部分中的窗口堆栈的顶部位置包括:
确定在与所述复合显示器的第二部分相关联的窗口堆栈的第二部分中没有其他覆盖桌面的窗口。
13.如权利要求12所述的方法,其中确定所述第一窗口在所述复合显示器的第一部分中的窗口堆栈的顶部位置包括:
确定在与所述复合显示器的第一部分相关联的窗口堆栈的第一部分中包括所述第一窗口、所述桌面和两个或更多其他窗口;以及
确定所述第一窗口覆盖所述桌面和窗口堆栈的第一部分中的两个或更多窗口,其中所述桌面和两个或更多窗口不显示在第一部分上,并且其中暂停与两个或更多窗口相关联的应用程序。
14.如权利要求13所述的方法,其中,所述第一显示器是主屏幕的部分。
CN201180058017.7A 2010-10-01 2011-09-29 当设备打开时显示桌面 Active CN103282955B (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US38900010P 2010-10-01 2010-10-01
US38911710P 2010-10-01 2010-10-01
US38908710P 2010-10-01 2010-10-01
US61/389,000 2010-10-01
US61/389,087 2010-10-01
US61/389,117 2010-10-01
US201161539884P 2011-09-27 2011-09-27
US61/539,884 2011-09-27
US13/248,138 US20120081318A1 (en) 2010-10-01 2011-09-29 Displaying the desktop upon device open
US13/248,138 2011-09-29
PCT/US2011/053953 WO2012044806A2 (en) 2010-10-01 2011-09-29 Displaying the desktop upon device open

Publications (2)

Publication Number Publication Date
CN103282955A CN103282955A (zh) 2013-09-04
CN103282955B true CN103282955B (zh) 2016-11-30

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331840B1 (en) * 1998-03-27 2001-12-18 Kevin W. Nielson Object-drag continuity between discontinuous touch screens of a single virtual desktop

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331840B1 (en) * 1998-03-27 2001-12-18 Kevin W. Nielson Object-drag continuity between discontinuous touch screens of a single virtual desktop

Similar Documents

Publication Publication Date Title
CN103270481B (zh) 基于焦点激活的硬件按钮
CN103262010B (zh) 通过利用手势来移动逻辑显示堆栈的桌面显露
CN103076967B (zh) 用于响应手势改变焦点的方法和双屏幕通信设备
JP6073792B2 (ja) ジェスチャを用いて積み重ねられた画面表示を閲覧するための方法及びシステム
CN108228035A (zh) 多屏幕装置之间移动窗口的方法和双显示器通信装置
CN103282955B (zh) 当设备打开时显示桌面
JP6073793B2 (ja) デバイス開放と同時のデスクトップ表示

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant