具体实施方式
如以上简述那样,动态导航条可以结合用于电子邮件、文本消息收发、日程安排、任务管理、联系人管理以及类似服务的经扩充通信服务来提供。响应于在导航条项上的悬停动作而临时显示的预览窗格可以对接在用户界面上的动态选择的或用户定义的位置处以供持久显示,并且在用户希望解除对接时被解除对接。
在下面的详细描述中,将参考构成本发明的一部分的附图,在附图中,通过例图,示出了特定实施例或示例。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。以下详细描述从而不取限定性含义,且本发明的范围由所附权利要求书及其等效实施方式来定义。尽管在结合在个人计算机上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施例,但是本领域的技术人员会认识到各方面也可以结合其它程序模块实现。
一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构、以及其他类型的结构。此外,本领域的技术人员可以明白,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机以及类似计算设备。各实施例还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备中。
各实施例可被实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。计算机可读存储介质是计算机可读存储器设备。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。
在此所使用的经扩充的通信服务是指一种托管服务(hosted service)、企业服务或本地安装的应用,其提供诸如电子邮件通信、文本消息交换、日历功 能、任务管理、联系人管理以及类似功能之类的服务。这样的服务可以提供各个服务的多个集成模块,或者一些模块可以提供多个服务。主用户界面可以使得用户能够与服务交互以接收通知、查看不同项、提供用于各种功能的输入等等。如下所述,可以使用多种设备来执行这样的服务并且可以采用不同的交互机制,比如通过手指、笔、鼠标或类似设备的触摸、姿势、语音、陀螺仪输入以及通过预定义的键盘输入组合。
图1示出了一些示例性设备,其中可以采用用于经扩充通信服务的动态导航条。根据各实施例,经扩充的通信服务可以按服务器-客户端架构作为基于云的服务来提供,或者如上所述作为本地安装的应用来提供。因此,可以使用多种设备来将用户界面呈现给用户。除不同的计算设备之外,还可以使用消费电子设备(例如TV控制台)、个人数字助理(PDA)、移动电话、数字媒体和音乐播放器、手持式游戏控制台、计算器、以及计算机外设。
便携式设备(其中的许多采用基于触摸或姿势的输入)往往具有较小的屏幕大小,这意味着更少空间可用于用户界面。例如,在启用文档(文本和/或图形)编辑的用户界面中,除文档的所呈现部分之外,可能必须显示虚拟键盘,从而进一步限制了可用空间(“实际使用面积”)。因此,在这样的场景中,为多方面通信服务提供完整的用户界面可能是不实际的或者给用户造成混淆。
参见图1,示出了一些示例性设备,其中可以根据各实施例提供节省宝贵的屏幕实际使用面积同时使得能够有效显示与不同实施例相关联的信息的动态导航条。实施例也可以在具有变化的形状因子和能力的其他设备中实现。
图1包括可用于计算、通信、控制、测量和多种其他目的的若干示例性设备,比如计算机监视器116、启用触摸(120)的膝上型计算机118、手持计算机124、智能电话126、平板计算机(或板式计算机)128以及移动计算设备132。图1中的示例性设备中的一些是被示为具有触摸激活120。然而,这些和其他示例性设备中的任何设备也可以采用启用姿势的激活。另外,可以使用诸如笔130之类的工具来提供触摸输入。也可以通过诸如鼠标输入之类的常规方法或通过键盘122的输入来控制动态导航条和相关联的预览。
图2示出了根据实施例的用于具有动态导航条的示例性经扩充通信服务的主用户界面的屏幕截图。屏幕截图200中的示例性用户界面显示与经扩充通信 服务的电子邮件模块相关联的信息。该信息包括文件夹列表202和所选文件夹中的电子邮件列表204。用户界面上的第三查看窗格显示所选电子邮件206。
除电子邮件之外,经扩充的通信服务可以提供文本消息收发、日程安排、任务管理、联系人管理以及类似功能。在常规的用户界面中,可使得用户能够通过选择菜单项或类似控制元件在提供不同功能的模块之间切换。然而,在模块之间切换还导致对用户体验的打断。例如当用户将视图从电子邮件改变为日历时,与电子邮件相关联的信息不再可用,并且反之亦然。因此,用户不具有在继续查看一个模块的同时在没有打断的情况下检查另一模块的能力。一些应用可以使得用户能够在同一用户界面上查看多个模块,但是由于显示区域限制,要么所显示的视图可能被受限,要么用户界面可能包括过多信息并对于用户而言变得难以导航。
根据一些实施例,文本、图形或组合导航条208可以提供在用户界面上,其使得用户能够在不同模块之间切换并且查看另一模块的预览,而不离开用户界面的当前视图。为了节约宝贵的显示区域,导航条208可以在不从其他所显示的项抢占空间的情况下被动态地放置在用户界面的某位置上,比如底部(如图中所示)、任一侧、顶部或类似位置。
键盘、鼠标、触摸、姿势、笔输入、语音命令是可与导航条(以及用户界面)结合使用的一些示例性输入机制。其他示例性输入机制可以包括、但不限于基于加速度计或定向传感器的输入、光学捕捉的姿势、基于时间的输入、对其他设备/人/地点的接近、等等。在一些实施例中,导航条还可以基于下列各项中的一个或多个沿着用户界面的左侧、右侧、顶部或底部来呈现和/或移动:用户惯用左手还是右手;手指的大小(在基于触摸的设备中);与定点设备相关联的轻击动作指针的大小;用户凭证;计算设备的人体工程学特性;以及位置属性,所述位置属性包括用户界面的语言选择、地理位置信息、时区信息和/或国家信息中的一个或多个。如果用户界面的大小改变(例如在屏幕上显示画面的改变或打开另一用户界面等等)时,则导航条208可以被移动和/或重新确定大小。
在一些实施例中,导航条208上所显示的项的布局可以基于以上列举的因素或其他因素自动地安排或重新安排。可以采用多种方案来增强导航条208的 效率,比如颜色方案、图形方案、阴影化方案、以及类似方案。例如,所述项可以以深色和/或淡色格式显示,这可以取决于背景颜色互换地使用。
图3示出了图2的示例性主用户界面,其中导航条处于最小化状态并且日历预览从导航条中被呈现。如前所述,导航条上的项可以是文本、图形(例如图标)或二者的组合。基于图标的导航条可以适于以较小大小显示,因此节省显示区域。
图3中的屏幕截图300显示图2中的用户界面,其中处于用户界面底部的基于文本的导航条被基于图标的最小化状态导航条320替换。最小化状态导航条320可以仅包括图标,或者包括图标和文本的组合。在一些实施例中,可以在用户选择(或悬停动作)时在图标附近显示文本提示。可替代地,一些图标可以包括文本提示,而其他图标不包括(例如那些公知图标)。
根据各实施例的导航条的另一方面是预览特性。为了使得用户能够获得模块的预览而不离开当前显示的模块,预览窗格324可以响应于对导航条的项之一的悬停动作而被临时显示。在屏幕截图300中,响应于用户悬停在最小化状态导航条320中的日历项322上,日历预览窗格324被显示。日历预览窗格可以包括用户的日历326的概要视图(例如月份、星期、日期等等)以及日历上的项中的一些(例如约会)的概要328列表。
预览窗格324可为用户启用有限的交互。例如,可使得用户能够选择所显示的概要项之一并查看关于该项的更多细节。在预览窗格上显示的信息可以基于缺省参数被自动确定,从用户行为中学习到,可由用户手动地配置,或者从与用户相关联的其他应用中获得。此外,预览窗格的显示和移除可以以动画方式进行。该交互的程度也可以被预定义。
在一些实施例中,预览窗格的设计可以被选择为使得跨不同设备/应用提供一致性。例如,台式机用户界面的预览窗格可以与该界面在手持设备用户界面(例如智能电话)上的用户界面相同或类似,由此跨设备地向用户提供一致的外观和感觉。
图4示出了图2的示例性主用户界面,其中两个预览窗格对接在用户界面的右侧。在检测到对导航条408的悬停或类似动作以后,屏幕截图400上的用户界面所基于的应用可以如上所述显示与感兴趣的项相关联的临时预览窗格。 临时显示的预览窗格上的文本或图形控制元素426、428可使得用户能够将预览窗格422对接或锁定到用户界面上的预定义的或动态选择的位置处。
预览窗格对接的位置可以基于用户界面上下文、可用显示区域、用户界面的内容、应用类型、设备类型、用户凭证和/或类似因素来确定。还可使得用户能够选择将预览窗格对接到的位置。还可使得用户能够锁定多个预览窗格422、424。经锁定的预览窗格的位置、大小和内容可以在附加的预览窗格被对接或解除对接时动态地调整。用于使得能够将预览窗格对接的控制元素的功能可以在一旦预览窗格被对接时就改变为解除对接。可替代地,可以提供不同的控制元素以用于将已对接的预览窗格解除对接。
图5示出了根据各实施例的与导航条相关联的不同模块的示例性预览类型。预览窗格的内容可以自动地确定(例如通过机器学习、使用历史、从其他应用检索信息等等)和/或是用户可配置的。
图500中所示的预览窗格是用于图解说明目的的示例性预览窗格。如前所述,根据各实施例的导航条可以是可扩展的,并且包括表示多个缺省或所添加模块的项。因此,可以提供与导航条上的每个项相关联的预览窗格。例如,生产力或顾客关系管理(CRM)功能模块可以与相关联的导航条项和预览窗格一起被添加到经扩充通信服务。
每个预览窗格都可以提供带有与用户的有限交互的、相关于所关联的模块的概要信息。例如,电子邮件(Mail)预览窗格530可以列出多个电子邮件(例如前几个、最新的几个等等),并且使得用户能够打开、删除、标记所列出的项或开始新的电子邮件。可以自动确定和/或可由用户配置要列出哪些项。联系人预览窗格532可以显示最喜爱联系人、最近联系人等等的概要联系人信息。任务(Tasks)列表预览窗格534可以显示按时间顺序或以他方式显示任务中的一些的概要列表,并且使得用户能够将任务标记为已完成、重要的等等。日历预览窗格536可以显示概要日历(月份、星期、日期等等)、以及多个最重要、最新、当前等日历项(约会、会议等等)的列表。
尽管项(电子邮件、日历项、任务、联系人等等)的列表可以被限制在预览窗格上的可用空间,但是可以通过使用滚动条或类似机制显示附加的项。在一些实施例中,预览类型可以基于用户界面的上下文为活动或不活动的。例如, 如果用户界面正显示与电子邮件模块相关的信息,则显示电子邮件的预览可能是不必要的并且只要电子邮件是主要显示的模块该预览就可以被停用。同样,导航条上的所显示的项还可以基于用户界面的上下文被修改。因此,导航条上的电子邮件项可以在电子邮件是用户界面上的主要显示的模块时被另一项替换。
上述预览窗格配置仅仅是示例并且不构成对实施例的限制。根据各实施例的与动态导航条相关联的最小化或完全状态预览窗格可以使用在此所述的原理以任何配置和文本、图形和其他项的组合来提供。此外,可为其他模块(比如电子邮件、联系人、任务等等)使用类似配置和呈现。
图6示出了两个对接在一起的示例性预览窗格。与由通信服务/应用支持的不同模块相关联的多种预览窗格可以被显示并对接在用户界面上。图600示出了两个示例性预览窗格,日历预览窗格642和电子邮件预览窗格648。
日历预览窗格642包括每月日历视图644和即将到来的日历项的646列表。电子邮件预览窗格648包括用户的收件箱659的视图,其具有按主题行和发件人标识出的电子邮件652的列表。附加的信息可以以指示电子邮件是否已经被回复、转发、是否包括附件等等的图标形式来提供。在检测到在所列出的电子邮件上的悬停动作时,该电子邮件可以被突出显示(654)并且可以向用户呈现用于删除的选项(或者执行其他动作)。
如上所述,预览窗格提供了用户的有限交互。根据一些实施例,当预览窗格被对接时,其提供的功能可以被修改。例如,可以提供附加的交互能力。此外,可以在新的预览窗格被添加或者现有预览窗格被解除锁定时调整所对接的预览窗格的大小、内容和顺序。附加地,所对接的预览窗格可以响应于用户界面的改变而被自动解除对接。例如,如果用户界面改变为在主视图中显示电子邮件模块,则针对电子邮件的预览窗格可以不再需要并且由此被移除。
图7示出了另外两个对接在一起的示例性预览窗格。图700示出了任务预览窗格756和联系人预览窗格762。任务预览窗格756按时间顺序列出了按照今天和明天编组的不同任务、任务760。诸如给任务加标志或改变任务的属性(例如进行中、已完成)之类的有限功能可以与创建新任务758的能力一起提供。
联系人预览窗格762一并显示了用户的最喜爱联系人766和搜索联系人764的能力。要列出的项(任务或人)的类型、项的分类、以及提供给用户的功能可以是可配置的或者自动确定。
图8示出了根据各实施例的与导航条相关联地对接在一起的三个示例性预览。根据各实施例的预览窗格可以响应于在导航菜单上的悬停而被临时显示。根据一些实施例,一个或多个预览窗格也可以对接或锁定到用户界面上的固定位置以供持久显示。图800示出了三个对接在一起的预览窗格的组合。
在图800的示例中,日历预览窗格868、联系人预览窗格872、以及任务预览窗格874对接在一起。对接图标870指示:这些预览窗格当前对接并且可以用于对预览窗格进行解除对接(或隐藏)。对接预览窗格的位置可以是用户可选择的,或者由程序基于用户界面上的所显示的信息和可用显示区域来动态地确定。类似地,所对接的预览窗格的大小和内容也可以基于显示区域和用户界面的上下文来选择和修改。
根据一些实施例,预览窗格可以根据动画方案来对接和解除对接。此外,可以采用颜色方案、图形方案和/或阴影化方案来增强处于解除对接或对接形式的预览窗格的视觉效果。
图9示出了根据各实施例的用于示例性导航条的配置菜单。尽管导航条和相关联的预览窗格可以如上述那样自动配置,但是也可以提供配置菜单以用于用户定制。
根据一些实施例,可以提供顶级菜单976以供用户选择和定制导航条本身、导航条上的各个项和/或预览窗格设定。用于定制预览窗格设定的配置菜单900可以包括用于激活或停用预览窗格中的一些或全部的选项。配置菜单900还可以包括用于诸如下列不同预览窗格类型的各个节:日历预览选项980、电子邮件预览选项982、联系人预览选项984、以及任务预览选项986。
用于各个预览窗格类型的可配置选项可以基于应用能力、用户界面的上下文、设备能力、用户凭证(例如许可等级)等等来确定。可配置选项还可以响应于应用、计算设备、显示设备、语言或位置选择或类似改变而被动态修改。
图1至9中所描绘的示例性导航条、项、交互和配置是仅仅出于图解说明目的提供的。实施例不限于示例图中示出的形状、形式和内容,并且可以采用 在此所述原理、使用其他文本、图形和类似方案来实现。
图10是其中可以实现各实施例的示例联网环境。除本地安装的应用(比如下述通信应用1022)之外,导航条还可以与托管应用和服务结合使用,所述托管应用和服务可以通过在一个或多个服务器1006或单独的服务器1008上执行的软件来实现。托管应用和服务可以是基于web的服务或应用、基于云的服务或应用以及类似应用,并且通过网络1001与诸如下列各个计算设备上的客户端应用通信并控制向用户呈现的用户界面:手持计算机1002、台式计算机1003、膝上型计算机1004、智能电话0.1005、平板计算机(或板式计算机)1010(“客户端设备”)。基于web的服务的一个示例可以是华盛顿州雷蒙德市的微软公司的其通过客户端设备上的浏览器界面向用户提供电子邮件、文本消息、日历、任务管理和联系人管理服务。这样的服务可使得用户能够通过在此所述的动态导航条和各种输入机制与所显示的内容交互。
客户端设备1001-1005被用于访问由托管服务或应用提供的功能。服务器1006中的一个或多个或服务器1008可用于提供如上所述的各种服务。相关数据可以存储在可由服务器1014中的任一服务器或由数据库服务器1006来管理的一个或多个数据存储(例如数据存储1012)中。
网络1010可包括服务器、客户端、因特网服务供应商以及通信介质的任何拓扑结构。根据各实施例的系统可以具有静态或动态拓扑结构。网络1010可以包括诸如企业网络等安全网络、诸如无线开放网络等非安全网络、或因特网。网络1010还可通过诸如PSTN或蜂窝网络等其他网络来协调通信。网络1010提供此处描述的节点之间的通信。作为示例而非限制,网络1010可以包括例诸如声学、RF、红外线和其它无线介质等无线介质。
可使用计算设备、应用、数据源和数据分发系统的许多其它配置来结合经扩充的通信服务来实现动态导航条。。此外,图10中所讨论的联网环境仅用于说明目的。各实施例不仅限于示例应用、模块或过程。
图11及相关联讨论旨在提供对其中可实现各实施例的合适计算环境的简要概括描述。参考图11,该图示出了诸如计算设备1100之类的根据各实施例的应用的示例计算操作环境的框图。在基本配置中,计算设备1100可以是固定、移动或其他形式的诸如结合图1所述的示例设备之类的任何计算设备,并 且包括至少一个处理单元1102和系统存储器1104。计算设备1100还可以包括在执行程序时相互协作的多个处理单元。取决于计算设备的确切配置和类型,系统存储器1104可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或是两者的某种组合。系统存储器1104通常包括适于控制平台操作的操作系统1105,诸如来自华盛顿州雷德蒙市的微软公司的WINDOWS或WINDOWS操作系统。系统存储器1104还可以包括一个或多个软件应用,比如程序模块1106、通信应用1122、用户界面模块1124和预览模块1126。
用户界面模块1124可以结合通信应用1122来操作,并且提供使得用户能够与通信应用的不同模块(比如电子邮件、消息收发、日历、任务列表和联系人)交互的用户界面。除了提供模块、菜单和文本/图形控件的单独的查看窗格之外,用户界面模块1124还可以提供使得用户能够在节约宝贵的显示区域的同时在不同模块的查看窗格之间切换的动态导航条。此外,预览模块1126可使得能够显示每个模块的预览窗格,从而突出显示与每个模块相关联的令人感兴趣的和新的活动。所述预览窗格可以如在此所述那样被对接或解除对接。该基本配置在图11中由虚线1108内的那些组件示出。
计算设备1100可以具有附加特征或功能。例如,计算设备1100还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。在图11中通过可移动存储1109和不可移动存储1110示出这样的附加存储。计算机可读存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器1104、可移动存储1109和不可移动存储1110都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光学存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或能用于存储所需信息且能够由计算设备1100访问的任何其它介质。任何这样的计算机可读存储介质都可以是计算设备1100的一部分。计算设备1100还可以具有输入设备1112,比如键盘、鼠标、笔、语音输入设备、触摸输入设备、以及用于检测姿势的光学捕捉设备和类似输入设备。还可以包括输出设备1114,诸如显示 器、扬声器、打印机和其它类型的输出设备。这些设备在本领域中公知且无需在此处详细讨论。
计算设备1100还可以包含允许该设备与其他设备1116通信的通信连接1118,诸如通过分布式计算环境中的无线网络、卫星链路、蜂窝链路和类似机制。其他设备1118可包括执行通信应用的计算机设备、其他目录或策略服务器和类似设备。一个或多个通信连接1116是通信介质的一个示例。通信介质可以包括计算机可读指令、数据结构、程序模块、或者诸如载波或其它传输机制等的已调制数据信号中的其它数据,并且包括任何信息传递介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设定或改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质、以及诸如声学、RF、红外及其他无线介质之类的无线介质。
各示例实施例还包括各种方法。这些方法可以用任何数量的方式,包括本文中所描述的结构来实现。一种此类方式是通过本文中描述的类型的设备的机器操作。
另一可任选方式是结合一个或多个人类操作者执行该方法的各个操作中的某一些来执行该方法的一个或多个操作。这些人类操作者无需彼此同在一处,而是其每一个可以仅与执行程序的一部分的机器同在一处。
图12示出了根据各实施例的提供具有预览窗格对接和解除对接的动态导航条的过程的逻辑流程图。过程1200可实现为在经扩充通信服务或应用的一部分。
过程1200始于操作1210,在操作1110,在经扩充的通信服务或应用的用户界面上显示动态导航条。该导航条可有包括以文本、图形或组合形式呈现的项。该导航条可以显示在用户界面上的合适位置处,使得显示区域被有效利用。在操作1220,可以检测用户在导航条的一个或多个项上的悬停或类似感兴趣的指示,然后在操作1230临时显示相关联的预览。
在操作1240,可以接收针对所显示的预览窗格的对接请求,例如对用于对接的控制元素的激活。在操作1250,可以将所显示的预览窗格对接在用户界面上的用户定义或动态选择的位置处。响应于悬停动作对预览窗格的临时显示和对接所显示的预览窗格可以是迭代的,使得多个预览窗格可以被对接。
在操作1260,可以通过在所对接的预览窗格上被激活的相同的控制元素或另一控制元素来接收解除对接请求。在操作1270,可以将为之接收到解除对接的请求的所对接的预览窗格解除对接并加以隐藏。操作1260和1270可以是迭代的,其中用户可以将一个或多个(或全部)所对接的预览窗格解除对接。
过程1200中包括的操作只是为了说明。根据各实施例提供用于经扩充通信服务的具有预览对接和解除对接的动态导航条可以使用本文所述的各原理通过具有更少或更多步骤的相似过程、以及不同的操作次序来实现。
以上说明书、示例和数据提供了对各实施例的组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求和各实施方式的示例形式而公开的。