CN104035717A - 事件识别 - Google Patents

事件识别 Download PDF

Info

Publication number
CN104035717A
CN104035717A CN201410299324.XA CN201410299324A CN104035717A CN 104035717 A CN104035717 A CN 104035717A CN 201410299324 A CN201410299324 A CN 201410299324A CN 104035717 A CN104035717 A CN 104035717A
Authority
CN
China
Prior art keywords
recognition device
view
gesture recognition
event
subevent
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
CN201410299324.XA
Other languages
English (en)
Other versions
CN104035717B (zh
Inventor
B·A·摩尔
J·H·沙法尔
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN104035717A publication Critical patent/CN104035717A/zh
Application granted granted Critical
Publication of CN104035717B publication Critical patent/CN104035717B/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/03Arrangements for converting the position or the displacement of a member into a coded form
    • 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
    • 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/04166Details of scanning methods, e.g. sampling time, grouping of sub areas or time sharing with display driving
    • 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/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
    • G06F3/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

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

Abstract

公开了一种执行包括具有多个视图的视图分层结构的软件的方法,所述方法显示视图分层结构的一个或多个视图。所述方法执行与特定视图关联的软件元件,其中每个特定视图包括事件识别器。每个事件识别器具有基于子事件的事件定义和事件处理器,所述事件处理器指定关于目标的动作,并被配置成响应于事件识别,把动作发送给所述目标。所述方法检测子事件的序列,把视图分层结构的视图之一识别为选中视图,所述选中视图确定视图分层结构中的哪些视图是主动涉及视图。所述方法把相应子事件传递给每个主动涉及视图的事件识别器,其中视图分层结构中的主动涉及视图的每个事件识别器处理相应子事件,之后处理子事件序列中的下一个子事件。

Description

事件识别
分案申请说明
本申请是申请日为2010年3月12日、申请号为201080020598.0、发明名称为“事件识别”的中国发明专利申请的分案申请。
技术领域
公开的实施例一般涉及用户界面处理。更具体地,公开的实施例涉及识别用户界面事件的设备和方法。
背景技术
计算设备一般包括可用于与计算设备交互的用户界面。用户界面可包括显示器和/或用于与用户界面的各个方面交互的输入设备,诸如键盘、鼠标和触摸敏感表面。在以触摸敏感表面作为输入设备的一些设备中,在特定的上下文中(例如,在第一应用程序的特定模式下),第一组基于触摸的姿态(例如,下述之中的两个或两个以上:轻击,双击,水平轻扫,垂直轻扫,捏合,张开,双指轻扫)被识别为正确的输入,而在其它上下文中(例如,在不同的应用程序中和/或第一应用程序内的不同模式或上下文中),其它不同的多组基于触摸的姿态被识别为正确的输入。结果,识别和响应基于触摸的姿态所需的软件和逻辑会变得复杂,从而每次更新应用程序或者在计算设备中增加新的应用程序时,都需要修正。在利用除基于触摸的姿态之外的输入源的用户界面中,也会出现这些和类似的问题。
从而,希望的是具有识别基于触摸的姿态和事件,以及来自其它输入源的姿态和事件的综合性架构或机制,所述综合性架构或机制能够容易地适用于计算设备上的所有应用程序的几乎所有上下文或模式,并且当更新应用程序或者在计算设备中增加新的应用程序时,不需要或几乎不需要任何修正。
发明内容
为了解决上述缺陷,一些实施例提供一种方法,所述方法在被配置成执行包括具有多个视图的视图分层结构的软件的电子设备处:显示视图分层结构的一个或多个视图;执行一个或多个软件元件,每个软件元件与特定视图关联,其中每个特定视图包括一个或多个事件识别器。每个事件识别器具有基于一个或多个子事件的事件定义,和事件处理器,其中事件处理器指定关于目标的动作,和被配置成响应于事件识别器检测到与事件定义对应的事件,把所述动作发送给所述目标。所述方法还检测一个或多个子事件的序列,和把视图分层结构的视图之一识别为选中视图,其中选中视图确定视图分层结构中的哪些视图是主动涉及视图。所述方法还把相应子事件传递给视图分层结构内的每个主动涉及视图的事件识别器,其中视图分层结构中的主动涉及视图的每个事件识别器处理相应子事件,之后处理子事件序列中的下一个子事件。
一些实施例提供一种方法,所述方法在被配置成执行包括具有多个视图的视图分层结构的软件的电子设备处:显示视图分层结构的一个或多个视图;执行一个或多个软件元件,每个软件元件与特定视图关联,其中每个特定视图包括一个或多个事件识别器。每个事件识别器具有基于一个或多个子事件的事件定义,和事件处理器,其中事件处理器指定关于目标的动作,和被配置成响应于事件识别器检测到对应于事件定义的事件,把所述动作发送给目标。所述方法还检测一个或多个子事件的序列,和把视图分层结构的视图之一识别为选中视图,其中选中视图确定视图分层结构中的哪些视图是主动涉及视图。所述方法还把相应子事件传递给视图分层结构内的每个主动涉及视图的事件识别器,和在视图分层结构中的主动涉及视图的事件识别器处处理相应子事件的同时,做出子事件识别判定。
一些实施例提供一种计算机可读存储介质,所述计算机可读存储介质保存由计算机系统或设备的一个或多个处理器执行的一个或多个程序,所述一个或多个程序包括显示具有多个视图的视图分层结构的一个或多个视图的一个或多个应用程序。所述一个或多个应用程序包括一个或多个软件元件,每个软件元件与特定视图关联,其中每个特定视图包括一个或多个事件识别器。每个事件识别器具有基于一个或多个子事件的事件定义,和事件处理器,其中事件处理器:指定关于目标的动作,和被配置成响应于事件识别器检测到与事件定义对应的事件,把所述动作发送给所述目标;事件管理指令在被计算机系统或设备的一个或多个处理器执行时,使计算机系统或设备:检测一个或多个子事件的序列;把视图分层结构的视图之一识别为选中视图,其中选中视图确定视图分层结构中的哪些视图是主动涉及视图;和把相应子事件传递给视图分层结构内的每个主动涉及视图的事件识别器,其中视图分层结构中的主动涉及视图的每个事件识别器处理相应子事件,之后处理子事件序列中的下一个子事件。
一些实施例提供一种设备,所述设备包括显示器,一个或多个处理器,存储器和保存在存储器中的一个或多个程序,所述一个或多个程序被配置成显示具有多个视图的视图分层结构的一个或多个视图。所述一个或多个程序包括一个或多个软件元件,每个软件元件与特定视图关联,其中每个特定视图包括一个或多个事件识别器。每个事件识别器具有基于一个或多个子事件的事件定义,和事件处理器,其中事件处理器指定关于目标的动作,和被配置成响应于事件识别器检测到与事件定义对应的事件,把所述动作发送给所述目标。所述设备的程序还包括事件传递程序,当被所述设备的一个或多个处理器执行时,所述事件传递程序使所述设备检测一个或多个子事件的序列;把视图分层结构的视图之一识别为选中视图,其中选中视图确定视图分层结构中的哪些视图是主动涉及视图;和在视图分层结构中的主动涉及视图的事件识别器处理相应子事件的同时,做出子事件识别判定。
在一些实施例中,提供一种设备,所述设备包含一个或多个处理器,存储器,和保存在存储器中的一个或多个程序,所述一个或多个程序被配置成管理具有多个编程层次的编程分层结构的一个或多个编程层次的执行。所述一个或多个程序包括一个或多个软件元件,每个软件元件与特定的编程层次关联,其中每个特定的编程层次包括一个或多个事件识别器。事件识别器具有基于一个或多个子事件的事件定义,和事件处理器器,其中事件处理器指定关于目标的动作,并被配置成响应于事件识别器检测到与事件定义对应的事件,把所述动作发送给所述目标。所述设备还包括事件传递程序,在被所述设备的一个或多个处理器执行时,所述事件传递程序使所述设备检测一个或多个子事件的序列;把编程分层结构的编程层次之一识别为选中层次,其中选中层次确定编程分层结构中的哪些编程层次是主动涉及编程层次;和把相应子事件传递给编程分层结构内的每个主动涉及编程层次的事件识别器,其中编程分层结构中的主动涉及编程层次的每个事件识别器处理相应子事件,之后处理子事件序列中的下一个子事件。
一些实施例提供一种方法,包括:在被配置成执行包括具有多个视图的视图分层结构的软件的电子设备处:至少显示多个视图中的第一视图;检测在第一视图处的一个或多个子事件,其中:多个视图包括两个或更多个姿态识别器,两个或更多个姿态识别器包括在第一视图中的第一姿态识别器;两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且第一姿态识别器与识别一组姿态识别器的等待列表关联,其中第一姿态识别器被配置成仅在一组姿态识别器中的每个姿态识别器进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态之后,识别一个或多个子事件;确定一组姿态识别器中的姿态识别器是否已经进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态;以及根据对一组姿态识别器中的姿态识别器已经进入多个预定状态中的相应状态的确定,用第一姿态识别器识别一个或多个子事件。
一些实施例提供一种电子设备,包括:显示器;一个或多个处理器;以及存储器,该存储器存储包括具有多个视图的视图分层结构的软件和指令,该指令当由一个或多个处理器执行时使该电子设备执行包括如下各项的方法:至少显示多个视图中的第一视图;检测在第一视图处的一个或多个子事件,其中:多个视图包括两个或更多个姿态识别器,两个或更多个姿态识别器包括在第一视图中的第一姿态识别器;两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且第一姿态识别器与识别一组姿态识别器的等待列表关联,其中第一姿态识别器被配置成仅在一组姿态识别器中的每个姿态识别器进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态之后,识别一个或多个子事件;确定一组姿态识别器中的姿态识别器是否已经进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态;以及根据对一组姿态识别器中的姿态识别器已经进入多个预定状态中的相应状态的确定,用第一姿态识别器识别一个或多个子事件。
一些实施例提供一种非瞬态计算机可读存储介质,存储包括具有多个视图的视图分层结构的软件和用于由电子设备的一个或多个处理器执行的指令,该指令用于:至少显示多个视图中的第一视图;检测在第一视图处的一个或多个子事件,其中:多个视图包括两个或更多个姿态识别器,两个或更多个姿态识别器包括在第一视图中的第一姿态识别器;两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且第一姿态识别器与识别一组姿态识别器的等待列表关联,其中第一姿态识别器被配置成仅在一组姿态识别器中的每个姿态识别器进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态之后,识别一个或多个子事件;确定一组姿态识别器中的姿态识别器是否已经进入多个预定状态中的指示姿态识别器还没有识别出一个或多个子事件的相应状态;以及根据对一组姿态识别器中的姿态识别器已经进入多个预定状态中的相应状态的确定,用第一姿态识别器识别一个或多个子事件。
附图说明
图1A和1B是图解说明按照一些实施例的电子设备的方框图。
图2是按照一些实施例的示例性电子设备的输入/输出处理栈的示图。
图3A图解说明按照一些实施例的示例性视图分层结构。
图3B和3C是图解说明按照一些实施例的示例性事件识别器方法和数据结构的方框图。
图4A和4B是图解说明按照一些实施例的示例性状态机的流程图。
图4C图解说明按照一些实施例的关于示例性的一组子事件的图4A和4B的示例性状态机。
图5A-5C图解说明按照一些实施例的利用示例性的事件识别器状态机的示例性子事件序列。
图6A和6B是按照一些实施例的事件识别方法流程图。
附图中,相同的附图标记表示对应的部分。
具体实施方式
下面详细参考实施例,附图中图解说明了实施例的例子。在下面的详细说明中,陈述了众多的具体细节,以便透彻理解本发明。不过,对本领域的技术人员来说,显然可在没有这些具体细节的情况下实践本发明。在其它情况下,为了避免不必要地模糊实施例的特征,没有详细说明公知的方法、过程、组件、电路和网络。
另外要明白,尽管这里可以使用术语第一、第二等来描述各个要素,不过这些要素不应受这些术语限制。这些术语只是用于区分一个要素和另一个要素。例如,第一触点可被称为第二触点,类似地,第二触点可被称为第一触点,而不脱离本发明的范围。第一触点和第二触点都是触点,不过它们不是同一触点。
在本发明的说明书中使用的术语只是用于说明特定的实施例,并不意图限制本发明。在本发明的说明书和所附权利要求书中使用的单数形式意图还包括复数形式,除非上下文明确地另有说明。另外应明白这里使用的“和/或”指的是包括关联的列举项目中的一个或多个的任何和所有可能组合。还要明白的是当用在本说明书中时,术语“包括”和/或“包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其它的特征、整数、步骤、操作、元件、组件和/或它们的组的存在或添加。
这里使用的术语“如果”可被解释成意味着“当…时”、“一旦…”,“响应于确定…”或者“响应于检测到…”,这取决于上下文。类似地,短语“如果确定…”或者“如果检测到[规定的条件和事件]”可被解释成意味着“一旦确定…”或“响应于确定…”或“一旦检测到[规定的条件和事件]”或者“响应于检测到[规定的条件和事件]”,这取决于上下文。
如上所述,在以触摸敏感表面作为输入设备的一些设备中,在特定的上下文中(例如,在第一应用程序的特定模式下),第一组基于触摸的姿态(例如,下述之中的两个或两个以上:轻击,双击,水平轻扫,垂直轻扫)被识别为正确的输入,在其它上下文中(例如,在不同的应用程序中和/或第一应用程序内的不同模式或上下文中),其它不同的多组基于触摸的姿态被识别为正确的输入。结果,识别和响应基于触摸的姿态所需的软件和逻辑会变得复杂,并且每次更新应用程序或者在计算设备中添加新的应用程序时,都需要修正。
在下面说明的实施例中,基于触摸的姿态是事件。一旦识别了预定事件(例如,与应用程序的当前上下文中的正确输入对应的事件),关于该事件的信息被传递给该应用程序。在本文的上下文中,所有基于触摸的姿态都对应于事件。此外,每个相应的事件被定义为一系列的子事件。在具有多触摸显示设备(这里通常称为“屏幕”)或其它多触摸敏感表面,并且接受基于多触摸的姿态的设备中,定义基于多触摸的事件的子事件包括多触摸子事件(要求两根或两根以上的手指同时接触设备的触摸敏感表面)。例如,在具有多触摸敏感显示器的设备中,当用户的手指首次触摸屏幕时,可开始子事件的相应多触摸序列。当一根或多根另外的手指随后或者同时触摸屏幕时,可发生另外的子事件,另外当触摸屏幕的所有手指在屏幕内移动时,可发生其它子事件。当从屏幕抬起用户的最后一根手指时,所述序列结束。
当利用基于触摸的姿态来控制在具有触摸敏感表面的设备中运行的应用程序时,触摸具有时间和空间特征。时间特征(称为相位)指示触摸何时刚刚开始,触摸是在移动还是固定不动的,和触摸何时结束-即,何时从屏幕抬起手指。触摸的空间特征是其中发生触摸的一组视图或用户界面窗口。其中检测到触摸的视图或窗口可对应于编程或视图分层结构内的编程层次。例如,其中检测到触摸的最低层次视图可被称为选中视图,并且至少部分根据开始基于触摸的姿态的初始触摸的选中视图,可确定被识别为正确输入的一组事件。
图1A和1B是图解说明按照一些实施例的电子设备102和104的方框图。电子设备102和104可以是任意电子设备,包括但不限于桌上型计算机系统,膝上型计算机系统,移动电话机,智能电话机,个人数字助手或导航系统。电子设备还可以是具有被配置成呈现用户界面的触摸屏显示器(例如,显示器156,图1B)的便携式电子设备,具有被配置成呈现用户界面的触摸屏显示器的计算机,具有触摸敏感表面和被配置成呈现用户界面的显示器的计算机,或者任何其它形式的计算设备,包括但不限于:消费电子设备,移动电话机,视频游戏系统,电子音乐播放器,平板PC,电子书阅读系统,ebook,PDA,电子记事本,电子邮件设备,膝上型计算机或其它计算机,信息站计算机,自动贩卖机,智能设备等等。电子设备102和104可分别包括用户界面113-A和113-B。
在一些实施例中,电子设备102和104包括触摸屏显示器。在这些实施例中,用户界面113(即,113-A或113-B)包括屏幕上(on-screen)键盘(未示出),用户使用所述屏幕上键盘与电子设备102和104交互。另一方面,键盘可以独立于和不同于电子设备102和104。例如,键盘可以是与电子设备102或104耦接的有线或无线键盘。
在一些实施例中,电子设备102可包括与电子设备102耦接的显示器126和一个或多个输入设备128-A(例如,键盘、鼠标、跟踪球、麦克风、物理按钮(一个或多个)、触摸板等等)。在这些实施例中,输入设备128-A中的一个或多个可视情况独立于和不同于电子设备102。例如,所述一个或多个输入设备可包括下述中的一个或多个:键盘、鼠标、触控板、跟踪球和电子笔,所述输入设备任意之一可视情况与电子设备分离。可选的是,设备102或104可包括一个或多个传感器130,诸如一个或多个加速度计、陀螺仪、GPS系统、扬声器、红外(IR)传感器、生物识别传感器、照相机等。注意作为输入设备128或作为传感器130的各种示例性设备的上述说明对这里说明的实施例的操作无关紧要,并且这里描述成输入设备的任意输入或传感器设备可同样被描述成传感器,反之亦然。在一些实施例中,一个或多个传感器130产生的信号被用作检测事件的输入源。
在一些实施例中,电子设备104包括与电子设备104耦接的触摸敏感显示器156(即,具有触摸敏感表面的显示器)和一个或多个输入设备128-B。在一些实施例中,触摸敏感显示器156具有检测两个或两个以上不同的并发(或者至少部分并发)触摸的能力,在这些实施例中,有时把显示器156称为多触摸显示器或者多触摸敏感显示器。
在这里讨论的电子设备102或104的一些实施例中,输入设备128被置于电子设备102或104中。在其它实施例中,输入设备128中的一个或多个独立于和不同于电子设备102或104;例如,输入设备128中的一个或多个可利用电缆(例如,USB电缆)或无线连接(例如,蓝牙连接),与电子设备102或104耦接。
当使用输入设备128时,或者当分别在电子设备102或104的触摸敏感显示器156上进行基于触摸的姿态时,用户产生由电子设备102或104的一个或多个CPU110处理的一系列子事件。在一些实施例中,电子设备102或104的所述一个或多个CPU110处理所述一系列子事件,以识别事件。
电子设备102或104一般分别包括一个或多个单核芯或多核芯处理单元(“CPU”)110,以及一个或多个网络接口或其它通信接口112。电子设备102或104分别包括存储器111和用于互连这些组件的一个或多个通信总线115。通信总线115可包括互连和控制系统组件(这里未说明)之间的通信的电路(有时称为芯片集)。如上简要所述,电子设备102和104可视情况分别包括用户界面113,用户界面113包括显示器126和多触摸显示器156。此外,电子设备102和104一般包括输入设备128(例如,键盘、鼠标、触摸屏、触摸敏感表面、多触摸屏幕、数字小键盘等等)。在一些实施例中,输入设备包括屏幕上输入设备(例如,显示设备的触摸敏感表面)。存储器111可包括高速随机存取存储器,诸如DRAM、SARM、DDR RAM或其它随机存取固态存储器设备;并且可包括非易失性存储器,诸如一个或多个磁盘存储设备,光盘存储设备,闪速存储设备,或者其它非易失性固态存储设备。存储器111可视情况包括远离CPU(一个或多个)110的一个或多个存储设备。存储器111,或者另一方面,存储器111内的非易失性存储设备(一个或多个)包含计算机可读存储介质。在一些实施例中,存储器111保存下述程序,模块和数据结构,或者它们的子集:
·包括用于处理各种基本系统服务和用于执行依赖于硬件的任务的各过程的操作系统118;
·通信模块120(分别在电子设备102和104中),用于通过电子设备102或104的一个或多个相应通信接口112(有线或无线)和一个或多个通信网络,诸如因特网、其它广域网、局域网、城域网等等,分别把电子设备102或104连接到其它设备;
·事件传递系统122(分别在电子设备102和104中),在各个备选实施例中,事件传递系统122可在操作系统118内或者在应用软件124中实现;不过,在一些实施例中,事件传递系统122的一些方面可在操作系统118中实现,而其它方面可在应用软件124中实现;和
·分别在应用软件124中的一个或多个应用程序(例如,电子邮件应用程序,web浏览器应用程序,文本消息接发应用程序等等)。
每个上述元件可被保存在前面提及的存储设备中的一个或多个中,并且对应于实现这里说明的功能的一组指令。所述一组指令可由一个或多个处理器(例如,一个或多个CPU110)执行。上述模块或程序(即,指令集)不需要被实现成独立的软件程序、过程或模块,从而在各个实施例中,可以组合或者以其它方式重新排列这些模块的各个子集。在一些实施例中,存储器111可保存上面识别的模块和数据结构的子集。此外,存储器111可保存上面没有说明的另外的模块和数据结构。
图2是按照本发明的一些实施例的示例性电子设备或装置(例如,设备102或104)的输入/输出处理栈200的示图。设备的硬件(例如,电子电路)212处于输入/输出处理栈200的底层。硬件212可包括各种硬件接口组件,诸如在图1A和/或1B中描述的组件。硬件212还可包括上述传感器130中的一个或多个。输入/输出处理栈200的所有其它元件(202-210)是处理从硬件212接收的输入和产生通过硬件用户接口(例如,显示器,扬声器,设备振动促动器中的一个或多个)呈现的各种输出的软件过程,或者软件过程的各部分。
驱动器或一组驱动器210与硬件212通信。驱动器210能够接收和处理从硬件212接收的输入数据。核心操作系统(“OS”)208能够与驱动器(一个或多个)210通信。核心OS208能够处理从驱动器(一个或多个)210接收的原始输入数据。在一些实施例中,驱动器210可被认为是核心OS208的一部分。
一组OS应用编程接口(“OS API”)206是与核心OS208通信的软件过程。在一些实施例中,API206包含在设备的操作系统中,不过位于在核心OS208之上的层次。API206是为供在这里讨论的电子设备或装置上运行的应用程序使用而设计的。用户界面(UI)API204可利用OS API206。在设备上运行的应用软件(“应用程序”)202能够利用UI API204,以便与用户通信。UI API204又能够与层次较低的元件通信,最终与例如多触摸显示器156的各个用户接口硬件通信。
虽然每层输入/输出处理栈200能够利用在它下面的那层,不过并不总是要求如此。例如,在一些实施例中,应用程序202可以偶尔与OS API206通信。通常,在OS API层206或其之上的各层不能直接访问核心OS208,驱动器(一个或多个)210或硬件212,因为这些层被认为是专用的。层202中的应用程序和UI API204通常把调用引导到OS API206,OS API206再访问核心OS208,驱动器(一个或多个)210和硬件212各层。
换句话说,电子设备102或104的一个或多个硬件元件212,和在设备上运行的软件,诸如例如驱动器210(示于图2中),核心OS(操作系统)208(示于图2中),操作系统API软件206(示于图2中),及应用程序和用户界面API软件204(示于图2中)检测在一个或多个输入设备128和/或触摸敏感显示器156处的输入事件(其对应于姿态中的子事件),并生成或更新(保存在设备102或104的存储器中的)数据结构,一组当前活动的事件识别器利用所述数据结构判定输入事件是否和何时对应于待传递给应用程序202的事件。事件识别方法,设备和计算机程序产品的实施例在下面更详细说明。
图3A描述示例性的视图分层结构300,在本例中,视图分层结构300是显示在最外层视图302中的搜索程序。最外层视图302一般包含用户可以直接与之交互的整个用户界面,并包括从属视图,例如,
·搜索结果面板304,它对搜索结果分组,并且能够被垂直滚动;
·接受文本输入的搜索栏306;和
·对应用程序分组以便快速访问的主功能行(home row)310。
在本例中,每个从属视图包括较低层次的从属视图。在其它例子中,在分层结构的不同分枝中,分层结构300中的视图层次的数目可不同,一个或多个从属视图具有较低层次的从属视图,一个或多个其它从属视图没有任何这种较低层次的从属视图。继续图3A中所示的例子,搜索结果面板304包含每个搜索结果的独立从属视图305(从属于面板304)。这里,本例在称为地图视图305的从属视图中,显示一个搜索结果。搜索栏306包括这里称为清除内容图标视图307的从属视图,当用户对视图307中的清除内容图标执行特定动作(例如,单次触摸或轻击姿态)时,清除内容图标视图307清除搜索栏的内容。主功能行310包括分别对应于联系人应用程序,电子邮件应用程序,web浏览器和iPod音乐界面的从属视图310-1、310-2、310-3和310-4。
触摸子事件301-1表示在最外层视图302中。假定触摸子事件301-1的位置在搜索结果面板304和地图视图305之上,该触摸子事件还分别以301-2和301-3的形式表现在这些视图之上。该触摸子事件的主动涉及视图包括视图搜索结果面板304,地图视图305和最外层视图302。下面参考图3B和3C,提供关于子事件传递和主动涉及视图的其它信息。
视图(和对应的编程层次)可被嵌套。换句话说,视图可包括其它视图。从而,与第一视图相关的软件元件(一个或多个)(例如,事件识别器)可包括或者链接到与第一视图内的视图相关的一个或多个软件元件。虽然一些视图可与应用程序关联,不过,其它视图可与高层OS元件,诸如图形用户界面、窗口管理器等关联。
为了简化后续讨论,一般将只提及视图和视图分层结构,不过必须明白在一些实施例中,所述方法可使用具有多个编程层次的编程分层结构,和/或视图分层结构进行操作。
图3B和3C描述与事件识别器相关的示例性方法和结构。图3B描述当事件处理器与视图的分层结构内的特定视图相关时的事件处理用方法和数据结构。图3C描述当事件处理器与编程层次的分层结构内的特定层次相关时的事件处理用方法和数据结构。事件识别器全局方法312和350分别包括选中视图和选中层次判定模块314和352,活动事件识别器判定模块316和354,及子事件传递模块318和356。
选中视图和选中层次判定模块314和352分别提供用于判定在一个或多个视图,例如,图3A中描述的具有三个主要分枝的示例性视图分层结构300内,子事件发生在何处的软件过程。
图3B的选中视图判定模块314接收与子事件——例如,在最外层视图302,搜索结果(地图视图305)和搜索结果面板视图304上的表示成301-1的用户触摸——有关的信息。选中视图判定模块314把选中视图识别为分层结构中应处理该子事件的最底层视图。在多数情况下,选中视图是其中发生起始子事件(即,构成事件或潜在事件的子事件序列中的第一个子事件)的最底层视图。一旦选中视图被识别,那么它将接收与为其识别了该选中视图的相同触摸或输入源相关的所有子事件。
在一些实施例中,图3C的选中层次判定模块352可利用类似的进程。
事件识别器全局方法312和350的活动事件识别器判定模块316和354分别判定视图分层结构内的哪个或哪些视图应接收特定的子事件序列。图3A描述接收子事件301的一组示例性活动视图302、304和305。在图3A的例子中,活动事件识别器判定模块304会判定顶层视图302,搜索结果面板304和地图视图305是主动涉及视图,这是因为这些视图包含用子事件301表示的触摸的物理位置。注意即使触摸子事件301完全局限在与地图视图305相关的区域内,搜索结果面板304和顶层视图302仍会保留在主动涉及视图中,因为搜索结果面板304和顶层视图302是地图视图305的先辈。
在一些实施例中,活动事件识别器判定模块316和354利用类似的进程。
子事件传送模块318把子事件传递给主动涉及视图的事件识别器。以图3A的例子为例,用触摸标记301-1、301-2和301-3,在分层结构的不同视图中表示用户的触摸。在一些实施例中,表示该用户触摸的子事件数据由子事件传递模块318传递给在主动涉及视图——即,顶层视图302,搜索结果面板304和地图视图305——处的事件识别器。此外,视图的事件识别器能够接收开始于该视图内的事件的后续子事件(例如,当初始子事件发生于该视图内时)。换句话说,视图能够接收与在该视图内开始的用户交互相关的子事件,即使所述子事件是在该视图之外继续进行的。
在一些实施例中,在与子事件传递模块318使用的进程类似的进程中,子事件传递模块356把子事件传递给主动涉及编程层次的事件识别器。
在一些实施例中,为每个主动涉及的事件识别器生成独立的事件识别器结构320或360,并将其保存在设备的存储器中。事件识别器结构320和360一般分别包括事件识别器状态334、374(下面当参照图4A和4B时更详细说明)并且分别包括事件识别器特有代码338、378,事件识别器特有代码338、378分别具有状态机340、380。事件识别器结构320还包括视图分层结构参考336,而事件识别器结构360包括编程分层结构参考376。特定事件识别器的每个实例严格地参考一个视图或编程层次。(特定事件识别器的)视图分层结构参考336或编程分层结构参考376被用于确定哪个视图或编程层次在逻辑上与相应的事件识别器耦接。
视图元数据341和层次元数据381分别包括关于视图或层次的数据。视图元数据或层次元数据至少包括会影响对事件识别器的子事件传递的下述属性:
·停止属性342、382,当对视图或编程层次设定停止属性342、382时,该属性阻止向与视图或编程层次相关的事件识别器及其在视图或编程分层结构中的先辈传递子事件。
·跳过属性343、383,当对视图或编程层次设定跳过属性343、383时,该属性阻止向与视图或编程层次相关的事件识别器传递子事件,但是允许向其在视图或编程层次中的先辈传递子事件。
·NoHit(非选中)跳过属性344、384,当对视图设定NoHit跳过属性344、384时,该属性阻止向与该视图相关的事件识别器传递子事件,除非该视图是选中视图。如上所述,选中视图判定模块314把选中视图(或者在选中层次判定模块352的情况下为选中层次)识别为分层结构中应处理该子事件的最底层视图。
事件识别器结构320和360分别包括元数据322、362。在一些实施例中,元数据322、362包括指示事件传递系统应如何进行对主动涉及事件识别器的子事件传递的可配置属性、标记和列表。在一些实施例中,元数据322、362包括指示事件识别器如何相互交互的可配置属性、标记和列表。在一些实施例中,元数据322、362包括指示是否把子事件传递给视图或编程分层结构之中各不相同的层次的可配置属性、标记和列表。在一些实施例中,事件识别器元数据322、362和视图或层次元数据(分别为341、381)的组合可被用于配置事件传递系统:a)进行对主动涉及事件识别器的子事件传递,b)指示事件识别器如何相互交互,和c)指示子事件是否和何时被传递给视图或编程分层结构中的各个层次。
注意,在一些实施例中,相应的事件识别器把事件识别动作333、373发送给它的由事件识别器的结构320、360的字段指定的相应目标335、375。把动作发送给目标完全不同于把子事件发送(和延期发送)给相应的选中视图或层次。
保存在对应事件识别器的相应事件识别器结构320、360中的元数据属性至少包括:
·独占性标记324、364,当对事件识别器设定独占性标记324、364时,该标记指示一旦事件识别器识别到事件,事件传递系统应停止把子事件传递给主动涉及视图或编程层次的任何其它事件识别器(在例外列表326、366中列举的任何其它事件识别器除外)。当子事件的接收导致特定事件识别器进入独占状态(该独占状态由其对应的独占性标记324或364指示)时,那么后续子事件只被传递给处于独占状态的该事件识别器(以及在例外列表326、366中列举的任何其它事件识别器)。
一些事件识别器结构320、360可包括独占性例外列表326、366。当包含在相应事件识别器的事件识别器结构320、360中时,该列表326、366指示即使在相应的事件识别器已进入独占状态之后,也将继续接收子事件的一组事件识别器(如果有的话)。例如,如果单击事件的事件识别器进入独占状态,并且当前涉及的视图包括双击事件的事件识别器,那么列表320,360会列出双击事件识别器,以致即使在检测到单击事件之后,也能够识别双击事件。因而,独占性例外列表326、366允许事件识别器识别共享公共子事件序列的不同事件,例如,单击事件识别不排除其它事件识别器对双击或三击事件的后续识别。
·一些事件识别器结构320、360可包括等待列表327、367。当包含在相应事件识别器的事件识别器结构320、360中时,该列表327、367指示在相应的事件识别器能够识别相应事件之前,必须进入事件不可能状态或事件取消状态的一组事件识别器(如果有的话)。实际上,与具有等待列表327、367的事件识别器相比,列出的事件识别器具有更高的事件识别优先权。
·延迟触摸开始标记328、368,当对事件识别器设定延迟触摸开始标记328、368时,该标记使事件识别器延迟把子事件(包括触摸开始或手指向下子事件,和后续事件)发送给事件识别器的相应选中视图或层次,直到已判定子事件序列不对应于该事件识别器的事件种类之后为止。该标记可用于在已识别姿态的情况下,防止选中视图或层次不断查看任意子事件。当事件识别器未能识别事件时,触摸开始子事件(和后续的触摸结束子事件)可被传递给选中视图或层次。在一个例子中,向选中视图或层次传递这样的子事件使用户界面短暂地突出显示某个对象,而不调用与该对象相关的动作。
·延迟触摸结束标记330、370,当对事件识别器设定延迟触摸结束标记330、370时,该标记使事件识别器延迟把子事件(例如,触摸结束子事件)发送给事件识别器的相应选中视图或层次,直到已判定子事件序列不对应于该事件识别器的事件种类为止。该标记可用于在较迟识别姿态的情况下,防止选中视图或层次按照触摸结束子事件行动。只要未发送触摸结束子事件,就能够向选中视图或层次发送触摸取消。如果识别出事件,那么执行应用程序的对应动作,然后向选中视图或层次传递触摸结束子事件。
·触摸取消标记332、372,当对事件识别器设定触摸取消标记332、372时,当判定子事件序列不对应于该事件识别器的事件种类时,该标记使事件识别器向事件识别器的相应选中视图或选中层次发送触摸或输入取消。发送给选中视图或选中层次的触摸或输入取消指示在前的子事件(例如,触摸开始子事件)已被取消。触摸或输入取消可使输入源处理器的状态(参见图4B)进入输入序列取消状态460(下面讨论)。
在一些实施例中,非独占事件识别器也可使用例外列表326、366。特别地,当非独占事件识别器识别了事件时,后续子事件不被传递给与目前活动的视图相关的独占事件识别器,在识别该事件的事件识别器的例外列表326、366中列举的那些独占事件识别器除外。
在一些实施例中,事件识别器可被配置成一起利用触摸取消标记和延迟触摸结束标记以防止不需要的子事件被传递给选中视图。例如,单击姿态的定义和双击姿态的前半部分相同。一旦单击事件识别器成功地识别了单击,就可能发生不希望的动作。如果设定了延迟触摸结束标记,那么在单击事件被识别之前,可防止单击事件识别器向选中视图发送子事件。另外,单击事件识别器的等待列表可识别双击事件识别器,从而防止单击事件识别器识别单击,直到双击事件识别器已进入事件不可能状态为止。等待列表的使用可避免在进行双击姿态时,执行与单击相关的动作。相反,将响应于双击事件的识别,只执行与双击相关的动作。
下面特别说明在触摸敏感表面上的用户触摸的形式,如上所述,触摸和用户姿态可包括不必是瞬时的动作,例如,触摸可包括使手指贴着显示器移动或停留一段时间的动作。不过,触摸数据结构定义在特定时间的触摸的状态(或者更一般地,任何输入源的状态)。于是,保存在触摸数据结构中的值可随着单一触摸的进展而变化,从而使所述单一触摸在不同时刻的状态能够被传递给应用程序。
每个触摸数据结构可包含各种字段。在一些实施例中,触摸数据结构可包括至少对应于图3B的触摸特有字段339或图3C的输入源特有字段379的数据。
例如,图3B中的“对视图的初始触摸”字段345(图3C中的“对层次的初始触摸”字段385)可指示触摸数据结构是否定义对特定视图的初始触摸(因为例示了实现该视图的软件元件)。“时间戳”字段346、386可指示与触摸数据结构有关的特定时间。
可选地,“信息”字段347、387可用于指示触摸是否是基本触摸。例如,“信息”字段347、387可指示触摸是否是轻扫,如果是,那么所述轻扫朝向哪个方向。轻扫是一根或多根手指沿着直线方向的快速拖动。API实现(下面讨论)能够判定触摸是否是轻扫,并通过“信息”字段347、387,把该信息传给应用程序,从而使应用程序减少在触摸是轻扫的情况下一直以来必需的一些数据处理。
可选地,图3B中的“轻击计数”字段348(图3C中的“事件计数”字段388)可指示在初始触摸的位置,已顺序进行了多少次轻击。轻击可被定义成在特定位置,手指对触摸敏感面板的快速按下和抬起。如果在面板的相同位置快速地接连再次按下和松开手指,那么会发生多个连续轻击。事件传递系统124能够计数轻击,并通过“轻击计数”字段348把该信息传送给应用程序。在相同位置的多次轻击有时被认为是针对支持触摸的界面的有用且易于记忆的命令。从而,通过计数轻击,事件传递系统124能够再次从应用程序减轻一些数据处理。
“阶段”字段349、389可指示基于触摸的姿态目前处于的特定阶段。阶段字段349、389可具有各种值,诸如“触摸阶段开始”,“触摸阶段开始”指示触摸数据结构定义以前的触摸数据结构一直未涉及的新触摸。“触摸阶段移动”值可指示已定义的触摸已移离先前的位置。“触摸阶段固定”值可指示触摸一直停留在相同的位置。“触摸阶段结束”值可指示触摸已结束(例如,用户从多触摸显示器的表面抬起他/她的手指)。“触摸阶段取消”值可指示触摸已被设备取消。取消的触摸可以是不一定是由用户结束的,不过设备已决定忽略的触摸。例如,设备可判定触摸是非有意生成的(即,由于把便携式支持多触摸的设备放在口袋中而生成的),从而由于该原因而忽略该触摸。“阶段”字段349、389的每个值可以是整数。
从而,每个触摸数据结构可定义在特定时间,关于触摸(或者其它输入源)发生了什么事(例如,触摸是否固定不动,正在移动等等),以及与触摸相关的其它信息(诸如位置)。因而,每个触摸数据结构能够定义特定触摸在特定时刻的状态。涉及相同时间的一个或多个触摸数据结构可被添加到能够定义在某个时刻特定视图正在接收的所有触摸的状态的触摸事件数据结构中(如上所述,一些触摸数据结构也可涉及已结束,从而不再被接收的触摸)。随着时间的过去,多个触摸事件数据结构可被发送给实现视图的软件,以便向软件提供描述正在该视图中发生的触摸的连续信息。
处理复杂的基于触摸的姿态(视情况包括多触摸姿态)的能力会增大各个软件元件的复杂性。在一些情况下,这种额外的复杂性是实现高级的所需的界面特征所必需的。例如,游戏需要处理在不同视图中发生的多个并发触摸的能力,因为游戏常常需要在相同时间按下多个按钮,或者使加速计数据和在触摸敏感表面上的触摸相结合。不过,一些较简单的应用程序和/或视图(及它们的相关软件元件)不需要高级界面特征。例如,利用各单一触摸,而不是多触摸功能,就可令人满意地操作简单的软按钮(即,显示在触摸敏感显示器上的按钮)。在这些情况下,基础的OS可能向与预定可以仅仅用各单一触摸(例如,对软按钮的单一触摸或轻击)操作的视图相关的软件元件发送不必要或者过多的触摸数据(例如,多触摸数据)。由于软件元件需要处理该数据,因此需要描述处理多个触摸的软件元件的所有复杂性的特征,即使它与仅仅涉及各单一触摸的视图相关联。这会增大设备用软件的开发成本,因为传统上在鼠标界面环境(即,各种按钮等)中易于编程的软件元件在多触摸环境中会更加复杂。
不过应明白,关于评估和处理触摸敏感表面上的用户触摸的复杂性的上述讨论也适用于分别用输入设备128和158操作电子设备102和104的所有形式的用户输入(并非所有用户输入都始发于触摸屏上),例如,在有或没有单个或多个键盘按压或保持,触摸板上的用户移动、轻击、拖动、滚动等,铁笔输入,口头指令,检测到的眼睛运动,生物特征输入,检测到的用户生理变化,和/或它们的组合的情况下,协调鼠标移动和鼠标按钮按压,这些用户输入可用作为与定义要识别的事件的子事件对应的输入。
图4A描述包含4种状态的事件识别器状态机400。通过根据接收的子事件,管理事件识别器状态机400中的状态转变,事件识别器有效地表述事件定义。例如,可用一系列的两个子事件,或者视情况,三个子事件有效地定义轻击姿态。首先,应检测触摸,这将是子事件1。例如,触摸子事件可以是用户的手指触摸在包括具有状态机400的事件识别器的视图中的触摸敏感表面。其次,其间触摸基本上未沿任何方向移动(例如,触摸位置的任何移动都小于预先定义的阈值,所述阈值可被测定为距离(例如,5mm),或者测定为显示器上的像素数(例如,5个像素)),并且延迟足够短的可选测定延迟可充当子事件2。最后,触摸的终止(例如,用户手指从触摸敏感表面的抬起)将充当子事件3。通过把事件识别器状态机400编码成根据收到这些子事件,在各种状态之间转变,事件识别器状态机400有效地表述轻击姿态事件定义。
与事件种类无关,事件识别器状态机400从事件识别开始状态405开始,并且取决于收到什么子事件,可前进到任意的剩余状态。为了使事件识别器状态机400的讨论更容易,将讨论从事件识别开始状态405到事件被识别状态415,事件可能状态410和事件不可能状态420的直接路径,之后说明从事件可能状态410引出的路径。
从事件识别开始状态405开始,如果收到自身包括对于事件的事件定义的子事件,那么事件识别器状态机400将转变成事件被识别状态415。
从事件识别开始状态405开始,如果收到不是事件定义中的第一个子事件的子事件,那么事件识别器状态机400将转变成事件不可能状态420。
从事件识别开始状态405开始,如果收到为给定事件定义中的第一子事件,而不是最后一个子事件的子事件,那么事件识别器状态机400将转变成事件可能状态410。如果收到的下一个子事件是给定事件定义中的第二子事件,但不是最后一个子事件,那么事件识别器状态机400将保持事件可能状态410。只要收到的子事件序列依旧是该事件定义的一部分,事件识别器状态机400就可保持事件可能状态410。如果在任何时候,事件识别器状态机400处于事件可能状态410,而事件识别器状态机400收到不是该事件定义的一部分的子事件,那么事件识别器状态机400将转变成事件不可能状态420,从而判定当前事件(如果有的话)不是与该事件识别器(即,对应于状态400的事件识别器)对应的那种事件。另一方面,如果事件识别器状态机400处于事件可能状态410,并且事件识别器状态机400收到事件定义中的最后一个子事件,那么事件识别器状态机400将转变成事件被识别状态415,从而完成成功的事件识别。
图4B描述输入源处理进程440的一个实施例,输入源处理进程440具有表示视图如何接收关于相应输入的信息的有限状态机。注意当在设备的触摸敏感表面上存在多个触摸时,每个触摸是具有它自己的有限状态机的独立输入源。在本实施例中,输入源处理进程440包括四种状态:输入序列开始状态445,输入序列继续状态450,输入序列结束状态455和输入序列取消状态460。输入源处理进程440可被相应的事件识别器使用,例如,当输入将被传递给应用程序时,但是仅仅在检测到输入序列完成之后。输入源处理进程440可以和应用程序一起使用,该应用程序不能取消或撤消响应于传递给该应用程序的输入序列而产生的变化。
从输入序列开始状态445开始,如果收到独自完成输入序列的输入,那么输入源处理进程440将转变成输入序列结束状态455。
从输入序列开始状态445开始,如果收到指示输入序列被终止的输入,那么输入源处理进程440将转变成输入序列取消状态460。
从输入序列开始状态445开始,如果收到作为输入序列中的第一输入,而不是最后一个输入的输入,那么输入源处理进程440将转变成输入序列继续状态450。如果收到的下一个输入是输入序列中的第二输入,那么输入处理进程440将保持输入序列继续状态450。只要正在传递的子事件序列依旧是给定输入序列的一部分,输入源处理进程440就可保持在输入序列继续状态450。如果在任何时候,输入源处理进程440处于输入序列继续状态450,而输入源处理进程440收到不是该输入序列的一部分的输入,那么输入源处理进程440将转变成输入序列取消状态460。另一方面,如果输入源处理进程440处于输入序列继续状态450,并且输入源处理进程440收到给定输入定义中的最后一个输入,那么输入源处理进程440将转变成输入序列结束状态455,从而成功地接收一组子事件。
在一些实施例中,可为特定视图或编程层次实现输入源处理进程440。在这种情况下,某些子事件序列会导致转变到输入取消状态460。
例如,考虑图4C,图4C设想仅仅由主动涉及的视图输入源处理器480(下面称为“视图480”)表示的主动涉及视图。视图480包括垂直轻扫事件识别器,其仅仅由作为其事件识别器之一的垂直轻扫事件识别器468(下面称为“识别器468)”表示。在这种情况下,作为其定义的一部分,识别器468要求检测:1)手指向下465-1;2)可选的短延迟465-2;3)至少N个像素的垂直轻扫465-3;和4)手指抬起465-4。
对本例来说,识别器468还使其延迟触摸开始标记328和触摸取消标记332被设定。现在考虑传递给识别器468以及视图480的下述子事件序列:
·子事件序列465-1:检测手指向下,它对应于识别器468的事件定义
·子事件序列465-2:测量延迟,它对应于识别器468的事件定义
·子事件序列465-3:手指进行与垂直滚动相容,但是小于N个像素,因而不对应于识别器468的事件定义的垂直轻扫移动
·子事件序列465-4:检测手指抬起,它对应于识别器468的事件定义
这里,识别器468会成功地把子事件1和2识别成其事件定义的一部分,因而紧接在子事件3的传递之前,会处于事件可能状态472。由于识别器468使其延迟触摸开始标记328被设定,因此,初始的触摸子事件不被发送给选中视图。相应地,在子事件3的传递之前,视图480的输入源处理进程440会仍然处于输入序列开始状态。
一旦完成向识别器468传递子事件3,识别器468的状态就转变成事件不可能状态476,重要的是,识别器468现在已判定该子事件序列不对应于它特有的垂直轻扫姿态事件种类(即,它已确定该事件不是垂直轻扫。换句话说,在本例中,不会发生作为垂直轻扫的识别474)。视图输入源处理器480的输入源处理系统440也将更新其状态。在一些实施例中,当事件识别器发送指示它已开始识别事件的状态信息时,视图输入源处理器480的状态会从输入序列开始状态482进入输入序列继续状态484。当在没有事件被识别出的情况下,结束触摸或输入时,视图输入源处理器480进入输入序列取消状态488,这是因为已设定了事件识别器的触摸取消标记322。另一方面,如果事件识别器的触摸取消标记322未被设定,那么当触摸或输入结束时,视图输入源处理器480进入输入序列结束状态486。
由于事件识别器468的触摸取消标记322被设定,因此当事件识别器468转变成事件不可能状态476时,该识别器将向与该事件识别器对应的选中视图发送触摸取消子事件或消息。结果,视图输入源处理器480将转变成输入序列取消状态488。
在一些实施例中,子事件465-4的传递并不与识别器468做出的任何事件识别决定关系密切,尽管视图输入源处理器480的其它事件识别器(如果有的话)可继续分析子事件序列。
下表以汇总表格的格式,给出了与上面说明的事件识别器468的状态以及视图输入源处理器480的状态相关的示例性子事件序列465的处理。在本例中,由于识别器468的触摸取消标记332被设定,因此视图输入源处理器480的状态从输入序列开始状态445进入输入序列取消状态488:
子事件序列465 状态:识别器468 状态:视图480
传递开始之前 事件识别开始470
检测手指向下465-1 事件可能472 输入序列开始482
测量延迟46-2 事件可能472 输入序列继续484
检测手指垂直轻扫465-3 事件不可能476 输入序列继续484
检测手指抬起465-4 事件不可能476 输入序列取消488
参见图5A,仔细考虑正由包括多个事件识别器的视图接收的子事件序列520的例子。对本例来说,在图5A中描述了两个事件识别器,滚动事件识别器580和轻击事件识别器590。为了便于举例说明,使图3A中的视图搜索结果面板304与子事件序列520的接收,及滚动事件识别器580和轻击事件识别器590中的状态转变相联系。注意在本例中,子事件序列520定义在触摸敏感显示器或触控板上的轻击手指姿态,不过,相同的事件识别技术可以应用在无数的上下文(例如,检测鼠标按钮按下)中,和/或应用在利用各编程层次的编程分层结构的实施例中。
在第一子事件被传递给视图搜索结果面板304之前,事件识别器580和590分别处于事件识别开始状态582和592。在触摸301之后(触摸301作为检测手指向下子事件521-1被传递给视图搜索结果面板304的主动涉及事件识别器,作为触摸子事件301-2(以及被传递给地图视图305的主动涉及事件识别器,作为触摸子事件301-3),滚动事件识别器580转变成事件可能状态584,类似地,轻击事件识别器590转变成事件可能状态594。这是因为轻击和滚动的事件定义都从触摸敏感表面上的触摸开始,诸如检测手指向下。
轻击和滚动姿态的一些定义可视情况包括初始触摸和事件定义中的任何下一步之间的延迟。在这里讨论的所有例子中,轻击和滚动姿态的示例性事件定义识别在第一触摸子事件(检测手指向下)之后的延迟子事件。
因而,当测量延迟子事件521-2被传递给事件识别器580和590时,事件识别器580和590都分别保持事件可能状态584和594。
最后,检测手指抬起子事件521-3被传递给事件识别器580和590。在这种情况下,因为关于轻击和滚动的事件定义不同,所以事件识别器580和590的状态转变不同。就滚动事件识别器580来说,保持在事件可能状态的下一个子事件应是检测移动。不过,由于传递的子事件是检测手指抬起521-3,因此滚动事件识别器580转变成事件不可能状态588。不过,轻击事件定义结束于手指抬起子事件。因而,在传递了检测手指抬起子事件521-3之后,轻击事件识别器590转变成事件识别状态596。
注意在一些实施例中,如上关于图4B和4C所述,在图4B中讨论的输入源处理进程440可在视图层次用于各种目的。下表以汇总表格的格式给出了与事件识别器580、590和输入源处理进程440相关的子事件序列520的传递:
参见图5B,仔细考虑正由包括多个事件识别器的视图接收的子事件序列530的另一个例子。对本例来说,在图5B中描述了两个事件识别器,滚动事件识别器580和轻击事件识别器590。为了便于举例说明,使图3A中的视图搜索结果面板304与子事件序列530的接收,以及滚动事件识别器580和轻击事件识别器590中的状态转变相联系。注意在本例中,子事件序列530定义在触摸敏感显示器上的滚动手指姿态,不过,相同的事件识别技术可以应用在无数的上下文(例如,检测鼠标按钮按下,鼠标移动和鼠标按钮释放)中,和/或应用在利用各编程层次的编程分层结构的实施例中。
在第一子事件被传递给视图搜索结果面板304的主动涉及事件识别器之前,事件识别器580和590分别处于事件识别开始状态582和592。在对应于触摸301的子事件的传递之后(如上所述),滚动事件识别器580转变成事件可能状态584,类似地,轻击事件识别器590转变成事件可能状态594。
当测量延迟子事件531-2被传递给事件识别器580和590时,事件识别器580和590都分别转变成事件可能状态584和594。
之后,检测手指移动子事件531-3被传递给事件识别器580和590。在这种情况下,因为关于轻击和滚动的事件定义不同,所以事件识别器580和590的状态转变不同。就滚动事件识别器580来说,保持在事件可能状态的下一个子事件是检测移动,从而当滚动事件识别器580收到检测手指移动子事件531-3时,它保持在事件可能状态584。不过,如上所述,轻击的定义结束于手指抬起子事件,从而轻击事件识别器590转变成事件不可能状态598。
最后,检测手指抬起子事件531-4被传递给事件识别器580和590。轻击事件识别器已处于事件不可能状态598,从而不发生任何状态转变。滚动事件识别器580的事件定义结束于检测到手指抬起。由于传递的子事件是检测手指抬起子事件531-4,因此滚动事件识别器580转变成事件被识别状态586。注意,触摸敏感表面上的手指移动会产生多个移动子事件,于是,在抬起之前,并且持续到抬起为止,可识别滚动。
下表以汇总表格的格式,给出了与事件识别器580、590和输入源处理进程440相关的子事件序列530的传递:
参见图5C,仔细考虑正由包括多个事件识别器的视图接收的子事件序列540的另一个例子。对本例来说,在图5C中描述了两个事件识别器,双击事件识别器570和轻击事件识别器590。为了便于举例说明,使图3A中的地图视图305与子事件序列540的接收,及双击事件识别器570和轻击事件识别器590中的状态转变相联系。注意在本例中,子事件序列540定义在触摸敏感显示器上的双击姿态,不过,相同的事件识别技术可以应用在无数的上下文(例如,检测鼠标双击)中,和/或应用在利用各编程层次的编程分层结构的实施例中。
在第一子事件被传递给地图视图305的主动涉及事件识别器之前,事件识别器570和590分别处于事件识别开始状态572和592。在与触摸子事件301相关的子事件被传递给地图视图304之后(如上所述),双击事件识别器570和轻击事件识别器590分别转变成事件可能状态574和594。这是因为轻击和双击的事件定义都从触摸敏感表面上的诸如检测手指向下之类的触摸开始。
当测量延迟子事件541-2被传递给事件识别器570和590之后,事件识别器570和590都分别保持在事件可能状态574和594。
之后,检测手指抬起子事件541-3被传递给事件识别器570和590。在这种情况下,因为关于轻击和双击的示例性事件定义不同,所以事件识别器570和590的状态转变不同。就轻击事件识别器590来说,事件定义中的最终子事件是检测手指抬起,从而轻击事件识别器590转变成事件被识别状态596。
不过,由于延迟已开始,因此双击识别器570保持在事件可能状态574,而不管用户最终会做什么。可是,双击的完整事件识别定义需要后面是完整的轻击子事件序列的另一个延迟。这造成像已处于事件被识别状态576的轻击事件识别器590,和仍然处于事件可能状态574的双击识别器570之间的含糊情形。
因而,在一些实施例中,事件识别器可以实现如上关于图3B和3C讨论的独占性标记和独占性例外列表。这里,轻击事件识别器590的独占性标记324会被设定,另外,轻击事件识别器590的独占性例外列表326会被配置成在轻击事件识别器590进入事件被识别状态596之后,继续允许把子事件传递给某些事件识别器(诸如双击事件识别器570)。
在轻击事件识别器590保持在事件被识别状态596的同时,子事件序列540继续被传递给双击事件识别器570,这种情况下,测量延迟子事件541-1检测手指向下541-5和测量延迟541-6,使双击事件识别器570保持在事件可能状态574;序列540的最后子事件的传递,检测手指抬起541-7使双击事件识别器570转变成事件被识别状态576。
此时,地图视图305采用事件识别器570识别的双击事件,而不是轻击事件识别器590识别的单击事件。采用双击事件的决定是综合考虑到轻击事件识别器590的独占性标记324被设定,轻击事件识别器590的包括双击事件的独占性例外列表326,及轻击事件识别器590和双击事件识别器570都成功地识别它们各自的事件种类的事实做出的。
下表以汇总表格的格式,给出了与事件识别器570、590和子事件处理进程440相关的子事件序列540的传递:
在另一个实施例中,在图5C的事件情形下,单击姿态不被识别,因为单击事件识别器具有识别双击事件识别器的等待列表。结果,在双击事件识别器进入事件不可能状态之前(如果发生过的话),单击姿态不被识别。在其中双击姿态被识别的这个例子中,单击事件识别器会保持在事件可能状态,直到识别出双击姿态为止,此时,单击事件识别器会转变成事件不可能状态。
现在仔细考虑图6A和6B,图6A和6B是图解说明按照一些实施例的事件识别方法的流程图。在电子设备处执行方法600,在一些实施例中,该电子设备可以是电子设备102或104,如上所述。在一些实施例中,电子设备可包括被配置成检测多触摸姿态的触摸敏感表面。另一方面,电子设备可包括被配置成检测多触摸姿态的触摸屏。
方法600被配置成执行包括具有多个视图的视图分层结构的软件。方法600显示608视图分层结构的一个或多个视图,执行610一个或多个软件元件。每个软件元件与特定视图关联,每个特定视图包括一个或多个事件识别器,诸如在图3B和3C中分别作为事件识别器结构320和360说明的那些事件识别器。
每个事件识别器通常包括基于一个或多个子事件的事件定义,其中事件定义可被实现成状态机,例如参见图3B的状态机340。事件识别器通常还包括事件处理器,事件处理器规定关于目标的动作,并被配置成响应于事件识别器检测到与事件定义对应的事件,把动作发送给目标。
在一些实施例中,多个事件识别器中的至少一个是具有姿态定义和姿态处理器的姿态识别器,如在图6A的步骤612中所示。
在一些实施例中,事件定义定义用户姿态,如在图6A的步骤614中所示。
另一方面,事件识别器具有一组事件识别状态616。这些事件识别状态至少包括事件可能状态,事件不可能状态和事件被识别状态。
在一些实施例中,如果事件识别器进入事件可能状态,那么事件处理器开始其对应动作的准备618,以便传递给目标。如上关于图4A和图5A-5C中的例子所述,为每个事件识别器实现的状态机通常包括初始状态,例如,事件识别开始状态405。收到构成事件定义的初始部分的子事件会触发到事件可能状态410的状态改变。因而,在一些实施例中,当事件识别器从事件识别开始状态405转变成事件可能状态410时,事件识别器的事件处理器开始准备其特定动作,以便在成功识别事件之后,传递给事件识别器的目标。
另一方面,在一些实施例中,如果事件识别器进入事件不可能状态620,那么事件处理器可以终止其对应对作的准备620。在一些实施例中,终止对应动作包括取消事件处理器的对应动作的任何准备。
图5B的例子提供了这种实施例的信息,因为轻击事件识别器590可能已开始其动作的准备618,不过随后,一旦检测手指移动子事件531-3被传递给轻击事件识别器590,识别器590就转变成事件不可能状态598、578。此时,轻击事件识别器590会终止它已开始为其做准备618的动作的准备620。
在一些实施例中,如果事件识别器进入事件被识别状态,那么事件处理器完成其对应动作的准备622,以便传递给目标。图5C的例子图解说明了这种实施例,因为地图视图305的主动涉及事件识别器识别出双击,在一些实现中,所述双击会是开始选择和/或执行地图视图305描述的搜索结果的事件。这里,在双击事件识别器570成功识别由子事件序列540构成的双击事件之后,地图视图305的事件处理器完成其动作的准备622,即,指示它已收到激活命令。
在一些实施例中,事件处理器把其对应动作传递624给与事件识别器相关的目标。继续图5C的例子,准备的动作,即,地图视图305的激活命令会被传递给与地图视图305相关的特定目标,所述目标可以是任何适当的编程方法或对象。
另一方面,多个事件识别器可以并行地独立处理626一个或多个子事件的序列。
在一些实施例中,一个或多个事件识别器可被配置成独占事件识别器628,如上分别关于图3B和3C的独占性标记324和364所述。当事件识别器被配置成独占事件识别器时,在独占事件识别器识别了事件之后,事件传递系统阻止视图分层结构中的主动涉及视图的任何其它事件识别器(在识别该事件的事件识别器的例外列表326、366中列举的那些事件识别器除外)接收(相同子事件序列的)后续子事件。此外,当非独占事件识别器识别了事件时,事件传递系统阻止视图分层结构中的主动涉及视图的任何独占事件识别器接收后续子事件,除识别该事件的事件识别器的例外列表326、366中列举的那些事件识别器之外(如果有的话)。
在一些实施例中,独占事件识别器可包括630事件例外列表,如上分别关于图3B和3C的独占性例外列表326和366所述。如上在图5C的讨论中所述,事件识别器的独占性例外列表可用于允许事件识别器继续事件识别,即使当构成它们各自的事件定义的子事件序列重叠时也是如此。因而,在一些实施例中,事件例外列表包括其对应的事件定义具有重复子事件的事件632,诸如图5C的单击/双击事件例子。
另一方面,事件定义可定义用户输入操作634。
在一些实施例中,一个或多个事件识别器可适合于把子事件序列的每个子事件的传递推迟到事件被识别之后。
方法600检测636一个或多个子事件的序列,在一些实施例中,一个或多个子事件的序列可包括原始的触摸事件638。原始的触摸事件可包括但不限于触摸敏感表面上的基于触摸的姿态的基本组成,诸如与初始手指或铁笔向下触摸相关的数据,与在触摸敏感表面内开始移动多根手指或铁笔相关的数据,两根手指沿相反方向的移动,从触摸敏感表面提起铁笔,等等。
一个或多个子事件的序列中的子事件可包括多种形式,包括但不限于按键按下,按键按下并保持,按键按下释放,按钮按下,按钮按下并保持,按钮按下释放,操纵杆移动,鼠标移动,鼠标按钮按下,鼠标按钮释放,铁笔触摸,铁笔移动,铁笔释放,口头指令,检测的眼睛运动,生物特征输入,和检测的用户生理变化,等等。
方法600识别640视图分层结构的视图之一作为选中视图。选中视图确定视图分层结构中的哪些视图是主动涉及视图。图3A中描述了一个例子,其中主动涉及视图306包括搜索结果面板304和地图视图305,因为触摸子事件301接触与地图视图305相关的区域。
在一些实施例中,视图分层结构内的第一个主动涉及视图可被配置成642阻止向与所述第一个主动涉及视图相关的事件识别器传递相应子事件。这种行为能够实现上面关于图3B和3C讨论的跳过属性(分别为330和370)。当为事件识别器设定了跳过属性时,对于与视图分层结构中的其它主动涉及视图相关的事件识别器,仍然进行相应子事件的传递。
另一方面,视图分层结构内的第一个主动涉及视图可被配置成644阻止向与所述第一个主动涉及视图相关的事件识别器传递相应子事件,除非所述第一个主动涉及视图是选中视图。这种行为能够实现上面关于图3B和3C讨论的有条件跳过属性(分别为332和372)。
在一些实施例中,视图分层结构内的第二个主动涉及视图被配置成646阻止向与第二个主动涉及视图相关的事件识别器和向与第二个主动涉及视图的先辈相关的事件识别器传递相应子事件。这种行为能够实现上面关于图3B和3C讨论的停止属性(分别为328和368)。
方法600把相应子事件传递给648视图分层结构内的每个主动涉及视图的事件识别器。在一些实施例中,视图分层结构中的主动涉及视图的事件识别器处理相应子事件,之后处理子事件序列中的下一个子事件。另一方面,视图分层结构内的主动涉及视图的事件识别器在处理相应子事件的同时,做出它们的子事件识别判定。
在一些实施例中,视图分层结构中的主动涉及视图的事件识别器可同时处理一个或多个子事件的序列650;另一方面,视图分层结构中的主动涉及视图的事件识别器可并行处理一个或多个子事件的序列。
在一些实施例中,一个或多个事件识别器可适合于推迟传递652子事件序列的一个或多个子事件,直到在所述事件识别器识别了该事件之后为止。这种行为反映延迟的事件。例如,考虑在对其来说可能存在多种轻击姿态的视图中的单击姿态。在这种情况下,轻击事件变成“轻击+延迟”识别器。本质上,当事件识别器实现这种行为时,该事件识别器将延迟事件识别,直到肯定子事件的序列确实对应于其事件定义为止。当接受方视图不能恰当地对取消事件作出响应时,这种行为是适当的。在一些实施例中,事件识别器将延迟更新相对于其相应的主动涉及视图的其事件识别状态,直到事件识别器确定子事件的序列不对应于其事件定义为止。如上关于图3B和3C所述,设置了延迟触摸开始标记328、368,延迟触摸结束标记330、370,和触摸取消标记332、372,以使子事件传递技术以及事件识别器和视图状态信息更新适应特定需要。
为了便于解释,参考具体实施例说明了上述描述。但是,上面的说明性讨论并非意图是详尽的,也并非意图把本发明局限于公开的具体形式。鉴于上面的教导,许多修改和变化都是可能的。为了最佳地解释本发明的原理及其实际应用,选择和说明了上述实施例,以使本领域的技术人员能够最好地利用本发明,以及具有适合于预期的特殊用途的各种修改的各个实施例。

Claims (15)

1.一种方法,包括:
在被配置成执行包括具有多个视图的视图分层结构的软件的电子设备处:
至少显示所述多个视图中的第一视图;
检测在所述第一视图处的一个或多个子事件,其中:
所述多个视图包括两个或更多个姿态识别器,所述两个或更多个姿态识别器包括在所述第一视图中的第一姿态识别器;
所述两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且
所述第一姿态识别器与识别一组姿态识别器的等待列表关联,其中所述第一姿态识别器被配置成仅在所述一组姿态识别器中的每个姿态识别器进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态之后,识别所述一个或多个子事件;
确定所述一组姿态识别器中的所述姿态识别器是否已经进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态;以及
根据对所述一组姿态识别器中的所述姿态识别器已经进入所述多个预定状态中的所述相应状态的确定,用所述第一姿态识别器识别所述一个或多个子事件。
2.根据权利要求1所述的方法,其中所述第一视图确定所述视图分层结构中的哪些视图是主动涉及视图,并且所述主动涉及视图包括所述两个或更多个姿态识别器。
3.根据权利要求1所述的方法,其中:
所述一个或多个子事件包括触摸开始子事件;并且
所述第一姿态识别器与延迟触摸开始标记相关联,所述延迟触摸开始标记当被设定时,使得延迟把所述一个或多个子事件的所述触摸开始子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
4.根据权利要求1所述的方法,其中:
所述一个或多个子事件包括触摸结束子事件;并且
所述第一姿态识别器与延迟触摸结束标记相关联,所述延迟触摸结束标记当被设定时,使得延迟把所述一个或多个子事件的触摸结束子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
5.根据权利要求4所述的方法,还包括把触摸取消事件发送到所述第一视图。
6.一种电子设备,包括:
显示器;
一个或多个处理器;以及
存储器,所述存储器存储包括具有多个视图的视图分层结构的软件和指令,所述指令当由所述一个或多个处理器执行时使所述电子设备执行包括如下各项的方法:
至少显示所述多个视图中的第一视图;
检测在所述第一视图处的一个或多个子事件,其中:
所述多个视图包括两个或更多个姿态识别器,所述两个或更多个姿态识别器包括在所述第一视图中的第一姿态识别器;
所述两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且
所述第一姿态识别器与识别一组姿态识别器的等待列表关联,其中所述第一姿态识别器被配置成仅在所述一组姿态识别器中的每个姿态识别器进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态之后,识别所述一个或多个子事件;
确定所述一组姿态识别器中的所述姿态识别器是否已经进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态;以及
根据对所述一组姿态识别器中的所述姿态识别器已经进入所述多个预定状态中的所述相应状态的确定,用所述第一姿态识别器识别所述一个或多个子事件。
7.根据权利要求6所述的设备,其中所述第一视图确定所述视图分层结构中的哪些视图是主动涉及视图,并且所述主动涉及视图包括所述两个或更多个姿态识别器。
8.根据权利要求6所述的设备,其中:
所述一个或多个子事件包括触摸开始子事件;并且
所述第一姿态识别器与延迟触摸开始标记相关联,所述延迟触摸开始标记当被设定时,使得延迟把所述一个或多个子事件的所述触摸开始子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
9.根据权利要求6所述的设备,其中:
所述一个或多个子事件包括触摸结束子事件;并且
所述第一姿态识别器与延迟触摸结束标记相关联,所述延迟触摸结束标记当被设定时,使得延迟把所述一个或多个子事件的触摸结束子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
10.根据权利要求9所述的设备,其中所述一个或多个程序包括用于把触摸取消事件发送到所述第一视图的指令。
11.一种非瞬态计算机可读存储介质,存储包括具有多个视图的视图分层结构的软件和用于由电子设备的一个或多个处理器执行的指令,所述指令用于:
至少显示所述多个视图中的第一视图;
检测在所述第一视图处的一个或多个子事件,其中:
所述多个视图包括两个或更多个姿态识别器,所述两个或更多个姿态识别器包括在所述第一视图中的第一姿态识别器;
所述两个或更多个姿态识别器中的每个姿态识别器被配置成在多个预定状态之间转变;并且
所述第一姿态识别器与识别一组姿态识别器的等待列表关联,其中所述第一姿态识别器被配置成仅在所述一组姿态识别器中的每个姿态识别器进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态之后,识别所述一个或多个子事件;
确定所述一组姿态识别器中的所述姿态识别器是否已经进入所述多个预定状态中的指示所述姿态识别器还没有识别出所述一个或多个子事件的相应状态;以及
根据对所述一组姿态识别器中的所述姿态识别器已经进入所述多个预定状态中的所述相应状态的确定,用所述第一姿态识别器识别所述一个或多个子事件。
12.根据权利要求11所述的非瞬态计算机可读存储介质,其中所述第一视图确定所述视图分层结构中的哪些视图是主动涉及视图,并且所述主动涉及视图包括所述两个或更多个姿态识别器。
13.根据权利要求11所述的非瞬态计算机可读存储介质,其中:
所述一个或多个子事件包括触摸开始子事件;并且
所述第一姿态识别器与延迟触摸开始标记相关联,所述延迟触摸开始标记当被设定时,使得延迟把所述一个或多个子事件的所述触摸开始子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
14.根据权利要求11所述的非瞬态计算机可读存储介质,其中:
所述一个或多个子事件包括触摸结束子事件;并且
所述第一姿态识别器与延迟触摸结束标记相关联,所述延迟触摸结束标记当被设定时,使得延迟把所述一个或多个子事件的触摸结束子事件发送给所述第一视图,直到所述第一姿态识别器进入所述多个预定状态中的指示所述第一姿态识别器还没有识别出所述一个或多个子事件的相应状态之后为止。
15.根据权利要求14所述的非瞬态计算机可读存储介质,其中所述一个或多个程序包括用于把触摸取消事件发送到所述第一视图的指令。
CN201410299324.XA 2009-03-16 2010-03-12 事件识别 Active CN104035717B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US21033209P 2009-03-16 2009-03-16
US61/210,332 2009-03-16
US12/566,660 2009-09-24
US12/566,660 US8285499B2 (en) 2009-03-16 2009-09-24 Event recognition
CN201080020598.0A CN102422264B (zh) 2009-03-16 2010-03-12 事件识别

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201080020598.0A Division CN102422264B (zh) 2009-03-16 2010-03-12 事件识别

Publications (2)

Publication Number Publication Date
CN104035717A true CN104035717A (zh) 2014-09-10
CN104035717B CN104035717B (zh) 2017-04-12

Family

ID=42731388

Family Applications (4)

Application Number Title Priority Date Filing Date
CN201410299526.4A Active CN104049975B (zh) 2009-03-16 2010-03-12 事件识别
CN201410299324.XA Active CN104035717B (zh) 2009-03-16 2010-03-12 事件识别
CN201080020598.0A Active CN102422264B (zh) 2009-03-16 2010-03-12 事件识别
CN201410299325.4A Active CN104035718B (zh) 2009-03-16 2010-03-12 事件识别

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201410299526.4A Active CN104049975B (zh) 2009-03-16 2010-03-12 事件识别

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201080020598.0A Active CN102422264B (zh) 2009-03-16 2010-03-12 事件识别
CN201410299325.4A Active CN104035718B (zh) 2009-03-16 2010-03-12 事件识别

Country Status (9)

Country Link
US (5) US8285499B2 (zh)
EP (2) EP2409222A2 (zh)
JP (5) JP5594914B2 (zh)
KR (1) KR101278346B1 (zh)
CN (4) CN104049975B (zh)
AU (1) AU2010226120B2 (zh)
CA (4) CA2817648C (zh)
DE (1) DE112010001143T5 (zh)
WO (1) WO2010107669A2 (zh)

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9529440B2 (en) * 1999-01-25 2016-12-27 Apple Inc. Disambiguation of multitouch gesture recognition for 3D interaction
US9256356B2 (en) * 2001-03-29 2016-02-09 International Business Machines Corporation Method and system for providing feedback for docking a content pane in a host window
US7844915B2 (en) 2007-01-07 2010-11-30 Apple Inc. Application programming interfaces for scrolling operations
US20080168478A1 (en) 2007-01-07 2008-07-10 Andrew Platzer Application Programming Interfaces for Scrolling
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US8416196B2 (en) 2008-03-04 2013-04-09 Apple Inc. Touch event model programming interface
US8174502B2 (en) 2008-03-04 2012-05-08 Apple Inc. Touch event processing for web pages
US8717305B2 (en) 2008-03-04 2014-05-06 Apple Inc. Touch event model for web pages
US8463430B2 (en) * 2008-10-23 2013-06-11 Utique, Inc Interactive and 3-D multi-senor touch selection interface for an automated retail store, vending machine, digital sign, or retail display
US9684521B2 (en) 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8285499B2 (en) 2009-03-16 2012-10-09 Apple Inc. Event recognition
US8566044B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US9311112B2 (en) * 2009-03-16 2016-04-12 Apple Inc. Event recognition
US9223590B2 (en) * 2010-01-06 2015-12-29 Apple Inc. System and method for issuing commands to applications based on contextual information
US20110214092A1 (en) * 2010-02-26 2011-09-01 Siemens Product Lifecycle Management Software Inc. System and Method for Management of User Interactions Using Configurable Listeners in a Data Processing System
US8776091B2 (en) * 2010-04-30 2014-07-08 Microsoft Corporation Reducing feedback latency
US10216408B2 (en) 2010-06-14 2019-02-26 Apple Inc. Devices and methods for identifying user interface objects based on view hierarchy
US9104306B2 (en) * 2010-10-29 2015-08-11 Avago Technologies General Ip (Singapore) Pte. Ltd. Translation of directional input to gesture
US20120131513A1 (en) * 2010-11-19 2012-05-24 Microsoft Corporation Gesture Recognition Training
AU2015203638B2 (en) * 2010-12-20 2016-11-17 Apple Inc. Event recognition
CN203287883U (zh) * 2010-12-20 2013-11-13 苹果公司 电子设备及其信息处理装置
EP3258366B1 (en) * 2010-12-20 2021-12-08 Apple Inc. Event recognition
JP5885309B2 (ja) * 2010-12-30 2016-03-15 トムソン ライセンシングThomson Licensing ジェスチャ認識のためのユーザ・インタフェース、装置および方法
US20120196540A1 (en) * 2011-02-02 2012-08-02 Cisco Technology, Inc. Method and apparatus for a bluetooth-enabled headset with a multitouch interface
US9298363B2 (en) 2011-04-11 2016-03-29 Apple Inc. Region activation for touch sensitive surface
US9604542B2 (en) * 2011-04-20 2017-03-28 Harman Becker Automotive Systems Gmbh I/O device for a vehicle and method for interacting with an I/O device
US20120278712A1 (en) * 2011-04-27 2012-11-01 Microsoft Corporation Multi-input gestures in hierarchical regions
US8793624B2 (en) * 2011-05-18 2014-07-29 Google Inc. Control of a device using gestures
US8713482B2 (en) * 2011-07-28 2014-04-29 National Instruments Corporation Gestures for presentation of different views of a system diagram
US8782525B2 (en) 2011-07-28 2014-07-15 National Insturments Corporation Displaying physical signal routing in a diagram of a system
US20130036377A1 (en) * 2011-08-05 2013-02-07 Nokia Corporation Controlling responsiveness to user inputs
US9417754B2 (en) 2011-08-05 2016-08-16 P4tents1, LLC User interface system, method, and computer program product
US8971572B1 (en) 2011-08-12 2015-03-03 The Research Foundation For The State University Of New York Hand pointing estimation for human computer interaction
US9621409B2 (en) 2011-09-15 2017-04-11 Oracle International Corporation System and method for handling storage events in a distributed data grid
US20130179844A1 (en) * 2012-01-06 2013-07-11 Mirko Mandic Input Pointer Delay
US9575652B2 (en) 2012-03-31 2017-02-21 Microsoft Technology Licensing, Llc Instantiable gesture objects
CN104471521B (zh) 2012-05-09 2018-10-23 苹果公司 用于针对改变用户界面对象的激活状态来提供反馈的设备、方法和图形用户界面
EP3185116B1 (en) 2012-05-09 2019-09-11 Apple Inc. Device, method and graphical user interface for providing tactile feedback for operations performed in a user interface
WO2013169846A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for displaying additional information in response to a user contact
CN104487928B (zh) 2012-05-09 2018-07-06 苹果公司 用于响应于手势而在显示状态之间进行过渡的设备、方法和图形用户界面
WO2013169865A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for moving a user interface object based on an intensity of a press input
US20130325832A1 (en) * 2012-05-31 2013-12-05 Microsoft Corporation Presenting search results with concurrently viewable targets
JPWO2013191028A1 (ja) 2012-06-22 2016-05-26 ソニー株式会社 検知装置、検知方法、及びプログラム
US9507513B2 (en) 2012-08-17 2016-11-29 Google Inc. Displaced double tap gesture
JP5700020B2 (ja) * 2012-10-10 2015-04-15 コニカミノルタ株式会社 画像処理装置、プログラム及び操作イベント判別方法
CN103729172A (zh) * 2012-10-12 2014-04-16 英业达科技有限公司 避免触控事件被拦截以触发给多元件执行的系统及其方法
CN103838502B (zh) * 2012-11-22 2018-04-27 腾讯科技(深圳)有限公司 一种滑动识别方法和装置
US20140149916A1 (en) 2012-11-28 2014-05-29 SoMo Audience Corp. Content manipulation using swipe gesture recognition technology
EP2939098B1 (en) 2012-12-29 2018-10-10 Apple Inc. Device, method, and graphical user interface for transitioning between touch input to display output relationships
KR102000253B1 (ko) 2012-12-29 2019-07-16 애플 인크. 사용자 인터페이스 계층을 내비게이션하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US9092527B2 (en) * 2013-01-30 2015-07-28 Quixey, Inc. Performing application search based on entities
TWM471654U (zh) * 2013-02-07 2014-02-01 Asustek Comp Inc 可攜式電子裝置
US9733716B2 (en) 2013-06-09 2017-08-15 Apple Inc. Proxy gesture recognizer
US9280452B1 (en) * 2013-06-26 2016-03-08 Amazon Technologies, Inc. Systems and methods for generating test cases
KR20150017977A (ko) * 2013-08-08 2015-02-23 삼성전자주식회사 지능적 정보 제공 방법 및 장치
US10242315B2 (en) 2013-10-14 2019-03-26 International Business Machines Corporation Finite state machine forming
JP6062351B2 (ja) * 2013-11-28 2017-01-18 京セラ株式会社 電子機器
US9679183B2 (en) * 2013-12-20 2017-06-13 Apple Inc. Finger biometric sensor including drive signal level updating and related methods
US9430142B2 (en) * 2014-07-17 2016-08-30 Facebook, Inc. Touch-based gesture recognition and application navigation
JP6114886B2 (ja) * 2015-01-15 2017-04-12 シャープ株式会社 情報処理装置、情報処理装置の制御方法および制御プログラム
CN104596037B (zh) * 2015-01-16 2019-11-29 珠海格力电器股份有限公司 空调器、空调控制器及其控制方法和装置
WO2016121620A1 (ja) * 2015-01-27 2016-08-04 三菱電機株式会社 ユーザーインターフェイス装置、ユーザーインターフェイス表示方法および制御プログラム
US10095396B2 (en) 2015-03-08 2018-10-09 Apple Inc. Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object
US9639184B2 (en) 2015-03-19 2017-05-02 Apple Inc. Touch input cursor manipulation
US9860451B2 (en) 2015-06-07 2018-01-02 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
US9891811B2 (en) 2015-06-07 2018-02-13 Apple Inc. Devices and methods for navigating between user interfaces
CN105100916B (zh) * 2015-07-09 2019-03-08 北京奇虎科技有限公司 一种视频播放器的制作方法和装置
US10235035B2 (en) 2015-08-10 2019-03-19 Apple Inc. Devices, methods, and graphical user interfaces for content navigation and manipulation
US9880735B2 (en) 2015-08-10 2018-01-30 Apple Inc. Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback
CN105549824A (zh) * 2015-12-26 2016-05-04 魅族科技(中国)有限公司 一种显示控制方法及移动终端
CN106126355A (zh) * 2016-06-22 2016-11-16 百度在线网络技术(北京)有限公司 基于iOS系统的事件传递方法和装置
US10558288B2 (en) * 2016-07-07 2020-02-11 Samsung Display Co., Ltd. Multi-touch display panel and method of controlling the same
CN106250229B (zh) * 2016-08-16 2020-01-24 东软集团股份有限公司 事件处理的方法及装置
CN106896987B (zh) * 2017-02-27 2019-06-25 网易(杭州)网络有限公司 实现界面元素跟随的方法及装置
CN110651242B (zh) * 2017-05-16 2023-07-11 苹果公司 用于触摸输入处理的设备、方法和图形用户界面
CN107219983B (zh) * 2017-06-20 2020-07-31 武汉斗鱼网络科技有限公司 列表显示方法及装置
US11210684B1 (en) 2018-01-17 2021-12-28 Amazon Technologies, Inc. Accurately estimating causal effects for related events
US20190287004A1 (en) * 2018-03-14 2019-09-19 Scaled Inference, Inc. Methods and systems for real-time decision-making using cross-platform telemetry
CN108711185B (zh) * 2018-05-15 2021-05-28 清华大学 联合刚性运动和非刚性形变的三维重建方法及装置
US10877660B2 (en) 2018-06-03 2020-12-29 Apple Inc. Devices and methods for processing inputs using gesture recognizers
US10921975B2 (en) 2018-06-03 2021-02-16 Apple Inc. Devices, methods, and user interfaces for conveying proximity-based and contact-based input events
JP6709255B2 (ja) 2018-07-27 2020-06-10 本田技研工業株式会社 内燃機関の冷却構造
CN110111812B (zh) * 2019-04-15 2020-11-03 深圳大学 一种键盘击键内容的自适应识别方法和系统
CN110989888B (zh) * 2019-12-13 2021-03-02 广州方硅信息技术有限公司 一种触摸事件分发方法及设备
CN118276856B (zh) * 2024-05-31 2024-09-13 北京搜狐新动力信息技术有限公司 应用状态管理方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101052939A (zh) * 2004-07-30 2007-10-10 苹果电脑有限公司 用于触敏输入设备的基于模式的图形用户接口
EP2256606A2 (en) * 1998-01-26 2010-12-01 Apple Inc. Method and apparatus for integrating manual input

Family Cites Families (509)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1517521A (en) 1975-09-01 1978-07-12 Tilgate Pallets Ltd Pallets
US4455452A (en) 1982-09-13 1984-06-19 Touch Activated Switch Arrays, Inc. Touch activated controller for generating X-Y output information
US4674066A (en) 1983-02-18 1987-06-16 Houghton Mifflin Company Textual database system using skeletonization and phonetic replacement to retrieve words matching or similar to query words
JPH02140822A (ja) 1988-11-22 1990-05-30 Nec Corp マルチウインドディスプレイ方式
US5252951A (en) 1989-04-28 1993-10-12 International Business Machines Corporation Graphical user interface with gesture recognition in a multiapplication environment
JP2862626B2 (ja) 1990-03-22 1999-03-03 株式会社東芝 電子辞書及び情報検索方法
US5046434A (en) 1990-05-02 1991-09-10 Penda Corporation Plastic reinforced thermoformed pallet
JP3145735B2 (ja) 1991-07-17 2001-03-12 富士通株式会社 入力制御方式
JPH05197573A (ja) 1991-08-26 1993-08-06 Hewlett Packard Co <Hp> タスク指向パラダイムによるタスク管理システム
JP2827612B2 (ja) 1991-10-07 1998-11-25 富士通株式会社 タッチパネル装置およびタッチパネル装置におけるオブジェクトの表示方法。
US5233547A (en) 1991-11-12 1993-08-03 Ncr Corporation Electronic checking account apparatus and method having a digitizer to receive information as a check is being written
JP2787523B2 (ja) 1992-04-15 1998-08-20 沖電気工業株式会社 キーボード
US5880411A (en) 1992-06-08 1999-03-09 Synaptics, Incorporated Object position detector with edge motion feature and gesture recognition
US5488204A (en) 1992-06-08 1996-01-30 Synaptics, Incorporated Paintbrush stylus for capacitive touch sensor pad
JPH0816314B2 (ja) 1992-09-12 1996-02-21 グンゼ株式会社 筒状編地の連続染色法
US7084859B1 (en) 1992-09-18 2006-08-01 Pryor Timothy R Programmable tactile touch screen displays and man-machine interfaces for improved vehicle instrumentation and telematics
JP2999335B2 (ja) 1992-11-05 2000-01-17 シャープ株式会社 ジェスチャー処理装置およびジェスチャー処理方法
US5583543A (en) 1992-11-05 1996-12-10 Sharp Kabushiki Kaisha Pen input processing apparatus
US5612719A (en) * 1992-12-03 1997-03-18 Apple Computer, Inc. Gesture sensitive buttons for graphical user interfaces
US5463725A (en) 1992-12-31 1995-10-31 International Business Machines Corp. Data processing system graphical user interface which emulates printed material
US5513309A (en) 1993-01-05 1996-04-30 Apple Computer, Inc. Graphic editor user interface for a pointer-based computer system
DE4406668C2 (de) 1993-04-27 1996-09-12 Hewlett Packard Co Verfahren und Vorrichtung zum Betreiben eines berührungsempfindlichen Anzeigegeräts
JP2986047B2 (ja) 1993-04-29 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション ディジタル入力用表示装置並びに入力処理装置および方法
EP0626635B1 (en) 1993-05-24 2003-03-05 Sun Microsystems, Inc. Improved graphical user interface with method for interfacing to remote devices
US6035343A (en) 1993-06-11 2000-03-07 Fujitsu Limited Method for executing software formed of software components and a system for executing such software
CA2124505C (en) 1993-07-21 2000-01-04 William A. S. Buxton User interface having simultaneously movable tools and cursor
US5581670A (en) 1993-07-21 1996-12-03 Xerox Corporation User interface having movable sheet with click-through tools
US5818455A (en) * 1993-07-21 1998-10-06 Xerox Corporation Method and apparatus for operating on the model data structure of an image to produce human perceptible output using a viewing operation region having explicit multiple regions
US5627959A (en) 1993-09-20 1997-05-06 Oracle Corporation Method for manipulating graphic objects
US5564112A (en) 1993-10-14 1996-10-08 Xerox Corporation System and method for generating place holders to temporarily suspend execution of a selected command
US5454960A (en) 1993-11-10 1995-10-03 Advanced Building Technologies, Inc. Oil change and recycling system
US5534893A (en) 1993-12-15 1996-07-09 Apple Computer, Inc. Method and apparatus for using stylus-tablet input in a computer system
US5588072A (en) 1993-12-22 1996-12-24 Canon Kabushiki Kaisha Method and apparatus for selecting blocks of image data from image data having both horizontally- and vertically-oriented blocks
US5686940A (en) 1993-12-24 1997-11-11 Rohm Co., Ltd. Display apparatus
JPH09510567A (ja) * 1994-03-21 1997-10-21 オブジェクト テクノロジー ライセンシング コーポレイション ドキュメント・プロキシィ・フレームワーク
US5566337A (en) * 1994-05-13 1996-10-15 Apple Computer, Inc. Method and apparatus for distributing events in an operating system
JP2939119B2 (ja) 1994-05-16 1999-08-25 シャープ株式会社 手書き文字入力表示装置および方法
US5570113A (en) 1994-06-29 1996-10-29 International Business Machines Corporation Computer based pen system and method for automatically cancelling unwanted gestures and preventing anomalous signals as inputs to such system
US5510061A (en) 1994-07-26 1996-04-23 Norton Chemical Process Products Corp. Non-welded support plate member
EP0701220B1 (en) 1994-09-12 2001-07-04 Adobe Systems Inc. Method and apparatus for viewing electronic documents
EP0712825B1 (en) 1994-11-15 1998-03-11 Uop Improved adsorptive separation of metaxylene from aromatic hydrocarbons
US5495566A (en) 1994-11-22 1996-02-27 Microsoft Corporation Scrolling contents of a window
JP2944439B2 (ja) 1994-12-27 1999-09-06 シャープ株式会社 手書き文字入力装置および方法
US5708460A (en) 1995-06-02 1998-01-13 Avi Systems, Inc. Touch screen
US6496182B1 (en) 1995-06-07 2002-12-17 Microsoft Corporation Method and system for providing touch-sensitive screens for the visually impaired
JPH0969037A (ja) 1995-08-31 1997-03-11 Sharp Corp データ処理装置
JP3636792B2 (ja) 1995-10-18 2005-04-06 株式会社リコー ペン先座標入力装置
US5676064A (en) 1996-04-22 1997-10-14 Shuert; Lyle H. Pallet and pallet package
US5903902A (en) 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
US5745116A (en) 1996-09-09 1998-04-28 Motorola, Inc. Intuitive gesture-based graphical user interface
US5995083A (en) 1996-11-20 1999-11-30 Alps Electric Co., Ltd. Coordinates input apparatus
JP3889466B2 (ja) 1996-11-25 2007-03-07 ソニー株式会社 文章入力装置及び方法
US5917477A (en) 1997-02-28 1999-06-29 Samsung Electronics Co., Ltd. Touch screen input apparatus for chip mounter, chip mounter including the same and method for controlling the chip mounter
US6141018A (en) 1997-03-12 2000-10-31 Microsoft Corporation Method and system for displaying hypertext documents with visual effects
JPH1185354A (ja) 1997-09-04 1999-03-30 Internatl Business Mach Corp <Ibm> キーボード組込み型座標指示装置、キーボード・ユニット、及び情報処理機器
US9098297B2 (en) 1997-05-08 2015-08-04 Nvidia Corporation Hardware accelerator for an object-oriented programming language
US5983190A (en) 1997-05-19 1999-11-09 Microsoft Corporation Client server animation system for managing interactive user interface characters
FI115689B (fi) 1997-05-21 2005-06-15 Nokia Corp Menetelmä ja järjestely matkaviestimen näytöllä esitettävän tiedon vierittämiseksi
US6028602A (en) 1997-05-30 2000-02-22 Telefonaktiebolaget Lm Ericsson Method for managing contents of a hierarchical data model
JP3968477B2 (ja) 1997-07-07 2007-08-29 ソニー株式会社 情報入力装置及び情報入力方法
US6034688A (en) 1997-09-15 2000-03-07 Sony Corporation Scrolling navigational display system
US6377965B1 (en) 1997-11-07 2002-04-23 Microsoft Corporation Automatic word completion system for partially entered data
AU1329199A (en) 1997-12-01 1999-06-16 Cedara Software Corp. Architecture for an application framework
US7844914B2 (en) 2004-07-30 2010-11-30 Apple Inc. Activating virtual keys of a touch-screen virtual keyboard
US7663607B2 (en) 2004-05-06 2010-02-16 Apple Inc. Multipoint touchscreen
US7834855B2 (en) 2004-08-25 2010-11-16 Apple Inc. Wide touchpad on a portable computer
US9292111B2 (en) 1998-01-26 2016-03-22 Apple Inc. Gesturing with a multipoint sensing device
US6323846B1 (en) 1998-01-26 2001-11-27 University Of Delaware Method and apparatus for integrating manual input
US7614008B2 (en) 2004-07-30 2009-11-03 Apple Inc. Operation of a computer with touch screen interface
US20070177804A1 (en) 2006-01-30 2007-08-02 Apple Computer, Inc. Multi-touch gesture dictionary
US7840912B2 (en) 2006-01-30 2010-11-23 Apple Inc. Multi-touch gesture dictionary
US20040080541A1 (en) 1998-03-20 2004-04-29 Hisashi Saiga Data displaying device
US7346850B2 (en) 1998-06-12 2008-03-18 Cygnus Systems, Inc. System and method for iconic software environment management
US6429846B2 (en) 1998-06-23 2002-08-06 Immersion Corporation Haptic feedback for touchpads and other touch controls
US6061063A (en) 1998-06-30 2000-05-09 Sun Microsystems, Inc. Method and apparatus for providing feedback while scrolling
US6570594B1 (en) 1998-06-30 2003-05-27 Sun Microsystems, Inc. User interface with non-intrusive display element
US6188391B1 (en) 1998-07-09 2001-02-13 Synaptics, Inc. Two-layer capacitive touchpad and method of making same
US7559039B2 (en) 1998-07-14 2009-07-07 Brad Ridgley Method and device for finding, collecting and acting upon units of information
CA2244431C (en) 1998-07-30 2002-02-19 Ibm Canada Limited-Ibm Canada Limitee Touchscreen keyboard support for multi-byte character languages
US6068124A (en) 1998-08-27 2000-05-30 Nanya Plastics Plastic pallet and separator for packaging yarn spools
US6628835B1 (en) * 1998-08-31 2003-09-30 Texas Instruments Incorporated Method and system for defining and recognizing complex events in a video sequence
US20020018051A1 (en) 1998-09-15 2002-02-14 Mona Singh Apparatus and method for moving objects on a touchscreen display
US6985178B1 (en) 1998-09-30 2006-01-10 Canon Kabushiki Kaisha Camera control system, image pick-up server, client, control method and storage medium therefor
JP4159674B2 (ja) 1998-10-22 2008-10-01 富士通株式会社 オブジェクト指向業務システムおよび方法
JP2000163443A (ja) 1998-11-25 2000-06-16 Seiko Epson Corp 携帯情報機器及び情報記憶媒体
JP4542637B2 (ja) 1998-11-25 2010-09-15 セイコーエプソン株式会社 携帯情報機器及び情報記憶媒体
US8938688B2 (en) 1998-12-04 2015-01-20 Nuance Communications, Inc. Contextual prediction of user words and user actions
US6963937B1 (en) 1998-12-17 2005-11-08 International Business Machines Corporation Method and apparatus for providing configurability and customization of adaptive user-input filtration
US6259436B1 (en) 1998-12-22 2001-07-10 Ericsson Inc. Apparatus and method for determining selection of touchable items on a computer touchscreen by an imprecise touch
US6643824B1 (en) 1999-01-15 2003-11-04 International Business Machines Corporation Touch screen region assist for hypertext links
US7469381B2 (en) 2007-01-07 2008-12-23 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
JP2000222130A (ja) 1999-02-02 2000-08-11 Toshiba Corp 入力装置および方法および記憶媒体
US20060061551A1 (en) 1999-02-12 2006-03-23 Vega Vista, Inc. Motion detection and tracking system to control navigation and display of portable displays including on-chip gesture detection
US6486896B1 (en) 1999-04-07 2002-11-26 Apple Computer, Inc. Scalable scroll controller
DE60001496T2 (de) 1999-04-21 2003-12-18 Barrie Weatherall Stabilisiervorrichtung für leitern
JP4939682B2 (ja) 1999-04-27 2012-05-30 エーユー オプトロニクス コーポレイション 表示装置
AUPQ439299A0 (en) 1999-12-01 1999-12-23 Silverbrook Research Pty Ltd Interface system
US6714936B1 (en) * 1999-05-25 2004-03-30 Nevin, Iii Rocky Harry W. Method and apparatus for displaying data stored in linked nodes
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US6631501B1 (en) 1999-06-30 2003-10-07 Microsoft Corporation Method and system for automatic type and replace of characters in a sequence of characters
US6639584B1 (en) 1999-07-06 2003-10-28 Chuang Li Methods and apparatus for controlling a portable electronic device using a touchpad
JP2001027924A (ja) 1999-07-14 2001-01-30 Sharp Corp 表示画面を用いる入力装置
US6636242B2 (en) * 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6448986B1 (en) 1999-09-07 2002-09-10 Spotware Technologies Llc Method and system for displaying graphical objects on a display screen
US6664989B1 (en) 1999-10-18 2003-12-16 Honeywell International Inc. Methods and apparatus for graphical display interaction
CN1156746C (zh) 1999-10-20 2004-07-07 皇家菲利浦电子有限公司 浏览图像集合的设备和方法
JP2001134382A (ja) 1999-11-04 2001-05-18 Sony Corp 図形処理装置
JP2001167227A (ja) 1999-12-07 2001-06-22 Hitachi Ltd 情報端末装置
US6778992B1 (en) * 1999-12-21 2004-08-17 Lockstream Corporation Flexible and hierarchical user interfaces defined using a data definition language
US6664991B1 (en) 2000-01-06 2003-12-16 Microsoft Corporation Method and apparatus for providing context menus on a pen-based device
US6809724B1 (en) 2000-01-18 2004-10-26 Seiko Epson Corporation Display apparatus and portable information processing apparatus
US6820237B1 (en) 2000-01-21 2004-11-16 Amikanow! Corporation Apparatus and method for context-based highlighting of an electronic document
US6856326B1 (en) 2000-01-28 2005-02-15 International Business Machines Corporation Smooth scrolling system and method
US6757068B2 (en) 2000-01-28 2004-06-29 Intersense, Inc. Self-referenced tracking
JP4803883B2 (ja) 2000-01-31 2011-10-26 キヤノン株式会社 位置情報処理装置及びその方法及びそのプログラム。
US7138983B2 (en) 2000-01-31 2006-11-21 Canon Kabushiki Kaisha Method and apparatus for detecting and interpreting path of designated position
US6590595B1 (en) 2000-02-08 2003-07-08 Sun Microsystems, Inc. Mechanism for providing intuitive scrolling feedback
US6922810B1 (en) 2000-03-07 2005-07-26 Microsoft Corporation Grammar-based automatic data completion and suggestion for user input
EP1281115A2 (en) 2000-03-17 2003-02-05 Vizible.com Inc. A three dimensional spatial user interface
US7142205B2 (en) 2000-03-29 2006-11-28 Autodesk, Inc. Single gesture map navigation graphical user interface for a personal digital assistant
EP1273154A2 (en) 2000-03-30 2003-01-08 QUALCOMM Incorporated Method and apparatus for notifying a mobile station application of specified events
JP4124402B2 (ja) 2000-03-31 2008-07-23 株式会社リコー 画像入力装置
WO2001077792A2 (en) 2000-04-07 2001-10-18 Rsa Security Inc. System and method for authenticating a user
US6765557B1 (en) 2000-04-10 2004-07-20 Interlink Electronics, Inc. Remote control having touch pad to screen mapping
US7009626B2 (en) 2000-04-14 2006-03-07 Picsel Technologies Limited Systems and methods for generating visual representations of graphical data and digital document processing
US6459770B1 (en) 2000-04-19 2002-10-01 Analogic Corporation Backlash-resistant drive assembly for collimator in a CT scanner
JP2001299733A (ja) 2000-04-27 2001-10-30 Konica Corp Pci放射線画像処理装置、pci放射線画像検出処理装置、pci放射線画像出力装置及びpci画像診断支援装置
US6559869B1 (en) 2000-05-04 2003-05-06 Microsoft Corporation Adaptive auto-scrolling merge for hand written input
EP1285330B1 (en) 2000-05-11 2006-08-30 Nes Stewart Irvine Zeroclick
US6446083B1 (en) 2000-05-12 2002-09-03 Vastvideo, Inc. System and method for classifying media items
US6912694B1 (en) 2000-06-28 2005-06-28 Intel Corporation Providing a scrolling function for a multiple frame web page
US6677965B1 (en) 2000-07-13 2004-01-13 International Business Machines Corporation Rubber band graphical user interface control
GB0017793D0 (en) 2000-07-21 2000-09-06 Secr Defence Human computer interface
US20020015064A1 (en) 2000-08-07 2002-02-07 Robotham John S. Gesture-based user interface to multi-level and multi-modal sets of bit-maps
US6704024B2 (en) 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
JP2002062983A (ja) 2000-08-21 2002-02-28 Hitachi Ltd ポインティングデバイス
US6791530B2 (en) 2000-08-29 2004-09-14 Mitsubishi Electric Research Laboratories, Inc. Circular graphical user interfaces
EP1184414A3 (en) 2000-08-30 2003-08-06 JSR Corporation Conjugated diene-based rubber and method of producing the same, oil extended rubber and rubber composition containing the same
US6912462B2 (en) 2000-08-31 2005-06-28 Sony Corporation Information processing apparatus, information processing method and program storage media
US20020138617A1 (en) 2000-09-06 2002-09-26 Jacob Christfort Providing content from multiple services
US6757673B2 (en) 2000-10-09 2004-06-29 Town Compass Llc Displaying hierarchial relationship of data accessed via subject index
US6735583B1 (en) 2000-11-01 2004-05-11 Getty Images, Inc. Method and system for classifying and locating media content
US7072501B2 (en) 2000-11-22 2006-07-04 R2 Technology, Inc. Graphical user interface for display of anatomical information
US7184796B2 (en) 2000-12-04 2007-02-27 International Business Machines Corporation Personal communication device having a built in projection display
US7240291B2 (en) 2000-12-21 2007-07-03 Xerox Corporation Methods, systems, and computer program products for display of information relating to a virtual three-dimensional book
US6976172B2 (en) 2000-12-28 2005-12-13 Intel Corporation System and method for protected messaging
US6839721B2 (en) 2001-01-12 2005-01-04 Hewlett-Packard Development Company, L.P. Integration of a database into file management software for protecting, tracking, and retrieving data
WO2002059868A1 (en) * 2001-01-24 2002-08-01 Interlink Electronics, Inc. Game and home entertainment device remote control
US6677932B1 (en) 2001-01-28 2004-01-13 Finger Works, Inc. System and method for recognizing touch typing under limited tactile feedback conditions
US6570557B1 (en) 2001-02-10 2003-05-27 Finger Works, Inc. Multi-touch system and method for emulating modifier keys via fingertip chords
US7030861B1 (en) 2001-02-10 2006-04-18 Wayne Carl Westerman System and method for packing multi-touch gestures onto a hand
JP3881179B2 (ja) * 2001-02-14 2007-02-14 三菱電機株式会社 ユーザインタフェース設計装置
US20040027398A1 (en) 2001-02-15 2004-02-12 Denny Jaeger Intuitive graphic user interface with universal tools
US6972776B2 (en) 2001-03-20 2005-12-06 Agilent Technologies, Inc. Scrolling method using screen pointing device
GB2373778B (en) 2001-03-30 2003-08-06 Robin Lewis Corner elements for packaging
US6741996B1 (en) 2001-04-18 2004-05-25 Microsoft Corporation Managing user clips
WO2002088908A2 (en) 2001-05-02 2002-11-07 Bitstream Inc. Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing
US20020194589A1 (en) 2001-05-08 2002-12-19 Cristofalo Michael Technique for optimizing the delivery of advertisements and other programming segments by making bandwidth tradeoffs
US20050024341A1 (en) 2001-05-16 2005-02-03 Synaptics, Inc. Touch screen with user interface enhancement
US7730401B2 (en) 2001-05-16 2010-06-01 Synaptics Incorporated Touch screen with user interface enhancement
US6498590B1 (en) 2001-05-24 2002-12-24 Mitsubishi Electric Research Laboratories, Inc. Multi-user touch surface
TW521205B (en) 2001-06-05 2003-02-21 Compal Electronics Inc Touch screen capable of controlling amplification with pressure
US6868383B1 (en) 2001-07-12 2005-03-15 At&T Corp. Systems and methods for extracting meaning from multimodal inputs using finite-state devices
US6985137B2 (en) 2001-08-13 2006-01-10 Nokia Mobile Phones Ltd. Method for preventing unintended touch pad input due to accidental touching
US6661409B2 (en) 2001-08-22 2003-12-09 Motorola, Inc. Automatically scrolling handwritten input user interface for personal digital assistants and the like
US6690365B2 (en) 2001-08-29 2004-02-10 Microsoft Corporation Automatic scrolling
US6972749B2 (en) 2001-08-29 2005-12-06 Microsoft Corporation Touch-sensitive device for scrolling a document on a display
US6907575B2 (en) 2001-09-06 2005-06-14 Danger, Inc. Method of scrolling a display window
JP2003173237A (ja) 2001-09-28 2003-06-20 Ricoh Co Ltd 情報入出力システム、プログラム及び記憶媒体
US7254775B2 (en) 2001-10-03 2007-08-07 3M Innovative Properties Company Touch panel system and method for distinguishing multiple touch inputs
US20030071850A1 (en) 2001-10-12 2003-04-17 Microsoft Corporation In-place adaptive handwriting input method and system
US7345671B2 (en) 2001-10-22 2008-03-18 Apple Inc. Method and apparatus for use of rotational user inputs
US7046230B2 (en) 2001-10-22 2006-05-16 Apple Computer, Inc. Touch pad handheld device
TW528981B (en) 2001-10-25 2003-04-21 Compal Electronics Inc Portable computer and related method for preventing input interruption by write-tracking input region
US7009599B2 (en) 2001-11-20 2006-03-07 Nokia Corporation Form factor for portable device
CA2366183A1 (en) 2001-12-21 2003-06-21 Ibm Canada Limited-Ibm Canada Limitee Dynamic status tree facility
US6690387B2 (en) 2001-12-28 2004-02-10 Koninklijke Philips Electronics N.V. Touch-screen image scrolling system and method
US7414616B2 (en) 2002-01-03 2008-08-19 Mahesh Jayachandra User-friendly Brahmi-derived Hindi keyboard
US6957392B2 (en) 2002-01-16 2005-10-18 Laszlo Systems, Inc. Interface engine providing a continuous user interface
GB0201074D0 (en) 2002-01-18 2002-03-06 3G Lab Ltd Graphic user interface for data processing device
US7603627B2 (en) 2002-02-05 2009-10-13 Microsoft Corporation Systems and methods for creating and managing graphical user interface lists
JP3951727B2 (ja) 2002-02-06 2007-08-01 松下電器産業株式会社 情報処理装置
US7075512B1 (en) 2002-02-07 2006-07-11 Palmsource, Inc. Method and system for navigating a display screen for locating a desired item of information
AU2003220400A1 (en) 2002-03-19 2003-10-08 America Online, Inc. Controlling content display
US20030184525A1 (en) 2002-03-29 2003-10-02 Mitac International Corp. Method and apparatus for image processing
JP2003296024A (ja) 2002-04-01 2003-10-17 Nec Engineering Ltd タッチパネル制御方式
US7466307B2 (en) 2002-04-11 2008-12-16 Synaptics Incorporated Closed-loop sensor on a solid-state object position detector
US20030197689A1 (en) 2002-04-23 2003-10-23 May Gregory J. Input device that allows multiple touch key input
US7203911B2 (en) 2002-05-13 2007-04-10 Microsoft Corporation Altering a display on a viewing device based upon a user proximity to the viewing device
TWI238348B (en) 2002-05-13 2005-08-21 Kyocera Corp Portable information terminal, display control device, display control method, and recording media
US20030214531A1 (en) 2002-05-14 2003-11-20 Microsoft Corporation Ink input mechanisms
US7158675B2 (en) 2002-05-14 2007-01-02 Microsoft Corporation Interfacing with ink
WO2003098421A1 (en) 2002-05-16 2003-11-27 Sony Corporation Inputting method and inputting apparatus
US7519918B2 (en) 2002-05-30 2009-04-14 Intel Corporation Mobile virtual desktop
FI20021655A (fi) 2002-06-19 2003-12-20 Nokia Corp Menetelmä lukituksen avaamiseksi ja kannettava elektroninen laite
US7023427B2 (en) 2002-06-28 2006-04-04 Microsoft Corporation Method and system for detecting multiple touches on a touch-sensitive screen
US7062090B2 (en) 2002-06-28 2006-06-13 Microsoft Corporation Writing guide for a free-form document editor
US11275405B2 (en) 2005-03-04 2022-03-15 Apple Inc. Multi-functional hand-held device
JP4338364B2 (ja) 2002-07-02 2009-10-07 ソニー株式会社 携帯情報通信端末、プログラムおよび該プログラムを記録した記録媒体
TW591488B (en) 2002-08-01 2004-06-11 Tatung Co Window scrolling method and device thereof
EP1394692A1 (en) 2002-08-05 2004-03-03 Alcatel Method, terminal, browser application, and mark-up language for multimodal interaction between a user and a terminal
US20040021698A1 (en) 2002-08-05 2004-02-05 Baldwin Amanda K. Intuitive touchscreen interface for a multifunction device and method therefor
JP2004084111A (ja) 2002-08-26 2004-03-18 Tsudakoma Corp 織機の情報表示装置
US7739604B1 (en) 2002-09-25 2010-06-15 Apple Inc. Method and apparatus for managing windows
US7002560B2 (en) 2002-10-04 2006-02-21 Human Interface Technologies Inc. Method of combining data entry of handwritten symbols with displayed character data
GB0223883D0 (en) 2002-10-15 2002-11-20 Seamless Display Ltd Visual display screen arrangement
US7281248B2 (en) 2002-11-19 2007-10-09 Microsoft Corporation Virtualized and realized user interface controls
ATE332528T1 (de) 2002-11-20 2006-07-15 Nokia Corp Verfahren und benutzerschnittstelle zur zeicheneingabe
CA2414047A1 (en) 2002-12-09 2004-06-09 Corel Corporation System and method of extending scalable vector graphics capabilities
US6903927B2 (en) 2002-12-17 2005-06-07 Nokia Corporation Convertible mobile computing device
US20040125136A1 (en) 2002-12-30 2004-07-01 Jukka Wallenius Provision of services through a display system
US20040135817A1 (en) 2003-01-14 2004-07-15 Daughtery Joey L. Interface for selecting and performing operations on objects
US7117453B2 (en) 2003-01-21 2006-10-03 Microsoft Corporation Media frame object visualization system
US20040225965A1 (en) 2003-05-06 2004-11-11 Microsoft Corporation Insertion location tracking for controlling a user interface
US7490296B2 (en) 2003-01-31 2009-02-10 Microsoft Corporation Utility object for specialized data entry
US20040160419A1 (en) 2003-02-11 2004-08-19 Terradigital Systems Llc. Method for entering alphanumeric characters into a graphical user interface
US20040155888A1 (en) 2003-02-11 2004-08-12 Padgitt David Gary Method for displaying the contents of a collection of media objects
US7894177B2 (en) 2005-12-29 2011-02-22 Apple Inc. Light activated hold switch
US7088374B2 (en) 2003-03-27 2006-08-08 Microsoft Corporation System and method for managing visual structure, timing, and animation in a graphics processing system
US7187801B2 (en) 2003-03-31 2007-03-06 Microsoft Corporation Multiple handwriting recognition engine selection
KR100465969B1 (ko) 2003-04-11 2005-01-13 (주)모비솔 손가락 표면을 이용한 소형 포인팅 장치
US8484576B2 (en) 2003-04-17 2013-07-09 Supersonic Aerospace International, Llc System and method for customizing multiple windows of information on a display
US7627343B2 (en) 2003-04-25 2009-12-01 Apple Inc. Media player system
US7102626B2 (en) 2003-04-25 2006-09-05 Hewlett-Packard Development Company, L.P. Multi-function pointing device
GB2401272B (en) 2003-04-30 2007-11-21 Hewlett Packard Development Co Method and apparatus for enhancing user interest in static digital images
US8555165B2 (en) 2003-05-08 2013-10-08 Hillcrest Laboratories, Inc. Methods and systems for generating a zoomable graphical user interface
US7173623B2 (en) 2003-05-09 2007-02-06 Microsoft Corporation System supporting animation of graphical display elements through animation object instances
CN1742252A (zh) 2003-05-21 2006-03-01 株式会社日立高新技术 内置指纹传感器的便携式终端装置
JP2006527439A (ja) 2003-06-13 2006-11-30 ユニヴァーシティ オブ ランカスター ユーザインタフェース
US7567239B2 (en) 2003-06-26 2009-07-28 Motorola, Inc. Method and system for message and note composition on small screen devices
US8373660B2 (en) 2003-07-14 2013-02-12 Matt Pallakoff System and method for a portable multimedia client
US20050027666A1 (en) 2003-07-15 2005-02-03 Vente, Inc Interactive online research system and method
KR100522940B1 (ko) 2003-07-25 2005-10-24 삼성전자주식회사 활성영역을 설정 가능한 터치스크린 시스템 및 그 제어방법
JP2005056286A (ja) 2003-08-07 2005-03-03 Nec Engineering Ltd ウェブブラウザにおける拡大表示方法および拡大表示プログラム
JP2005062086A (ja) 2003-08-19 2005-03-10 Cstec Kk 検査用チップ
US7499035B2 (en) 2003-08-21 2009-03-03 Microsoft Corporation Focus management using in-air points
US9024884B2 (en) 2003-09-02 2015-05-05 Apple Inc. Touch-sensitive electronic apparatus for media applications, and methods therefor
JP4360871B2 (ja) 2003-09-10 2009-11-11 富士通テン株式会社 情報端末における入力装置
US7411575B2 (en) 2003-09-16 2008-08-12 Smart Technologies Ulc Gesture recognition method and touch system incorporating the same
KR20060091310A (ko) 2003-09-30 2006-08-18 코닌클리케 필립스 일렉트로닉스 엔.브이. 디스플레이 상의 컨텐트 윈도우의 위치, 크기 및/또는컨텐트를 정의하는 제스쳐
US7034834B2 (en) 2003-10-24 2006-04-25 Microsoft Corporation Communication protocol for synchronizing animation systems
US20050183035A1 (en) 2003-11-20 2005-08-18 Ringel Meredith J. Conflict resolution for graphic multi-user interface
US7962862B2 (en) 2003-11-24 2011-06-14 International Business Machines Corporation Method and data processing system for providing an improved graphics design tool
US7298367B2 (en) 2003-11-25 2007-11-20 3M Innovative Properties Company Light emitting stylus and user input device using same
US7814419B2 (en) 2003-11-26 2010-10-12 Nokia Corporation Changing an orientation of a user interface via a course of motion
JP3962718B2 (ja) 2003-12-01 2007-08-22 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
US7337412B2 (en) 2003-12-15 2008-02-26 International Business Machines Corporation Methods, systems and computer program products for providing multi-dimensional tree diagram graphical user interfaces
US20050162402A1 (en) 2004-01-27 2005-07-28 Watanachote Susornpol J. Methods of interacting with a computer using a finger(s) touch sensing input device with visual feedback
US7366995B2 (en) 2004-02-03 2008-04-29 Roland Wescott Montague Combination tool that zooms in, zooms out, pans, rotates, draws, or manipulates during a drag
FI117308B (fi) 2004-02-06 2006-08-31 Nokia Corp Eleohjausjärjestelmä
US7319457B2 (en) 2004-02-12 2008-01-15 Sentelic Corporation Method of scrolling window screen by means of controlling electronic device
US7358965B2 (en) 2004-02-18 2008-04-15 Microsoft Corporation Tapping to create writing
GB2411331A (en) 2004-02-19 2005-08-24 Trigenix Ltd Rendering user interface using actor attributes
US20050193015A1 (en) 2004-02-19 2005-09-01 Sandraic Logic, Llc A California Limited Liability Company Method and apparatus for organizing, sorting and navigating multimedia content
FR2866726B1 (fr) 2004-02-23 2006-05-26 Jazzmutant Controleur par manipulation d'objets virtuels sur un ecran tactile multi-contact
JP4438448B2 (ja) 2004-02-26 2010-03-24 セイコーエプソン株式会社 構造化文書表示処理装置、構造化文書表示方法、構造化文書表示プログラム
US7327349B2 (en) 2004-03-02 2008-02-05 Microsoft Corporation Advanced navigation techniques for portable devices
JP2005275652A (ja) 2004-03-24 2005-10-06 Canon Inc 入力軌跡処理装置および入力軌跡処理方法
CN100407223C (zh) 2004-04-02 2008-07-30 诺基亚公司 一种用于手写识别的设备和方法
US7623119B2 (en) 2004-04-21 2009-11-24 Nokia Corporation Graphical functions by gestures
EP1625513B1 (en) * 2004-04-30 2018-04-18 Microsoft Technology Licensing, LLC Rules framework for definition and execution of end-user rules logic
JP4387242B2 (ja) 2004-05-10 2009-12-16 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
US7624355B2 (en) 2004-05-27 2009-11-24 Baneth Robin C System and method for controlling a user interface
JP4855654B2 (ja) 2004-05-31 2012-01-18 ソニー株式会社 車載装置、車載装置の情報提供方法、車載装置の情報提供方法のプログラム及び車載装置の情報提供方法のプログラムを記録した記録媒体
US7358962B2 (en) 2004-06-15 2008-04-15 Microsoft Corporation Manipulating association of data with a physical object
US7773950B2 (en) 2004-06-16 2010-08-10 Telefonaktiebolaget Lm Ericsson (Publ) Benign interference suppression for received signal quality estimation
CN100483319C (zh) 2004-06-17 2009-04-29 皇家飞利浦电子股份有限公司 在触摸屏上使用两手指输入
US7519223B2 (en) 2004-06-28 2009-04-14 Microsoft Corporation Recognizing gestures and using gestures for interacting with software applications
US20080284799A1 (en) 2004-06-29 2008-11-20 Koninklijke Philips Electronics, N.V. Discontinous Zoom
US7786980B2 (en) 2004-06-29 2010-08-31 Koninklijke Philips Electronics N.V. Method and device for preventing staining of a display device
JP4903371B2 (ja) 2004-07-29 2012-03-28 任天堂株式会社 タッチパネルを用いたゲーム装置およびゲームプログラム
EP2000894B1 (en) 2004-07-30 2016-10-19 Apple Inc. Mode-based graphical user interfaces for touch sensitive input devices
US7653883B2 (en) 2004-07-30 2010-01-26 Apple Inc. Proximity detector in handheld device
US7506799B2 (en) 2004-07-30 2009-03-24 Nokia Corporation Method for the monitoring of system security in electronic devices
KR100958490B1 (ko) 2004-07-30 2010-05-17 애플 인크. 사용자 인터페이스 방법, 미디어 항목들을 통해 스크롤하는방법, 디스플레이 및 터치 스크린을 갖는 사용자-조작되는전자 장치 상에서 수행되는 방법, 디스플레이 및 터치감지 입력 장치를 갖는 컴퓨팅 장치 상에서 수행되는 방법,컴퓨팅 시스템, 컴퓨팅 장치, 터치 감지 장치를 통해플로팅 컨트롤을 기동시키는 컴퓨터 구현 방법 및 컴퓨터구현 방법
US7724242B2 (en) 2004-08-06 2010-05-25 Touchtable, Inc. Touch driven method and apparatus to integrate and display multiple image layers forming alternate depictions of same subject matter
US7728821B2 (en) 2004-08-06 2010-06-01 Touchtable, Inc. Touch detecting interactive display
US20070046643A1 (en) 2004-08-06 2007-03-01 Hillis W Daniel State-Based Approach to Gesture Identification
US7721197B2 (en) 2004-08-12 2010-05-18 Microsoft Corporation System and method of displaying content on small screen computing devices
US7181373B2 (en) 2004-08-13 2007-02-20 Agilent Technologies, Inc. System and methods for navigating and visualizing multi-dimensional biological data
US7434173B2 (en) 2004-08-30 2008-10-07 Microsoft Corporation Scrolling web pages using direct interaction
US7761814B2 (en) 2004-09-13 2010-07-20 Microsoft Corporation Flick gesture
JP4366695B2 (ja) 2004-09-13 2009-11-18 日本ビクター株式会社 メニュー画像表示方法及び電子情報機器
US20060055669A1 (en) 2004-09-13 2006-03-16 Mita Das Fluent user interface for text entry on touch-sensitive display
JP4355639B2 (ja) 2004-09-15 2009-11-04 キヤノン株式会社 画像処理装置およびその制御方法
US7728823B2 (en) 2004-09-24 2010-06-01 Apple Inc. System and method for processing raw data of track pad device
JP3786669B2 (ja) 2004-10-06 2006-06-14 株式会社バンダイナムコゲームス ゲームシステム、プログラム及び情報記憶媒体
US20060077183A1 (en) * 2004-10-08 2006-04-13 Studt Peter C Methods and systems for converting touchscreen events into application formatted data
WO2006045530A2 (en) 2004-10-22 2006-05-04 Novo Nordisk A/S An apparatus and a method of providing information to a user
JP3770499B1 (ja) 2004-11-02 2006-04-26 任天堂株式会社 ゲーム装置及びゲームプログラム
US7925996B2 (en) 2004-11-18 2011-04-12 Microsoft Corporation Method and system for providing multiple input connecting user interface
US7665031B2 (en) 2004-12-08 2010-02-16 Microsoft Corporation Method and system of taskbar button interfaces
US20060136833A1 (en) 2004-12-15 2006-06-22 International Business Machines Corporation Apparatus and method for chaining objects in a pointer drag path
WO2006067711A2 (en) 2004-12-21 2006-06-29 Koninklijke Philips Electronics N.V. Method and device for displaying animated buttons
CN100377055C (zh) 2004-12-22 2008-03-26 盛群半导体股份有限公司 触控感应装置的判读方法
US20080122806A1 (en) 2005-01-05 2008-05-29 Jaewoo Ahn Method and Apparatus for Inputting Character Through Pointing Device
CN101233504B (zh) 2005-01-05 2010-11-10 希尔克瑞斯特实验室公司 用于用户界面的分布式软件架构
US20060156249A1 (en) 2005-01-12 2006-07-13 Blythe Michael M Rotate a user interface
US20070185876A1 (en) 2005-02-07 2007-08-09 Mendis Venura C Data handling system
GB0503253D0 (en) 2005-02-17 2005-03-23 Univ Northumbria Newcastle User control of a hand-held device
US8819569B2 (en) 2005-02-18 2014-08-26 Zumobi, Inc Single-handed approach for navigation of application tiles using panning and zooming
JP4613078B2 (ja) 2005-03-01 2011-01-12 学校法人 名城大学 半導体基板の製造方法
KR20160150116A (ko) 2005-03-04 2016-12-28 애플 인크. 다기능 휴대용 장치
CN1841284A (zh) 2005-03-28 2006-10-04 上海桐港信息科技有限公司 触摸屏式移动设备微浏览器页面显示漂移方法
US20060221061A1 (en) 2005-03-31 2006-10-05 Tyco Electronic Corporation Touch sensor and control with random pulse spacing
US7750893B2 (en) 2005-04-06 2010-07-06 Nintendo Co., Ltd. Storage medium storing input position processing program, and input position processing device
CN1845046A (zh) 2005-04-07 2006-10-11 技嘉科技股份有限公司 具有触控式功能键的键盘和鼠标
US7355595B2 (en) 2005-04-15 2008-04-08 Microsoft Corporation Tactile device for scrolling
US7673255B2 (en) 2005-04-22 2010-03-02 Microsoft Corporation Interface and system for manipulating thumbnails of live windows in a window manager
US7692637B2 (en) 2005-04-26 2010-04-06 Nokia Corporation User input device for electronic device
US7499027B2 (en) 2005-04-29 2009-03-03 Microsoft Corporation Using a light pointer for input on an interactive display surface
JP4490326B2 (ja) 2005-05-09 2010-06-23 株式会社土井製作所 地中埋設ケーブル等に対する地盤変動時の保護方法及びその保護装置
CN101278422B (zh) 2005-05-16 2012-05-30 通用汽车环球科技运作公司 用于燃料电池电极的催化剂
US8117540B2 (en) 2005-05-18 2012-02-14 Neuer Wall Treuhand Gmbh Method and device incorporating improved text input mechanism
US20060262104A1 (en) 2005-05-19 2006-11-23 Sullivan Darius M Systems and methods for distinguishing contact-induced plate vibrations from acoustic noise-induced plate vibrations
US20070024646A1 (en) 2005-05-23 2007-02-01 Kalle Saarinen Portable electronic apparatus and associated method
US7487447B1 (en) 2005-05-25 2009-02-03 Google Inc. Web page zoom feature
US20060271520A1 (en) 2005-05-27 2006-11-30 Ragan Gene Z Content-based implicit search query
US7561159B2 (en) 2005-05-31 2009-07-14 Magnifi Group Inc. Control of animation timeline
WO2006128248A1 (en) 2005-06-02 2006-12-07 National Ict Australia Limited Multimodal computer navigation
US7710397B2 (en) 2005-06-03 2010-05-04 Apple Inc. Mouse with improved input mechanisms using touch sensors
US9019209B2 (en) 2005-06-08 2015-04-28 3M Innovative Properties Company Touch location determination involving multiple touch location processes
JP4849300B2 (ja) 2005-06-14 2012-01-11 ソニー株式会社 表示信号処理装置および方法、記録媒体、並びにプログラム
KR20060133389A (ko) 2005-06-20 2006-12-26 엘지전자 주식회사 이동 단말기의 데이터 처리 장치 및 그 방법
TW200701082A (en) 2005-06-23 2007-01-01 Elan Microelectronics Corp Scroll control method used in the touch panel
US8108787B2 (en) * 2005-07-01 2012-01-31 Microsoft Corporation Distributing input events to multiple applications in an interactive media environment
US7463263B2 (en) 2005-07-15 2008-12-09 Sap Portals Israel Ltd. Declarative specification of model visualizations
BRPI0615536A2 (pt) 2005-07-22 2011-05-17 Matt Pallakoff dispositivo manual que tem um mostrador da tela de toque com capacidade de implementar uma interface do usuário de teclado virtual para inserir toques no teclado por um usuário, sistema de interface do usuário (ui) baseada em tela de toque em um dispositivo manual, sistema de interface do usuário (ui) baseado em tela de toque otimizado pelo polegar em um dispositivo manual, sistema de interface do usuário (ui) virtual acionado a polegar para a busca de informações, sistema de interface do usuário virtual acionado pelo polegar, para selecionar itens selecionáveis virtuais em uma página da web exibida em um mostrador de tela de toque de um dispositivo portátil, dispositivo manual que tem um mostrador de tela de toque com capacidade de executar um teclado virtual para inserir toques no teclado por um usuário, método para implementar a seleção de entrda por um usúario dos itens exibidos em um tela de toque de um dispositivo manual e método para que uma interface virtual do usuário do teclado interaja com páginas da web em um dispositivo de visualização manual que tem um mostrador de tela de toque
US7808478B2 (en) 2005-08-22 2010-10-05 Samsung Electronics Co., Ltd. Autonomous handheld device having a drawing tool
US7568035B2 (en) 2005-08-30 2009-07-28 Microsoft Corporation Command binding determination and implementation
US20070061126A1 (en) 2005-09-01 2007-03-15 Anthony Russo System for and method of emulating electronic input devices
JP2009523267A (ja) 2005-09-15 2009-06-18 アップル インコーポレイテッド トラックパッドデバイスの未加工データを処理するシステム及び方法
US20070152980A1 (en) 2006-01-05 2007-07-05 Kenneth Kocienda Touch Screen Keyboards for Portable Electronic Devices
US7694231B2 (en) 2006-01-05 2010-04-06 Apple Inc. Keyboards for portable electronic devices
US20070064004A1 (en) 2005-09-21 2007-03-22 Hewlett-Packard Development Company, L.P. Moving a graphic element
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
CN1949161B (zh) 2005-10-14 2010-05-26 鸿富锦精密工业(深圳)有限公司 多层次菜单显示装置及显示控制方法
US20070109275A1 (en) 2005-11-16 2007-05-17 Chen-Ting Chuang Method for controlling a touch screen user interface and device thereof
JP2007148927A (ja) 2005-11-29 2007-06-14 Alps Electric Co Ltd 入力装置及びこれを用いたスクロール制御方法
US9069877B2 (en) 2005-12-07 2015-06-30 Ziilabs Inc., Ltd. User interface with variable sized icons
EP1958044A4 (en) 2005-12-08 2013-03-13 Core Wireless Licensing Sarl IMPROVED TEXT ENTRY FOR ELECTRONIC EQUIPMENT
US20070132789A1 (en) 2005-12-08 2007-06-14 Bas Ording List scrolling in response to moving contact over list of index symbols
US7480870B2 (en) 2005-12-23 2009-01-20 Apple Inc. Indication of progress towards satisfaction of a user input condition
US7650137B2 (en) 2005-12-23 2010-01-19 Apple Inc. Account information display for portable communication device
US7657849B2 (en) 2005-12-23 2010-02-02 Apple Inc. Unlocking a device by performing gestures on an unlock image
US7786975B2 (en) 2005-12-23 2010-08-31 Apple Inc. Continuous scrolling list with acceleration
CN102169415A (zh) 2005-12-30 2011-08-31 苹果公司 具有多重触摸输入的便携式电子设备
US8018440B2 (en) 2005-12-30 2011-09-13 Microsoft Corporation Unintentional touch rejection
US20070152983A1 (en) 2005-12-30 2007-07-05 Apple Computer, Inc. Touch pad with symbols based on mode
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US7574672B2 (en) 2006-01-05 2009-08-11 Apple Inc. Text entry interface for a portable communication device
US7860536B2 (en) 2006-01-05 2010-12-28 Apple Inc. Telephone interface for a portable communication device
WO2007084852A2 (en) 2006-01-18 2007-07-26 Roxse, Llc Systems and methods for providing sorted search results
US20070176903A1 (en) 2006-01-31 2007-08-02 Dahlin Jeffrey J Capacitive touch sensor button activation
US8312479B2 (en) 2006-03-08 2012-11-13 Navisense Application programming interface (API) for sensory events
US20070214436A1 (en) 2006-03-13 2007-09-13 Myers Raymond L Jr Positional navigation graphic link system
US7620901B2 (en) 2006-03-21 2009-11-17 Microsoft Corporation Simultaneous input across multiple applications
US8866750B2 (en) 2006-04-10 2014-10-21 Microsoft Corporation Universal user interface device
US8587526B2 (en) 2006-04-12 2013-11-19 N-Trig Ltd. Gesture recognition feedback for a dual mode digitizer
US20070242607A1 (en) 2006-04-13 2007-10-18 Tellabs Operations, Inc. Method and system for controlling distribution of network topology information
KR20070113025A (ko) 2006-05-24 2007-11-28 엘지전자 주식회사 터치스크린 장치 및 이의 작동방법
TWI328185B (en) 2006-04-19 2010-08-01 Lg Electronics Inc Touch screen device for potable terminal and method of displaying and selecting menus thereon
US8077153B2 (en) 2006-04-19 2011-12-13 Microsoft Corporation Precise selection techniques for multi-touch screens
US9063647B2 (en) 2006-05-12 2015-06-23 Microsoft Technology Licensing, Llc Multi-touch uses, gestures, and implementation
US7844661B2 (en) 2006-06-15 2010-11-30 Microsoft Corporation Composition of local media playback with remotely generated user interface
KR101277256B1 (ko) 2006-06-16 2013-07-05 삼성전자주식회사 사용자 인터페이스를 위한 장치 및 방법
US8169421B2 (en) 2006-06-19 2012-05-01 Cypress Semiconductor Corporation Apparatus and method for detecting a touch-sensor pad gesture
GB0612624D0 (en) 2006-06-26 2006-08-02 Symbian Software Ltd Speed of gesture
US8086971B2 (en) 2006-06-28 2011-12-27 Nokia Corporation Apparatus, methods and computer program products providing finger-based and hand-based gesture commands for portable electronic device applications
US8269725B2 (en) 2006-06-28 2012-09-18 Microsoft Corporation Input simulation system for touch based devices
RU2008149112A (ru) 2006-06-30 2010-06-20 Теле Атлас Норт Америка, Инк. (Us) Способ и система для сбора пользовательских запросов на обновление относительно географических данных для поддержки автоматизированного анализа, обработки и обновлений географических данных
JP5324440B2 (ja) 2006-07-12 2013-10-23 エヌ−トリグ リミテッド デジタイザのためのホバリングおよびタッチ検出
JP4762070B2 (ja) 2006-07-19 2011-08-31 富士通株式会社 手書き入力装置、手書き入力方法、及びコンピュータプログラム
JP4280759B2 (ja) 2006-07-27 2009-06-17 キヤノン株式会社 情報処理装置およびユーザインタフェース制御方法
JP4514830B2 (ja) 2006-08-15 2010-07-28 エヌ−トリグ リミテッド デジタイザのためのジェスチャ検出
US20080043020A1 (en) 2006-08-18 2008-02-21 Microsoft Corporation User interface for viewing street side imagery
US8253695B2 (en) 2006-09-06 2012-08-28 Apple Inc. Email client for a portable multifunction device
US8106856B2 (en) 2006-09-06 2012-01-31 Apple Inc. Portable electronic device for photo management
US7941760B2 (en) 2006-09-06 2011-05-10 Apple Inc. Soft keyboard display for a portable multifunction device
US7843427B2 (en) 2006-09-06 2010-11-30 Apple Inc. Methods for determining a cursor position from a finger contact with a touch screen display
US7864163B2 (en) 2006-09-06 2011-01-04 Apple Inc. Portable electronic device, method, and graphical user interface for displaying structured electronic documents
CN101535940B (zh) * 2006-09-06 2013-06-12 苹果公司 用于即时消息传送的便携式电子设备
US8056007B2 (en) 2006-11-15 2011-11-08 Yahoo! Inc. System and method for recognizing and storing information and associated context
US20080114614A1 (en) 2006-11-15 2008-05-15 General Electric Company Methods and systems for healthcare application interaction using gesture-based interaction enhanced with pressure sensitivity
US7694240B2 (en) 2006-11-22 2010-04-06 General Electric Company Methods and systems for creation of hanging protocols using graffiti-enabled devices
JP5191119B2 (ja) 2006-12-06 2013-04-24 株式会社ジャパンディスプレイウェスト 表示装置、表示装置の制御方法、及びプログラム
TW200828089A (en) 2006-12-29 2008-07-01 Inventec Appliances Corp Method for zooming image
US7777732B2 (en) 2007-01-03 2010-08-17 Apple Inc. Multi-event input system
US8489783B2 (en) 2007-01-03 2013-07-16 Apple Inc. Multi buffer asynchronous scheme for processing incoming information
US8214768B2 (en) 2007-01-05 2012-07-03 Apple Inc. Method, system, and graphical user interface for viewing multiple application windows
US8656295B2 (en) 2007-01-05 2014-02-18 Apple Inc. Selecting and manipulating web content
US7956847B2 (en) 2007-01-05 2011-06-07 Apple Inc. Gestures for controlling, manipulating, and editing of media files using touch sensitive devices
US7924271B2 (en) 2007-01-05 2011-04-12 Apple Inc. Detecting gestures on multi-event sensitive devices
US7907125B2 (en) 2007-01-05 2011-03-15 Microsoft Corporation Recognizing multiple input point gestures
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US8519963B2 (en) 2007-01-07 2013-08-27 Apple Inc. Portable multifunction device, method, and graphical user interface for interpreting a finger gesture on a touch screen display
US7671756B2 (en) * 2007-01-07 2010-03-02 Apple Inc. Portable electronic device with alert silencing
US7966578B2 (en) 2007-01-07 2011-06-21 Apple Inc. Portable multifunction device, method, and graphical user interface for translating displayed content
US7844915B2 (en) 2007-01-07 2010-11-30 Apple Inc. Application programming interfaces for scrolling operations
US20080168395A1 (en) 2007-01-07 2008-07-10 Bas Ording Positioning a Slider Icon on a Portable Multifunction Device
US8091045B2 (en) 2007-01-07 2012-01-03 Apple Inc. System and method for managing lists
US20080168478A1 (en) 2007-01-07 2008-07-10 Andrew Platzer Application Programming Interfaces for Scrolling
US7872652B2 (en) 2007-01-07 2011-01-18 Apple Inc. Application programming interfaces for synchronization
US8665225B2 (en) 2007-01-07 2014-03-04 Apple Inc. Portable multifunction device, method, and graphical user interface for interpreting a finger gesture
US7903115B2 (en) 2007-01-07 2011-03-08 Apple Inc. Animations
US7912700B2 (en) 2007-02-08 2011-03-22 Microsoft Corporation Context based word prediction
JP4866262B2 (ja) 2007-02-16 2012-02-01 ソフトバンクモバイル株式会社 操作入力処理方法及び携帯型情報処理装置
JP4793287B2 (ja) 2007-02-28 2011-10-12 ブラザー工業株式会社 通信装置および通信システム
KR101383709B1 (ko) 2007-03-07 2014-04-09 삼성디스플레이 주식회사 표시 장치 및 그의 구동 방법
EP1970799B1 (en) 2007-03-15 2017-08-16 LG Electronics Inc. Electronic device and method of controlling mode thereof and mobile communication terminal
US8436815B2 (en) 2007-05-25 2013-05-07 Microsoft Corporation Selective enabling of multi-input controls
JP5117121B2 (ja) 2007-06-18 2013-01-09 パイオニア株式会社 Av機器の操作制御システム
US8350815B2 (en) 2007-06-20 2013-01-08 Sony Mobile Communications Portable communication device including touch input with scrolling function
US8171432B2 (en) 2008-01-06 2012-05-01 Apple Inc. Touch screen device, method, and graphical user interface for displaying and selecting application options
US8059101B2 (en) 2007-06-22 2011-11-15 Apple Inc. Swipe gestures for touch screen keyboards
WO2009018314A2 (en) 2007-07-30 2009-02-05 Perceptive Pixel, Inc. Graphical user interface for large-scale, multi-user, multi-touch systems
JP4465374B2 (ja) 2007-08-14 2010-05-19 株式会社エヌ・ティ・ティ・ドコモ 無線通信システム、基地局装置及び送信方法
US8471823B2 (en) 2007-08-16 2013-06-25 Sony Corporation Systems and methods for providing a user interface
US20090051671A1 (en) 2007-08-22 2009-02-26 Jason Antony Konstas Recognizing the motion of two or more touches on a touch-sensing surface
US7949516B2 (en) 2007-08-31 2011-05-24 Research In Motion Limited Handheld electronic device and method employing logical proximity of characters in spell checking
KR101348721B1 (ko) 2007-09-03 2014-01-08 엘지전자 주식회사 휴대 단말기 및 그 휴대 단말기의 터치 인식 방법
KR20090024541A (ko) 2007-09-04 2009-03-09 삼성전자주식회사 하이퍼링크 선택 방법 및 이를 이용하는 이동통신 단말기
WO2009049331A2 (en) 2007-10-08 2009-04-16 Van Der Westhuizen Willem Mork User interface
US7917584B2 (en) * 2007-10-22 2011-03-29 Xcerion Aktiebolag Gesture-based collaboration
JP2009110286A (ja) 2007-10-30 2009-05-21 Toshiba Corp 情報処理装置、ランチャー起動制御プログラムおよびランチャー起動制御方法
WO2009062124A1 (en) 2007-11-09 2009-05-14 Wms Gaming, Inc. Interface for wagering game environments
JP2009169825A (ja) 2008-01-18 2009-07-30 Kyocera Mita Corp 表示入力装置、電子機器及び表示入力制御プログラム
US20090207140A1 (en) 2008-02-19 2009-08-20 Sony Ericsson Mobile Communications Ab Identifying and responding to multiple time-overlapping touches on a touch panel
TWI352924B (en) 2008-02-21 2011-11-21 Wintek Corp Touch panel and driving method of touch panel
US8416196B2 (en) 2008-03-04 2013-04-09 Apple Inc. Touch event model programming interface
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US8289283B2 (en) 2008-03-04 2012-10-16 Apple Inc. Language input interface on a device
US8174502B2 (en) 2008-03-04 2012-05-08 Apple Inc. Touch event processing for web pages
US8717305B2 (en) 2008-03-04 2014-05-06 Apple Inc. Touch event model for web pages
US8352877B2 (en) 2008-03-06 2013-01-08 Microsoft Corporation Adjustment of range of content displayed on graphical user interface
US20090231281A1 (en) 2008-03-11 2009-09-17 Microsoft Corporation Multi-touch virtual keyboard
US8289289B2 (en) 2008-04-03 2012-10-16 N-trig, Ltd. Multi-touch and single touch detection
KR101513024B1 (ko) 2008-04-22 2015-04-17 엘지전자 주식회사 단말기 및 이것의 이미지 인식 방법
US8526767B2 (en) 2008-05-01 2013-09-03 Atmel Corporation Gesture recognition
US20100177053A2 (en) 2008-05-09 2010-07-15 Taizo Yasutake Method and apparatus for control of multiple degrees of freedom of a display
US20090282332A1 (en) 2008-05-12 2009-11-12 Nokia Corporation Apparatus, method and computer program product for selecting multiple items using multi-touch
US9268483B2 (en) 2008-05-16 2016-02-23 Microsoft Technology Licensing, Llc Multi-touch input platform
US8584048B2 (en) 2008-05-29 2013-11-12 Telcordia Technologies, Inc. Method and system for multi-touch-based browsing of media summarizations on a handheld device
US20090309847A1 (en) 2008-06-12 2009-12-17 You I Labs, Inc. Apparatus and method for providing multi-touch interface capability
US7864037B2 (en) * 2008-06-16 2011-01-04 International Business Machines Corporation Pattern-driven communication architecture
US20090322699A1 (en) 2008-06-25 2009-12-31 Sony Ericsson Mobile Communications Ab Multiple input detection for resistive touch panel
US8754855B2 (en) 2008-06-27 2014-06-17 Microsoft Corporation Virtual touchpad
US20090322700A1 (en) 2008-06-30 2009-12-31 Tyco Electronics Corporation Method and apparatus for detecting two simultaneous touches and gestures on a resistive touchscreen
JP2010015238A (ja) 2008-07-01 2010-01-21 Sony Corp 情報処理装置、及び補助情報の表示方法
US8154428B2 (en) 2008-07-15 2012-04-10 International Business Machines Corporation Gesture recognition control of electronic devices using a multi-touch device
US8237807B2 (en) 2008-07-24 2012-08-07 Apple Inc. Image capturing device with touch screen for adjusting camera settings
US8390577B2 (en) 2008-07-25 2013-03-05 Intuilab Continuous recognition of multi-touch gestures
KR101482120B1 (ko) 2008-08-01 2015-01-21 엘지전자 주식회사 스케줄 관리가 가능한 휴대 단말기 및 그 제어방법
CN101339453B (zh) * 2008-08-15 2012-05-23 广东威创视讯科技股份有限公司 基于交互式输入设备的模拟鼠标输入方法
US8135171B2 (en) 2008-08-19 2012-03-13 Au Optronics Corp. Multipoint tracking method and related device
CN101661361A (zh) 2008-08-27 2010-03-03 比亚迪股份有限公司 多点触摸检测系统
US8279241B2 (en) 2008-09-09 2012-10-02 Microsoft Corporation Zooming graphical user interface
US20100088628A1 (en) 2008-10-07 2010-04-08 Sony Ericsson Mobile Communications Ab Live preview of open windows
US20100107116A1 (en) 2008-10-27 2010-04-29 Nokia Corporation Input on touch user interfaces
JP4853507B2 (ja) 2008-10-30 2012-01-11 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US8732576B2 (en) 2008-12-04 2014-05-20 Nvidia Corporation Operating system providing multi-touch support for applications in a mobile device
TW201023018A (en) 2008-12-12 2010-06-16 Asustek Comp Inc Touch panel with multi-touch function and multi-touch detecting method thereof
US8217909B2 (en) 2008-12-19 2012-07-10 Cypress Semiconductor Corporation Multi-finger sub-gesture reporting for a user interface device
US8869070B2 (en) 2008-12-30 2014-10-21 T-Mobile Usa, Inc. Handwriting manipulation for conducting a search over multiple databases
KR101521932B1 (ko) 2009-01-19 2015-05-20 엘지전자 주식회사 단말기 및 그 제어 방법
BRPI1008357A2 (pt) 2009-02-10 2016-02-23 Sharp Kk dispositivo de autenticação, método de autenticação, e programa para execução deste por computador
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US9311112B2 (en) 2009-03-16 2016-04-12 Apple Inc. Event recognition
US8566044B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8285499B2 (en) 2009-03-16 2012-10-09 Apple Inc. Event recognition
US9684521B2 (en) 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
KR101510484B1 (ko) 2009-03-31 2015-04-08 엘지전자 주식회사 이동 단말기 및 이동 단말기의 제어 방법
US20100281435A1 (en) 2009-04-30 2010-11-04 At&T Intellectual Property I, L.P. System and method for multimodal interaction using robust gesture processing
US8427440B2 (en) 2009-05-05 2013-04-23 Microsoft Corporation Contact grouping and gesture recognition for surface computing
US9367216B2 (en) 2009-05-21 2016-06-14 Sony Interactive Entertainment Inc. Hand-held device with two-finger touch triggered selection and transformation of active elements
US8493344B2 (en) 2009-06-07 2013-07-23 Apple Inc. Devices, methods, and graphical user interfaces for accessibility using a touch-sensitive surface
DE102009024656A1 (de) 2009-06-12 2011-03-24 Volkswagen Ag Verfahren zum Steuern einer grafischen Benutzerschnittstelle und Bedienvorrichtung für eine grafische Benutzerschnittstelle
US20110069021A1 (en) 2009-06-12 2011-03-24 Hill Jared C Reducing false touchpad data by ignoring input when area gesture does not behave as predicted
KR101608532B1 (ko) 2009-08-11 2016-04-01 엘지전자 주식회사 이동 통신 단말기에서의 데이터 표시방법 및 이를 적용한 이동 통신 단말기
US8310459B2 (en) 2009-09-23 2012-11-13 Nokia Corporation Touch detection
US9223590B2 (en) 2010-01-06 2015-12-29 Apple Inc. System and method for issuing commands to applications based on contextual information
TWI400638B (zh) 2009-10-20 2013-07-01 Acer Inc 觸控顯示裝置、觸控顯示系統及其調整觸控區域之方法
KR20110047349A (ko) 2009-10-30 2011-05-09 주식회사 팬택 휴대용 단말기에서 터치와 가압을 이용하는 사용자 인터페이스 장치 및 방법
US8957918B2 (en) 2009-11-03 2015-02-17 Qualcomm Incorporated Methods for implementing multi-touch gestures on a single-touch touch surface
US8390600B2 (en) 2009-11-13 2013-03-05 Microsoft Corporation Interactive display system with contact geometry interface
US20100085323A1 (en) 2009-12-04 2010-04-08 Adam Bogue Segmenting a Multi-Touch Input Region by User
US8432368B2 (en) 2010-01-06 2013-04-30 Qualcomm Incorporated User interface methods and systems for providing force-sensitive input
US8140570B2 (en) 2010-03-11 2012-03-20 Apple Inc. Automatic discovery of metadata
US8296332B2 (en) 2010-04-01 2012-10-23 Apple Inc. Visual manipulation of database schema
KR20110110940A (ko) 2010-04-02 2011-10-10 삼성전자주식회사 휴대용 단말기의 터치 입력 장치 및 방법
US20110252357A1 (en) 2010-04-07 2011-10-13 Imran Chaudhri Device, Method, and Graphical User Interface for Managing Concurrently Open Software Applications
US9146751B2 (en) 2010-04-07 2015-09-29 Apple Inc. Device, method, and graphical user interface for navigation of multiple applications
US8131898B2 (en) 2010-05-27 2012-03-06 Adobe Systems Incorporated Event handling in an integrated execution environment
EP2390766B1 (en) 2010-05-28 2013-09-25 BlackBerry Limited Electronic device including touch-sensitive display and method of controlling same
US20130120280A1 (en) 2010-05-28 2013-05-16 Tim Kukulski System and Method for Evaluating Interoperability of Gesture Recognizers
US8669946B2 (en) 2010-05-28 2014-03-11 Blackberry Limited Electronic device including touch-sensitive display and method of controlling same
CN102262890A (zh) 2010-05-31 2011-11-30 鸿富锦精密工业(深圳)有限公司 电子装置及其标记方法
US10216408B2 (en) 2010-06-14 2019-02-26 Apple Inc. Devices and methods for identifying user interface objects based on view hierarchy
JP5663980B2 (ja) 2010-06-29 2015-02-04 ブラザー工業株式会社 画像処理装置
TWI407346B (zh) 2010-07-30 2013-09-01 Ind Tech Res Inst 觸控輸入裝置之軌跡補償方法與系統,及其電腦程式產品
US20120133579A1 (en) 2010-11-30 2012-05-31 Microsoft Corporation Gesture recognition management
US20120242584A1 (en) 2011-03-22 2012-09-27 Nokia Corporation Method and apparatus for providing sight independent activity reports responsive to a touch gesture
US9298363B2 (en) 2011-04-11 2016-03-29 Apple Inc. Region activation for touch sensitive surface
AU2011202182B1 (en) 2011-05-11 2011-10-13 Frequency Ip Holdings, Llc Creation and presentation of selective digital content feeds
TWI467463B (zh) 2011-05-27 2015-01-01 Asustek Comp Inc 具觸控式螢幕的電腦系統及其手勢的處理方法
US9071970B2 (en) 2011-12-05 2015-06-30 Sony Corporation Terminal device
US9046958B2 (en) 2012-03-15 2015-06-02 Nokia Technologies Oy Method, apparatus and computer program product for user input interpretation and input error mitigation
US9733716B2 (en) 2013-06-09 2017-08-15 Apple Inc. Proxy gesture recognizer
US9430142B2 (en) 2014-07-17 2016-08-30 Facebook, Inc. Touch-based gesture recognition and application navigation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2256606A2 (en) * 1998-01-26 2010-12-01 Apple Inc. Method and apparatus for integrating manual input
CN101052939A (zh) * 2004-07-30 2007-10-10 苹果电脑有限公司 用于触敏输入设备的基于模式的图形用户接口

Also Published As

Publication number Publication date
JP2019032854A (ja) 2019-02-28
AU2010226120A1 (en) 2011-11-03
JP6408085B2 (ja) 2018-10-17
CA2755443A1 (en) 2010-09-23
KR101278346B1 (ko) 2013-06-25
CN104035717B (zh) 2017-04-12
US20160162180A1 (en) 2016-06-09
KR20110130484A (ko) 2011-12-05
CN104035718B (zh) 2017-08-25
CA2817890C (en) 2015-12-29
US8682602B2 (en) 2014-03-25
US9285908B2 (en) 2016-03-15
JP2012521050A (ja) 2012-09-10
US9965177B2 (en) 2018-05-08
JP5879395B2 (ja) 2016-03-08
JP2014211889A (ja) 2014-11-13
CA2817648C (en) 2014-12-30
CN102422264B (zh) 2014-06-11
CN104035718A (zh) 2014-09-10
US8285499B2 (en) 2012-10-09
CA2817648A1 (en) 2010-09-23
CN104049975A (zh) 2014-09-17
CN102422264A (zh) 2012-04-18
EP2409222A2 (en) 2012-01-25
DE112010001143T5 (de) 2012-05-16
CN104049975B (zh) 2017-04-19
JP6695395B2 (ja) 2020-05-20
EP2413237A1 (en) 2012-02-01
CA2817890A1 (en) 2010-09-23
US20100235118A1 (en) 2010-09-16
JP2017215983A (ja) 2017-12-07
CA2755443C (en) 2013-08-06
WO2010107669A2 (en) 2010-09-23
CA2909730A1 (en) 2010-09-23
US8428893B2 (en) 2013-04-23
JP6180563B2 (ja) 2017-08-16
EP2413237B1 (en) 2019-10-16
US20140160052A1 (en) 2014-06-12
AU2010226120B2 (en) 2013-10-24
JP2016129029A (ja) 2016-07-14
WO2010107669A3 (en) 2010-11-25
CA2909730C (en) 2018-06-05
JP5594914B2 (ja) 2014-09-24
US20110310047A1 (en) 2011-12-22
US20130016039A1 (en) 2013-01-17

Similar Documents

Publication Publication Date Title
CN102422264B (zh) 事件识别
CN102135858B (zh) 具有用于控制和修改手势识别的代表的手势识别器
CN203287883U (zh) 电子设备及其信息处理装置
CN105339900A (zh) 代理手势识别器

Legal Events

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