RussianPatents.com

Dynamic programmed keyboard. RU patent 2504820.

Dynamic programmed keyboard. RU patent 2504820.
IPC classes for russian patent Dynamic programmed keyboard. RU patent 2504820. (RU 2504820):

G06F3/02 - Input arrangements using manually operated switches, e.g. using keyboards or dials (keyboard switches per seH01H0013700000; electronic switches characterised by the way in which the control signals are generated H03K0017940000)
Another patents in same IPC classes:
Method and device to control keyboard Method and device to control keyboard / 2504819
Device (2600) includes controlled shell texture (2606) that defines keyboard (2610), sensor and control logic (200). Sensor determines proximity of indicating element (2900) to each key (2800, 2808, 2902, 2908) of the keyboard based on user input. In response to proximity determination of indicating element to a certain key control logic changes height of each key of the keyboard. In one example device includes displaying device (2700) to display variety of keys (2612). Control logic changes visual properties of a certain key (2800, 2808, 2902, 2908) and adjacent keys (2802, 2810, 2904, 2910) in regards towards each other and other keys in variety in response to proximity determination of indicating element to a certain key.
Method and apparatus for selecting object on display screen Method and apparatus for selecting object on display screen / 2495477
Contact point on the screen is calculated, radius of the contact area from the contact point is established; if it is detected that selected objects are at least partially located in the contact area defined by the radius, the objects are partially activated by changing the nature of their display. When computing another contact point determining a partially activated object, that object is completely activated and other partially activated objects are deactivated.
Virtual keyboard of mobile terminal device Virtual keyboard of mobile terminal device / 2494442
Method to display a virtual keyboard on a display of a mobile terminal device, for instance, a mobile telephone, besides, the mobile terminal device comprises a camera for shooting video data, a screen for their display and a keyboard for selection of menu functions or input of, for instance, a text message, consists in the fact that the keyboard is displayed on the mobile terminal device screen in the form of a virtual keyboard, and the indicator (cursor) displayed on it is made as mobile, besides, in accordance with movements of the mobile terminal device made along spatial axes, the indicator (cursor) moves along the corresponding field of the virtual keyboard.
Method for inputting letters and symbols for mobile telephones Method for inputting letters and symbols for mobile telephones / 2484517
On the keyboard of a mobile telephone, a digital key is selected, on which the letter or symbol to be entered is located, and the key is pressed; another key with a figure matching the order of the sequence of the entered letter among other letters located on the selected key is further pressed.
Tuckaway keyboard for portable computer Tuckaway keyboard for portable computer / 2481613
Tuckaway keyboard for a portable computer includes a keyboard body made of two separate parts of the keyboard, which are hingedly connected to each other with the possibility to rotate to the left and to the right in parallel to the keyboard surface. At the same time separate parts of the keyboard are so hingedly connected to each other that their width and length switch places during rotation, besides, it additionally includes a connecting link made as capable to optionally disconnect the keyboard body from the main body of the portable computer or to connect the keyboard body to the main body of the portable computer. At the same time the connecting link is made in the form of a rod, one end of which is attached to a hinged unit and is inserted into the main body via one side of the main body.
Household electric appliance integrated control panel Household electric appliance integrated control panel / 2479010
Control panel contains: a printed board (1); multiple circuit breakers (2A, 2B, 2C) mounted thereon that are actuated by means of the buttons (3A, 3B, 3C) projecting to the outside; a plastic base (4) positioned over the printed board on the control panel inside, multiple through holes (6A, 6B, 6C) arranged in the base (4) that are located so that to match the buttons (3A, 3B, 3C) positioning; and a flexible membrane (5) superimposed onto the plastic base (4) face outside surface; the printed board contains one or several light sources (8A, 8B), preferably - LEDs, located on the same side as the buttons (3A, 3B, 3C); arranged in the plastic base (4) are several through holes (9A, 9B, 9C) located so that to match the light sources (8A, 8B); connected to the inner edges of the second through holes (9A, 9B) are hollow tubes (10A, 10B, 10C) that are designed to be flush with the plastic base.
User interface and corresponding method and device User interface and corresponding method and device / 2476921
Input and output apparatus for a portable electronic communication device has a basic element, a user interface for inputting information and a user interface for outputting information. The user interface for outputting information is extended along mutually perpendicular longitudinal and transverse axes of the apparatus. The user interface for inputting information has a standard keyboard (QWERTY), which is extended in parallel to the longitudinal axis. The apparatus is adapted to provide a first configuration, wherein the user interface for inputting information lies between the basic element and the user interface for outputting information, and a second configuration, wherein the user interfaces for inputting and outputting information are alternately shifted in opposite directions from the basic element.
Keyboard and keyboard unit Keyboard and keyboard unit / 2458382
Keyboard has a light-guide panel for propagating light through it as a result of total internal reflection; a film on top of the light-guide panel, wherein there is an air layer between the film and the light-guide panel; a plurality of buttons lying on the top surface of the film; and a plurality of reflecting structures formed on the light-guide panel and lying at a distance from each other for output of part of the light directed through the inner part of the light-guide panel towards the buttons.
Mobile communication terminal with keyboard entry error prevention function, method for this Mobile communication terminal with keyboard entry error prevention function, method for this / 2455784
Mobile communication terminal includes sensor unit for reading key being entered by means of touching keyboard to output keyboard entry signal corresponding to the key, and controller suited to determine keyboard entry according to either priority between multiple keys from which key signals are received or whether the received key signal has been generated unintentionally.
Input device Input device / 2451981
Input device has: a base with an input area; one or more touch-sensitive sections on the input area for detecting touching of the input zone or contact movement thereon; a control unit for retrieving data corresponding to any input operation from memory and inputting the retrieved data depending on the position or direction of movement of the contact spot detected by the touch-sensitive section relative a reference section lying on the input area.
Information input device Information input device / 2246749
Device has keyboard, mounted on a panel, including at least one key, which has at least one operating area, at least one radiation source and one radiation detector, mounted in such a way as to provide possible effect by at least one working tool on route of passing of radiation from emitter to detector and/or on key in appropriate operating area.
User devices interface User devices interface / 2247423
Device has base, at least one assembly, consisting of key and means for determination of operation of key, first means for determination of displacement of device elements relatively to one another, while the key is mounted with possible outside access to it, a platform is provided, mounted with possible displacement relatively to base, key is mounted with possible displacement of it together with platform relatively to base, first means for determination of device elements mutual displacement is mounted with possible recording of platform displacement relatively to base, and means for detecting key operation is made or positioned relatively to key in such a way, that it can record well operation in neutral position, and/or in case of platform displacement from neutral position.
Method and system for registering domain names with use of national languages in non-english-speaking countries Method and system for registering domain names with use of national languages in non-english-speaking countries / 2249843
Method includes detection of connection of user computer to Web-site of sub-domain on national language and selects service of registration of domain name on national language, performing software extension for automated forming of combination of symbols of English alphabet, matching domain name, based on national language, determining, whether such combination of English symbols was registered before as existing domain name, and, if not, then it is registered as domain name.
Method for inputting data into pc and device for inputting data into pc Method for inputting data into pc and device for inputting data into pc / 2251725
Method includes mounting information input device of wrist of operator, device has flexible cover in shape approximately matching shape of hand, and sensors connected to cover, then sensors are activated by pressing against a stop, which is a portion of operators body or object, external to operator body and placed within limits of range of free hand action by operator with mounted device.
Method for forming graphic map of alphabet for positioning letters input nodes on keyboard or sensor panel Method for forming graphic map of alphabet for positioning letters input nodes on keyboard or sensor panel / 2256948
Method includes building three sets of graphic images of letters using a set of graphic elements, separation of alphabet on groups on basis of presence of main graphic element, selection of basic letter symbol in each group, construction of graphic images of letters, applying graphic image of each letter on basic letter with forced combination of main graphic element.
Computer keyboard Computer keyboard / 2266556
Keyboard has controller, data processing device and keys mounted on a panel with transparent key heads, in each of said heads light diode is positioned in form of rectangular frame, used for reproduction of two mutually contrasting colors, one at a time, and a fourteen-segment indicator positioned inside aforementioned diode with working side directed towards face surface of key head, used for reproduction of symbol with color, contrasting with any one of two colors produced by light diode.
Data input by applying gui-interface Data input by applying gui-interface / 2267151
Method involves concurrently displaying a set of functional patterns of keyboard keys on the screen enabling one to select one of said patterns, and representing the keyboard image, and moving the image relative to said patterns.
Keyboard Keyboard / 2267152
Keyboard has additional number of tension-sensitive elements same to number of keys and having contacts for taking in signals, connected to electronic block for processing signals. Device additionally has joined rigidity element and selector made of elastic material, wherein tension-sensitive elements are positioned, while in electronic block for processing signals function of alternating measurement of signal amplitude is realized, which signal is taken from each tension-sensitive element, value of amplitude is compared to preset threshold value and signal is formed at output, appropriate for pressed key.
Input devices and their use Input devices and their use / 2267183
In a small keyboard the regions of independent and combined keys are located in alternating columns, the columns of the regions of combined keys include multiple digital columns and at least one column containing regions of keys corresponding to the symbols of punctuation.
Keyboard Keyboard / 2268481
Keyboard has left and right portion, meant respectively for use on appropriate working side by means of left hand wrist and right hand wrist accordingly, while angle between working side of each portion of keyboard and horizontal plane is 60-150°, and keyboard itself is provided with supporting means for carrying hand wrists during working with keyboard, while bearing means are made to allow primarily horizontal displacement of wrists relatively to appropriate portion of keyboard. Keyboard is equipped with checking side, directed in opposite direction relatively to main side, while performing actions using a part of keyboard cab be visually checked on checking side.

