This invention generally relates to electronic devices
Input devices including proximity sensor devices (also commonly called touchpads or touch sensor devices) are widely used in a variety of electronic systems. A proximity sensor device typically includes a sensing region, often demarked by a surface, in which the proximity sensor device determines the presence, location and/or motion of one or more input objects. Proximity sensor devices may be used to provide interfaces for the electronic system. For example, proximity sensor devices are often used as input devices for larger computing systems (such as opaque touch pads integrated in, or peripheral to, notebook or desktop computers). Proximity sensor devices are also often used in smaller computing systems (such as touch screens integrated in cellular phones).
There is a continuing need for improvements in input devices.
An input device comprising a sensing element (and perhaps other sensing elements), and a processing system coupled to the sensing element is disclosed. The sensing element is configured to detect object motion in a sensing region. The processing system is configured to operate in a first mode, to change from operating in the first mode to operating in a second mode in response to recognizing a characteristic object motion in the sensing region, and to operate in the second mode. The first mode may be a pointing mode and the second mode may be an enhanced gesturing mode. The processing system recognizes a plurality of gesture commands associated with a plurality of different gesture actions while in the enhanced gesturing mode. Thus, the processing system recognizes a first type of sliding input in the sensing region as a pointing command while in the pointing mode, and recognizes the first type of sliding input in the sensing region as one of the plurality of gesture commands while in the enhanced gesturing mode.
A method of operating an electronic system comprising a proximity sensor device and a display screen is disclosed. The proximity sensor device is configured to detect object motion in a sensing region and the display screen is configured to provide a visual display. The method comprises operating in a pointing mode, where the electronic system is configured to recognize a plurality of types of sliding input in the sensing region as pointing commands for interacting with the visual display while in the pointing mode. The method further comprises changing from operating in the pointing mode to operating in an enhanced gesturing mode in response to the recognizing a characteristic object motion in the sensing region as the mode changing gesture. While in the enhanced gesturing mode, the electronic system is configured to recognize the plurality of types of sliding input as a plurality of gesture commands associated with a plurality of different gesture actions while in the enhanced gesturing mode. The method also comprises providing feedback detectable by a user indicative of the electronic system operating in the enhanced gesturing mode.
An input device comprising at least one sensing element, an input surface configured to be contacted by input objects, and a processing system coupled to the at least one sensing element is disclosed. The processing system is configured to operate the at least one sensing element to detect input objects arriving at and lifting from the input surface, and to change from a first operating mode to a second operating mode in response to an identification of a mode changing gesture. The mode changing gesture comprises an input sequence comprising a set of input objects arriving at the input surface followed by a first subset of the set of input objects lifting from the input surface, while a second subset of the set of input objects remains on the input surface. The first subset and the second subset are both non-empty proper subsets of the set of input objects
A program product comprising non-transient electronic media bearing a proximity sensor program is disclosed. The electronic media is readable by the processing system. The input device program is executable by a processing system to operate an input device to detect input objects arriving at and lifting from the input surface, identify a mode changing gesture, and change from a first operating mode to a second operating mode in response to identification of the mode changing gesture. The mode changing gesture comprises an input sequence comprising a plurality of input objects arriving at the input surface followed by at least one of the plurality of input objects lifting from the input surface, while at least another one of the plurality of input objects remains on the input surface.
The preferred exemplary embodiment of the present invention will hereinafter be described in conjunction with the appended drawings, where like designations denote like elements, and:
The following detailed description is merely exemplary in nature and is not intended to limit the invention or the application and uses of the invention. Furthermore, there is no intention to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary or the following detailed description.
Various embodiments of the present invention provide input devices and methods that facilitate improved usability.
Turning now to the figures,
The input device 100 can be implemented as a physical part of the electronic system, or be physically separate from the electronic system. As appropriate, the input device 100 may communicate with parts of the electronic system using any one or more of the following: buses, networks, and other wired or wireless interconnections. Examples include I2C, SPI, PS/2, Universal Serial Bus (USB), Bluetooth, RF, and IRDA.
In
Sensing region 120 encompasses any space above, around, in and/or near the input device 100 in which the input device 100 is able to detect user input (e.g., user input provided by one or more input objects 140). The sizes, shapes, and locations of particular sensing regions may vary widely from embodiment to embodiment. In some embodiments, the sensing region 120 extends from a surface of the input device 100 in one or more directions into space until signal-to-noise ratios prevent sufficiently accurate object detection. The distance to which this sensing region 120 extends in a particular direction, in various embodiments, may be on the order of less than a millimeter, millimeters, centimeters, or more, and may vary significantly with the type of sensing technology used and the accuracy desired. Thus, some embodiments sense input that comprises no contact with any surfaces of the input device 100, contact with an input surface (e.g. a touch surface) of the input device 100, contact with an input surface of the input device 100 coupled with some amount of applied force or pressure, and/or a combination thereof. In some embodiments, the sensing region 120 has a rectangular shape when projected onto an input surface of the input device 100.
The input device 100 may utilize any combination of sensor components and sensing technologies to detect user input in the sensing region 120. The input device 100 comprises one or more sensing elements for detecting user input. As several non-limiting examples, the input device 100 may use capacitive, elastive, resistive, inductive, surface acoustic wave, and/or optical techniques.
Some implementations are configured to provide images that span one, two, three, or higher dimensional spaces. Some implementations are configured to provide projections of input along particular axes or planes.
In some resistive implementations of the input device 100, a flexible and conductive first layer is separated by one or more spacer elements from a conductive second layer. During operation, one or more voltage gradients are created across the layers. Pressing the flexible first layer may deflect it sufficiently to create electrical contact between the layers, resulting in voltage outputs reflective of the point(s) of contact between the layers. These voltage outputs may be used to determine positional information.
In some inductive implementations of the input device 100, one or more sensing elements pick up loop currents induced by a resonating coil or pair of coils. Some combination of the magnitude, phase, and frequency of the currents may be used to determine positional information.
In some capacitive implementations of the input device 100, voltage or current is applied to create an electric field. Nearby input objects cause changes in the electric field, and produce detectable changes in capacitive coupling that may be detected as changes in voltage, current, or the like.
Some capacitive implementations utilize arrays or other patterns of capacitive sensing elements to create electric fields. In some capacitive implementations, separate sensing elements may be ohmically shorted together to form larger sensor electrodes. Some capacitive implementations utilize resistive sheets, which may be uniformly resistive.
Some capacitive implementations utilize “self capacitance” (also “absolute capacitance”) sensing methods based on changes in the capacitive coupling between sensor electrodes and an input object. In various embodiments, an input object near the sensor electrodes alters the electric field near the sensor electrodes, thus changing the measured capacitive coupling. In one implementation, an absolute capacitance sensing method operates by modulating sensor electrodes with respect to a reference voltage (e.g. system ground), and by detecting the capacitive coupling between the sensor electrodes and input objects.
Some capacitive implementations utilize “mutual capacitance” (also “transcapacitance”) sensing methods based on changes in the capacitive coupling between sensor electrodes. In various embodiments, an input object near the sensor electrodes alters the electric field between the sensor electrodes, thus changing the measured capacitive coupling. In one implementation, a transcapacitive sensing method operates by detecting the capacitive coupling between one or more transmitting electrodes and one or more receiving electrodes. Transmitting sensor electrodes may be substantially modulated relative to a reference voltage (e.g. system ground) to facilitate transmission, and receiving sensor electrodes may be held substantially constant relative to the reference voltage to facilitate receipt. Sensor electrodes may be dedicated transmitters or receivers, or they may transmit as well as receive.
In
The processing system 110 may be implemented as a set of modules that handle different functions of the processing system 110. Each module may comprise circuitry that is a part of the processing system 110, firmware, software, or a combination thereof. In various embodiments, different combinations of modules may be used. Example modules include hardware operation modules for operating hardware such as sensor electrodes and display screens, data processing modules for processing data such as sensor signals and positional information, and reporting modules for reporting information. Further example modules include sensor operation modules configured to operate sensing element(s) to detect input, identification modules configured to identify gestures such as mode changing gestures, and mode changing modules for changing operation modes.
In some embodiments, the processing system 110 responds to user input (or lack of user input) in the sensing region 120 directly by causing actions. Example actions include changing operation modes, as well as GUI actions such as cursor movement, selection, menu navigation, and other functions. In some embodiments, the processing system 110 provides information about the input (or lack of input) to some part of the electronic system (e.g. to a central processing system of the electronic system that is separate from the processing system 110, if such a separate central processing system exists). In some embodiments, some part of the electronic system processes information received from the processing system 110 to act on user input, such as to facilitate a full range of actions, including mode changing actions and GUI actions.
For example, in some embodiments, the processing system 110 operates the sensing element(s) of the input device 100 to produce electrical signals indicative of input (or lack of input) in the sensing region 120. The processing system 110 may perform any appropriate amount of processing on the electrical signals in producing the information provided to the electronic system. For example, the processing system 110 may merely digitize the electrical signals. As another example, the processing system 110 may perform filtering or other signal conditioning. As yet another example, the processing system 110 may subtract or otherwise account for a baseline, such that the information reflects a difference between the electrical signals and the baseline. As yet further examples, the processing system 110 may determine “positional information,” recognize inputs as commands, recognize handwriting, and the like.
“Positional information” as used herein broadly encompasses absolute position, relative position, velocity, acceleration, and other types of spatial information. Various forms of positional information may also include time history components, as in the case of tracking motion over time. Exemplary “zero-dimensional” positional information includes near/far or contact/no contact information. Exemplary “one-dimensional” positional information includes positions along an axis. Exemplary “two-dimensional” positional information includes motions relative to a plane. Exemplary “three-dimensional” positional information includes velocities in space. Other examples include other dimensions and other representations of spatial information.
In some embodiments, the input device 100 is implemented with additional input components that are operated by the processing system 110 or by some other processing system. These additional input components may provide redundant functionality for input in the sensing region 120, or to provide some other functionality.
In some embodiments, the input device 100 comprises a touch screen interface, and the sensing region 120 overlaps at least part of an active area of a display screen. For example, the input device 100 may comprise substantially transparent sensor electrodes overlaying the display screen and provide a touch screen interface for the associated electronic system. The display screen may be any type of dynamic display capable of displaying a visual interface to a user, and may include any type of light emitting diode (LED), organic LED (OLED), cathode ray tube (CRT), liquid crystal display (LCD), plasma, electroluminescence (EL), or other display technology. The input device 100 and the display screen may share physical elements. For example, some embodiments may utilize some of the same electrical components for displaying and sensing. As another example, the display screen may be operated in part or in total by the processing system 110.
It should be understood that while many embodiments of the invention are to be described here in the context of a fully functioning apparatus, the mechanisms of the present invention are capable of being distributed as a program product (e.g., software) in a variety of forms. For example, the mechanisms of the present invention may be implemented and distributed as a software program on information bearing media that is readable by electronic processors (e.g., non-transitory computer-readable and/or recordable/writable information bearing media that is readable by the processing system 110). Additionally, the embodiments of the present invention apply equally regardless of the particular type of medium used to carry out the distribution. Examples of non-transitory, electronically readable media include various discs, memory sticks, memory cards, memory modules, and the like. Electronically readable media may be based on flash, optical, magnetic, holographic, or any other storage technology.
The following discussion often expressly refers to the processing system 110. However, it should be understood that such discussion is also applicable to systems other than the processing system 110. That is, systems other than the processing system 110 may implement the configurations and methods discussed either alone, with each other, or in conjunction with the processing system 110, and the like. Example other systems include the input device 100, other processing systems (e.g. processing systems of associated electronic systems, if such processing systems exist and are separate from the associated processing systems 110).
For example, if a method outlined below expressly refers to the processing system 110, an electronic system with the processing system 110 and a central processing system separate from the processing system 110 may perform part or all of the method using the central processing system. Any remaining parts of the method may be performed by the processing system 110, or by some other part of the electronic system.
A sliding input comprises object motion (motion of one or more objects) with some amount of lateral movement. The sliding input may further comprise object motion with little or no lateral movement. For example, in some embodiments comprising an input surface contactable by the input objects 140 providing sliding input in the sensing region 120, sliding inputs comprise motion with components parallel to the input surface that are greater than a motion threshold. These sliding inputs may further comprise motion with components perpendicular to the input surface.
Sliding inputs recognized as pointing commands trigger one or more pointing actions, and are used to facilitate navigation and selection. Pointing actions move arrows, cursors, pointers, icons, highlighters, and the like across or through desktop images, menus, and other user interface components.
In some embodiments, the first mode 210 is a “Pointing Mode” and the second mode 220 is an “Enhanced Gesturing Mode.” When operating in the Pointing Mode, the processing system 110 recognizes a first type of sliding input in the sensing region 120 as a first pointing command. That is, if the first type of sliding input is provided in the sensing region 120 when the processing system 110 is operating in the Pointing Mode, the processing system 110 would treat the first type of sliding input as a pointing command. In contrast, when operating in the Enhanced Gesturing Mode, the processing system 110 recognizes the first type of sliding input as a first gesture command of a plurality of gesture commands that it recognizes in the Enhanced Gesturing Mode; this plurality of gesture commands is associated with a plurality of different gesture actions. That is, if the first type of sliding input is provided in the sensing region 120 when the processing system 110 is operating in the Enhanced Gesturing Mode, the processing system 110 would treat the first type of sliding input as a gesture command instead of a pointing command. Thus, the first type of sliding input performed in the Pointing Mode causes a different outcome than the first type of sliding input performed in the Enhanced Gesturing Mode. For example, the first type of sliding input may have a “C” shape. This first type of sliding input may cause a cursor to move along a “C”-shaped path on a display in the Pointing Mode, and may cause an active application to close in the Enhanced Gesturing Mode.
In some embodiments, the processing system 110 further recognizes a second type of sliding input in the sensing region 120 as a second pointing command when operating in the Pointing Mode. And, the processing system 110 recognizes the second type of sliding input in the sensing region 120 as a second gesture command of the plurality of gesture commands that it recognizes in the Enhanced Gesturing Mode. The second gesture command is associated with a gesture action different from the gesture action associated with the first gesture commands. For example, the second type of sliding input may be a linear stroke beginning in a lower left portion and ending in an upper right portion of the sensing region 120. This second type of sliding input may cause the cursor to move toward the upper right on the display in the Pointing Mode, and may maximize or restore a display window in the Enhanced Gesturing Mode.
In various embodiments, the processing system 110 may recognize three, four, or more types of sliding inputs in the sensing region as pointing commands in the Pointing Mode and gesture commands in the Enhanced Gesturing Mode. These gesture commands may be associated with the same or different gesture actions.
Gesture commands and actions may be associated on a one-to-one, many-to-one, or one-to-many basis. Where multiple actions are associated with the same gesture command, which action results may be arbitrated by context or other appropriate criteria.
Additional examples of gesture commands include: two finger rotate for changing the orientation of an image; multiple-finger (e.g. two, three, four fingers) strokes to the left, right, up, or down, for application switching or for media controls (e.g. play/pause, stop, next, previous); two finger pinch or spread for zoom level adjustment; one-finger (or multi-finger) circular motion for scrolling; three finger pinch or spread for cut, copy, and paste; and three finger diagonal stroke for restoring a window.
Gesture commands can also be strung together in time to produce actions different from that of the individual gesture commands. For example, in some embodiments, a three finger pinch indicates copy, and a three finger diagonal upward stroke causes a window to maximize in size. A combination of a three finger pinch followed by a three finger diagonal upward stroke may share the selected item(s), such as by changing the security access of the item(s) or by posting them to a web site.
Turning now to
Although the example gesture commands of
The Pointing Mode is directed primarily towards pointing actions, and has at least one type of gesture that is recognized as a pointing command. In various embodiments, a majority of input in the Pointing Mode results in pointing actions. In some embodiments, multiple different types of object motion (e.g. with different lengths, path directions, shapes, timing and the like) are associated with the same type of pointing command (e.g. cursor motion).
The Enhanced Gesturing Mode is directed primarily towards making more actions available to users through gesture commands, and has at least one type of gesture that is recognized as a gesture command. In various embodiments, a majority of input in the Enhanced Gesturing Mode results in gesture actions. In some embodiments, multiple different types of object motion (e.g., with different lengths, path directions, shapes, timing and the like) are associated with the different gesture commands (e.g., the examples described in this document).
Some electronic devices or input devices 100 accept input by multiple input objects 140 (multi-touch) for pointing commands and for gesture commands. With such devices, a mode switch may facilitate distinguishing between pointing and gesture commands. In some embodiments, a mode switch may enable the processing system 110 to support gesture commands that, without the mode switch, it would not support. For example, in some embodiments, the first type of sliding input may be a finger tracing an question mark (“?”) on an input surface of the input device 100. This sliding input thus comprises a curved path followed by a tap. In the Pointing Mode, a finger drawing a question mark may cause cursor motion that first curves upwards to the right and then straight downwards (reflecting the curved path), and may also cause a simulated button click (resulting from the tap). While, in the Enhanced Gesturing Mode, a finger drawing a question mark may launch a help dialog or a directed search of highlighted text (e.g. on desktop or via the web). Thus, a mode switch could help differentiate different modes of input operation and desired actions. In some embodiments, with a mode switch to an Enhanced Gesturing Mode, the processing system 110 may be better able to differentiate customized gestures and/or character input from pointing operations.
In some embodiments, the processing system 110 recognizes some inputs as gesture commands in the Pointing Mode. However, the set of gesture commands recognized in the Pointing Mode differs from the set of gesture commands recognized in the Enhanced Gesturing Mode. Thus, an input that is treated as a gesture command in the Pointing Mode may be recognized as a different gesture command in the Enhanced Gesturing Mode.
In some embodiments, as shown in
Although
The Mode Changing Gesture 215 may comprise any appropriate characteristic object motion. Some embodiments recognize only one type of characteristic object motion as the Mode Changing Gesture 215, while other embodiments recognize multiple different types of characteristic object motion as the Mode Changing Gesture 215.
Which characteristic object motions are recognized as Mode Changing Gesture(s) 215 may be predefined before the system reaches the end user, defined by the end user, or both. Which characteristic object motions are recognized as Mode Changing Gesture(s) 215 may also be fixed (not changeable by users), or changeable by users. For example, one or more Mode Changing Gestures 215 may be preset by software, and users may be unable to change them. As another example, multiple Mode Changing Gestures 215 may be preset by software or by some entity before the system reaches an end user, and users may be able to select one or more of these multiple Mode Changing Gestures 215 as the one(s) that the users prefer to use. As a further example, users may be able to adjust the Mode Changing Gestures 215 slightly (e.g. change a duration of contact that may be required for input to be recognized as a three-finger tap, the size ranges accepted for particular strokes or other features of a gesture, and the like). As yet another example, users may be able to change or affect these Mode Changing Gestures 215 substantially or define the Mode Changing Gestures 215 entirely.
In some embodiments, the Mode Changing Gesture 215 involves a change in contact state of one or more input objects 140. A change in contact state may comprise changing between contact and no contact. For example,
Moving from
As another example,
In some embodiments, the processing system 110 considers the contact state of the finger 540 to have changed where the distance d is greater than an actuation distance associated with depression or other movement of the input surface 550. In some embodiments, this distance d is associated with the actuation of a switch such as a snap dome or tact switch. For example, some embodiments of the input device 100 comprise a switch configured to be actuated with sufficient movement of the input surface 550. Such embodiments include clickable touch sensors found in various commercial phones and laptops. In such embodiments, determining that a change in contact state occurred may comprise determining actuation of the switch.
a)-5(b) shows an embodiment where the component 552 translates to accommodate the depression of the input surface 550. In some embodiments, the input surface 550 moves at least partially through deformation or other reconfiguration of the component 552 or other components of the input device 100. As shown in
a)-5(b) shows an embodiment where the processing system 110 determines a pressed contact state by detecting movement of the input surface 550. In some embodiments, the processing system 110 determines a pressed contact state at least in part using other characteristics. For example, in some embodiments, the processing system 110 examines the magnitude of change in capacitive coupling(s), the contact area, the shape of contact area, the change in contact area, the force or pressure applied by the finger 540 (individually or in total with other input object(s)), a combination thereof, and the like. These characteristics may be detected by the same sensing element(s) as used to detect input in the sensing region 120 (perhaps even using the same signals received while detecting input in the sensing region 120), by other sensors (including switches), or a combination thereof.
a)-(i) show examples of changes in contact state for two input objects on an input surface 650. Specifically,
a) in combination with one or more
In some embodiments, recognizing characteristic object motion as the Mode Changing Gesture 215 comprises: determining that the object motion detected in the sensing region 120 comprises a plurality of input objects on an input surface, and determining that at least one of the plurality of input objects on the input surface changes its contact state. In some embodiments, the Mode Changing Gesture 215 comprises determining that at least one of the plurality of input objects changes its contact state multiple times.
In some embodiments, the processing system 110 recognizes, as the Mode Changing Gesture 215, characteristic object motion comprising multiple input objects contacting an input surface one (or more) times. In recognizing object motion as the Mode Changing Gesture 215, the processing system 110 may also apply various criteria to input characteristics such as duration of time in contact/not in contact, distance from an input surface, force applied, and the like.
Some embodiments recognize multiple taps detected in series as the Mode Changing Gesture 215. For example, some embodiments may consider two, three, four, or more taps by a single input object as the Mode Changing Gesture 215. As another example, in some embodiments, recognizing characteristic object motion as the Mode Changing Gesture 215 comprises determining that a plurality of input objects tap substantially simultaneously on the input surface once (or more times). As a specific example, some embodiments may look for two input objects tapped twice on an input surface, and some embodiments may look for three input objects tapped twice on an input surface. As yet another specific example, some embodiments may look for two input objects tapping an input surface followed by three input objects tapping the input surface, or vice versa. Thus, in various embodiments, the characteristic object motion recognized as Mode Switching Gesture 215 may comprise tapping of any combination of numbers and repetitions of input objects.
Some embodiments place strict requirements on the contemporaneousness of the arrival of the input objects, or the departure of the input objects, or both. Other embodiments do not. For example, some embodiments accept input objects that arrive (or depart) within a specified time period to be “simultaneous.” The specified time period may coincide with human perceptive ability, such that typical users do not perceive the arrival or departure times of the input objects to be distinct. In embodiments that specify time periods for both arrival and departure, these time periods may be of the same or different durations.
Some embodiments may monitor for the return of a single input object to the input surface to provide object motion that may be recognized as gesture commands. Some embodiments may monitor for the return of multiple (e.g. two, three, etc.) input objects. Some embodiments are agnostic to the number of returning input objects, and consider the next input provided in the sensing region 120 as a potential gesture command. In some embodiments, there is a time-out, such that input objects for providing the gesture command or the object motion that may be recognized as the gesture command must arrive within a time period (e.g. after the end of the characteristic object motion, after a beginning of the second mode, and the like).
While
Also, while
As another example, recognizing characteristic object motion as the Mode Changing Gesture 215 may comprise determining that one or more input objects (of multiple input objects contacting an input surface) substantially simultaneously depress or press harder on the input surface.
As a further example, in some embodiments, the change in contact state comprises at least one of the plurality of input objects on the input surface (and not all of the plurality of input objects on the input surface) lifting from the input surface. In such embodiments, recognizing characteristic object motion as the Mode Changing Gesture 215 may comprise determining that a first subset of the plurality of input objects previously on an input surface has lifted from the input surface, while a second subset of the plurality of input objects remain on the input surface. The first and second subsets are non-empty, proper subsets of the plurality of input objects, such that each subset contains at least one (and not all) of the input objects of the plurality of input objects. In other words, in such embodiments, recognizing characteristic object motion as the Mode Changing Gesture 215 may comprise determining that at least one of a plurality of input objects previously on an input surface has lifted from the input surface, while at least another one of the plurality of input objects remains on the input surface.
In
As yet another example, recognizing characteristic object motion as the Mode Changing Gesture 215 may comprise determining that a plurality of input objects substantially simultaneously touches, lifts from, and retouches an input surface.
In some embodiments, recognizing the characteristic object motion as the Mode Changing Gesture 215 may comprise detecting that the characteristic object motion occurs substantially simultaneously with actuation of one or more physical function switches, such as buttons or keypad keys.
Some embodiments may recognize the characteristic object motion as the Mode Changing Gesture 215 if it is coupled with the pressing of one or more keys specifically associated with the Mode Changing Gesture 215, the first mode 210, and/or the second mode 220. Some embodiments may monitor for the pressing of multiple keys not specific to the Mode Changing. The keys may be part of or separate from the input device 100.
For example, the input device 100 may be used in conjunction with a standard keyboard, and the characteristic object motion may be recognized as the Mode Changing Gesture 215 if the <shift> and <ctrl> keys are actuated at the same time as the provision of the characteristic object motion. As another example, some embodiments may monitor for the pressing of function keys coupled with characteristic object motion detected by the input device 100 (e.g. <control>-<alt> accompanied by a tap or a traced “S” on an input surface of the input device 100).
Returning now to
In various embodiments, the termination command may be the same as or be different from the characteristic object motion recognized as the Mode Changing Gestures 215 for those embodiments. For example, in some embodiments, the termination command comprises object motions that match the characteristic object motions recognized as Mode Changing Gestures 215 for those embodiments (e.g. both the termination command and the characteristic object motion are three touches of short duration by three input objects). As another example, the termination command may comprise object motion that is similar to, but different from, from the characteristic object motion recognized as Mode Changing Gesture 215 (e.g. both involve two touches of by two input objects, but the Mode Changing Gesture 215 comprises a touch of shorter duration followed by a touch of longer duration, and the termination command comprises a touch of longer duration followed by a touch of shorter duration). As yet another example, the termination command may comprise object motion that is clearly different from the characteristic object motion recognized as the Mode Changing Gesture 215 (e.g. involving different numbers, sequences, motion, and the like, of input objects in the sensing region 120).
As another example, in some embodiments, the processing system 110 is configured to change from operating in the second mode 220 in response to detecting an end of a subsequent object motion. Any appropriate methodology can be applied to determine the end of an object motion, and some examples are highlighted here. In some embodiments, the end of an object motion comprises the input object(s) providing the object motion exiting or being outside of the sensing region 120. In some embodiments, the end of object motion comprises the input object(s) providing the object motion lifting from, sliding out of, or otherwise moving away from an input surface or the sensing region 120 (and not necessarily exiting the sensing region 120). In some embodiments, the end of object motion comprises the input object(s) providing the object motion making a sharp change in position, velocity, and/or acceleration. In some embodiments, the end of object motion comprises the input object(s) providing the object motion staying relatively stationary for more than a reference amount of time. The input object(s) may be considered relatively stationary when they change in position less than a reference amount, when they do not move past a reference distance from a prior position, when they exhibit speeds of less than a reference speed, and the like.
As another example, in some embodiments, the processing system 110 is configured to change from operating in the second mode 220 in response to recognizing a subsequent sliding input as one of a plurality of gesture commands. In some embodiments, recognizing the subsequent sliding input as any of the gesture commands recognized in the second mode 220 would switch the processing system 110 from operating in the second mode 220. In some embodiments, recognizing the subsequent sliding input as one of a particular subset of the gesture commands recognized in the second mode 220 would switch the processing system 110 from operating in the second mode 220.
As yet another example, in some embodiments, the processing system 110 is configured to change from operating in the second mode 220 in response to a passage of a predetermined amount of time. The predetermined amount of time may be referenced from any appropriate reference, such as when the processing system 110 detects the characteristic object motion that is recognized as the Mode Changing Gesture 215, when the processing system 110 recognizes the characteristic object motion as the Mode Changing Gesture 215, and when the processing system 110 begins operating in the second mode 220, at a beginning, middle, or end of a first sliding input that occurs in the second mode 220. In various embodiments, the predetermined amount of time may be determined at any appropriate time before the start of the passage of the predetermined amount of time. Examples include: at manufacture, at start-up or coming out of a low-power state, at log-in or other security validation, and at changing to the second mode 220. The predetermined amount of time may also be changeable, such as in response to environmental conditions, operating status, user preferences, and input history.
In reference to
Thus, some embodiments recognize characteristic object motion as the Mode Changing Gesture 215 if it comprises a multitude of input objects (e.g. fingers) being placed on an input surface of an input device, followed by one or more of the input objects lifting from the input surface.
In some embodiments of the method 1400, the input device detects an end to an object motion by detecting that the one (or more) input object has stopped moving for some duration, has moved away from the surface, etc. Time-outs may also be used in some embodiments, such that an action or mode change triggered by the end to the object motion is confirmed and occurs some time after removal.
In some embodiments of the method 1400, the input device accepts a plurality of gesture commands while in the second operating mode, and may perform the following while in the second operating mode (and not while in the first operating mode). The input device may identify subsequent object motion of one (or more) of the second subset of input objects as one of the plurality of gesture commands accepted in the second operating mode.
In some embodiments, the input device changes modes from the second operating mode after all input objects have lifted from the input surface. (e.g. after the remaining input objects have been removed from the surface for a period of time). In embodiments with time-outs, a return of one or more input objects before the time-out may cause a continuation of the second operating mode. In some embodiments, the input device provides an output indicative of the change from the second operating mode.
In some embodiments of the method 1400, the characteristic object motion (that is recognized as the Mode Changing Gesture 215) comprises particular numbers of input objects arriving and lifting from the input surface. For example, the input device may accept M input objects arriving at the input surface and N input objects lifting from the input surface, where M minus N is one (so the number of input objects lifting from the input surface is one fewer than the plurality of input objects arriving at the input surface), is two (so the number of input objects lifting from the input surface is two fewer than the plurality of input objects arriving at the input surface), and the like. As an example with specific numbers, M may be 3, and N may be 2, such that M minus N is one. As another example with specific numbers, some embodiments recognize that a user has placed two input objects down simultaneously on an input surface, and then lifted one.
As another example, the input device may accept N input objects arriving at the input surface followed by one input object lifting (resulting in one fewer than N input objects remaining on the input surface).
The methods 1200, 1300, or 1400 may further comprise any number of additional steps. For example, some methods further comprise providing one or more outputs indicative of a change in operating mode (e.g. from the first operating mode to the second operating mode, from the second operating mode to another mode, etc.). Such outputs may indicate the mode change to other systems, provide feedback to the user about the operational mode (e.g. the first mode 210, the second mode 220, etc.), or both. The feedback may comprise visual feedback, aural feedback, tactile feedback, or a combination thereof. As yet another example, some methods further comprise moving a graphical element on a visual display in response to recognizing a first type of sliding input in the sensing region as a pointing command
The change in operating modes may not be visually indicated to users, or may be indicated in any variety of ways. For example, the pointer icon, the background color, display brightness, or some other visual element or characteristic may change in response to a mode switch. The indication may differ depending on the mode switched from or the mode switched to. As another example, a visual element or characteristic may be associated with the active operating mode, such that a particular pointer or background color is presented in a particular mode. Non-visual feedback, such as aural or tactile feedback, may complement visual feedback.
Some embodiments may launch applications or display windows specifically for use in one of the modes.
The embodiments and examples set forth herein were presented in order to best explain the present invention and its particular application and to thereby enable those skilled in the art to make and use the invention. However, those skilled in the art will recognize that the foregoing description and examples have been presented for the purposes of illustration and example only. The description as set forth is not intended to be exhaustive or to limit the invention to the precise form disclosed.
This application claims priority of U.S. Provisional Patent Application Ser. No. 61/288,109, which was filed on Dec. 18, 2009, U.S. Provisional Patent Application Ser. 61/311,040, which was filed on Mar. 5, 2010, and U.S. Provisional Patent Application Ser. 61/352,712, which was filed on Jun. 8, 2010, all of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61288109 | Dec 2009 | US | |
61311040 | Mar 2010 | US | |
61352712 | Jun 2010 | US |