CN106575203A - 与再现的内容的基于悬停的交互 - Google Patents

与再现的内容的基于悬停的交互 Download PDF

Info

Publication number
CN106575203A
CN106575203A CN201580043140.XA CN201580043140A CN106575203A CN 106575203 A CN106575203 A CN 106575203A CN 201580043140 A CN201580043140 A CN 201580043140A CN 106575203 A CN106575203 A CN 106575203A
Authority
CN
China
Prior art keywords
display
front surface
content
window
hovering
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
CN201580043140.XA
Other languages
English (en)
Other versions
CN106575203B (zh
Inventor
H.尼兰加尼
C.利希腾施泰因
S.米塔尔
D.詹森
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 Technology Licensing LLC
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 Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106575203A publication Critical patent/CN106575203A/zh
Application granted granted Critical
Publication of CN106575203B publication Critical patent/CN106575203B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • G06F3/04186Touch location disambiguation
    • 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
    • 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
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/041012.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04805Virtual magnifying lens, i.e. window or frame movable on top of displayed information to enlarge it for better reading or selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers

Landscapes

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

Abstract

公开了用于使能与在观看设备的显示器上再现的内容的“基于悬停的”交互的技术和系统。一个过程可以包括,在显示器上再现内容,检测悬停在显示器的前表面的前面的对象,并且响应于检测到对象,确定在显示器的前表面上的与对象的位置相对应的位置。然后,可以使用显示器的前表面上的所确定的位置来确定在该位置处或在距该位置的阈值距离内再现的内容的一部分,然后可以在显示器的一个区域中显示内容的该部分的放大窗口。当在放大窗口内提供用户输入时,放大窗口内的内容的一部分可以通过响应用户输入而是可操作的。

Description

与再现的内容的基于悬停的交互
背景技术
台式计算机曾经作为最常见的个人计算机配置而盛行,从而引导软件开发者创建被设计用于在桌面显示器上进行最佳再现的内容。例如,网站开发者对于网页通常偏爱丰富而密集的内容,使得可以在其最大程度上利用观看设备上的显示“不动产(realestate)”。促使网站开发者朝向丰富、密集的网页内容的一个因素是以下事实:第三方实体愿意为要在内容提供商的网页上提供的他们的内容(例如,广告)付费。这意味着内容提供商在选择在网页上留下空白空间时实际上在损失钱。
设计丰富而密集的内容通常对于桌面显示器是不成问题的。例如,其眼睛位于距离19英寸桌面显示器大约一英尺远的普通用户能够无帮助地读取在显示器上再现的密集内容,并且还能够通过利用鼠标或类似的指示设备操纵屏幕上光标来导航和浏览内容。
然而,随着计算技术的进步,具有小形状因子的计算设备已经变得普遍存在。例如,许多个人拥有智能电话(典型地,具有在大约4到5英寸范围内的显示尺寸),并且无论去往哪里都随身携带它们。此外,消费者现在变得熟悉以下实践:在家庭电视(TV)显示器上在他们自己的起居室舒适地在因特网上冲浪。在任一情况下,当试图与内容交互时,在用户的显示器上再现的至少一些内容可能难以读取和/或选择。关于小形状因子的设备,可读性和/或可选择性问题源于在小显示器上再现密集内容。当用户位于距显示器相当远的距离处从而使得难以读取和/或选择以丰富而密集的布局提供的内容时,在起居室TV的情况下出现类似的问题。因此,当在用户的消费者设备上导航和浏览内容时,用户继续感到沮丧。
发明内容
本文描述了用于使能与在观看设备的显示器上再现的内容的“基于悬停”的交互的技术和系统。术语“悬停”(有时称为“三维(3D)触摸”)用于描述这样的情况,其中对象位于显示器的前表面的前面但不接触显示器的前表面,并且位于显示器前面的预定3D空间或容积内。因此,悬停对象可以被定义为在预定3D空间内位于计算设备的显示器的前面而不实际接触显示器的前表面的对象。悬停交互被约束在其中的3D空间的尺寸,特别是垂直于显示器的前表面的尺寸,可以取决于显示器的尺寸和/或使用显示器的上下文,如以下将更详细地描述的一样。
在一些实施例中,使能与内容的基于悬停的交互的过程包括,在显示器上再现内容,检测在显示器的前表面的前面但不与显示器的前表面接触的对象,并且响应于检测到所述对象,确定在所述显示器的前表面上的一个位置,该位置相对于从所述对象到所述前表面上的其他位置的距离与所述对象间隔最短距离。然后,可以使用显示器的前表面上的所确定的位置来确定在该位置处或在距该位置的阈值距离内再现的内容的一部分,然后可以在显示器的一个区域中显示内容的该部分的放大窗​​口。在一些实施例中,当在放大窗口内提供用户输入时,通过响应于用户输入,放大窗口内的内容的部分是可操作的。本文还公开了用于实现上述过程的系统和计算机可读介质。
通过响应于检测到在显示器前面悬停的对象而在显示器的一个区域中显示放大窗口,用户可以体验到对所再现的内容的增强的浏览和导航。具体地,再现的内容可以保持在最低缩放级别(即,缩小),并且用户可以方便地识别用户感兴趣的所再现内容的部分,而不改变再现内容的缩放级别。换句话说,放大窗口特征消除了收缩(pinch)和缩放(并且潜在地平移)内容以便找到、读取和/或选择在显示器上再现的内容所需的步骤,节省了用户时间并消除了浏览内容时的沮丧。在经由放大窗口找到内容的感兴趣部分之后,用户然后可以具有经由用户输入命令缩放感兴趣部分的能力。此外,放大窗口特征还使得内容提供商能够继续设计丰富和密集的内容,而不消费其内容(例如,移动站点)的“移动”版本(该版本倾向于从其站点移除内容进而导致损失收入)上的资源。
在一些实施例中,在观看设备的显示器上再现的可操作内容被配置为响应于检测到的悬停交互,通过修改再现的内容和/或再现附加内容来响应所接收的悬停交互。在这种情况下,可以通过一个过程而使能与再现的内容的基于悬停的交互,该过程包括,在显示器上再现内容,检测在显示器的前表面的前面但不与显示器的前表面接触的对象,并且响应于检测到所述对象,识别与所述对象下方的所述内容的一部分相关联的指示器事件。可以确定和执行与所识别的指示器事件相关联的显示相关功能,以修改内容的再现部分和/或在显示器上再现附加内容。在一些实施例中,可以在放大窗口内提供来自对象的悬停交互,使得放大窗口中的内容的一部分被修改和/或在放大窗口内再现附加内容,因为它可以在放大窗口之外。
提供本发明内容以便以简化形式介绍将在以下具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
附图说明
参照附图描述具体实施方式。在图中,附图标记的(多个)最左边的数字标识该附图标记首次出现的图。不同图中的相同附图标记表示相似或相同的项目。
图1图示出了示例计算系统,其包括被配置为使能与所再现的内容的基于悬停的交互的计算设备。
图2图示出了示例计算系统环境,其示出了被配置为从(多个)位于远程的内容提供商接收内容的示例计算设备。
图3A图示出了具有示例显示器的示例计算设备的正视图,该示例显示器再现可操作内容,该计算设备被配置为使能与再现的内容的基于悬停的交互。
图3B图示出了图3A的示例计算设备的侧视图。
图3C图示出了当对象悬停在计算设备的显示器的前面时图3A的示例计算设备的正视图。
图3D图示出了在图3C的对象悬停在计算设备的显示器的前面时图3B的示例计算设备的侧视图。
图3E图示出了在响应于所检测到的来自对象的悬停相互而在显示器的区域中显示放大窗口时的示例计算设备的正视图。
图4图示出了图3A-3E的示例计算设备的正视图,其示出了由对象在放大窗口内提供的用户输入。
图5A图示出了图3-4的示例计算设备的正视图,其示出了,对象横跨显示器的前表面移动并且放大窗口随对象一起移动。
图5B图示出了图5A的示例计算设备和移动对象的局部侧视图。
图6图示出了示例计算设备的正视图,其示出了由对象在放大窗口内的提供的用户输入。
图7A图示出了示例计算设备的局部侧视图和局部正视图,其示出了在距显示器的前表面第一距离处悬停的对象以及放大窗口的第一放大级别。
图7B图示出了示例计算设备的局部侧视图和正视图,其示出了在距显示器的前表面第二距离处悬停的对象以及放大窗口的第二放大级别。
图8A图示出了示例计算设备的正视图,其示出了对象从浏览器的控制区域内部移动到控制区域的边界的外部的位置,使得放大窗口从显示器消失。
图8B图示出了图8A的示例计算设备和移动对象的侧视图。
图9图示出了示例计算设备的正视图,其示出了对象从靠近显示器上的控制区域的边界的位置移动到更接近边界的位置,使得放大窗口内的内容在放大窗口保持在显示器上的一个区域内固定不变的同时进行平移。
图10A图示出了示例计算设备的局部正视图,其示出了对象在显示器上的一个位置处提供基于触摸的输入。
图10B图示出了图10A的示例计算设备和对象的局部侧视图,其示出了对象在该位置处提供基于触摸的输入。
图10C图示出了在接收到基于触摸的输入之后图10A和10B的示例计算设备的局部正视图,其示出与接收到基于触摸的输入的位置相对应的内容的放大部分。
图11图示出了示例计算设备的局部正视图,其示出了对象悬停在显示器上的交互元素上以使得响应于该悬停对象来执行显示相关的功能。
图12是用于检测悬停对象并且作为响应显示其中具有可操作内容的放大窗口的说明性过程的流程图。
图13是用于检测悬停对象的移动并且作为响应在利用悬停对象在显示器上移动放大窗口的说明性过程的流程图。
图14是用于响应于对象沿着垂直于显示器的前表面的方向上移动而改变放大窗口内的内容的放大级别的说明性过程的流程图。
具体实施方式
本公开的实施例尤其涉及用于使能与在观看设备的显示器上再现的内容的“基于悬停”的交互的技术和系统。尽管在此主要参照移动计算设备(例如,智能电话)提供了示例,但是应当理解,这些技术和系统不限于移动设备。例如,可受益于本文公开的技术的观看设备可以包括但不限于移动设备(例如,智能手机、平板计算机、便携式媒体播放器、可穿戴计算机等)以及电视(TV)显示器,在移动车辆内实现的显示器(例如,汽车、飞机等中的导航显示器)等。在这个意义上,可以在其上检测到悬停交互的本文所述的显示器可以是移动的(例如,集成到移动计算设备,车辆等中)或固定放置的(例如,壁挂式显示器)。
可以提供给本文所设想的各种设备的基于悬停的输入的特征可以随着设备的尺寸、设备的使用的情境和/或使能这种基于悬停的输入的硬件(例如,传感器)而变化。例如,起居室中的TV显示器可以具有大屏幕尺寸,可以是静止的,并且可以利用图像捕获设备(例如,深度相机)来检测悬停交互。相比之下,诸如智能电话之类的小型移动设备可以利用嵌入在显示器本身中的传感器或传感器阵列(例如,具有接近感测能力的基于电容的触摸屏传感器)。应当理解,无论设备类型、传感器或使用情境是什么,本文使用的“悬停”都可以参照位于显示器前面的预定3D空间内而不实际上接触显示器的前表面的对象的物理状态。预定3D空间的尺寸可以由显示器上的二维(2D)区域和在垂直于显示器的前表面的方向上的距离来定义。在这个意义上,位于显示器上的2D区域外部、接触显示器或者在垂直于显示器的前表面的方向上超过阈值距离的对象可以被认为不处于悬停状态。
本文所描述的技术和系统可以以多种方式来实现。下面参照以下图提供示例实现。
示例计算系统
图1图示出了示例计算系统100。系统100可以包括被配置为使能与所再现的内容的基于悬停的交互的计算设备102。系统100仅仅是实现本文所描述的技术的一个示例系统,使得本文所描述的技术不限于使用图1的系统的实现方法。
计算设备102可以实现为任何数量的计算设备(其非限制性示例在图2中示出),包括移动电话(智能电话)、平板计算机、电子书(e-book)阅读器、膝上型计算机、上网本计算机、电视、耦合到显示器的机顶盒、耦合到显示器的游戏控制台、导航设备(例如,全球定位系统(GPS)设备)、车载显示器、可穿戴计算机(例如,智能手表)、医学成像设备、数字相机和/或录像机等。
计算设备102可以配备有一个或多个处理器104和系统存储器106。根据计算设备的确切配置和类型,系统存储器106可以是易失性的(例如,随机存取存储器(RAM))、非易失性的(例如,只读存储器(ROM)、闪存等)或两者的某种组合。系统存储器106可以包括但不限于可由(多个)处理器104访问的操作系统108、浏览器模块110、程序数据112和本地内容存储库114。
操作系统108可以包括基于组件的框架116,其支持组件(包括属性和事件)、对象、继承、多态性、反射并且提供面向对象的基于组件的应用编程接口(API),诸如Win32TM编程模型和在商业上可从华盛顿州雷德蒙市的Microsoft®公司获得的.NET TM框架的应用编程接口。由基于组件的框架116提供的API可以包括与操作系统108和/或操作系统108的应用程序相关联的例程、协议和/或工具的集合,其向操作系统108和/或相关联的应用程序提供接口。
操作系统108还可以包括悬停接口模块118,其被配置为使能与计算设备102的显示器和在其上再现的内容的基于悬停的交互。一般来说,操作系统108可配置有一个或多个堆栈以驱动标准类别的人机接口设备(HID)(例如,键盘、鼠标等)以及使能触摸屏输入(即,与相关联的显示器的基于接触的输入)。悬停接口模块118附加地使得计算设备102能够确定和解释从悬停在相关联的显示器前面的对象(例如,用户的手指或手、触笔、笔、棒等)接收的基于悬停的输入,以及执行与基于悬停的输入有关的显示相关的功能。为了确定和解释来自对象的基于悬停的输入,悬停接口模块118可以依赖于计算设备102的一个或多个附加硬件和/或软件组件,诸如浏览器模块110和计算设备102的被配置为检测悬停对象(即,在计算设备102的显示器前面但不与其接触的对象)的一个或多个硬件传感器。
浏览器模块110可以被配置为接收内容并且经由计算设备102的显示器上的浏览器(例如,web浏览器)来再现所接收的内容。浏览器模块110的执行可以例如,通过在关联的显示器上再现由网站供应的网页来提供对该网站的访问。浏览器模块110可以进一步被配置为经由操作系统108的API与悬停接口模块118进行交互,以使能与经由浏览器再现的内容的基于悬停的交互。要再现的内容可以包括文档、应用、web内容等,其在内容被本地存储在计算设备102上时可以从本地内容存储库114接收/访问,或者从远程源接收/访问,诸如从图1中所示的其他计算设备120(例如,内容提供商服务器)。
在一些实施例中,由浏览器模块110接收的内容可以包括基于超文本标记语言(HTML)代码的网页内容,所述超文本标记语言代码将内容配置为“可操作”,因为内容响应于用户输入。可以使用任何合适的脚本语言(例如JavaScript、Jscript、欧洲计算机制造商协会脚本(ECMAScript)等)或程序(例如,Java小应用程序)来使能可操作的内容,包括可以链接到悬停功能的内容。在这个意义上,由浏览器模块110接收的内容可以用事件驱动的编程语言编码,以在用于任何类型的内容的文档对象模型(DOM)树内的元素节点上登记事件处理程序/监听器。可用于使内容可操作的一个合适的事件模型是用于指示器事件(包括悬停事件)的万维网联盟(W3C)模型。
在说明性示例中,由浏览器模块110接收的内容可以包括网页内容,该网页内容包括可选择(即,可操作)的文本,其通过用突出显示、文本选择抓取器或其他合适的基于显示的修改来修改所选择文本以对选择输入做出响应。作为另一示例,网页上的内容可以包括到其他网页或站点的链接(例如,超链接),用于嵌入的视频/音频内容的视频或音频回放按钮等等。因此,在选择了这样的可操作内容时,内容可以分别通过导航到另一网页或者回放视频/音频文件来进行响应。当悬停事件与内容的部分相关联时,响应于光标位于内容上,这些部分可以通过改变外观(即,显示修改)或通过再现附加内容(例如,下拉菜单、具有关于内容的信息的弹出泡)而是可操作的,并且当光标远离支持悬停的内容移动时,这些显示修改和/或附加内容可以从显示器消失。
计算设备102还可以包括附加的数据存储设备(可移除的和/或不可移除的),诸如例如磁盘、光盘或带。这种附加存储装置在图1中通过可移除存储装置122和不可移除存储装置124图示出。如本文所使用的,计算机可读介质可以包括至少两种类型的计算机可读介质,即计算机存储介质和通信介质。计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性和非易失性的、可移除和不可移除的介质。系统存储器106、可移除存储装置122和不可移除存储装置124都是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪存或其他存储器技术、紧凑盘只读存储器(CD-ROM)、数字多功能盘(DVD )或其它光学存储装置、磁盒、磁带、磁盘存储装置或其它磁存储设备或可用于存储所期望的信息并可由计算设备102访问的任何其它非传输介质。任何这样的计算机存储介质可以是设备102的一部分。
在一些实施例中,系统存储器106、可移除存储装置122和不可移除存储装置124中的任何一个或全部可以存储编程指令、数据结构、程序模块和其他数据,当由(多个)处理器104执行时,其实现这里描述的一些或全部过程。
相比之下,通信介质可以在调制的数据信号(诸如载波或其它传输机制)中体现计算机可读指令、数据结构、程序模块或其他数据。如本文所定义的,计算机存储介质不包括通信介质。
计算设备102还可以包括一个或多个输入设备126,诸如键盘、指向设备(例如,鼠标、触摸板、操纵杆等)、笔、触笔或棒、触摸屏(例如,电容性、电阻性、红外线、表面声波(SAW)、光学)、相机(例如,3D传感器)、接近传感器、麦克风等,用户可通过其将命令和信息键入计算设备102。尽管在图1中(多个)输入设备126被示出在计算设备102内,但是应当理解,(多个)输入设备126可以物理地嵌入在计算设备102(例如,触摸屏)内,或者(多个)输入设备126可以是外围设备(例如,基于外围相机的输入设备),其通过有线或无线连接可移除地耦合到计算设备102。因此,(多个)输入设备126可以通过有线连接(例如,通用串行总线(USB)接口)或无线用户输入接口(诸如WiFi或Bluetooth®)耦合到(多个)处理器104。
在一些实施例中,(多个)输入设备126可以包括被配置为检测在计算设备102的显示器前悬停的对象的一个​​或多个基于接近的传感器128。(多个)基于接近的传感器128使得计算设备102能够区分基于接触的触摸事件和非接触(即悬停)交互,而不是仅仅检测显示器附近的对象并且将检测到的对象解析为基于接触的触摸事件。在这个意义上,计算设备102可以被认为是“能够悬停的”,因为它可以以互斥的方式检测悬停交互和触摸/接触交互。
(多个)接近传感器128可以包括任何合适的接近感测技术。合适的接近感测技术的一个说明性示例是被配置为检测悬浮在计算设备102的显示器前面的对象的电容传感器或传感器阵列。这种电容传感器或传感器阵列可以包括基本上跨越计算设备102的显示屏的一个区域的二维(2D)电极网格,其中对电极施加了电压,使得电极被配置成测量每个电极处的电容变化。电极处的电容改变可能受到接近电极的对象(诸如人手指)的影响,使得可基于测量对应电容改变的电极来精确定位显示器前表面上对象最靠近的位置。为了感测悬停对象,电容传感器或传感器阵列可以至少部分地基于自电容,已知该自电容与互电容传感器相比提供更强的信号感测,使得可以检测在显示器前表面的前面的对象,而不用对象接触显示器。基于自电容和互电容的组合的接近传感器128可分别享有两种类型的电容传感器(即,接近感测和多触摸(即,同时检测多个触摸位置))的益处。在一些情况下,(多个)接近传感器128可以被配置为检测在显示器前面的对象,该对象在垂直于前表面的方向上处于离显示器的前表面从大约0.001英寸到大约8英寸的范围内的距离处。
被配置为检测位于计算设备102的显示器前面的对象的相对“远距离”输入设备126的一个示例是深度相机(例如,与来自华盛顿州雷德蒙市的Microsoft®公司的Xbox®控制台系统一起使用的Kinect®传感器)。深度相机可以被配置为使用诸如飞行时间(ToF)、结构化光成像、立体成像等任何合适的技术来捕获图像数据和深度信息。在一些情况下,具有较远距离感测能力的(多个)接近传感器128可以被配置为检测显示器前面的对象,该对象处于离显示器的前表面从大约20英寸至约170英寸的范围内的距离处。
应当理解,(多个)输入设备126不限于上述示例,并且(多个)任何合适的接近传感器128可以用于检测悬停在计算设备102的显示器前面的对象,包括但不限于感应、磁、超声或其他合适的接近传感器128。
计算设备102还可以包括(多个)输出设备130,诸如显示器132(例如,液晶显示器(LCD)、等离子体、背投影等)、一个或多个扬声器、打印机、或通信地耦合到(多个)处理器104的任何其它合适的输出设备。(多个)输出设备130通常可以被配置为向计算设备102的用户提供输出。在一些实施例中,(多个)输出设备130可以集成到计算设备102中(例如,嵌入式显示器132),或者在外部作为外围输出设备130而提供(例如,外围显示器132)。
图1图示出了当在显示器132上再现内容时可以经由计算设备102的显示器132输出的示例屏幕再现134。在图1的示例中,屏幕再现134表示显示网页内容的web浏览器。因此,屏幕再现134可以包括具有用于键入网站的统一资源定位符(URL)(这里是“www.website.com”)的地址域的导航栏136和可以向用户提供浏览功能以便打开附加浏览器窗口、刷新网页内容等等的各种其他控件。屏幕再现134还可以包括在显示器132上再现的浏览器的控制区域内的内容138。值得注意的是,由于网页已经被设计用于在台式计算机显示器上进行最佳再现,因此图1中的示例中的内容138是“丰富和密集的”。
图1还图示出了显示器132的前表面上的区域140,其中对象被检测为悬停在显示器132的前表面上方。如下面将更详细地讨论的,区域140可以被解析为在显示器132的前表面上的点位置,其表示当对象正在屏幕前面悬停时对象相对于屏幕的位置。(多个)接近传感器128可以检测悬停对象,并且悬停接口模块118可以确定由区域140表示的在显示器132前面的对象位置处于在其中启用了悬停功能的控制区域内的一个位置处。在一些实施例中,浏览器模块110可以经由操作系统108的API与操作系统108交互,以便将该控制区域指定为绑定内容138,而不是导航栏136。浏览器模块110可以进一步指定所再现的内容138的缩放级别(在这种情况下,内容138可以被缩小到最低缩放级别)。利用该信息,悬停接口模块118可以确定所再现的内容处于最低缩放级别,并且该对象正悬停在web浏览器的控制区域内,使得可以相对于再现内容138检测悬停事件。
当检测到悬停事件时,悬停接口模块118可以使得执行反映在计算设备102的显示器130上的显示相关功能。可以响应于检测到悬停事件而执行的显示相关功能包括但不限于,显示内容138的一部分(例如,内容138的在对象下方的一部分)的放大窗口142,修改内容138的一部分的显示和/或与内容138的部分相关联地再现附加内容。 在图1的放大窗口142内再现的内容138的部分可以表示内容138的在区域140内的一个位置处或在距离这样的位置(例如,刚好在对象的位置上方)的阈值距离内再现的一部分。应当理解,在不期望悬停交互的情况下,计算设备102的悬停交互能力可以经由用户设置或设备102的类似用户配置“关闭”或“开启”。
计算设备102可以在联网环境中操作,并且因此,计算设备102还可以包括通信连接142,其允许设备与其他计算设备120(诸如位于远方的内容提供商)通信。通信连接142可用于发送和/或接收数据,诸如可以存储在本地内容存储库114中的内容。
图2图示出了示例计算系统环境200,其示出了被配置为从(多个)位于远方的内容提供商202接收内容的示例计算设备102。尽管在基于web的系统的上下文中描述了实施例,但是可以使用其他类型的基于客户端/服务器的通信和相关联的应用逻辑。图2图示出了可以从可以将内容存储在远程内容存储库204中的(多个)内容提供商202下载或以其他方式接收要在计算设备102的显示器132上再现的内容。在一些示例中,所接收的内容可以是来自(多个)内容提供商202的网站的网页内容。在这种情况下,内容提供商202可以利用可能被安排在群集中或作为服务器场(server farm)的一个或多个服务器206(1)、206(2)、……、206(N)(统称为206),以托管一个或多个网站。与计算设备102相关联的用户然后可以通过经由网络208向(多个)服务器206提交请求,诸如以键入到在计算设备102上执行的web浏览器的地址域中的URL的形式,来访问网站。在接收到请求时,(多个)服务器206可以通过网络208将网页返回给发出请求的计算设备102。网站可能能够处理来自许多用户的请求,并且作为响应,供应可以在计算设备102的相关联的显示器上再现的各种网页。网络208表示多种不同类型的网络中的任何一种或组合,诸如广域网(WAN)或局域网(LAN),并且包括电缆网络,因特网和无线网络。
图3A图示出了示例计算设备102的正视图,示例计算设备102具有在其上再现可操作内容(诸如图1的内容138)的示例显示器132。在一些实施例中,其中可以约束悬停交互的上述控制区域与显示器上再现内容138的2D区域重合。图3A中所示的计算设备102在以下意义下表示“能够悬停的”设备:其包括图1中所描述的使得能够与所再现的内容138进行基于悬停的交互的组件。图3B图示出了图3A的计算设备102的侧视图。
图3A和3B还示出了各种参照平面。这样,图3A示出了可以穿过计算设备102的中间并且将计算设备102分成右侧和左侧的虚拟中央平面。横平面被示为水平穿过图3A和3B,其是将计算设备102划分为上面(上部/较高)和下面(下部/较低)部分的虚拟平面。此外,图3B将额平面示为将计算设备102划分为前部和后部的虚拟垂直平面。因此,图3B将显示器132的前表面300图示为与计算设备102的前部上的额平面平行的表面。图3A进一步图示出了可以将平行于额平面的2D坐标参照平面(例如,x-y平面)用于参照在显示器132的前表面300上的(x,y)点位置。显示器132的前表面300上的位置也可以由显示器132的像素和由像素组限定的区域来表示。图3B图示出垂直于显示器132的前表面300的方向可以按照笛卡尔坐标由z方向表示。
图3C图示出了当对象302(在这种情况下,用户的手指)正悬停在计算设备102的显示器132的前面时图3A和3B的示例计算设备102的正视图。图3D图示出了图3C的计算设备102和对象302的侧视图。具体地,在图3D中,对象302被示为在z方向(垂直于前表面300的方向)上与显示器132的前表面300相隔(间隔)距离d。应当理解,距离d表示相对于从对象302到前表面300上的其他位置的其他距离的从对象302到前表面300的最短距离。在一个说明性示例中,计算设备102可以表示利用嵌入在显示器132内或设置在显示器132后面的(多个)接近传感器128(例如,电容传感器阵列)的智能电话,并且距离d可以在约0.001英寸至约1.5英寸的范围内。在一些实施例中,(多个)接近传感器128可以被配置为当对象302位于距前表面300的阈值距离内时检测对象302,诸如可以不大于约8英寸的阈值距离。对于具有较大显示器尺寸的计算设备102和/或在不同上下文(例如,起居室TV)中实现的具有不同类型的(多个)接近传感器128(例如,深度相机)的计算设备102,阈值距离可以大于8英寸,使得离显示器132的前表面300的距离d可以达到大约170英寸,并且计算设备102的(多个)接近传感器128可能仍然能够检测到对象302(例如,用户的手)在该距离d处悬停在前表面300的前面。还应当理解,(多个)接近传感器128可以被配置为检测多个悬停对象302,即使在图3C和图3D中示出了单个对象302。
图3C还示出了当对象302正悬停在显示器132前面时表示对象相对于显示器132的位置的前表面300上的点位置304。该位置304可以由悬停接口模块118在从(多个)接近传感器128接收到所检测到的对象302的指示之后确定。为了确定位置304,悬停接口模块118可以访问关于操作系统108通常已知的显示器132的xy坐标或像素的数据和/或来自(多个)接近传感器128的数据。如图3D所图示,位置304可以表示显示器132的前表面300上的作为从对象302到前表面300的最短距离d的位置304,因为对象302基本上在从位置304垂直于显示器132的前表面300的方向上。
图3C进一步示出悬停接口模块118还可以被配置为确定内容138的在与位置304相距阈值距离h内再现的部分306。在图3C的示例中,所选择的内容138的部分306在位置304上方(即,朝向计算设备102的顶部)的距离h处再现。在其他实施例中,由悬停接口模块118确定的部分306可以是在位置304处再现的内容138的一部分(即,在悬停对象302正下方的内容)。可能有利的是,选择在位置304上方的距离h处再现的部分306,使得对象302不阻碍用户对部分306的观看,但是应当理解,可以选择在对象302正下方的或在不同方向上离位置304一个距离内的部分,而不改变系统的基本特征。
图3E图示出了图3A-3D的示例计算设备102的正视图,其中,响应于所检测到的来自对象302的悬停交互,在显示器132的一个区域中显示放大的窗口,诸如图1的放大窗口142。图3E中所示的对象302(手指)处于由图3C和图3D所示的相同位置处(即,悬停位置)。放大窗口142可以包含图3C中所示的内容138的部分306。如将参照图4更详细地描述的,通过以与内容如何被配置来响应于在放大窗口142外部的用户输入相同或相似的方式响应于在放大窗口142内接收的用户输入,在放大窗口142内再现的内容可以是可操作的。例如,如图3C中所示,在内容138的部分306中包括读作“Store Clerk Thwarts Robbery Attempt”的文本,并且该文本可以被编码为超文本,当在放大窗口142之外进行选择(例如,手指在文本元素上触摸显示器132)时,所述超文本将用户经由web浏览器导航到包含与该文本相关联的整篇文章的另一页面。以相同或至少类似的方式,用户可以在放大窗口142内提供输入,以例如选择读作“Store Clerk Thwarts Robbery Attempt”的文本。在接收到在放大窗口142内的用户输入时,浏览器模块110可以将用户导航到具有与该文本相关联的整篇文章的不同网页。以这种方式,放大窗口142充当“小浏览器”窗口,其通过响应于在放大窗口142内提供的用户输入来在放大窗口142本身内提供可操作内容。
在一些实施例中,放大窗口142具有可小于显示器132的总宽度的宽度w。在一个示例中,宽度w不大于显示器132的宽度的约75%。在另一示例中,宽度w 不大于显示器132的宽度的约50%。在又一示例中,宽度w不大于显示器132的宽度的约25%。将宽度w限制到显示器132的宽度的一部分可以允许最佳地放大在放大窗口142内再现的内容138的部分306,并且它可以便于以从左到右的方式选择性地浏览内容, 或反之亦然。
在一些实施例中,其中显示放大窗口142的区域可以包括底部边界,其位于离与对象302对应的在前表面300上的位置304的预定距离b处。例如,预定距离b可以在约0.2英寸至约0.5英寸的范围内。在另一个示例中,预定距离b可以不大于约1英寸。在位置304上方的预定距离b处再现放大窗口142可以防止对象302阻挡用户对放大窗口142内的内容或其一部分的观看。
在一些实施例中,悬停接口模块118可以在导致放大窗口142的显示之前识别来自对象302的输入手势。在这个意义上,可以响应于输入手势的接收来显示放大窗口142,该输入手势可以采取任何合适的形式。可以触发放大窗口142的显示的一个示例输入手势是对象302保持在图3C-3E中所示的第一位置处达预定时间段的这个形式。 “保持在第一位置”可以包括,在前表面300的前面在预定区域306内悬停达预定时间段。预定区域306可以围绕位置304划界,使得如果对象302略微晃动,则可以认为其“保持在第一位置”。对象302将保持在第一位置的预定时间段可以在大约50毫秒到大约100毫秒的范围内。在其他实施例中,预定时间段可以不大于约2000毫秒。在这种情况下,用户可以通过在预定时间段内将手指保持在预定区域306内的悬停位置来提供输入手势,并且作为响应,悬停接口模块118可以使得显示放大窗口142,以便提供对于内容138的增强浏览。
尽管图1和3E中所示的放大窗口142是矩形形状,但是应当理解,放大窗口142可以包括任何合适的形状,诸如圆形、三角形、正方形、六边形或适合于包含内容138的部分306的放大视图的任何类型的多边形形状。
图4图示出了图3A-3E的示例计算设备102的正视图,其示出了由对象302在放大窗口142内提供的用户输入。在放大窗口142内提供以与其中的内容交互的用户输入可以采取任何合适的形式,诸如对象302接触显示器132的前表面300以提供用于选择在放大窗口142内再现的元素的基于触摸的输入。在图4的示例中,用户已经将他的手指在放大窗口142内的文本上触摸到显示器132的前表面300,该文本读作“Store Clerk Thwarts RobberyAttempt”。正如用户能够向显示器132提供基于触摸的输入以用于选择交互内容元素(例如,超链接),用户可以在放大窗口142内提供的超文本“Store Clerk Thwarts RobberyAttempt”上接触显示器132的前表面300,以选择文本并命令浏览器模块110导航到具有与该文本相关联的全文的另一网页。在这个意义上,正如部分306响应于放大窗口142之外的用户输入一样,当在放大窗口142内提供用户输入时,通过响应于用户输入,放大窗口142内的内容部分是可操作的。
在一些实施例中,在放大窗口142内提供的用户输入,如图4中所图示,可以包括来自对象302的悬停交互。例如,对象302可以在放大窗口142内再现的内容上方在与显示器132的前表面300相距一定距离处悬停,并且可操作内容(如果被编码为对悬停事件作出响应)可以通过执行显示相关功能来响应基于悬停的用户输入,诸如改变内容的外观(例如,为文本“Store Clerk Thwarts Robbery”加下划线),显示附加内容(例如,具有关于内容的信息的弹出窗口,下拉菜单等),等等。
图5A图示出了图3-4的示例计算设备102的正视图,其示出了对象302移动越过显示器132的前表面300,同时保持与前表面300的间隔关系。因此,图5B图示出了计算设备102和移动对象302的局部侧视图,以图示出在对象302跨越前表面300移动期间保持的间隔关系。响应于在图5A和5B中示出的对象302的移动,放大窗口142被示出为已经与移动对象302一起从显示器132的第一区域(由虚线框表示)移动跨越到显示器132的第二区域。在一些实施例中,悬停接口模块118可以确定对象302是否在预定速度以下移动跨越前表面300。如下面将更详细地描述的,在一些实施例中,如果对象302在前表面300上移动得太快(即,在阈值速度以上),则放大窗口142可以从显示器132消失。因此,根据一些实施例,只要对象302在以与其间隔开的关系横穿前表面300时移动低于预定速度,则放大窗口142可以与对象302一起移动到显示器132的与对象302的新位置对应的新区域。在图5A的示例中,在对象302已经移动之后在新/第二区域中的放大窗口142包含内容138的另一部分,该另一部分再现在与显示器132的前表面300上的与对象302的更新位置对应的新位置相距阈值距离处或内。以这种方式,对象302可以以受控方式(即,低于预定速度)横穿前表面300,以随着对象302移动而动态地再现内容138的不同部分。这给予计算设备102的用户一种类似于在报纸上移动放大镜的虚拟体验。
图6图示出了图3-5的计算设备102的正视图,其示出由对象302在放大窗口142内提供的用户输入。可以提供在放大窗口142内提供的用户输入,以便与其中的内容交互,并且它可以采取任何合适的形式,如上参照图4所描述的。在图6的示例中,对象302可以接触显示器132的前表面300,以提供用于选择在放大窗口142内再现的元素的基于触摸的输入。具体地,对象302(手指)可以在放大窗口142内再现的放大视频回放按钮上触摸显示器132的前表面300。应认识到,当放大窗口142未在显示器132上再现时,对象302可以在视频回放按钮上触摸显示器132的前表面300,以使得在显示器132上向用户回放视频。放大窗口142还再现可操作内容,该可操作内容以与在放大窗口142之外在显示器132上再现的可操作内容138相同方式作出响应。在这个意义上,对象302可以在放大窗口142内提供输入命令(例如,接触显示器132的前表面300)以选择交互式元素(例如,视频回放按钮),并且作为响应,浏览器模块110可以诸如通过启动与回放按钮相关联的视频文件的回放来对用户输入作出响应。
在一些实施例中,在放大窗口142内提供的用户输入可以包括来自对象302的悬停交互。例如,对象302可以在与显示器132的前表面300相距一定距离处在放大窗口142内再现的内容上方悬停,并且如果可操作内容被编码来响应悬停事件,则该可操作内容可以通过执行显示相关功能来响应基于悬停的用户输入,诸如改变内容的外观(例如,突出显示视频回放按钮的圆圈),显示附加内容等。
图7A图示出了计算设备102的局部侧视图和局部正视图,其示出了对象302悬停在距显示器132的前表面300的第一距离d1处,以及放大窗口142的第一放大级别。图7B图示出了计算设备102的局部侧视图和正视图,其示出了对象302悬停在距显示器132的前表面300的第二距离d2处,以及放大窗口142的第二放大级别。因此,图7A和7B图示出了可以响应于对象302在z方向(即,垂直于前表面300的方向)上的移动来调整或控制放大窗口142内的内容的放大/缩放水平,以允许用户在显示放大窗口142时控制放大窗口142内的内容的再现尺寸。悬停接口模块118可以通过访问程序数据112中的映射数据来启用这种z方向缩放控制,该映射数据将放大级别映射到与显示器132的前表面300相距的z方向距离。以这种方式,在与前表面300相距第一距离d1处检测到的对象302可以被转换为用于放大窗口142内的内容的第一放大级别,使得放大窗口142内的内容可以以第一放大级别再现,并且响应于确定对象302已经在z方向上从前表面300更远得移动到第二距离d2,可以调整(例如,减小)放大窗口142内的内容的放大级别。检测对象距前表面300的距离可由(多个)接近传感器128基于所接收信号的强度、飞行时间(ToF)或用于确定对象302距显示器132的前表面300的距离的其它手段来执行。
图8A图示出了计算设备102的正视图,其示出了对象302从浏览器的控制区域800内部移动到控制区域800的边界外部的位置,使得放大窗口142从显示器132消失。图8B图示出了计算设备102和对象302的侧视图,以示出当对象302保持与前表面300的间隔关系的同时,发生对象302跨越显示器132的前表面300的移动(即,对象302以悬停状态跨越前表面300移动)。图8A和8B展示了一个准则的示例,一旦放大窗口最初已被再现,其就使放大窗口142从显示器132;即,对象302移动到在显示器132上指定的控制区域800的外部。例如,浏览器模块110可以将控制区域800指定为包括在显示器132上的区域,该区域包围经由web浏览器再现的内容138。因此,导航条136虽然是屏幕再现134的一部分,但是可以被指定为在控制区域800之外,使得放大窗口142响应于对象302移动到web浏览器的导航条136上方的位置而消失。应用程序(例如,字处理程序)的任何类型的菜单栏或控制面板可以以类似的方式被指定为在控制区域800之外,使得当对象302悬停在内容138上时再现放大窗口142,但是当其悬停在不再现实际内容138的显示器132的其他部分上时不是如此。应当理解,显示器132的边界的至少一部分可以与控制区域800重合以使得当对象302移动到显示器132自身的边界之外的位置时,放大窗口142也可在该情况下消失。
在一些实施例中,可以利用其他准则来选择性地在显示器132上再现放大窗口142。一个示例准则可以是,对象302在预定速度之上横跨显示器132的前表面300移动(即,对象移动太快)。在参照图5A和5B描述对象302在预定速度以下移动时,提及该准则。也就是说,当对象302以悬停状态在预定速度之下跨越显示器132的前表面300移动时,放大窗口142可以与对象132一起移动到显示器的新区域,但是当对象超过预定速度时,放大窗口142可以从显示器132消失。用于使放大窗口142消失的另一示例准则可以是,对象302接触显示器132在显示放大窗口142的区域之外的前表面300。用于使放大窗口142消失的又一示例准则可以是,对象302已经在z方向上移动离开前表面300超过在z方向上与前表面300相距的阈值距离。在任何情况下,可能存在显示放大窗口142的情况和不显示放大窗口142的情况,并且可以利用上述准则来确定使对象302从显示器消失的那些实例。
图9图示出了计算设备102的正视图,其示出了对象302从显示器132上的控制区域800的边界附近的位置移动到更接近边界的位置。具体地,悬停接口模块118可以确定对象302正悬停在前表面300上的位置304,并且可以进一步确定位置304与控制区域800的边界相距距离p,其中,距离p在距离控制区域800的边界的阈值距离内。在确定对象从位置304更接近控制区域800的边界移动时,如图9中所示,悬停接口模块118可以在与对象302的移动方向相反的方向上平移放大窗口142内的内容。在这些情况下,可以发生内容在放大窗口142内的平移,而不是将放大窗口142本身移动到显示器132的新区域。这可能是有利的,因为当对象302在位置304处时,放大窗口142的侧边界可以基本上紧靠控制区域800的边界,在一些情况下,控制区域800的边界可以与显示器132的边界重合。在这种情况下,代替将放大窗口142移动到控制区域800的边界之外,可以平移在放大窗口142内的内容以显露内容138的在内容138的边缘处的一部分,当对象302正悬停在位置304上方时,该部分在放大窗口内以其他方式不可见。以这种方式,用户可以观看在内容138的外边界附近的内容138的部分。
图10A图示出了计算设备102的局部正视图,其示出了对象302在显示器132上的位置304处提供基于触摸的输入,其中在位置304处,对象302之前可能已经悬停以使得显示放大窗口142。在位置304处提供的基于触摸的输入可以是任何合适类型的基于接触的输入,其中对象302在位置304处与显示器132的前表面300接触。为了与指示使放大窗口142消失的这个用户意图的接触进行区分,悬停接口模块118可以确定基于触摸的输入是否被提供为多接触类型的基于触摸的输入(例如,“双击”)。以这种方式,在预定时间段内的两个连续的接触可以向悬停接口模块118指示用户期望缩放到与位置304相关联的内容的一部分。
图10C图示出了在接收到显示器132的前表面300上的位置304处的基于触摸的输入之后图10A和10B的计算设备102的局部正视图。值得注意的是,显示器132示出了在位置304周围再现的内容的放大视图;在这种情况下,对象302正悬停在其上的文章。以这种方式,用户可以使用放大窗口142浏览内容,作为读取内容的辅助而不实际放大内容,然后用户可以放大内容138中他感兴趣的部分。
图11图示出了计算设备102的局部正视图,其示出了对象302悬停在显示器132上的交互元素(例如,读作“Sports”的菜单文本)上以使得响应于悬停对象302而执行显示相关功能。具体地,内容138的部分可以被编码以响应悬停事件。在台式计算机的上下文中,当将光标放置在具有悬停功能的内容中的交互元素上时,可发生悬停事件。在诸如计算设备102之类的启用悬停的计算设备的上下文中,来自对象302的悬停事件可以链接到指示器事件,以使得响应于检测到在显示器132的前表面300上悬停的对象302而执行显示相关功能。
图11示出了响应于在“Sports”菜单文本上检测到悬停对象302而执行多个显示相关功能。例如,悬停接口模块118可以使得读作“Sports”的交互文本的显示从未加粗字体转换为粗体字体,以向用户指示对象302当前被检测为正悬停在“Sports”菜单文本上。也可以执行其他显示相关功能,诸如显示附加内容1100;在这种情况下,“Sports”类别的子类别的下拉菜单。
图11图示出了悬停接口模块118如何可以为由浏览器模块110接收的可操作内容提供完全的鼠标/指示器支持。也就是说,web浏览器和其他内容再现应用可以以在诸如计算设备102之类的能够悬停的设备上提供“桌面校验”的方式来实现。例如,小形状因子智能电话可以提供完全的鼠标支持,以便当对象(诸如对象302)悬停在显示器132的前面时利用所再现的内容使能悬停事件(例如,W3C指示器事件)。在图11的说明性示例中,对象302可以悬停在“Sports”菜单文本上,并且该菜单文本可以被修改(例如,加粗、突出显示等)和/或附加内容(例如,子类别下拉菜单)可以再现得类似于它如何对在台式计算机上的可操作内容上方悬停的光标做出反应。以这种方式,所有指示器事件(例如,鼠标越过(mouseover)等)可以被链接到悬停事件以在其他计算设备102上使能这种桌面校验。这种链接在能够悬停的设备中是可能的,因为具有对来自对象302的悬停交互和基于触摸的交互进行区分的能力。
为了进一步说明,表1示出了主要“接触”逻辑的示例,其可以由悬停接口模块118利用以确定在当前未显示放大窗口142时如何响应于对象经由基于悬停的输入和基于触摸的输入的组合与显示器132交互。
表1:
附加地,以下是响应于对象302和显示器132之间的各种交互,可由悬停接口模块118遵循的示例事件排序场景:
Touch Down(向下触摸):在再现在显示器132的前表面300上的元素上向下触摸可以在WM_PointerDown消息的命中测试节点上产生以下事件序列:mousemove(鼠标移动)、pointerover(鼠标越过)、mouseover(鼠标越过)、mouseenter(鼠标进入)、pointerdown(指示器向下)、mousedown(鼠标向下)。
Lifting Up(提升):从再现在显示器132的前表面300上的元素提升可以在WM_PointerUp消息的命中测试节点上产生以下事件序列:pointerup(指示器向上)、mouseup(鼠标向上)、pointerout(指示器在外)、mouseout(鼠标在外)、mouseleave(鼠标离开)。
Moving the Contact(移动接触)(对象302保持接触):在(在向下触摸之后)保持接触的同时在屏幕上移动接触可以产生以下序列:
[pointerout,mouseout,] {mouseleave,}
pointermove(指示器移动),mousemove,
[pointerover,mouseover,](mouseenter,)
这里,[]括号指示当新的命中测试结果不等于先前命中测试结果时触发的事件。这些事件在先前的命中测试结果处触发。 {}大括号表示当更新在元素边界内/外变动时触发的事件。
Moving the Contact – HOVER(移动接触——悬停):在不与屏幕(近场输入设备/对象)接触的情况下产生坐标更新。事件序列如下:
[pointerout,mouseout,] {mouseleave,}
pointerover,mousemove,
[pointerover,mouseover,](mouseenter,)
Moving the Contact Causing Manipulation to Begin(移动接触使操纵开始):当直接操作为了(由WM_POINTERCAPTURECHANGE消息发信号通知)操纵的目的而接管主接触时,则可以分派以下事件:pointerout,mouseout,mouseleave,pointercancel(指示器取消),mouseup。这里,“mouseup”事件针对HTML元素(窗口)。
示例过程
图12、图13和图14图示出了作为逻辑流程图中的块的集合的过程,其表示可以在硬件,软件或其组合中实现的操作序列。在软件的上下文中,框表示当由一个或多个处理器执行时执行所述操作的计算机可执行指令。通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。描述操作的顺序不旨在被解释为限制,并且可以以任何顺序和/或并行地组合任何数量的所描述的框来实现过程。
图12是用于检测悬停对象302并且作为响应在其中显示具有可操作内容的放大窗口142的说明性过程1200的流程图。为了讨论的目的,参照图1的计算系统环境100,特别是浏览器模块110、悬停接口模块118、(多个)接近传感器128和(多个)显示器132,来描述过程1200。
在1202处,浏览器模块110可以在计算设备102的显示器132上再现内容138。如上所述,内容138中的至少一些可以通过响应用户输入而是可操作的。例如,在1202处在显示器132上再现的内容138可以包括网页内容,其包括但不限于交互文本(例如,可选择的文本)、链接(例如,超链接)、软按钮(例如,视频/音频回放按钮)等中的一些或全部,其响应于用户输入而可以使得执行导航功能(例如,在选择了链接时将浏览器导航到不同的网页)、显示相关功能(例如,修改内容138的显示,显示附加内容等),等等。
在1204处,(多个)接近传感器128可以检测悬停在显示器132前面的对象302。也就是说,对象302可以在显示器132的前表面300的前面,离前表面300一定距离处,使得(多个)接近传感器128可以检测对象302,但不与其接触。在一个说明性示例中,(多个)接近传感器128包括嵌入在显示器132内或后面的电容传感器阵列,并且电容传感器阵列的信号强度可足以检测接近(例如,在约0.001英寸到约8英寸的范围内)前表面300的对象302。
在1206处,悬停接口模块118可以确定显示器132的前表面300上对应于对象相对于显示器132的前表面300的位置的位置304。在一些实施例中,悬停接口模块118可根据从(多个)接近传感器128获得的数据(例如,(多个)接近传感器128的特定电极的位置)接收位置304。在其他实施例中,悬停接口模块118可以访问程序数据112以获得与由(多个)接近传感器128检测到的对象132的位置相对应的(多个)像素位置。在任何情况下,相对于从对象302到显示器132的前表面300上的其他位置的距离,位置304可以是与对象302隔开最短距离。以这种方式,对象的位置可以被解析为基于从对象302到显示器132的前表面300的与前表面300垂直的方向的位置304。
在一些实施例中,悬停接口模块118可以确定位置304是否在浏览器的控制区域800内,以便选择性地响应控制区域800内的悬停对象302,但是不响应在控制区域800外部的对象302。例如,悬停在显示器132上再现的web浏览器的导航栏上的对象302可以被确定为位于控制区域800之外。在一些实施例中,悬停接口模块118可以进一步确定,在处于悬停状态时是否从对象302接收到输入手势。例如,如果对象302在预定时间段(例如,50毫秒)内保持在位置304周围的区域306内,则可以确定对象302已经提供了输入手势。
在1208处,悬停接口模块118可以确定在位置304处或在距离位置304的阈值距离h内再现的内容138的部分306。该部分306将在放大窗口142内显示,以便于计算设备102的用户对于该部分306的可读性。这样,该部分306将对应于位置304,因为它是内容138中与该位置304相对紧密接近的部分。在这个意义上,在1208处确定/选择的内容308的部分306可以在对象304的正下方(即,在位置304处),或者至少在距离位置304的阈值距离h内(例如,在对象302正上方,如图3C所示)。
在1210处,悬停接口模块118可以在显示器的一个区域中显示包含内容的部分306的放大窗口142。在放大窗口142内再现的部分306可以以可操作形式再现(即,当在放大窗口142内提供用户输入时,放大窗口142内的部分306可以通过响应用户输入而是可动作的)。过程1200便于方便浏览再现在显示器132上的内容138,特别是在内容138是丰富和密集的情况下,使得可读性和可选择性成为一些显示器132上的议题。
为了进一步说明,表2示出了可由悬停接口模块118利用的悬停交互逻辑,以确定如何响应对象302经由基于悬停的输入和基于触摸的输入的组合来与显示器132交互。
表2:
图13是用于检测悬停对象302的移动并且作为响应,用悬停对象302在显示器132上移动放大窗口142的说明性过程1300的流程图。为了讨论的目的,参照图1的计算系统环境100,特别是悬停接口模块118,(多个)接近传感器128和(多个)显示器132,来描述过程1300。过程1300可以从图12的过程1200的步骤1210继续。
在1302处,悬停接口模块118可以确定对象302已经在预定速度以下移动跨越显示器132的前表面300,同时保持与显示器132的前表面300的间隔关系。预定速度可以被设置为使得,对象302以悬停方式移动越过前表面300得太快(例如,以预定速度或高于预定速度)可以使先前显示的放大窗口142从显示器132消失。为了确定对象302正在移动跨越显示器132的前表面300,悬停接口模块118可以利用/访问来自(多个)接近传感器128的指示与对象302相对应的所检测到的位置的数据,并且还可以参照时钟或类似的计时器以确定对象移动跨越前表面300的速度。
在1304处,悬停接口模块118可以响应于在1302处检测到的对象移动而在显示器132的另一区域中显示放大窗口142(先前在显示器132的第一区域中再现)。这可以以一定的时间间隔被执行,这使得它在用户的肉眼看来就像放大窗口142随着对象302的移动而移动一样。在1304处,对象302的每个新位置可以使得放大窗口142移动到显示器132的新区域。过程1300可以允许用户在显示器132的前表面300上以间隔关系拖动/移动对象302,以浏览所再现的内容138的不同部分。
图14是用于响应于对象302在垂直于显示器132的前表面300的方向上的移动而改变放大窗口142内的内容的放大级别的说明性过程1400的流程图。为了讨论的目的,参照图1的计算系统环境100,特别是悬停接口模块118、(多个)接近传感器128和(多个)显示器132,来描述过程1400。
在1402处,(多个)接近传感器128可以检测悬停在再现内容138的显示器132的前面的对象302。也就是说,对象302可以在显示器132的前表面300的前面,距离前表面300一定距离使得(多个)接近传感器128可以检测对象302,但不与之接触。
在1404处,悬停接口模块118可在显示器的一个区域中显示放大窗口142,该放大窗口142包含内容138中对应于在1402处检测到的对象302的位置的可操作形式的部分306。
在1406处,悬停接口模块118可以(基于从(多个)接近传感器128接收的数据)确定对象302已经在垂直于前表面300的方向(即,图3B中所示的z方向)上远离显示器132的前表面300移动得更远。
在1408处,悬停接口模块118可以减小放大窗口142内的内容138的部分306的放大级别,使得当对象302移动得更远离前表面300时,放大窗口142缩小以在放大窗口142内显露内容138的更多部分。
在1410处,悬停接口模块118可以(基于从(多个)接近传感器128接收的数据)确定对象302已经在垂直于前表面300的方向(即,图3B中所示的z方向)上移动得更靠近显示器132的前表面300。
在1412处,悬停接口模块118可以增大放大窗口142内的内容138的部分306的放大级别,使得当对象302移动得更靠近前表面300时,放大窗口142放大以在放大窗口142内显露内容138中的更少部分。
本文所描述的环境和个体化元件当然可包括许多其它逻辑、编程和物理组件,其中附图中所示的那些组件仅是与本文中的讨论相关的示例。
其他架构可以用于实现所描述的功能,并且旨在落入本公开的范围内。此外,虽然上面为了讨论的目的而定义了具体的责任分配,但是根据情况,可以以不同的方式分配和划分各种功能和责任。
示例一:一种方法,包括:在显示器上再现内容(例如,web内容、文档内容、应用内容等);检测在显示器的前表面的前面但不与其接触的对象(例如,手指、手、笔、触笔、棒等);至少部分地响应于检测到所述对象,至少部分地响应于检测到所述对象,相对于从所述对象到所述显示器的前表面上的其他位置的距离,确定在所述显示器的前表面上与所述对象间隔最短距离的位置;确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及在所述显示器的一个区域中显示所述内容的所述部分的放大窗​​口。
示例二:根据示例一的方法,其中内容的该部分包括一个或多个交互元素,其包括嵌入链接、视频回放按钮或音频回放按钮中的至少一个,并且其中一个或多个交互元素中的各个交互元素被配置为当在放大窗口内提供用户输入时响应用户输入(例如,基于触摸的输入、基于悬停的输入等)。
示例三:根据前述示例中任一项所述的方法,单独或组合地,其中用户输入包括,对象在放大窗口内的一个或多个交互元素中的各个交互元素上接触显示器的前表面。
示例四:根据前述示例中任一项所述的方法,单独地或组合地,其中,放大窗口包括再现内容的一部分的浏览器窗口。
示例五:根据前述示例中任一项所述的方法,单独地或组合地,其中检测在显示器的前表面的前面但不与其接触的对象包括,确定来自对象的输入手势(例如,对象围绕一个位置悬停预定时间段,由对象创建的记号/符号,挥动或基于移动的手势等)。
示例六:根据前述示例中任一项所述的方法,单独地或组合地,其中所述输入手势是通过以下步骤确定的:检测所述对象处于在垂直于所述前表面的方向上测量的距离所述前表面的阈值距离内的第一位置;以及确定所述对象在预定时间段内处于所述第一位置的预定区域内,所述预定区域平行于所述显示器的前表面。
示例七:根据前述示例中任一项所述的方法,单独地或组合地,其中显示器的前表面包括顶部、底部、左侧和右侧,正垂直方向指向所述顶部,并且其中所述区域包括在所述正垂直方向上与所述位置相距预定距离的底边界。
示例八:根据前述示例中任一项所述的方法,单独地或组合地,还包括:确定所述对象已经在垂直于所述前表面的方向上移动得更远离所述显示器的前表面;以及响应于确定所述对象已经移动得更远离所述前表面,减小所述放大窗口内的所述内容的所述部分的放大级别。
示例九:根据前述示例中任一项所述的方法,单独地或组合地,其中所述区域具有不大于显示器宽度的约75%的宽度。
示例十:根据前述示例中任一项所述的方法,单独地或组合地,其中所述位置是第一位置,所述方法还包括:确定所述对象已经在预定速度以下移动跨越在所述显示器的前表面,同时保持与显示器的前表面的间隔关系;以及响应于确定所述对象已经移动,随着所述对象将放大窗口移动跨越所述显示器的前表面到所述显示器的另一区域,其中所述移动之后的放大窗口包含再现在所述显示器的前表面上的新位置处或与其相距阈值距离的内容的另一部分,该新位置与对象在移动跨越显示器的前表面之后的位置相对应。
示例十一:根据前述示例中任一项所述的方法,单独地或组合地,还包括,响应于以下中的至少一个而使放大视图从显示器消失:(i)确定对象移动到显示器的控制区域(例如,浏览器控制区域)之外,(ii)确定对象在预定速度之上移动跨越显示器的前表面,(iii)确定对象在该区域之外接触显示器的前表面,或者(iv)确定所述对象已经在与所述显示器的前表面垂直的方向远离所述显示器的前表面移动得超过了沿着所述方向测量的与显示器的前表面相距的阈值距离。
示例十二:根据前述示例中任一项所述的方法,单独地或组合地,还包括:确定位置在距显示器的控制区域(例如,浏览器控制区域)的边界的阈值距离内;确定所述对象已经移动跨越所述显示器的前表面,同时将与所述显示器的前表面的间隔关系保持到相对于从所述位置到所述控制区域的所述边界的距离更接近所述控制区域的边界的新位置;以及响应于确定所述对象已经移动到所述新位置,平移所述放大窗口内的所述内容的所述部分,以显露所述内容中相对于从所述内容的所述部分到所述控制区域的所述边界的距离更接近所述控制区域的边界而再现的另一部分。
示例十三:根据前述示例中任一项所述的方法,单独地或组合地,还包括:检测位于所述位置处在显示器的前表面上的来自对象的第一接触以及位于所述位置处在显示器的前表面上的来自对象的第二接触,在从检测到第一接触的阈值时间段内检测到第二接触;以及响应于检测到所述第一接触和所述第二接触,在所述显示器上再现所述位置周围的内容的放大视图。
示例十四:一种系统,包括:被配置为显示内容(例如,web内容、文档内容、应用内容等)的显示器;被配置为检测在显示器的前表面的前面但不与显示器的前表面接触的对象(例如,手指、手、笔、触笔,棒等)的一个或多个传感器(例如,(多个)接近传感器);一个或多个处理器;以及存储计算机可执行指令的存储器,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述一个或多个处理器执行包括以下动作的动作:至少部分地响应于检测到在所述显示器的前表面的前面但是不与所述显示器的前表面接触的对象,确定在所述显示器的前表面上的位置,所述位置相对于从所述对象到所述显示器的前表面上的其他位置的距离与所述对象间隔最短距离;确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及使得在所述显示器的一个区域中呈现所述内容的所述部分的放大窗​​口。
示例十五:根据示例十四所述的系统:其中,所述内容的该部分包括一个或多个交互元素,其包括嵌入链接、视频回放按钮或音频回放按钮中的至少一个,并且其中所述一个或多个交互元素中的各个交互元素被配置为当在放大窗口内提供用户输入时响应用户输入(例如,基于触摸的输入、基于悬停的输入等)。
示例十六:根据前述示例中任一项所述的系统,单独地或组合地,其中用户输入包括,对象在放大窗口内的一个或多个交互元素中的各个交互元素上接触显示器的前表面。
示例十七:根据前述示例中任一项所述的系统,单独地或组合地,其中所述放大窗口包括再现所述内容的所述部分的浏览器窗口。
示例十八:根据前述示例中任一项所述的系统,单独地或组合地,其中所述一个或多个传感器还被配置为确定在垂直于所述显示器的前表面的方向上的在显示器的前表面和对象之间的距离,所述动作还包括:确定所述对象已经在所述方向上移动得更远离所述前表面;以及响应于确定所述对象已经移动得更远离所述前表面,减小所述放大窗口内的所述内容的所述部分的放大级别。
示例十九:根据前述示例中任一项所述的系统,单独地或组合地,其中所述位置是第一位置,所述动作还包括:确定所述对象已经在预定速度以下移动跨越所述显示器的前表面,同时保持与显示器的前表面的间隔关系;以及响应于确定所述对象已经移动,随着所述对象将所述放大窗口移动跨越所述显示器的前表面到所述显示器的另一区域,其中在所述移动之后的放大窗口包含在显示器的前表面上的新位置处或与其相距的阈值距离之内的内容的另一部分,所述新位置与所述对象在移动跨越显示器的前表面之后的位置相对应。
示例二十:一个或多个计算机可读存储介质,其包括存储多个编程指令的存储器,所述编程指令可由计算设备的一个或多个处理器执行以使计算设备执行包括以下动作的动作:在显示器上再现内容(例如,web内容、文档内容、应用内容等;检测来自对象(例如手指、手、笔、触笔、棒等)的输入手势(例如,对象在预定时间段内围绕一个位置悬停,由对象创建的记号/符号,挥动或基于移动的手势等),该对象在显示器的前表面的前面但不与其接触;至少部分地响应于检测到所述输入手势,确定在所述显示器的所述前表面上的一个位置,该位置相对于从所述对象到所述显示器的前表面上的其他位置的距离与所述对象间隔最短距离;确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及在所述显示器的一个区域中显示所述内容的所述部分的放大窗​​口。
示例二十一:一种系统,包括:用于显示内容(例如,web内容、文档内容、应用内容等)的装置;用于检测在用于显示的装置的前表面的前面但不与其接触的对象(例如,手指、手、笔、触笔、棒等)的一个或多个装置(例如,(多个)接近传感器);用于执行计算机可执行指令的一个或多个装置(例如,包括例如诸如中央处理单元(CPU)、片上系统(SoC)等的(多个)硬件处理器的(多个)处理器);以及用于存储计算机可执行指令的装置(例如,存储器、计算机可读存储介质、诸如RAM、ROM、EEPROM、闪存等),当由用于执行计算机可执行指令的一个或多个装置执行时,所述计算机可执行指令使得用于执行计算机可执行指令的一个或多个装置执行包括以下动作的动作:至少部分地响应于检测到在所述用于显示的装置的前表面的前面但不与其接触的对象,确定所述用于显示的装置的前表面上的一个位置,该位置相对于从所述对象到所述用于显示的装置的前表面上的其他位置的距离与所述对象间隔最短距离;确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及使得在所述用于显示的装置的一个区域中呈现所述内容的所述部分的放大窗​​口。
示例二十二:根据示例二十一所述的系统,其中,用于检测对象的一个​​或多个装置还被配置为确定在垂直于所述用于显示的装置的前表面的方向上的在用于显示的装置的前表面与所述对象之间的距离,所述动作还包括:确定所述对象已在所述方向上移动得更远离所述前表面;以及响应于确定所述对象已经移动得更远离所述前表面,减小所述放大窗口内的所述内容的所述部分的放大级别。
结论
最后,尽管已经用特定于结构特征和/或方法动作的语言描述了各种实施例,但是应当理解,在所附的表示中定义的主题不一定限于所描述的特定特征或动作。相反,特定特征和动作被公开为实现所要求保护的主题的示例形式。

Claims (15)

1.一种方法,包括:
在显示器上再现内容;
检测在所述显示器的前表面的前面但不与所述显示器的前表面接触的对象;
至少部分地响应于检测到所述对象,确定在所述显示器的前表面上的一个位置,该位置相对于从所述对象到所述显示器的前表面上的其他位置的距离与所述对象间隔最短距离;
确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及
在所述显示器的一个区域中显示所述内容的所述部分的放大窗​​口。
2.根据权利要求1所述的方法,其中所述内容的所述部分包括一个或多个交互元素,该交互元素包括嵌入链接、视频回放按钮或音频回放按钮中的至少一个,并且其中所述一个或多个交互元素中的各个交互元素被配置为当在放大窗口内提供用户输入时响应用户输入。
3.根据权利要求2所述的方法,其中所述用户输入包括所述对象在所述放大窗口内的所述一个或多个交互元素中的各个交互元素上接触所述显示器的所述前表面。
4.根据权利要求1所述的方法,其中所述放大窗口包括再现所述内容的所述部分的浏览器窗口。
5.根据权利要求1所述的方法,其中,检测在所述显示器的前表面的前面但不与所述显示器的前表面接触的所述对象包括,确定来自所述对象的输入手势。
6.根据权利要求5所述的方法,其中所述输入手势由以下操作来确定:
检测所述对象处于在垂直于所述前表面的方向上测量的在距所述前表面的阈值距离内的第一位置处;以及
确定所述对象在预定时间段内在所述第一位置的预定区域内,所述预定区域平行于所述显示器的前表面。
7.根据权利要求1所述的方法,其中所述显示器的所述前表面包括顶部、底部、左侧和右侧,正垂直方向指向所述顶部,并且其中所述区域包括底部边界,该底部边界在正垂直方向上与所述位置相距预定距离处。
8.根据权利要求1所述的方法,还包括:
确定所述对象已经在垂直于所述前表面的方向上移动得更远离所述显示器的前表面;以及
响应于确定所述对象已经移动得更远离所述前表面,减小所述放大窗口内的所述内容的所述部分的放大级别。
9.根据权利要求1所述的方法,其中所述区域具有不大于所述显示器的宽度的约75%的宽度。
10.根据权利要求1所述的方法,其中所述位置是第一位置,所述方法还包括:
确定所述对象已经在预定速度以下在所述显示器的前表面上移动,同时保持与所述显示器的前表面的间隔关系;以及
响应于确定对象已经移动,将放大窗口随着对象移动跨越显示器的前表面到显示器的另一区域,其中移动之后的放大窗口包含在显示器的前表面上的新位置处或与该新位置相距的阈值距离内再现的内容的另一部分,该新位置与对象在移动跨越所述显示器的前表面之后的位置相对应。
11.根据权利要求1所述的方法,还包括响应于以下各项中的至少一个,使所述放大视图从所述显示器消失:(i)确定所述对象移动到所述显示器的控制区域之外,(ii)确定对象在预定速度之上移动跨越所述显示器的前表面,(iii)确定所述对象在所述区域之外接触所述显示器的前表面,或者(iv)确定所述对象已经在垂直于显示器的前表面的方向上远离显示器的前表面移动得超过了沿所述方向测量的与所述显示器的前表面相距的阈值距离。
12.根据权利要求1所述的方法,还包括:
确定所述位置在距所述显示器的控制区域的边界的阈值距离内;
确定所述对象已经移动跨域所述显示器的前表面,同时将与所述显示器的前表面的间隔关系保持到相对于从所述位置到所述控制区域的所述边界的距离更接近所述控制区域的边界的新位置;以及
响应于确定所述对象已经移动到所述新位置,平移所述放大窗口内的所述内容的所述部分,以显露所述内容中相对于从所述内容的所述部分到所述控制区域的边界的距离更接近所述控制区域的边界而再现的另一部分。
13.根据权利要求1所述的方法,还包括:
检测在所述位置处在所述显示器的所述前表面上的来自对象的第一接触以及在所述位置处在所述显示器的所述前表面上的来自所述对象的第二接触,所述第二接触在从检测到所述第一接触的阈值时间段内被检测到;以及
响应于检测到所述第一接触和所述第二接触,在所述显示器上再现所述位置周围的内容的放大视图。
14.一种系统,包括:
显示器,其被配置为显示内容;
一个或多个传感器,其被配置为检测在所述显示器的前表面的前面但不接触所述显示器的前表面的前面的对象;
一个或多个处理器;以及
存储器,其存储计算机可执行指令,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述一个或多个处理器执行包括以下动作的动作:
至少部分地响应于检测到在所述显示器的前表面上但不与所述显示器的前表面接触的所述对象,确定在所述显示器的前表面上的一个位置,该位置相对于从所述对象到所述显示器的前表面上的其他位置的距离与所述对象间隔最短距离;
确定在所述位置处或在距所述位置的阈值距离内再现的所述内容的一部分;以及
使得在所述显示器的一个区域中呈现所述内容的所述部分的放大窗​​口。
15.根据权利要求14所述的系统,其中所述一个或多个传感器还被配置为确定在垂直于所述显示器的前表面的方向上的在所述显示器的前表面和所述对象之间的距离,所述动作还包括:
确定所述对象已在所述方向上移动得更远离所述前表面;以及
响应于确定所述对象已经移动得更远离所述前表面,减小所述放大窗口内的所述内容的所述部分的放大级别。
CN201580043140.XA 2014-08-12 2015-08-10 与再现的内容的基于悬停的交互 Active CN106575203B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/458136 2014-08-12
US14/458,136 US9594489B2 (en) 2014-08-12 2014-08-12 Hover-based interaction with rendered content
PCT/US2015/044406 WO2016025356A1 (en) 2014-08-12 2015-08-10 Hover-based interaction with rendered content

Publications (2)

Publication Number Publication Date
CN106575203A true CN106575203A (zh) 2017-04-19
CN106575203B CN106575203B (zh) 2020-07-31

Family

ID=54015184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580043140.XA Active CN106575203B (zh) 2014-08-12 2015-08-10 与再现的内容的基于悬停的交互

Country Status (6)

Country Link
US (2) US9594489B2 (zh)
EP (1) EP3180687B1 (zh)
KR (1) KR102384130B1 (zh)
CN (1) CN106575203B (zh)
ES (1) ES2702718T3 (zh)
WO (1) WO2016025356A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108153464A (zh) * 2018-01-26 2018-06-12 北京硬壳科技有限公司 一种控制方法和装置
CN110312000A (zh) * 2018-03-20 2019-10-08 广东欧珀移动通信有限公司 滑出结构的控制方法、检测组件及电子装置
CN113032605A (zh) * 2019-12-25 2021-06-25 中移(成都)信息通信科技有限公司 一种信息展示方法、装置、设备及计算机存储介质
CN115967831A (zh) * 2022-10-28 2023-04-14 北京优酷科技有限公司 视频显示方法、装置、电子设备及存储介质

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063563B1 (en) 2012-09-25 2015-06-23 Amazon Technologies, Inc. Gesture actions for interface elements
KR102135092B1 (ko) * 2013-06-03 2020-07-17 엘지전자 주식회사 영상표시장치의 동작 방법
US10073578B2 (en) 2013-08-13 2018-09-11 Samsung Electronics Company, Ltd Electromagnetic interference signal detection
US10108305B2 (en) 2013-08-13 2018-10-23 Samsung Electronics Company, Ltd. Interaction sensing
KR102130797B1 (ko) 2013-09-17 2020-07-03 엘지전자 주식회사 이동 단말기 및 그것의 제어방법
US9645651B2 (en) 2013-09-24 2017-05-09 Microsoft Technology Licensing, Llc Presentation of a control interface on a touch-enabled device based on a motion or absence thereof
US9594489B2 (en) 2014-08-12 2017-03-14 Microsoft Technology Licensing, Llc Hover-based interaction with rendered content
KR102399589B1 (ko) * 2014-11-05 2022-05-18 삼성전자주식회사 디바이스에 오브젝트를 디스플레이 하는 방법, 그 디바이스 및 기록매체
EP3040839B1 (en) * 2014-12-31 2020-08-12 Dassault Systèmes Selection of a graphical element
CN108027811B (zh) * 2015-09-09 2021-06-29 华为技术有限公司 一种数据编辑方法及装置
CN106598972B (zh) * 2015-10-14 2020-05-08 阿里巴巴集团控股有限公司 一种信息显示方法、装置及智能终端
KR102474244B1 (ko) * 2015-11-20 2022-12-06 삼성전자주식회사 영상 표시 장치 및 그 동작방법
US10732719B2 (en) * 2016-03-03 2020-08-04 Lenovo (Singapore) Pte. Ltd. Performing actions responsive to hovering over an input surface
KR102526860B1 (ko) * 2016-03-18 2023-05-02 삼성전자주식회사 전자 장치 및 전자 장치 제어 방법
EP3408731A4 (en) * 2016-04-07 2019-01-30 Samsung Electronics Co., Ltd. INTERACTION MODES FOR OBJECT DEVICE INTERACTIONS
US10719193B2 (en) * 2016-04-20 2020-07-21 Microsoft Technology Licensing, Llc Augmenting search with three-dimensional representations
EP3475785A4 (en) * 2016-04-22 2020-05-13 SZ DJI Technology Co., Ltd. SYSTEMS AND METHODS FOR PROCESSING IMAGE DATA BASED ON A USER'S INTEREST
WO2018000382A1 (zh) * 2016-06-30 2018-01-04 华为技术有限公司 一种查看应用程序的图形用户界面、方法及终端
US10416777B2 (en) * 2016-08-16 2019-09-17 Microsoft Technology Licensing, Llc Device manipulation using hover
US11435888B1 (en) * 2016-09-21 2022-09-06 Apple Inc. System with position-sensitive electronic device interface
CN110537159B (zh) * 2017-01-11 2023-08-29 比吉斯合伙人有限公司 用于订单输入的具有悬停功能的图形用户界面
US20180267691A1 (en) * 2017-03-20 2018-09-20 Tempo Music Design Oy Method and system for generating audio associated with a user interface
WO2019163503A1 (ja) * 2018-02-22 2019-08-29 京セラ株式会社 電子機器、制御方法およびプログラム
US10942633B2 (en) * 2018-12-20 2021-03-09 Microsoft Technology Licensing, Llc Interactive viewing and editing system
US20200257442A1 (en) * 2019-02-12 2020-08-13 Volvo Car Corporation Display and input mirroring on heads-up display
CN111580803B (zh) * 2019-02-15 2022-09-06 广汽埃安新能源汽车有限公司 生成带悬浮提示的流程图的方法及系统、电子设备、介质
JP7335487B2 (ja) * 2019-04-02 2023-08-30 船井電機株式会社 入力装置
US10996761B2 (en) 2019-06-01 2021-05-04 Apple Inc. User interfaces for non-visual output of time
US11635883B2 (en) * 2020-02-18 2023-04-25 Micah Development LLC Indication of content linked to text
JP2021176049A (ja) * 2020-05-01 2021-11-04 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、及び情報処理方法
US11933625B2 (en) 2020-09-24 2024-03-19 International Business Machines Corporation Managing navigation interface display
KR20220122328A (ko) * 2021-02-26 2022-09-02 삼성전자주식회사 전자 장치 및 그 제어 방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060022955A1 (en) * 2004-07-30 2006-02-02 Apple Computer, Inc. Visual expander
CN101432711A (zh) * 2006-05-18 2009-05-13 伏尔甘·波塔尔斯公司 用于选择性显示部分显示屏的用户界面系统和方法
US20100090964A1 (en) * 2008-10-10 2010-04-15 At&T Intellectual Property I, L.P. Augmented i/o for limited form factor user-interfaces
US7778874B1 (en) * 2005-11-14 2010-08-17 A9.Com, Inc. Automated generation of suggested online advertising campaign parameters
CN102467344A (zh) * 2010-11-17 2012-05-23 索尼公司 用于触摸屏用户界面的基于显示器接近控制的系统和方法
US20130050131A1 (en) * 2011-08-23 2013-02-28 Garmin Switzerland Gmbh Hover based navigation user interface control
CN103858085A (zh) * 2013-10-31 2014-06-11 华为技术有限公司 悬浮或隔空操作的处理方法及装置
US20140344753A1 (en) * 2011-12-20 2014-11-20 Sharp Kabushiki Kaisha Information processing device, method for controlling information processing device, information processing device control program, and computer-readable recording medium in which said program is stored

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8479122B2 (en) 2004-07-30 2013-07-02 Apple Inc. Gestures for touch sensitive input devices
US7256770B2 (en) 1998-09-14 2007-08-14 Microsoft Corporation Method for displaying information responsive to sensing a physical presence proximate to a computer input device
US6501464B1 (en) 2000-10-31 2002-12-31 Intel Corporation On-screen transparent keyboard interface
US20030020733A1 (en) 2001-07-24 2003-01-30 Yin Memphis Zhihong Computer display having selective area magnification
US20030025676A1 (en) 2001-08-02 2003-02-06 Koninklijke Philips Electronics N.V. Sensor-based menu for a touch screen panel
US6907576B2 (en) * 2002-03-04 2005-06-14 Microsoft Corporation Legibility of selected content
US7314165B2 (en) 2004-07-01 2008-01-01 American Express Travel Related Services Company, Inc. Method and system for smellprint recognition biometrics on a smartcard
US8381135B2 (en) 2004-07-30 2013-02-19 Apple Inc. Proximity detector in handheld device
US7489306B2 (en) 2004-12-22 2009-02-10 Microsoft Corporation Touch screen accuracy
JP4602166B2 (ja) 2005-06-07 2010-12-22 富士通株式会社 手書き情報入力装置。
US7636794B2 (en) 2005-10-31 2009-12-22 Microsoft Corporation Distributed sensing techniques for mobile devices
US7956847B2 (en) 2007-01-05 2011-06-07 Apple Inc. Gestures for controlling, manipulating, and editing of media files using touch sensitive devices
US7877707B2 (en) 2007-01-06 2011-01-25 Apple Inc. Detecting and interpreting real-world and security gestures on touch and hover sensitive devices
US8650505B2 (en) 2007-02-28 2014-02-11 Rpx Corporation Multi-state unified pie user interface
US8219936B2 (en) * 2007-08-30 2012-07-10 Lg Electronics Inc. User interface for a mobile device using a user's gesture in the proximity of an electronic device
US8363019B2 (en) 2008-05-26 2013-01-29 Lg Electronics Inc. Mobile terminal using proximity sensor and method of controlling the mobile terminal
US9658765B2 (en) 2008-07-31 2017-05-23 Northrop Grumman Systems Corporation Image magnification system for computer interface
US20100107067A1 (en) 2008-10-27 2010-04-29 Nokia Corporation Input on touch based user interfaces
EP3627299A1 (en) 2009-04-30 2020-03-25 Wacom Co., Ltd. Control circuitry and method
EP2252055B1 (en) 2009-05-13 2013-09-18 Sony Europe Limited A system for retrieval of executable applications for broadcast television
US8466934B2 (en) 2009-06-29 2013-06-18 Min Liang Tan Touchscreen interface
US8347221B2 (en) 2009-10-07 2013-01-01 Research In Motion Limited Touch-sensitive display and method of control
US8358281B2 (en) 2009-12-15 2013-01-22 Apple Inc. Device, method, and graphical user interface for management and manipulation of user interface elements
US8384683B2 (en) 2010-04-23 2013-02-26 Tong Luo Method for user input from the back panel of a handheld computerized device
US20110261030A1 (en) * 2010-04-26 2011-10-27 Bullock Roddy Mckee Enhanced Ebook and Enhanced Ebook Reader
US8614693B2 (en) 2010-08-27 2013-12-24 Apple Inc. Touch and hover signal drift compensation
US8780060B2 (en) 2010-11-02 2014-07-15 Apple Inc. Methods and systems for providing haptic control
US9575561B2 (en) 2010-12-23 2017-02-21 Intel Corporation Method, apparatus and system for interacting with content on web browsers
JP2012168932A (ja) 2011-02-10 2012-09-06 Sony Computer Entertainment Inc 入力装置、情報処理装置および入力値取得方法
JP5774327B2 (ja) 2011-02-16 2015-09-09 株式会社テイエルブイ 気液分離器
US8314790B1 (en) 2011-03-29 2012-11-20 Google Inc. Layer opacity adjustment for a three-dimensional object
US9285950B2 (en) 2011-03-30 2016-03-15 Google Inc. Hover-over gesturing on mobile devices
KR101748668B1 (ko) 2011-04-14 2017-06-19 엘지전자 주식회사 이동 단말기 및 그의 입체영상 제어방법
US9477348B2 (en) 2011-04-15 2016-10-25 Hewlett-Packard Development Company, L.P. Focus-based touch and hover detection
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
JP2012248066A (ja) 2011-05-30 2012-12-13 Canon Inc 画像処理装置、その制御方法、および制御プログラム、並びに撮像装置
RU2455676C2 (ru) 2011-07-04 2012-07-10 Общество с ограниченной ответственностью "ТРИДИВИ" Способ управления устройством с помощью жестов и 3d-сенсор для его осуществления
US20130194314A1 (en) 2012-01-26 2013-08-01 Nokia Corporation Desktop extension
WO2013113360A1 (en) 2012-01-30 2013-08-08 Telefonaktiebolaget L M Ericsson (Publ) An apparatus having a touch screen display
CN102719990B (zh) 2012-06-18 2014-07-30 三明学院 智能经编多速电子送经系统
US8907927B2 (en) 2012-09-13 2014-12-09 Sap Portals Israel Ltd Camera based hover detection for touch-based mobile devices
JP5798103B2 (ja) * 2012-11-05 2015-10-21 株式会社Nttドコモ 端末装置、画面表示方法、プログラム
US9645651B2 (en) 2013-09-24 2017-05-09 Microsoft Technology Licensing, Llc Presentation of a control interface on a touch-enabled device based on a motion or absence thereof
US9594489B2 (en) 2014-08-12 2017-03-14 Microsoft Technology Licensing, Llc Hover-based interaction with rendered content

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060022955A1 (en) * 2004-07-30 2006-02-02 Apple Computer, Inc. Visual expander
US7778874B1 (en) * 2005-11-14 2010-08-17 A9.Com, Inc. Automated generation of suggested online advertising campaign parameters
CN101432711A (zh) * 2006-05-18 2009-05-13 伏尔甘·波塔尔斯公司 用于选择性显示部分显示屏的用户界面系统和方法
US20100090964A1 (en) * 2008-10-10 2010-04-15 At&T Intellectual Property I, L.P. Augmented i/o for limited form factor user-interfaces
CN102467344A (zh) * 2010-11-17 2012-05-23 索尼公司 用于触摸屏用户界面的基于显示器接近控制的系统和方法
US20130050131A1 (en) * 2011-08-23 2013-02-28 Garmin Switzerland Gmbh Hover based navigation user interface control
US20140344753A1 (en) * 2011-12-20 2014-11-20 Sharp Kabushiki Kaisha Information processing device, method for controlling information processing device, information processing device control program, and computer-readable recording medium in which said program is stored
CN103858085A (zh) * 2013-10-31 2014-06-11 华为技术有限公司 悬浮或隔空操作的处理方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108153464A (zh) * 2018-01-26 2018-06-12 北京硬壳科技有限公司 一种控制方法和装置
CN110312000A (zh) * 2018-03-20 2019-10-08 广东欧珀移动通信有限公司 滑出结构的控制方法、检测组件及电子装置
CN110312000B (zh) * 2018-03-20 2021-06-29 Oppo广东移动通信有限公司 滑出结构的控制方法、检测组件及电子装置
CN113032605A (zh) * 2019-12-25 2021-06-25 中移(成都)信息通信科技有限公司 一种信息展示方法、装置、设备及计算机存储介质
CN113032605B (zh) * 2019-12-25 2023-08-18 中移(成都)信息通信科技有限公司 一种信息展示方法、装置、设备及计算机存储介质
CN115967831A (zh) * 2022-10-28 2023-04-14 北京优酷科技有限公司 视频显示方法、装置、电子设备及存储介质
CN115967831B (zh) * 2022-10-28 2023-08-22 北京优酷科技有限公司 视频显示方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
EP3180687B1 (en) 2018-09-26
US10444961B2 (en) 2019-10-15
CN106575203B (zh) 2020-07-31
US20160048304A1 (en) 2016-02-18
ES2702718T3 (es) 2019-03-05
US9594489B2 (en) 2017-03-14
WO2016025356A1 (en) 2016-02-18
KR102384130B1 (ko) 2022-04-06
US20170160914A1 (en) 2017-06-08
EP3180687A1 (en) 2017-06-21
KR20170041219A (ko) 2017-04-14

Similar Documents

Publication Publication Date Title
CN106575203A (zh) 与再现的内容的基于悬停的交互
US10346016B1 (en) Nested zoom in windows on a touch sensitive device
TWI521380B (zh) 用以與網路瀏覽器上的內容互動之方法、設備及系統
US9182854B2 (en) System and method for multi-touch interactions with a touch sensitive screen
CN103562838B (zh) 边缘手势
US9256917B1 (en) Nested zoom in windows on a touch sensitive device
CN103649900B (zh) 边缘手势
CN109643210B (zh) 使用悬停的设备操纵
US20130117698A1 (en) Display apparatus and method thereof
US20130215018A1 (en) Touch position locating method, text selecting method, device, and electronic equipment
CN105493023A (zh) 对表面上的内容的操纵
US9552067B2 (en) Gesture interpretation in navigable zoom mode
US9477373B1 (en) Simultaneous zoom in windows on a touch sensitive device
CN107111441B (zh) 多级用户界面
KR101442438B1 (ko) 듀얼 터치 경험 필드를 달성하기 위한 싱글 터치 프로세스
US10140003B1 (en) Simultaneous zoom in windows on a touch sensitive device
US20140055372A1 (en) Visual object manipulation
US10402071B1 (en) Simultaneous zoom in windows on a touch sensitive device
JP5895658B2 (ja) 表示制御装置および表示制御方法
KR20130126019A (ko) 사용자 단말 장치 및 제어 방법
KR20130103250A (ko) 이북 단말에서 넘버단위 기반의 연속적 터치 조작을 통한 페이지 직접 액세스 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체

Legal Events

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