FIELD: information technology.

SUBSTANCE: system which implements a dynamic programmed keyboard includes: a predictive keyboard mechanism; one or more units connected to provide the predictive keyboard mechanism with information describing the current input environment for the programmed keyboard; and said predictive keyboard mechanism is configured based at least in part on information describing the current input environment with the possibility of: changing the pressing region of multiple keys of the programmed keyboard, reducing the size of the pressing region of one of the multiple keys while increasing the size of the pressing region of an adjacent key from the multiple keys so that the pressing region of the adjacent key from the multiple keys passes over the display area of said one key. The changed pressing region of said adjacent key includes one or more positions in which said adjacent key is displayed, as well as one or more positions in which said one key is displayed and not said adjacent key, and for each of the multiple keys, the pressing region includes positions on the programmed keyboard corresponding to a key; the changed pressing regions of the multiple keys are used.

EFFECT: high rate of input.

20 cl, 5 dwg

 

THE LEVEL OF TECHNOLOGY

Currently available are many different types of mobile computing devices, as a rule, providing a large amount of computing power in a small package. One problem facing mobile devices, however, is to enter data. Users are accustomed to data input through the keyboard, which may be large and cumbersome, often larger than directly to your mobile computing device. Some of the mobile solve this problem when using the soft keyboard that is a keyboard displayed on the display of the mobile device and allows the user to select keys that appear on the screen (for example, using the stylus, finger user etc). Unfortunately, due to the lack of physically separated keys and often small size software keyboards, for users, it remains difficult to select keys on the software keyboards.

THE ESSENCE OF THE INVENTION

The essence of the invention is to familiarize in a simplified form with a set of principles, which are further described below in the Detailed Description. The essence of the invention is not intended to identify the key features or essential features of the claimed invention, and it is not intended to be used to restrict the context of the declared object of the invention.

Here

discusses the dynamic on-screen keyboard. In accordance with one or more aspects, the user input is received over the soft keyboard the soft keyboard includes multiple keys. Information describing the current environment, the input for the software keyboard, turns, and the determination is made, any one or more keys from multiple keys was meant to be selected by the user's input. This definition is done based at least partially on the current environment entry.

BRIEF DESCRIPTION OF DRAWINGS

The same numbers are used all over the drawings to refer to the same characteristics.

