用限定的交叉控制行为降低控件响应等待时间的制作方法_4

文档序号:9620833阅读:来源:国知局
、合并的事件或虚事件),代表更加期望的输 入流,例如校正或平滑化。例如,对于空中手势输入,对于来自高速输入设备的每10次事 件,可对高等待时间子系统发送相同数量或较少的事件,这些事件提供实际输入事件的"平 均",因此平滑化输入并去除抖动。还可产生新的事件,作为输入设备的不同参数的多个"期 望"等级的混合(amalgam)。例如,如果笔的倾斜和压力属性的智能缩减将导致不同事件的 选择,则可创建单个新的事件对象(或者经改进的一个或多个现有事件对象)以包括这些 属性中的每一个的期望值。
[0071] 在实施例中,IHJ或低等待时间子系统系统可被用于向高等待时间系统提供经处 理的输入信息。一个或多个方法可被用于协调两个子系统的活动。这些方法包括: a.在实施例中,低等待时间子系统可立即响应于所有用户输入,但在向高等待时间系 统提供输入之前等待用户停止输入(例如抬起手指或笔,终止手势)。这在用户交互期间具 有避免阻塞系统同时仍处理全体数据的优点。 b.在实施例中,低等待时间系统可几乎实时提供输入的缩减估计;并且可任选地储存 完整的输入队列,高等待时间系统可在请求时获得该完整的输入队列。 C.在实施例中,用户反馈可被分成两个步骤。第一,低等待时间反馈将提供图11中用 户输入1130的粗略的立即的表示。第二,只要高等待时间系统能够计算细化的响应,例如 在笔1150尖提起之后,高等待时间系统响应1140就可替代第一响应1130。可选地,高等待 时间反馈可连续地"追赶"(且有可能包含)低等待时间反馈。 d. 在实施例中,低等待时间系统可从输入流中推断简单的手势动作,且因此产生不同 于或者代替原始事件的手势事件,该手势事件被包括在输入队列中。 e. 在实施例中,IHJ或低等待时间子系统可使用多个输入位置来预测进一步输入位 置。此预测可被传递到高等待时间子系统以减小其有效等待时间。 f. 在实施例中,在IPU或低等待时间子系统中执行可受益于附加样本或早期检测的算 法。在实施例中,可在时间上限制这些事件的执行。例如,可使用最初的50个事件以将输 入分类为特定手指,或在手指与笔输入之间作出区分。在实施例中,这些算法可连续运行。 g. 在实施例中,将事件流传递到高等待时间子系统的低等待时间子系统的过程可被延 迟以接收并处理附加的连续或同时的相关输入,此相关输入可能被不正确地视为不相关输 入。例如,字母"t"通常被绘制为两个单独的、但相关的笔划。在一般进程中,从低等待时 间系统传递到高等待时间系统的输入流的一部分将包括绘制第一条线的端处的"抬笔"信 号。在实施例中,缩减过程等待样本窗口内的输入的最后帧以传递到"抬起"事件,以免在 窗口内的显示器上再次检测到笔,因此排除对事件的需要。 硬件架构
[0072] 在实施例中,数据流过经过系统的组件的两个重叠路径以同时支持高等待时间 与低等待时间反馈。图12示出一个这样的系统,包括输入设备1210、IPU 1220、系统总线 1230、CPU 1240和连接到显示器1290的GPU 1280。用户1200使用输入设备1210执行输 入。此输入由IPU 1220来感测,在不同的实施例中,IPU 1220可以是FPGA、ASIC或者集成 到GPU 1280、MPU或SoC的附加软件和硬件逻辑。此时,控制流分成且跟随经过系统的两个 单独的路径。对于输入的低等待时间响应,IPU 1220将输入事件经由系统总线1230发送到 GPU 1280,绕过CPU 1240。GPU 1280然后快速地显示对用户1200的反馈。对于输入的高 等待时间响应,IPU 1220将输入事件经由系统总线1230发送到CPU 1240, CPU 1230运行 图形应用且可与其他系统组件交互。CPU 1240然后将指令经由系统总线1230发送到GPU 1280以向用户1200提供图形反馈。从输入设备1210到IPU 1220到系统总线1230到GPU 1280的低等待时间路径主要是硬件且用低等待时间来运行。从输入设备1210到IPU 1220 到系统总线1230到CPU 1240再回到系统总线1230到GPU 1280的高等待时间路径是高等 待时间的,由于在此说明书早先所述的因素。在相关实施例中,输入设备1210与GPU 1280 之间通信且绕过系统总线1230。
[0073] 图13示出惯用的编程范例,称为模型视图控制器。在此范例中,用户1300在控制 器1310上执行输入,控制器1310进而基于此输入操控模型1320。模型1320中的变化导致 视图1330变化,这被用户1300观察到。本发明所传达的等待时间中的一些是由于输入、这 些组件之间的通信、以及由视图1300组件所产生的图形的显示中的等待时间。
[0074] 图14示出支持在系统上开发并运行应用的架构的实施例,此系统对用户输入有 混合的高等待时间与低等待时间响应。用户1400用输入设备1410执行输入。此输入由IPU 1420接收。IPU 1420同时将输入事件经由传统机制发送到高等待时间子系统中运行的控 制器1430并发送到低等待时间中运行的视图模型(L) 1490。输入由控制器1430来处理, 该控制器1430操控高等待时间子系统中运行的模型1440,该模型1440可与易失性存储器 1450、固定存储器1470、网络资源1460等中的数据交互(所有交互引入滞后)。由视图模型 (L) 1490接收的输入事件导致视图模型(L)变化,该变化体现在视图(L) 1491的变化中,这 被用户1400观察到。模型1440的变化导致高等待时间子系统的视图(H) 1480变化,这也 被用户1400观察到。在实施例中,在同一显示器上示出用户所观察到这两种类型的变化。 在实施例中,这两种类型的变化经由其他输出模态(诸如例如,声音或振动)体现到用户。 在实施例中,在输入之间,模型1440更新视图模型(L) 1490和视图(L) 1491的状态,从而使 得视图模型(L) 1490包含需要的数据以在系统的显示器上的正确位置中呈现⑶I的组件且 使得视图模型(L) 1490可以以模型1440的当前状态的情况来正确地解释来自IPU 1420的 输入;且使得视图(L) 1491可以以模型1440的电流状态的情况来正确地产生用于显示的图 形。
[0075] 借助示例,考虑具有按钮的触摸敏感的应用,在按钮的功能之中,通过改变其外观 对用户的触摸进行响应,指示它已被激活。当应用运行时,应用从存储器和编译的应用代码 中读取按钮的位置、尺寸和外观的细节。视图(H) 1480代码产生必要的图形,该必要的图形 被呈现给用户以显示按钮。模型1440更新视图模型(L) 1490的状态以记录此图形元件是 按钮,且记录按钮当被触摸时应该改变外观,从"正常"外观到"按压"外观。模型1440还 更新视图(L) 1491的状态以记录针对视图模型(L) 1490中的"正常"和"按压"状态的正确 外观。此外观可以是低保真度图形元件的描述或完整的栅格(raster)以用于显示。在此 示例中,通过在按钮的位置周围显示白框来表示"按压"状态。
[0076] 用户触摸触摸屏显示器,且由IPU 1420在小于1ms之后接收描述该触摸的输入 数据。IPU 1420从输入数据创建代表触下事件的输入事件并将此输入发送到应用控制器 1430。控制器1430操控模型1440。在此情况下,控制器1430对模型1440指示按钮已被 触摸且应用应该执行与此按钮有关联的任何命令。在IPU 1420向控制器1430发送事件的 同一时刻,它向视图模型(L) 1490发送事件,指示按钮已被触摸。先前由模型1440对视图 模型(L) 1490下指令以在触摸的情况下工作,且在此情况中它通过将其状态改变为"按压" 来响应触摸事件。视图(L) 1491通过在按钮周围显示白框(对应于其"按压"外观的反馈) 来响应此变化。触摸了按钮对模型1440的改变导致视图(H) 1480的更新,从而使得它也反 映现在触摸了按钮。观察视图(H) 1480和视图(L) 1491两者的输出的用户观察到他们的触 摸由视图(L) 1491的立即反馈,在一秒内跟随着由视图⑶1480的反馈。 减小控件响应等待时间
[0077] 在采用图形用户界面(⑶I)的典型交互计算机系统中,交互的基元可被分解成控 件,可被集合到库中。应用设计的任务通常是已知控件的汇编集合中的一个以促进期望的 用户交互。例如,如果开发者期望用户输入他们的地址,他或她可利用文本域控件来实现街 道号码和名称的自由格式输入,利用州的下拉式列表来强迫用户从有效的选项卡当中作出 选择,以及利用另一个自由格式文本域来实现邮编输入。按钮也可被用来允许用户指示他 们已经完成输入数据的任务。很多系统包括库,库包括文本域、下拉式列表和按钮,以及很 多其他类型的控件。
[0078]-旦应用开发者已选择控件以组成期望的交互流,它们通常将在随后设计那些控 件的行为。可通过参数的选择来指定这种行为,诸如在设计时间指定下拉式列表的内容,或 者设置旗标(flag)来禁用控件。也可通过计算机代码来指定这样的行为。在一些实施例 中,这种代码可被添加到"事件处理器"或"回叫(callback) ",其由系统的事件分配系统在 满足了期望的情况时触发。例如,每当控件被"点击"时,可调用"onClick"回叫。此时,将 执行由应用开发者所指定的代码以控制控件的行为。
[0079] 在一些实施例中,应用软件可在系统上运行,其中在回叫的执行之前通过处理控 件参数来获得效率。例如,在设计时间将控件的"启用"旗标设置成"假"通常将导致控件 在它被首次显示在屏幕上时被禁用,而不是首先将旗标设置成其默认值(诸如"真"),仅之 后在代码中反转。
[0080] 加速输入的一个方法是在硬件中实现公共控件,如在上文且在美国专利申请 No. 14/046,819中所述。在这种系统中,如在本文中所述,行为的参数化可在软件代码中指 定的行为上导致充分改进的性能,因为可通过硬件中的动作来注意(heed)此参数化,硬件 中的动作通常比那些在软件中实施的更快。
[0081] 尽管这种方法可显著地出产较好的性能,但它可在一些实施例中忽略在控件上跨 越的交互。例如,考虑图15中示出的窗口。在此图示中,我们看见会话消息和标记"0K"的 按钮。当用户按压0K按钮时,如果用上文和美国专利申请No. 14/046,819中所述的方法来 加速,那么按钮自身可提供对用户的触摸的响应的立即视觉指示。图15中示出的应用的开 发者可使此"0K"按钮旨在解除包含它的窗口。在这种情况中,在一些面向对象的实施方式 中,开发者可在事件处理器中写入源代码,将通过解除窗口来响应于用户的输入。在上文和 美国专利申请No. 14/046, 819中所述的发明的一些实施例中,此源代码将由CPU来执行,因 此比针对按钮按压本身由IPU所提供的视觉响应更加缓慢地运行。
[0082]用于减小控件响应等待时间的当前公开的系统和方法提供一种方法,通过该方 法,也可加速这种交叉控制行为。在实施例中,诸如上文所述的设计模式(当点击按钮时关 闭父窗口)的逻辑被编码在硬件中,例如与上文所讨论的输入处理单元(IPU)相关联的硬 件。在一些实施例中,为了指定应该利用设计模式,配置系统使得开发者可在按钮控件上设 置旗标(例如,一个名为"(31〇86?3代1^胃;[11(10¥¥11611(]1;^1^(1"),当用户点击按钮时指示1?1] 使用硬件以立即关闭父窗口,而不是运行提供指令来关闭窗口的开发者提供的代码。在其 他实施例中,IPU被实施为在二级处理器(诸如GPU、S0C、微控制器、或与执行应用软件的 CHJ分开的CPU的核心)上运行的软件,在其他实施例中,IPU被实施为与其他元件相同的 处理器/核心上的软件,且被0S或其他资源管理器给予高优先级。参见图15。在布局时间 或响应于用户输入,可识别由IPU处理的特定交叉控制行为。
[0083] 在实施例中,用于减小控件响应等待时间的当前公开的系统和方法提供包含输入 设备的输入子系统,此子系统适合于将响应于用户输入的信号输出到输入设备,此信号包 含关于输入的信息。低等待时间子系统被设置为接收信号并产生响应于一个或多个信号的 等等待时间响应,且向高等待时间子系统发送信号中的至少一个由低等待时间子系统所接 收的信号包含触发交叉控制行为的输入。低等待时间子系统作出交叉控制行为的识别,且 低等待时间子系统产生反映交叉控制行为的低等待时间响应。高等待时间子系统适于接收 信号中的至少一个,并且响应于信号中的至少一个中的一个或多个,产生高等待时间响应。 低等待时间子系统相对于高等待时间子系统用低等待时间产生低等待时间响应,而高等待 时间子系统相对于低等待时间子系统用高等待时间产生高等待时间响应。
[0084] 在实施例中,用于减小控件响应等待时间的当前公开的系统和方法提供包含输入 设备的输入子系统,此子系统适合于将响应于用户输入的信号输出到输入设备,此信号包 含关于输入的信息。低等待时间子系统被设置为接收信号并产生响应于一个或多个信号的 等等待时间响应,且向高等待时间子系统发送信号中的至少一个由低等待时间子系统所接 收的信号包含交叉控制行为的识别,且产生的低等待时间响应包含反映交叉控制行为的数 据。高等待时间子系统适于接收信号中的至少一个,并且响应于信号中的一个或多个,产生 高等待时间响应。低等待时间子系统相对于高等待时间子系统用低等待时间产生低等待 时间响应,而高等待时间子系统相对于低等待时间子系统用高等待时间产生高等待时间响 应。 实施例的细节选项卡布局
[0085] 组织大量信息和/或控件的一个通用方法是将它们安排到小数量的类别中。然后 可在界面中的一系列有标签的选项卡后安排这种类别。在一些环境中,用户通过在控件的 顶部触摸类别相应的"选项卡"来选择类别。然后显示与此选项卡标签相关联的元件。
[0086] 诸如彩色水平条之类的视觉指示符可被用来加亮当前选择的选项卡。在一些情况 中,界面可被设计成表现得好像目录类别本身而不仅仅是标签彼此紧靠地排列,每种类别 有显示器的宽度的大小;因此可一次仅显示一个完整的类别。当改变选项卡时,目录可执行 动画转变,诸如水平滑动,其中先前显示的目录滑出视图,被其最近邻居所替换,且如果这 不是最新选择的选项卡的目录,那么进一步水平运动发生,直到期望的目录全在视图中为 止。在一些实施例中,用户可滑动目录以在选项卡之间移动,根据手势的表现目录跟随向侧 面拖动或动画转变至下一类别。
[0087] 在用于减小控件响应等待时间的当前公开的系统和方法的一些实施例中,采用定 制设计的硬件以将选项卡目录渲染为水平排列的系列位图,当响应于输入时改变显示的选 项卡。在基于选项卡的布局的第一CPU渲染时,CPU可将界面的组件的渲染位图传递到硬 件控制器,还有关于他们在界面中的位置的信息,以及哪些是可选择的选项卡标签的位图 的指示和哪些是选项卡的目录的指示。 关闭窗口的按钮
[0088] 参见图15,图中
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1