Figure 1 - block diagram illustrating example of a computing device, which implements a dynamic soft keyboard, in accordance with one or more incarnations.

Figure 2 illustrates an example of a display device that displays the soft keyboard in accordance with one or more incarnations.

Figure 3 illustrates an example of a system that implements dynamic soft keyboard, in accordance with one or more incarnations.

Figure 4 is a block diagram illustrating an example of the process for dynamic software keyboard in accordance with one or more incarnations.

Figure 5 illustrates an example of a computing device that can be configured to implement a dynamic soft keyboard, in accordance with one or more incarnations.

DETAILED DESCRIPTION

It discusses the dynamic on-screen keyboard. The user interface of the software keyboard is displayed to the user. You also get a variety of information, describing the current environment entry for the user interface of the software keyboard. This information describing the current environment, the input may include, for example, information describing the type of data entered by a user (for example, email address, postal code, city, etc); information describing the language normally used by the user and the data is usually entered by the user; the material operating environment (for example, on the desktop, when walking in the moving car and etc); symbols and/or words near a data entry field, etc. This information describing the current environment, the user input is used to detect which key(and) software keyboard was meant to be selected by the user when receiving user input. Dynamic on-screen keyboard can thus help speed of user input and user satisfaction.

Figure 1 - flow chart showing as an example, the computing device 100, implements a dynamic soft keyboard, in accordance with one or more incarnations. Computing device 100 can be any of a number of different devices. For example, the computing device 100 may be a desktop computer, a mobile station, entertainment device, subscriber installation, communicative associated with the device display, TV, cordless phone, digital camera, game console, car computer, etc. Thus, the computing device can vary from 100 devices with large memory and processor resources (for example, personal computers, game consoles) to devices with limited memory and/or resources data processing (e.g., traditional subscriber installation, portable game consoles).

Computing device 100 includes management module 102 software keyboard and foretell module 104 keyboard. Control module 102 software keyboard generates the soft keyboard 108 for display to the user. The soft keyboard is 108 is the user interface that appears on the display device. The soft keyboard is 108 includes multiple keys that can be chosen by the user, as discussed in more detail below. Computing device 100 may include a display component, through which the soft keyboard 108 can be shown, or alternatively can output the signal or data to another device or component, through which the soft keyboard 108 can be displayed.

The soft keyboard is 108 includes multiple keys, which can be located in any number of different layouts and can fit any number of different alphanumeric characters and hieroglyphs, groups of characters or words (such as "http://", "www." and etc), other characters etc. One sample layout for keys is the QWERTY layout, although other layouts can be alternatively provided. Furthermore, the software keyboard 108 is dynamic. This dynamic entity belongs to the property prediction module 104 keyboard, changing over time, and/or user interface displayed as the soft keyboard 108, changing over time. As discussed in more detail below, this change may involve changing the location of the keyboard; changes in various alphanumeric characters or symbols corresponding to the keys, change in whose location on the soft keyboard 108 correspond to which keys, change of the logic of the press and etc

The soft keyboard is 108 appears on the display device, and enter the user also introduced through this device display. In one or more incarnations display output on the screen soft keyboard, 108, is itself or combined with touch screen or touch panel, through which the user inputs can be entered touch user, or approaching, in close proximity to areas of the display that display key on the soft keyboard 108. This touch or proximity can be done using a stylus, stylus, finger etc. In other variants of implementation uses other pointing devices, and not the touch screen or touch pad. You can use as many other pointing device to move the cursor and enter input, using the soft keyboard 108, including relevant pointing devices such as a mouse, slider, touch panel, trackball, etc Other types of pointing devices can also be used, including completely disjointed pointing devices, such as a pen tablet. These different pointing devices usually include one or more buttons or other mechanism(s) selection, which can be activated by the user to choose a certain arrangement of the soft keyboard 108 (for example, a user can press the mouse button when the cursor is located in the required area of the soft keyboard 108). Don't need no private financial keyboard with material keys that correspond to the soft keyboard 108, through which introduces the user input.

Figure 2 illustrates as an example of the display device 200 displaying the soft keyboard, 202 in accordance with one or more incarnations. The soft keyboard 202 can be, for example, a soft keyboard 108 of Figure 1. It must be emphasised that the approximate layout and alphanumeric characters, the corresponding keys on the soft-keyboard 202, are only an example and that you can use as many different layouts and/or associated characters or signs, as discussed above. In the example of Figure 2, on-screen keyboard 202 does not occupy the entire display area of the device to 200 display, leaving room for other information that will be displayed to the user of the device to 200. Furthermore, the software keyboard 202 may take an entire (or almost entire) display area of the device to 200 display. The soft keyboard 202 may also optionally include the UI mechanism for hiding and showing the functions to be performed, allowing the keyboard 202 be hidden from view in certain moments.

As discussed above, any of the numerous pointing devices can be used to enter the input on the soft keyboard 202. As an example of a pointing device Figure 2 illustrates the stylus 204, which the user can use to touch or overhanging above a certain key on the keyboard 202. When the user touches a certain area of the keyboard 202 (with stylus 204 or a pointer, which manages other pointing device) or moves the stylus 204 (or other pointer) in the specific area of the keyboard 202, then is automatically detected by a specific key that the user intended to choose touching or moving the stylus or other pointing device. How to perform this automatic detection is based at least partially on the input current environment, as discussed in more detail below.

In one or more incarnations device 200 display includes a touch screen or touch pad, allowing the user to touch or move close stylus, a variety of field devices 200 display to allow the user to enter the user input. Such a touch screen or touch pad can be electromagnetic input device, the capacitive input device, resistive input device, the input device of the surface acoustic wave optical device data entry processing images etc Such touchscreens or touch panels are known to specialists in the field of technology. Be aware that if you use other pointing devices (such as a mouse, pen tablet and etc), the device 200 display must not include a touch screen or touch pad.

Returning to figure 1, the module management 102 software keyboard also receives input 110 user. Enter 110 user refers to select a specific location(s) of the software keyboard 108. This choice can be made using a stylus, stylus, finger, index, which manages the pointing device and etc. as discussed above. Data input 110 user usually represented by 102 as a set of one or more coordinates (for example, the coordinates X-Y, X-Y-Z etc)identifying the location of(I) the software keyboard 108, which were selected by the user. As discussed above, this choice may include a touch or move in the immediate vicinity of the touch screen or of the touch pad or other input from other pointing device. The coordinates X and Y refer respectively to the horizontal and vertical locations input surface (for example, the surface of the touch screen, touch pad, pen tablet etc.). Z-coordinate represents the distance from the surface of the field and can be used to determine hung whether the user is over a part of the input surface.

In one or more incarnations enter 110 user is a stream of data (for example, flow X-Y coordinates flow coordinates X-Y-Z etc). The data stream consists of one or more input trajectory, one or more follow descent trajectory of the pen and the output path. Input trajectory is called on a thread coordinates before manipulator reach the surface (or before the selection mechanism is activated by the user). Descent trajectory pen refers to the place on the surface, which reaches pointing device (or where the pointer is located, when the mechanism of choice is driven by the user). Often there is a unique trajectory of the pen, although there may be obtained multiple descent trajectory pen (for example, if the user returns the pen at the moment when it reaches the surface). Output trajectory refers to the flow of coordinates at the moment when the manipulator leaves the surface (or after the selection mechanism is driven by the user).

Predicting module 104 keyboard receives input 110 user control module 102 soft keyboard. Predicting module 104 keyboard determines, based on input 110 user, and the information describing the current environment, the input for the software keyboard 108 which one or more keys the soft keyboard 108 user intended to choose the input 110 user. As discussed in more detail below, this current environment entry describes the various aspects of the environment in which the software keyboard 108 is displayed on the screen, such as the current type of user input (for example, email address, postal code, city, etc), language normally used by the user of the software keyboard 108, data, usually entered by the software keyboard 108 etc.

One or more of the incarnation predicts module 104 keyboard also determines, based on input 110 user and/or information describing the current environment, the input for the software keyboard 108, changes you want to make the software keyboard 108. These changes may be a change in the location of the keyboard and/or a change in various alphanumeric signs or designations, corresponding to the keys, as discussed in more detail below.

Control module 302 software keyboard generates soft keyboard, 308 and accepts input 310 user (like the soft keyboard 108 and commissioning of the 110 user of Figure 1). Enter 310 user are selections from the soft keyboard 308, choice, which is a definite one or more of the provisions of the soft keyboard 308. This choice can be made in different ways, such as the touch display with your finger, stylus, stylus, etc, dragging the pointer to the location of the software keyboard, moving the pen or stylus close to the display, and so The choice includes one or more input trajectory, one or more follow descent trajectory of the pen, and the output path, as discussed above. Control module 302 software keyboard can provide input 310 user by any number of different ways.

In one or more incarnations enter 310 user is presented as a set of one or more X-y coordinates. Set of coordinates X-Y identifies the specific location of the soft keyboard 308 in 2-dimensional space. A certain arrangement of the soft keyboard 308 be defined baseline situation (for example, lower left corner of the soft keyboard 308, center software keyboard 308 etc), and the values of the X-Y represent the location along the X-axis and Y-axis relative to this position.

In addition, in one or more incarnations display, which is displayed on the screen soft keyboard 308, supports axis Z. The Z axis is perpendicular to the 2-dimensional space X-y coordinates. Such displays can discover, for example, stylus, close, but not relating to the display. The distance between the stylus and the display is recorded as the value of Z. Thus, the use of such displays, enter 310 user is presented as a set of one or more of the coordinates X-Y-z

In addition, in one or more incarnations value of extra time T is written for user input. Time value T refers to the duration of the user's choice, such as the amount of time stylus user concerned certain designated X-Y keyboard 308, the amount of time stylus user was at a certain distance Z from a certain location X-Y keyboard 308, the amount of time that the index has been allotted (hovered above a certain place X-Y keyboard 308, etc. Thus, in such incarnations enter 310 user is presented as a set of one or more X-Y-T or X-Y-Z-T. the Value of the time T - enter in predicting mechanism 320 keyboard and can be used to make better forecasts for the text input required by the user, as discussed in more detail below.

In addition, in one or more incarnations, multiple provisions keyboard 308 can be selected at a time. These multiple provisions could be, for example, two or more provisions of selected at the same time (for example, using two fingers), such as the Shift key plus the letter key, the Control key plus the letter key and etc., These multiple provisions could also be movement from one location to another (for example, the touch keyboard 308 with the stylus in one position, move the stylus through the display and then lift the stylus in the other location), etc. In such situations enter 310 user is presented as a set of several coordinates (for example, X-Y, X-Y-Z X-Y-T, X-Y-Z-T etc). One or more coordinates also include trajectory parameter that identifies the direction in which the stylus (or finger, pen etc) moves along a display device, or when in contact with the device display, or was located close to a display device (for example, the distance Z from the display devices). In some embodiments, installing this equipment, users typically have more errors in target shooting in the vertical direction and more accurate in the horizontal direction.

Predicting module 304 keyboard receives input 310 user control module 302 software keyboard and determines, based on input 310 user, and the information describing the current environment, the input for the software keyboard 308, any one or more keys the soft keyboard 308 intended to choose a user with the introduction of 310 user. In one or more incarnations predicts module 304 keyboard also determines the changes to make them in the soft keyboard 308, based at least partially on the current environment entry. Indication of these changes is sent to the control module 302 soft keyboard, which accordingly changes the display the soft keyboard 308.

Predicting module 304 keyboard includes predicts mechanism 320 keyboard module 322 define the module 324 dictionaries language module 326 user-defined vocabulary, module 328 rendering context module 330 determine the language module 332 n-gram statistics words and phrases. Each of the modules 322-332 provides foretelling mechanism 320 keyboard variety of information regarding the current entry environment for software keyboard 308. Predicting mechanism 320 keyboard alternately uses this information relative to the current entry environment, to change the soft keyboard, 308 (for example, layout, or characters, or symbols corresponding to certain keys), and determine which one or more keys the soft keyboard 308 user intended to choose the input 310 user.

Predicting mechanism 320 keyboard displays readings 340 of which key the user assumes choose with a specific user input. These indications 340 typically used to update the user interface of the software keyboard 308, and can also be presented for the other component (not illustrated) for use as input character(s). These indications 340 may also be returned to one or more of the modules 322-332 to help determine the current entry environment. For example, as discussed in more detail below, the module 326 user-defined vocabulary can control the words entered by the user.

In addition, in one or more incarnations predicts mechanism 340 keyboard also displays the predicted input line 360, which is forecast mechanism 340 of a specific word or phrase that the user enters. Conclusion this prediction allows the user to select the option "autocomplete", where the predicted word or phrase is entered without the user already is not proper to re-enter the characters of a word or phrase. Predicted line 360 input is provided for the control module 302 soft keyboard or any other part of the system (not shown) to the predicted word or phrase could be shown to the user. The user can choose is shown predicted word or phrase in various ways through the soft keyboard, 308, such as, pressing "Enter", pressing "autocomplete", the choice of a specific character in the predicted word or phrase etc. Should be mentioned that the user may also optionally select only a portion of the predicted word or phrase.

Module 322 determining the operation mode determines the mode of operation of the device, which is displayed on the screen soft keyboard 308. Mode of operation may include, for example, financial position and/or geographical location of the device. Financial position refer to the physical description of how you use your device. This description of the physical properties may include, for example, whether the device is stationary or moving, focuses whether the device in a certain direction etc. Material situation, can be defined in various ways, for example, be specified by the user of the device, using motion sensors in your device, based on the peripheral devices or other components, based on communication with the wireless base or access point, etc.

Geographical position refers to a geographical description of where the device is. Geographical location can be determined in various ways, such as user-defined device using the global positioning system (GPS)based on the address (for example, address the Internet Protocol (IP))assigned to the device and etc.

Information describing the mode of the device from the module 322 determine the mode of operation can be used to foretell mechanism 320 keyboard in many different ways. For example, predicts mechanism 320 keyboard may assume that it is more difficult to accurately identify certain key when the device is moved and is not stationary, thus, a mechanism 320 can assign a b o strengthen the sphere of software keyboard 308 certain keys, when the device moves rather than when a device is stationary. These large areas to match the larger keys shown on the soft keyboard 308, or large areas of pressing for a certain keys, as discussed in more detail below.

Language(s), usually used by the user can be identified in different ways. For example, the language(s) as may be specified by the user may be the default language based on the location where you purchased the system 300 (for example, if the system 300 was sold in France, the default language was French)can be based on previous inputs by the user (for example, if a large part of the previous entries was in English, the language would be English)can be obtained from another module (such as a module 330 definition language, discussed in more detail below) etc.

Module 326 user-defined vocabulary collects and maintains information regarding the words (or other data, such as integers, characters, etc), which are usually entered by the user. This information may be collected and stored in many different ways. In one or more incarnations are saved words entered by the user and the relevant frequency, indicating how often those words are. This frequency can be, for example, counter words that increments each time a word is entered, the coefficient, indicating how often a word appears in relation to other words, storable module 326 etc. in addition, the user or administrator (for example, for the Corporation, which employs a user) can optionally install the new custom dictionary that adds their words as they are entered by the user (and/or additionally to include the default word and frequency for the user).

Besides, the words that are monitored or saved module 326, can become outdated over time so that the words used with the same frequency, but more long ago, were identified as the less frequently used by the user, than the words that had been introduced recently. This obsolescence can be approached in different ways, such as, support record of when a particular word was used (for example, in minutes, hours, days, etc), changing (for example, reducing frequency, corresponding to a word that is not being used for at least a threshold amount of time etc.

As discussed above, foretelling mechanism 320 keyboard can automatically attempt to identify specific words or phrases entered by the user. One piece of information provided for predicting the mechanism 320 keyboard module 326 user-defined vocabulary is the information concerning the words (or other data)that is generally entered by the user.

Module 328 display context supports the display of certain fields in which the user can enter data in the data types that are valid for each particular field. For example, if the field - the postal code, the reliable data could be numbers, but not letters. Through another example, if a field is an email address field, then the valid data can be letters, numbers, and certain symbols (such as "@"), but not the other characters (such as"!" or "#").

Module 328 display context can identify certain fields to be displayed to the user along with the soft keyboard 308 in any number of different ways. For example, data displayed on the screen, can be analyzed, and specific fields identified (for example, a field labeled "postal code" or "zip code", the field labeled "e-mail" or "e-mail address, etc). In another example, different tags or identifiers can be included in the data displayed on the screen along with the soft keyboard 308, these tags or IDs tells the module 328 display context on certain shown on the display field. In another example, the input field can explicitly declare its existence as a "type" or legitimate input constraints through application programming interface (API) of the operating system in a system 300.

Valid data types for certain fields can be identified in different ways. In one or incarnations valid data types for certain fields are pre-programmed or otherwise identified for the module 328 rendering context. For example, different tags, IDs or other metadata corresponding to the instructions on the screen along with the soft keyboard can identify the allowed data types for certain fields, or other remote devices can access to obtain valid data types for certain fields. Through another example, the API of the operating system in a system 300 can be called to obtain valid data types for certain fields. In other incarnations one or more valid data types for certain fields can be automatically identified module 328 rendering context. For example, a module 328 display context can find out what a specific data type is not valid for a specific field, if the user tries to enter the data of this type and the error is returned to the user program or other component that handles input.

Information about how to display the context of the module 328 display context can be used to foretell mechanism 320 keyboard in many different ways. In one or more incarnations predicts mechanism 320 keyboard decides that certain types of data that are not valid for a specific field, are not intended to be selected with input 310 user. For example, if a certain field accepts only numbers, predicting mechanism 302 keyboard may decide that key, which he intended to choose the user who will be the keys on the soft keyboard 308, which is closest to the input 310 user. As another example, if a certain field accepts only numbers, predicting mechanism 320 keyboard can instruct the module to control 302 soft keyboard, soft keyboard 308 should include only numbers and no letters.

As an option, foretelling mechanism 320 keyboard may decide that certain types of data that are valid, the user is easier than other types of data. For example, if the designation is valid notation for a specific field, but the symbol "!" and "#" are not valid for that field, then the logic pressing implemented foreseeing mechanism 320 keyboard, can increase the likelihood that will be selected by the@symbol. This probability can be enhanced in various ways, such as making clicking on the symbol "@" more than that of the character "!" and "#". The area of depression on the soft keyboard 308 for a specific key is drawn to the provisions of the soft keyboard 308, which correspond to a specific key. Since characters "!" and "#" are located on either side of the "@" symbol on many keyboards, resizing pressing makes it easier for the user to select the "@" symbol touch the soft keyboard 308 or near the symbol "@". The use of presses and logic clicks implemented foreseeing mechanism 320 keyboard, are discussed in more detail below.

Module 330 definition language identifies the language used by the system user 300. Language can be identified through various means, such as specifying the user's language or 330 module automatically identifies the language. Module 330 can automatically identify the language, for example, obtaining access to the default language for the system 300 (for example, as recorded by the operating system), gaining access to the module 328 rendering context, to identify the types of data and their corresponding language (for example, if the designation of characters is a valid data type, the language can be automatically identified as Japanese) etc.

Language identified by the module 330 determination of the language, may be the language normally used by the system user 300, or any language can be used by the system user 300 for a particular record, made by the user. For example, if the user entered a partial word (for example, "uni"), the module 330 definition language can automatically detect the language of the user input. This might be a separate definition (for example, based only on partial word) or alternatively may be in conjunction with other information (e.g. language(mi), commonly used by system user 300).

Module 332 n-gram statistics words and phrases identifies words and phrases that are more likely than others based on partial inputs. It can include, for example, the identification of words based on fractional you enter the word, and the identification of phrases, based on a single (or multiple) you enter the word. In one or more incarnations this identification is based on the actual words (for example, from the dictionary provided by the module 324 language dictionaries). For example, if you enter the word "United", the module 332 may indicate that the word "States" more likely than the word "work".

In other incarnations, this identity module 332 is based on the rules of grammar or other rules. For example, the two verbs are usually not adjoin to each other, so if the verb is entered as the first word, the module 332 may indicate that the next word in the phrase is unlikely to be a verb. As another example, a module 332 may decide that the phrase "United States" is often a user enters the system 300, thus, the module 332 may decide that, if the United States were introduced by the user, then "America" is more likely in the phrase than other phrases.

Information identifying the probable words or phrases from the word and module 332 n-gram statistics words and phrases can be used to foretell mechanism 320 keyboard in many different ways. Similarly, the discussion of the above module 328 rendering context, information identifying the probable words or phrases can be used to decide that certain words, letters or other symbols do not have in mind to be selected with input 310 user and thus does not allow write these words, letters or other characters, or alternatively can change the pressing, making it easy for the user to select certain words, letters or other characters.

Predicting mechanism 320 keyboard takes information describing the current environment, the input from the various modules 322-332, as discussed above. Predicting mechanism 320 keyboard uses this information describing the current environment, the input to change the location and/or alphanumeric symbols or characters matching keys the soft keyboard 308, and/or to determine what key the user intended to select a specific user input. Predicting mechanism 320 keyboard repeats this change and/or determination after each key selection(s)made by the user. The current environment input may change after each key selection(s) of the user and a new input current environment may be taken into account foreseeing mechanism 320 keyboard after each key selection(s) by the user.

As discussed above, information describing the current environment, the input can specify that certain glands are more likely than others. In one or more incarnations this information is used to modify the layout of the soft keyboard 308. For example, information may be used to modify the layout of the soft keyboard 308 from the QWERTY layout of the keyboard, the numeric keypad, include only certain keys of the QWERTY layout, etc.

In other incarnations information describing the current environment, the input is used to change any alphanumeric character or other characters that are appropriate keys the soft keyboard 308. In response to this change the soft keyboard 308 shows new appropriate signs or symbols for those keys instead of the previously displayed signs or symbols, and the choice of one of those keys is the result of user input current display of the corresponding symbol. For example, the string keys the soft keyboard 308 can be changed from the corresponding numbers on the compliance of the characters. In another example, some keys can be modified to meet certain specific signs and/or characters in the language.

In other incarnations information describing the current environment, the input is used to modify the surface of the keys the soft keyboard 308. In response to this change, the program keyboard 308 shows various surfaces for keys. For example, keys that are probable and/or possible future letters of words that are entered, can be highlighted. As another example, the keys for the letters which would not be the result of a word (based on already entered letters), may not be available to help visually guiding and reduce the force of the user.

In other incarnations information describing the current environment, the input is used to determine which key the user intended to choose with a specific user input. Predicting mechanism 320 keyboard, including logic clicking, it uses the current environment input along with putting 310 user to identify which a certain key on the soft keyboard 308 user intended to choose.

One way in which predicts mechanism keyboard may use the current environment, the input and enter 310 user to change the size of pressed purposes for certain keys. As discussed above, each key on the soft keyboard 308 may have a relevant area of depression, and foretell mechanism 320 keyboard can assign region pressing each key. This area is pressing for a specific keys are drawn to places on the soft keyboard 308, which correspond to this particular key. The area of depression for specific keys can be changed - the area of depression may be increased in the amount of foretell mechanism 320 keyboard to more places on the soft keyboard 308 corresponded to that particular key, or may be reduced in the amount of foretell mechanism 320 keyboard so that fewer seats on the soft keyboard 308 corresponded to that particular key. Increase of the area of pressing the key, therefore, it is usually easier for the user to select the key, while the reduction of the press, press, and usually makes it more difficult for the user to select the hotkey.

In addition, predictive mechanism 320 keyboard can make some keys on the soft keyboard 308 void. Thus, predicting mechanism 320 keypad does not indicate that the invalid key was meant to be selected from a specific user regardless of whether this particular user input. For example, if the "!" symbol determined to be invalid, predicting mechanism 320 keypad does not indicate that the "!" symbol meant to be selected from a specific user regardless of which this particular user input.

Predicting mechanism keyboard 320 can determine how to modify the layout and/or alphanumeric characters or symbols corresponding keys the soft keyboard 308, and/or to determine what key the user intended to choose from a particular user input in many different ways. In one or more incarnations predicts mechanism 320 keyboard is learning a system that learns with different inputs (keyboard input 310 user and all kinds of information, describing the current environment, the input). This training involves providing a mechanism 320 various glands and the correct answer so that the mechanism 320 might learn what the answers should be given in response to various glands. Initial training is usually done by a developer prediction mechanism 320 keyboard, and additional training can be done during system operation 300. This additional training can be performed, for example, based on feedback, giving mechanism 320 specify whether a particular conclusion 340 correct. Any of a number of different training systems can be used, including artificial intelligence systems and other systems based on statistics. For example, the kind of learning systems may include artificial neural network system inference, the algorithm of k-nearest neighbors etc

In addition, predictive mechanism 320 keyboard can be implemented as other systems. For example, a mechanism 320 can be implemented using any number of systems of the statistical analysis, to assess enter 310 user, and all manner of information, describing the current environment, the input. As another example, the mechanism 320 could be implemented using other rules, criteria or weights applied to the input 310 user, and all manner of information, describing the current environment, the input.

Thus, you can see that the soft keyboard 308 is dynamic. In one or more incarnations screen keyboard 308 changes the layout and/or alphanumeric characters or symbols that correspond to the number keys, forming a dynamic soft-keyboard. In addition, in one or more incarnations, which key the user intended to choose from a certain input may vary, forming a dynamic soft-keyboard. Such changes, relative to which key the user intended to choose from a certain input can be performed with the conclusion or suppress display to the user regarding such change.

Figure 4 is a block diagram illustrating as an example the process of 400 for dynamic software keyboard in accordance with one or more incarnations. The process of 400 performed by the system, such as the system of 300 from Figure 3, and can be implemented in software, embedded firmware, hardware, or combinations of the above. The process of 400 shown as a series of actions that indicate operations with one or more devices, and not necessarily limited to the modes, shown in order to perform the respective actions. The process of 400 is an example of a process for dynamic software keyboard; additional discussion of dynamic software keyboard included here with reference to other drawings.

Initially, the user input is received via the soft keyboard (action 402). This user input is defined by one or more provisions of the soft keyboard, as discussed above. In addition, it turns out information describing the current environment, the input (action 404). This information can be any number of different types of information, such as information discussed above concerning the modules 322-332 of Figure 3.

A specific one or more keys that were meant to be selected user input, are defined (action 406), based at least partly on the information received in action 404. Display one or more keys that you decide to choose the user, is displayed (action 408). Indication of the predicted value of the input string additionally output (action 410). In addition, in one or more incarnations soft keyboard is changed (action 412), based at least partly on the information received in action 404. This change can, for example, change the layout and/or modify alphanumeric characters or symbols corresponding keys the soft keyboard, as discussed above.

Figure 5 illustrates an example of a computing device 500, which can be configured to implement a dynamic soft keyboard, in accordance with one or more incarnations. Computing device 500 may be, for example, computing device 100 from Figure 1.

Computing device 500 includes one or more processors or processor units 502, one or more computer-readable media 504, which may include one or more components 506 memory and/or storage of one or more devices 508 input / output (I/O), through which we obtain input 110 user of Fig.1 (or enter 310 user from Figure 3), and bus 510, which allows various components and devices to communicate with each other. Readable computer media 504 and/or device(s) 508 IO may be included in computing device 500 as part of or may be associated with him. Bus 510 is one or more of several types of structures tyres, including the bus memory or memory controller, peripheral bus, accelerated graphics port, and processor or local bus, using any of a variety of bus architectures. Bus 510 can include wired and/or wireless tyres.

Component 506 memory/storage represents one or more computer media. Component 506 may include volatile media (such as random access memory (RAM)and/or a non-volatile medium (such as a permanent memory (ROM), flash memory, optical disks, floppy disks, and so on). Component 506 may include fixed media such as RAM, ROM, fixed hard drive etc)and removable media (e.g. flash card, removable hard drive, optical drive, etc...).

The techniques discussed here can be implemented in software using the instructions executed by the processor(s) 502. You need to take into account that different instructions can be saved in various components of a computing device, 500, such as processor 502, in different processor cache 502, in another cache memory of the device 500 (not shown), on the other computer media, etc. in addition, it must be emphasised that the place where instructions are stored in the computer 500 can change over time.

One or more devices 508 o allow the user to enter commands and information in computing device 500 and also allow information to be presented to the user and/or other components or devices. This information is presented to the user may include soft keyboard, 108 of 1 or soft keyboard, 308 of Figure 3. Examples of input devices include the keyboard, the device that controls the cursor or pointer (such as a mouse, touchpad, slider, pen tablet etc.), microphone, scanner, touch screen, touch pad, etc. Examples of output devices include display (such as a monitor or projector), speakers, printer, network card, etc.

Different methods can be described in the General context of software or software modules. Usually, the software includes routines, programs, objects, components, data structures etc. that perform specific tasks or implement specific abstract data types. The implementation of these modules and methods can be stored on computer-readable media or transmitted through them. Computer readable medium medium can be any available media or media that can be accessed by the computing device. As an example, and is not limited to, computer readable media may contain "computer storage devices" and "means of communication".

"Computer storage devices" include volatile and non-volatile, removable and non-removable drives, implemented by any method or technology to store information, such as computer readable instructions, data structures, software modules or other data. Computer storage devices include, but are not limited to, RAM, ROM, EEPROM, flash memory, or other technology memory, CD-ROM, digital versatile discs (DVD) or other optical drives, magnetic tapes, magnetic tape storage device on a magnetic disk or other magnetic storage devices, or any other media that can be used to store the required information and that your computer can access.

"Means of communication" usually embody computer readable instructions, data structures, software modules or other data in the modulated signal, such as a carrier wave or other transport mechanism. Communications also include any medium of information delivery. The term "modulated signal" means a signal that has one or more of its characteristics, fixed or modified in such a way to encode information in a signal. As an example, and is not limited to, communications include the United wire media, such as a wired network or direct connection wire and wireless carriers, such as speaker, radio frequency, infrared, and other wireless carriers. A combination of any of the above is also included in the scope of computer-readable media.

Usually, any of the functions or the techniques described here can be implemented by using the software, firmware, hardware (for example, fixed logical layout), manual processing or combination of these implementations. The terms "module", "functionality" and "logic", used here, is generally a software, firmware, hardware, or a combination thereof. In the case of program implementation module, functionality, or logic to represent the code that performs these tasks when running on the CPU (for example, CPU, or Central processing units (CPUs). Code can be saved in one or more computer-readable storage devices, further description of which can be found with the link in figure 5. Functions of methods of dynamic software keyboard described here, are platform independent, meaning that methods can be realized on the set of commercial computing platforms with multiple processors.

Although the content is described in the language specified for the design details and/or methodological steps, you must understand that the content specified in the accompanying claims, is not necessarily limited to certain functions or to the actions described above. Rather, certain functions and activities described above is disclosed as a form as an example of realization of the claims.

1. Computer storage media, with many of the commands that, when you run one or more processors device, make one or more processors: to accept user input via the soft keyboard, and screen keyboard includes set of keys, each of which has a corresponding area of depression, containing provisions on the soft keyboard that correspond to the key; to receive the information that describes your current environment entry for the soft keyboard; determine, based at least partially on the current environment input which one or more keys from the set of keys meant to be selected user input; and change, based at least partially on the current environment and input user input, the area of depression, one of the many keys, increasing the size of the region key to pass over the site display adjacent keys from the set of keys at the same time reducing the size of the area clicking the adjacent keys of many keys, and dirty area pressing said one key includes one or more of the provisions, which appears referred to one key and one or more of the provisions, which appears referred ensuite key of many keys, and it is not mentioned key.

2. Computer media device according to claim 1, and user input is a set of one or more coordinates that specify one or more provisions of the soft keyboard is selected by the user.

3. Computer media device according to claim 1, with information describing the current environment, the input contains information describing the mode of the device.

4. Computer storage media on p.3, and information describing the mode of operation of the device includes the geographical position of the device.

5. Computer media device according to claim 1, with information describing the current environment, the input contains specific language dictionary.

6. Computer media device according to claim 1, with information describing the current environment, the input contains information related words that are commonly entered by the user device.

7. Computer media device according to claim 1, with information describing the current environment, the input contains information establishing the compliance of fields, each of one or more of the fields in which the user can enter data in the data types that are valid for the field.

8. Computer storage media on p.3, and information describing the mode of the device, contains a physical description of how you use your device.

11. Computer storage media of claim 1, wherein the instructions additionally, make one or more processors to change the soft keyboard, based at least partially information describing the current environment, the input.

12. Computer media device according to claim 1 in which the identification of which one or more keys from the set of keys meant to be selected user input, you need to identify the particular key on the soft keyboard that is void, and not to indicate that this particular key software keyboard meant to be selected input of the user, regardless of user input.

13. A system that implements dynamic soft keyboard, containing: predicting mechanism keyboard; one or more of the modules connected to provide foretelling mechanism keyboard information describing the current environment, the input for the software keyboard; and the foretelling mechanism keyboard is configured on the basis of, at least partially, information describing the current environment of input, with the possibility of change of the press of the many keys the soft keyboard, reducing the size of the press, one of the many keys at the same time increasing the size of the press adjacent keys from the set of keys so that the area clicking the adjacent keys of the many keys took place over the site referred to display one key, and dirty area pressing mentioned adjacent keys includes one or more of the provisions, which appears referred ensuite key and one or more of the provisions, which appears referred to one key and it is not mentioned ensuite key, and for each of the many key area of depression for key contains provisions on the soft keyboard that correspond to the key; and use the modified areas pressing multiple keys to determine which one or more of the many keys the soft keyboard were selected by the user of the system.

14. System on item 13, which predicts mechanism keyboard contains a system of artificial intelligence.

15. System on item 13, which predicts mechanism keypad additionally configured to determine how to modify the layout of the soft keyboard, based at least partly on information describing the current environment, the input.

16. System on item 13, in which one or more modules, includes: module determine the mode of operation to provide information describing the mode of operation of the system; and module user-defined vocabulary to provide information concerning the words which usually entered by the user of the system.

17. The method that implements the dynamic soft keyboard in the computing device that contains the stages at which: take a set of one or more coordinates that specify one or more provisions of the soft keyboard, a user-selected device, with the soft keyboard has a lot of keys and each of the many key has an associated scope pressing containing provisions on the soft keyboard that correspond to the key, and at least one of the many key has a corresponding area of depression, modified by increasing the size of the press, at least one key at the same time reducing the size of the area clicking the adjacent keys of many keys, and modified the area of depression, at least one of the keys takes place beyond the display, at least one key and it includes one or more the provisions, which appears, at least one key and one or more of the provisions, which appears referred ensuite key of many keys, and it is not mentioned one key; and determine on the basis of, at least partly, as a set of one or more coordinates, and logic region keypresses, using the current environment entry for the software keyboard which one or more of the many keys meant to be selected by the user.

18. The method according to item 17, additionally contains a change, what marks, numbers, or symbols correspond to which of the many keys, based at least partially current entry environment.

19. The method according to paragraph 17, where the current environment entry includes information on words that are commonly entered by the user of the device, and information establishing the compliance of fields, each of one or more of the fields in which the user can enter data in the data types that are valid for the field.

20. The method according to paragraph 17, where the current environment entry includes information describing the language used by the user, and the information describing the specific words or phrases that are more likely than others words or phrases based on partial entries.

 

© 2013-2014 Russian business network RussianPatents.com - Special Russian commercial information project for world wide. Foreign filing in English.