Sign In to Follow Application
View All Documents & Correspondence

Text Entry Apparatus And Methods Thereof

Abstract: In accordance with an example embodiment a method and apparatus for text entry is provided. The apparatus comprises at least one processor and a memory. The memory is adapted to store machine executable instructions therein, that when executed by the at least one processor, cause the apparatus to facilitate display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. The apparatus is further configured to receive text entry in form of at least one input based on the virtual keyboard layout and to provide one or more word predictions in response to the received text entry.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
04 March 2013
Publication Number
32/2015
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
archana@anandandanand.com
Parent Application
Patent Number
Legal Status
Grant Date
2024-03-01
Renewal Date

Applicants

KEYPOINT TECHNOLOGIES INDIA PVT LTD.
9TH FLOOR, QUADRANT 1, CYBER TOWERS, HITEC CITY, HYDERABAD - 500 081

Inventors

1. PRIMA DONA KURIAN
B408, APARNA CYBER COMMUNE, SERILINGAMPALLY, HYDERABAD - 500 019
2. SUMIT GOSWAMI
FLAT NO 52, DAFFODIL L&T SERENE COUNTY, TELECOM NAGAR, GACHIBOWLI, HYDERABAD - 500 032
3. SUNIL MOTAPARTI
PLOT NO 918, ROAD NO 47, JUBILEE HILLS, HYDERABAD - 500 033

Specification

TEXT ENTRY APPARATUS AND METHODS THEREOF

TECHNICAL FIELD

[0001] The present technology generally relates to text entry mechanisms.

BACKGROUND

[0002] Electronic devices, such as personal computers, mobile phones and the like, are increasingly getting smaller in size with an aim of facilitating a portability of such devices. One of the primary limitations in reducing a size of such devices is the keyboard. A number of physical design variations have been developed with an aim to reduce the size of the keyboards. For example, miniature keyboards, foldable keyboards and the like have been developed for assisting in portability of such devices. However, such design developments are not convenient to use and moreover hinder text entry.

[0003] Recent advancement in computing technology and more specifically in touch screen technology has introduced mechanisms, such as virtual keyboards, which overcome many of the drawbacks of the physical keyboard designs. Pursuant to an exemplary scenario, the virtual keyboards allow single finger activation of individual keys for single letter entry. Typically, keys are sequentially activated and words are entered character by character for composing text, such as emails, messages, online comments and the like. However, the current virtual keyboard configurations are limited in their ability to provide easy and convenient text entry options to a user.

SUMMARY

[0004] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0005] Various apparatuses, methods, and computer readable mediums for text entry are disclosed. In an embodiment, the apparatus comprises at least one processor and a memory. The memory is adapted to store machine executable instructions therein, that when executed by the at least one processor, cause the apparatus to facilitate display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. The apparatus is further configured to receive text entry in form of at least one input based on the virtual keyboard layout and to provide one or more word predictions in response to the received text entry.

[0006] In another embodiment, the apparatus comprises at least one processor and a memory. The memory is adapted to store machine executable instructions therein, that when executed by the at least one processor, cause the apparatus to facilitate display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are split in at least two portions based on one or more pre¬defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes on at least one portion of the at least two portions. The apparatus is further configured to receive text entry in form of at least one input based on the virtual keyboard layout and to provide one or more word predictions in response to the received text entry.

[0007] In an embodiment, a method for text entry is provided. The method comprises facilitating display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. The method further comprises receiving text entry in form of at least one input based on the virtual keyboard layout. The method also comprises providing one or more word predictions in response to the received text entry.

[0008] Moreover, in an embodiment, a non-transitory computer-readable medium storing a set of instructions that when executed cause a computer to perform a method for text entry is disclosed. The method comprises facilitating display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. The method further comprises receiving text entry in form of at least one input based on the virtual keyboard layout. The method also comprises providing one or more word predictions in response to the received text entry.

[0009] Additionally in an embodiment, an apparatus for text entry is disclosed. The apparatus comprises means for facilitating display of a virtual keyboard layout comprising a plurality of keys. The plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. The apparatus further comprises means for receiving text entry in form of at least one input based on the virtual keyboard layout, and, means for providing one or more word predictions in response to the received text entry.

[0010] Other aspects and example embodiments are provided in the drawings and the detailed description that follows.

BRIEF DESCRIPTION OF THE FIGURES

[0011] For a more complete understanding of example embodiments of the present technology, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:

[0012] FIG. 1 illustrates a block diagram of an exemplary apparatus for text entry in accordance with an embodiment;

[0013] FIG. 2 depicts a user interface comprising an exemplary first virtual keyboard layout displayed on the display of the apparatus in accordance with an embodiment;

[0014] FIG. 3 illustrates an example of text entry in the first virtual keyboard layout in accordance with an embodiment;

[0015] FIG. 4 illustrates an example of concatenation of one or more words for text entry in the first virtual keyboard layout in accordance with an embodiment;

[0016] FIG. 5 depicts a user interface comprising an exemplary second virtual keyboard layout displayed on the display of the apparatus in accordance with an embodiment;

[0017] FIG. 6 depicts a user interface comprising an exemplary third virtual keyboard layout displayed on the display of the apparatus in accordance with an embodiment;

[0018] FIG. 7 is a flow diagram depicting an exemplary method of text entry, in accordance with an embodiment;

[0019] FIGS. 8A, 8B and 8C illustrate a flow diagram depicting an exemplary method for configuring an optimum arrangement of keys for a virtual keyboard layout during offline scenarios in accordance with an embodiment; and

[0020] FIG. 9 illustrates a flow diagram depicting an exemplary method for dynamically configuring an optimum arrangement of keys for a virtual keyboard layout in accordance with an embodiment.

[0021] The drawings referred to in this description are not to be understood as being drawn to scale except if specifically noted, and such drawings are only exemplary in nature.

DETAILED DESCRIPTION

[0022] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present technology. It will be apparent, however, to one skilled in the art that the present technology can be practiced without these specific details. In other instances, apparatuses and methods are shown in block diagram form only in order to avoid obscuring the present technology.

[0023] Reference in this specification to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present technology. The appearance of the phrase "in one embodiment" in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments.

[0024] Moreover, although the following description contains many specifics for the purposes of illustration, anyone skilled in the art will appreciate that many variations and/or alterations to said details are within the scope of the present technology. Similarly, although many of the features of the present technology are described in terms of each other, or in conjunction with each other, one skilled in the art will appreciate that many of these features can be provided independently of other features. Accordingly, this description of the present technology is set forth without any loss of generality to, and without imposing limitations upon, the present technology.

[0025] Pursuant to an exemplary scenario, virtual keyboards have been introduced to overcome some of size limitation restrictions of physical keyboard designs. However, current keyboard configurations are limited in their ability to provide easy and convenient text entry options to a user. Various embodiments of the present technology, however, provide apparatuses and methods for text entry that are capable of overcoming these and other obstacles and providing additional benefits. An exemplary apparatus for text entry is described herein with reference to FIG. 1.

[0026] FIG. 1 illustrates a block diagram of an exemplary apparatus 100 for text entry in accordance with an embodiment. In an embodiment, the apparatus 100 may be an electronic device, such as a mobile phone, a personal computer or a tablet device. Alternatively, in an embodiment, the apparatus 100 may be configured within the electronic device. Pursuant to an exemplary scenario, the apparatus 100 may be any machine capable of executing a set of instructions (sequential and/or otherwise) so as to facilitate text entry.

[0027] The apparatus 100 includes at least one processor, such as the processor 102, a memory 104 and a display 106. It is noted that though the apparatus 100 is depicted to include only one processor, the apparatus 100 may include fewer or more number of processors therein. In an embodiment, the processor 102, the memory 104 and the display 106 are configured to communicate with each other via or through a bus 108. Examples of the bus 108 may include, but are not limited to, a data bus, an address bus, a control bus, and the like. The bus 108 may be, for example, a serial bus, a bi-directional bus or a unidirectional bus.

[0028] In an embodiment, the memory 104 is capable of storing machine executable instructions. Further, the processor 102 is capable of executing the stored machine executable instructions. In an embodiment, the processor 102 may be embodied as a multi-core processor, a single core processor, or a combination of one or more multi-core processors and one or more single core processors. For example, the processor 102 may be embodied as one or more of various processing devices, such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing circuitry with or without an accompanying DSP, or various other processing devices including integrated circuits such as, for example, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. In an embodiment, the processor 102 may be configured to execute hard-coded functionality. In an embodiment, the processor 102 is embodied as an executor of software instructions, wherein the instructions may specifically configure the processor 102 to perform the algorithms and/or operations described herein when the instructions are executed. The processor 102 may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support an operation of the processor 102. Examples of the memory 104 may include, but are not limited to, random access memory (RAM), dual port RAM, synchronous dynamic RAM (SDRAM), double data rate SDRAM (DDR SDRAM), and the like.

[0029] In an embodiment, the memory 104 is adapted to store one or more virtual keyboard layouts. In an embodiment, upon execution of machine executable instructions by the processor 102, the apparatus 100 may be caused to facilitate display of a virtual keyboard layout from among the one or more virtual keyboard layouts stored in the memory 104. In an embodiment, the facilitation of the display of the virtual keyboard layout may comprise selecting a virtual keyboard layout from among the one or more virtual keyboard layouts and displaying the selected virtual keyboard layout on the display 106. In an embodiment, the one or more virtual keyboard layouts may correspond to keyboard layouts, which are specific to text-based applications. For example, an email application may include a corresponding virtual keyboard layout, while, a messenger based application may include another corresponding virtual keyboard layout. In an embodiment, a single virtual keyboard layout may be utilized for all text-based applications, with slight modifications incorporated therein at periodic intervals, to tailor the virtual keyboard layout to user interactions. The various embodiments of the virtual keyboard layouts are hereinafter described with respect to a single virtual keyboard layout, though, it is noted that the embodiments may apply to the one or more virtual keyboard layouts stored in the memory 104.

[0030] In an embodiment, the virtual keyboard layout comprises a plurality of keys, where the plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. It is noted that the term 'arranged' as used herein may refer to a placement of the plurality of keys in the virtual keyboard layout. More specifically, character keys, numerical keys and other non-alphanumeric keys may be 'arranged' or 'placed' in a manner, such that statistically common words and/or affixes may be optimally, i.e. quickly and conveniently traced (for example, glided or tapped). The optimal arrangement of the keys may be achieved by generating (for example, creating) a new virtual keyboard layout, or, by modifying standard keyboard layouts based on the one or more pre-defined criteria to facilitate optimal tracing of the statistically common words and/or affixes. The modification of standard keyboard layouts may include at least one of adding, deleting, merging, repositioning and duplicating of keys. The arrangement of the plurality of keys is explained in further detail with reference to FIGS. 2 to 9. Further, the term 'statistically common' as used herein may refer to a higher frequency of usage of certain words and/or affixes as compared to words and/or affixes constituting the entire corpus of existing words and/or affixes. For example, the statistically common words may refer to top 1000 commonly used words from amongst the words in a word corpus. Similarly, the statistically common affixes may refer to top 100 commonly used affixes from among a corpus of affixes. The statistical data corresponding to the frequency of usage may be derived corresponding to users engaged in text-based communication worldwide, or, to users in select geographies or limited to a user of the apparatus 100.

[0031] In an embodiment, the statistically common words may include commonly used conversational words (for example, words like 'the', 'you', 'what', 'where', 'work', 'food' etc.), greetings (for example, 'hi', 'hello', 'dear', 'bye', 'happy', 'good', 'morning' etc.) and application-specific words (for example, 'brb', 'lol', etc.). The examples of commonly used categories of the affixes include, but are not limited to, prefix, suffix, semi-suffix, infix, circumfix, interfix, duplifix, transfix, simulfix, suprafix, disfix and the like. The term 'affixes' as used herein may also include bigrams, trigram and the like of n-grams that constitute the text. It is noted that in order to understand the various embodiments of the disclosure, the term affix would be hereinafter used to refer to prefix, infix, suffix and/or inflection. Some of the commonly used prefixes in the English language are pre-, re-, pro-, twi-, un-, under-, post-, bi-, en-, el-, em- and the like. Similarly, some of the commonly used suffixes in the English language are -s, -ed, -t, -ing, -en, -er, -est, -n't and the like. Further, some of the commonly used bigrams are th, he, in, en, nt, re,er, an, ti, es, on, at, se, nd, or, ar, al, te, co, de, to, ra, et, ed, it, sa, em, ro, and the like, Some of the commonly used trigram frequency words are the, and, tha, ent, ing, ion, tio, for, nde, has, nee, edt, tis, oft, sth, men and the like. In an embodiment, the plurality of keys in the virtual keyboard layout is arranged such that the statistically common words and affixes can be traced by tracing/gliding a minimum distance on the virtual keyboard layout. Hence, the user can provide the text entry in a much faster manner while using the virtual keyboard layout as compared to standard keyboard layouts, such as the QWERTY keyboard layout, the AZERTY keyboard layout and the DVORAK keyboard layout. It is noted that though the virtual keyboard layouts, as described herein, cater to English language textual entry, however, the memory 104 may be configured to store one or more virtual keyboard layouts corresponding to other languages as well. In an embodiment, a processing means may be configured to facilitate display of a virtual keyboard layout comprising a plurality of keys, where the plurality of keys in the virtual keyboard layout are arranged based on one or more pre¬defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes. An example of the processing means may include the processor 102.

[0032] In an embodiment, a criterion from among the one or more pre¬defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes. In an embodiment, a criterion from among the one or more pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors. In an embodiment, suitable weights may be assigned to factors, such as the trace distance, frequency of occurrence, context associations, trace pattern, user usage characteristics, degree of similarity with standard keyboard layouts and language based factors for statistically common words and affixes to determine the optimum arrangement of keys. It is noted that though the trace distance for a majority of the statistically common words and affixes may be reduced, the trace distance for some words and/or affixes might increase as compared to the standard keyboard layouts.

[0033] In an embodiment, a standard keyboard layout, such as a QWERTY keyboard layout, a AZERTY keyboard layout or a DVORAK keyboard layout may be modified to facilitate tracing of the most common full words, prefixes, suffixes and the like, without drastically modifying the layout of standard keyboards (for example, to retain a high degree of similarity) to create a balance between learning curve of a new layout and coverage of the words and/or affixes. In an embodiment, the virtual keyboard layout may preclude modification of a standard keyboard layout and instead may include a completely new arrangement of keys (for example, a virtual keyboard layout constructed from an empty layout and gradually adding keys to configure the optimum arrangement of keys for the virtual keyboard layout) to facilitate tracing of statistically common words and affixes. In an embodiment, the split keyboard layout may be provided to facilitate multi-touch input from the user.

[0034] As explained, a criterion from among the one or more pre-defined criteria may be a frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus. In an embodiment, a word corpus from among the at least one word corpus is one of a dictionary word corpus, an application specific word corpus, a conversational word corpus and a user specific word corpus. An application specific word corpus may refer to a word corpus including words commonly used in certain applications, such as e-mail, messages, chats, social networking and the like. The conversational word corpus and the user-specific word corpus may include words commonly used by user during textual communication.

[0035] The term 'context associations' as used herein for optimizing the arrangement of keys may refer to at least one of context associations between statistically common words, context associations between statistically common words and statistically common affixes and context associations between statistically common affixes. For example, the statistically common word 'good' may generally be followed by 'morning' (or 'day' or one or more such words). Similarly, the statistically common affix 'PRE' may be generally followed by affix 'Fix'. Such context associations between words (for example, next words, next-to-next words and the like), affixes and combinations thereof may be stored and utilized for optimally arranging the plurality of keys corresponding to the virtual keyboard layout.

[0036] In an embodiment, the plurality of keys is arranged offline based on at least one of the one or more pre-defined criteria (such as the criteria as described above) and user related data such as user feedback, usability information, ergonomic information and the like. In an embodiment, the plurality of keys is dynamically arranged during text entry based on the one or more pre-defined criteria and learning based on user input. The offline and dynamic optimization of the arrangement of keys is further explained later in description with reference to FIGS. 8 and 9.

[0037] The virtual keyboard layout may be displayed to the user on the display 106. In an embodiment, the display 106 may include a touch screen display (for example, a liquid crystal display or LCD screen) configured to display the virtual keyboard layout and corresponding text entry to the user. The display 106 may be receptive to touch gestures which may include, but are not limited to tap, multi-tap, single glide, multi-glide, flick, rotation, pinch and the like. The user can provide the touch input on the display 106 by finger, stylus or any such mode of input. It is noted that the display 106 may include sensors (not shown in FIG. 1) configured to detect user input on the display 106 and translate/interpret the input into detectable keys for text entry. In an embodiment, the user may provide input on the apparatus 100 using mechanisms other than touch based inputs, such as, input on projected layouts, eye movement tracking, pressure tracking, brain mapping and the like.

[0038] Upon displaying of the virtual keyboard layout, the apparatus 100 may be configured to receive text entry in form of at least one input (for example, such as those described above) based on the virtual keyboard layout. For example, the text entry on the virtual keyboard layout using the glide gesture may be provided by touching a first character of word intended to be input. The finger or stylus may then be glided on the virtual keyboard layout displayed on the display 106 touching all the characters of the word in the sequential order. The text entry may be recognized by the processor 102 when the user lifts the finger or stylus from the last character. For example, the user can input the word 'QUICKLY' by touching Q on the virtual keyboard layout followed by gliding the finger or stylus on the display 106 in the order Q-U-l-C-K-L-Y without lifting the finger or stylus. Once the finger or stylus is lifted after Y, the input is recognized by the processor 102 as the word QUICKLY. In an embodiment, the apparatus 100 is capable of inserting a space following the recognition of the input word. Thereafter, a second word may be input following a similar method. In an embodiment, the user can provide input as a combination of plurality of inputs for text entry on the virtual keyboard layout. For example, the word QUICKLY can be input by tap(Q) + glide(UI) + tap(C) + tap(K) + glide(LY). It is to be noted that the above examples are exemplary and may not be considered limiting and that any such combination of inputs may be utilized to provide text entry. In an embodiment, a processing means may be configured to receive text entry in form of at least one input based on the virtual keyboard layout. An example of the processing means may include the processor 102.

[0039] In an embodiment, the display 106, in addition to displaying the virtual keyboard layout, is configured to display a suggestion bar and a text editor. The text editor may be configured to display the text entry in an on-going manner. In an embodiment, the processor 102, upon execution of the instructions stored in the memory 104, may be configured to cause the apparatus 100 to provide one or more word predictions in response to the received text entry. The one or more word predictions may be displayed in the suggestion bar. In an embodiment, a processing means may be configured to provide one or more word predictions in response to the received text entry. An example of the processing means may include the processor 102.


[0040] In an embodiment, the apparatus 100 is further caused to facilitate concatenation of a word prediction from among the one or more word predictions with a traced affix to configure a word text entry. In an embodiment, the concatenation comprises dynamically performing one of a removal and an addition of one or more characters in-between the word prediction and the traced affix. In an embodiment, the display 106 is further configured to facilitate at least one of tracing from the suggestion bar onto the virtual keyboard layout, and, tracing from the virtual keyboard layout onto the suggestion bar for configuring the word text entry. The tracing from the suggestion bar and the concatenation of word portions is further explained with reference to FIG. 4.

[0041] In an embodiment, the apparatus 100 is further caused to insert a space following a traced affix when the traced affix is a suffix. In an embodiment, the apparatus is further caused to insert a space following a selected word prediction from among the one or more word predictions. In an embodiment, the insertion of space is performed based on a type of affix, weightage assigned to suffix preceding a space, weightage assigned to prefix preceding a space, weightage assigned to space preceding or succeeding an infix, context association between affixes forming the word, context association between affixes and context association between words. For example, a higher weightage would be given to the insertion of space following one or more suffixes as compared to insertion of space following one or more prefixes or as compared to insertion of space before/after one or more infixes. The apparatus 100 identifies the context association between a stem word and the corresponding suffix. Further, the apparatus 100 automatically inserts a space in the text editor 214 following the completion of the word after the corresponding suffix completing the stem word is entered by the user. In case a prefix is entered by the user, the apparatus 100 may decide not to insert a space following the prefix based on the weightage defined by the apparatus 100.

[0042] In an embodiment, the plurality of keys corresponding to the virtual keyboard layout may comprise an undo key configured to undo at least one of an insertion of a space during text entry, traced one or more characters, and a selection of a word prediction from among the one or more word predictions. In another embodiment, the plurality of keys corresponding to the virtual keyboard layout may comprise an undo key configured to provide alternate suggestions and corrections (explained later with reference to FIG.4).

[0043] In an embodiment, the plurality of keys in the virtual keyboard layout are split in at least two portions based on the one or more pre-defined criteria to facilitate optimal tracing of at least one of the statistically common words and statistically common affixes on at least one portion of the at least two portions. For example, the virtual keyboard layout may be split in two halves in a manner such that keys disposed on each half may facilitate optimal tracing the statistically common words and statistically common affixes. The splitting of the virtual keyboard layout into portions may be optimized in an offline manner or dynamically (for example, by swapping, repositioning, adding, deleting keys), such that the optimal tracing of full words and affixes is achieved.

[0044] In an embodiment, the memory 104 is further configured to store a database (for example, a first database) of at least one of the statistically common words, the statistically common affixes (for example, statistically common prefixes, statistically common suffixes, statistically common language inflections), usage frequency of the statistically common words, usage frequency of the statistically common affixes, word to affix associations, affix to word associations, affix to affix associations and text entry context associations. In an embodiment, the database may be frequently updated with new affixes from one or more web based dictionaries. Thereafter, based on the user's usage pattern of the newly added affixes, the usage frequency, word to affix associations and text entry context associations are updated for newly added affixes. In an embodiment, the memory 104 is configured to store a database (for example, a second database) of statistically common words and statistically common affixes that are capable of being traced on one portion (for example, one side of a full keyboard layout or one half of a split keyboard layout) of the virtual keyboard layout. In an embodiment, the provision of one or more predictions in response to the received text entry is optimized based on such a database. More specifically, the predictions corresponding to the text entry may be mapped to such a database, which has statistically common words and statistically common affixes falling entirely on either side of the virtual keyboard layout. Accordingly, searching for a match with words/affixes that cannot be traced entirely on one side (for example, searching in the first database) may be avoided, thereby optimizing a provision of predictions/suggestions to a user.

[0045] In an embodiment, one or more keys from among the plurality of keys corresponding to the common words and/or affixes in the virtual keyboard layout are configured to be duplicated at one or more portions of the virtual keyboard layout for optimizing the arrangement of the plurality of keys. The duplication of keys is explained herein with reference to FIG. 2.

[0046] FIG. 2 depicts a user interface 200 comprising an exemplary first virtual keyboard layout 202 (hereinafter referred as split virtual keyboard layout 202) displayed on the display 106 of the apparatus 100 in accordance with an embodiment. As explained with reference to FIG. 1, in some embodiments, an arrangement of the plurality of keys is configured to have a high degree of similarity to the QWERTY keyboard layout while at the same time the plurality of keys are arranged based on the one or more pre-defined criteria to facilitate optimal tracing of common words and affixes. In the virtual keyboard layout 202, each character key corresponds to an alphabetic character, such as characters from "A" to "Z". The non-character keys include an undo key 204, a "Shift" key 206, an "Enter" key 208, and a space bar 210. The numeric keys include a plurality of keys corresponding to digits 0 to 9. It is noted that the split virtual keyboard layout 202 may include more or fewer number of keys than those depicted in FIG. 2. Further, positioning of each key in the split virtual keyboard layout 202 and/or an input associated with each key may also vary than that depicted in FIG. 2.


[0047] The plurality of keys of the split virtual keyboard layout 202 includes additional keys that are duplicated on plurality of portions (such as right half and left half) of the split virtual keyboard layout 202. For example, to facilitate the text entry of prefix 'PRE-', the keys P, R and E are duplicated on left and right half of the split virtual keyboard layout 202. This would enable the user to glide and/or tap the prefix 'PRE-' by either hand while providing the text entry. The user can input the prefix 'PRE-' by touching P on the split virtual keyboard layout 202 followed by gliding the finger or stylus on the display 106 in the order P-R-E without lifting the finger or stylus. Once the finger or stylus is lifted after E, the input is recognized by the display 106 as the prefix 'PRE-'. Hence, the apparatus 100 enables user to provide the text entry by both the hands faster and in a convenient manner. It is noted that in order to provide text entry, gliding input is required only on either half of the split virtual keyboard layout 202. The gliding gesture is shown on both the halves in FIG. 2 only for illustration purposes.

[0048] The Ul 200 further includes a suggestion bar 212 for displaying one or more word predictions, and, a text editor 214 for displaying text entry in an on-going manner. For example, the words 'PRE' and 'PREP' are predicted in the suggestion bar 212 based on the gliding input P-R-E provided by the user. In addition to the predicted word 'PRE', the apparatus 100 (and more specifically, the processor 102 in conjunction with the memory 104) provides a prediction of an inflection of the word PRE (i.e. PREP) also in the suggestion bar 212. The user can further select one word out of the predicted one or more words. The selected word is input in the text editor 214, overriding any previous prediction in the text editor 214. In an embodiment, the predicted word is simultaneously displayed in the text editor 214. For example, in the above scenario, only PRE would be displayed in the text editor 214. Further, since PRE- is a prefix, the apparatus 100 would anticipate subsequent input by the user. Hence, the apparatus 100 would not insert a space following the gliding input of PRE.

[0049] In an embodiment, in order to provide prediction cue to the user, the predictions on the text editor 214 are visually differentiated for user's reference. In an embodiment, the predictive text may be displayed in italics or may be underlined. For example, when the user enters P character, the text editor 214 may display PRE, where the characters RE may be predicatively associated with the input character P in italics font. Once the user provides input as PRE using the split virtual keyboard layout 202, the editor 214 realigns the display to PRE, where the RE characters are replaced by normal font. In an embodiment, the frequently used subsequent one or more characters are highlighted or enlarged on the split virtual keyboard layout 202 based on user's input of the character. For example, once the user inputs P character, keys corresponding to most frequently used subsequent characters A and R may be highlighted or enlarged on the split virtual keyboard layout 202 to provide a visual cue to the user that he/she may enter A or R as a next possible character.

[0050] In an embodiment, the user can switch off the suggestion bar 212 using a toggle key 216 placed on the suggestion bar 212. In case, the user turns off the suggestion bar 212, the input word (for example, PRE) would be displayed only on the text editor 214. Similarly, the user can switch on the suggestion bar 212 using the toggle key 216. In another embodiment, the undo key 204 is used for error correction. In case the user glided P-R-E by mistake, the user can press or touch the undo key 204 to erase the predicted word from the editor 214. Thereafter, the user can provide another text entry input.

[0051] Referring now to FIG. 3, an example of text entry in the split virtual keyboard layout 202 of FIG. 2 is illustrated in accordance with an embodiment. The user can input the word 'QUICK' by performing tap(Q) + glide(UI) + tap(C) + tap(K) in the sequential order. The user can provide the above text entry as follows: he can use typing finger of his left hand (usually thumb) to provide text entry on left half of the split virtual keyboard layout 202, and, a typing finger of his right hand (usually thumb) to provide text entry on right half of the split virtual keyboard layout 202. The user can thus input tap(Q) and tap(C) using a typing finger of his left hand and glide(UI) and tap(K) using a typing finger of his right hand. Hence, the user can provide input as a combination of plurality of inputs for text entry on either half of the split virtual keyboard layout 202 simultaneously. The apparatus 100 is capable of making the context association between the characters in the order Q-UI-C-K. The context association can be learnt offline from corpuses for English language. In some embodiments, the context association may include character level bigrams/trigrams etc. As explained herein with reference to FIG. 1, the learnt context associations may be stored in the memory 104 of the apparatus 100. Further, the context association would enable the apparatus 100 to provide correct predictions based on the text entry by the user. In an embodiment, infrequency data along with context may be used for text disambiguation and/or error correction.

[0052] As depicted in FIG. 3, the predicted word QUICK may be displayed in the suggestion bar 212. Further, the apparatus 100 would predict inflections of the word QUICK in the suggestion bar 212. For example, along with QUICK, the one or more word predictions may include get QUICKEN, QUICKLY and QUICKIE as suggestions for the text entry. In an embodiment, prediction of the one or more words may be determined by the apparatus 100 based on a variety of factors, such as frequency of usage of the one or more words by the user, word context association, word trace pattern, word-affix context association and the like. In case the user needs to input any of the word(s) predicted in the suggestion bar 212, he can select the intended word by tapping in the suggestion bar 212. For example, the user may tap QUICKLY from the suggestion bar 212 to be input in the text editor 214. Hence, QUICK would be replaced by QUICKLY in the text editor 214. The apparatus 100 is further capable of inserting a space in the editor following the recognition of the input word. In an embodiment, the apparatus 100 is further configured to insert a space in the text editor 214 following the traced affix when the traced affix is a suffix. In case of any mistaken text entry, the user can press or touch the undo key 204 to erase the predicted word from the editor 214.


[0053] FIG. 4 illustrates an example of concatenation of one or more words for text entry in the split virtual keyboard layout 202 of FIG. 2 in accordance with an embodiment. The user can enter the word DIFFUSION by any one or combination of the methods as explained with reference to FIGS. 2 and 3. Additionally, the user can also enter the word DIFFUSION by the method of concatenation described herein with reference to FIG. 4. The word 'DIFFUSION' may be formed by concatenation of a stem word DIFFUSE and a suffix -ION. The user can enter the stem word DIFFUSE by tap(D) + tap(l) + double tap(F) + tap(U) + glide(SE). Further, the user can enter the suffix -ION as glide(l-O-N). It is noted that text entry of the stem word DIFFUSE and the suffix -ION described above is exemplary and that the user may choose any one of the methods as explained herein with reference to the preceding figures.

[0054] The apparatus 100 is capable of recognizing -ION as a statistically frequently used suffix. Accordingly, the one or more words would be predicted in the suggestion bar 212. The one or more words predicted in the suggestion bar 212 would include the words(s) entered, inflection of the entered word(s) and concatenation of the entered words. For example, the one or more words predicted in the suggestion bar 212 would be DIFFUSE, ION, DIFFUSER and DIFFUSION. The words DIFFUSE and ION are the words entered by the user, DIFFUSER is the inflection of DIFFUSE and DIFFUSION is concatenation of the stem word DIFFUSE and the suffix -ION. The user may thereafter tap DIFFUSION from the suggestion bar 212 to be input in the text editor 214. The apparatus 100 is further capable of inserting a space in the editor following the recognition of the input word. It is noted that similar method of text entry can be used by the user to enter one or more words formed with a stem word and one or more affixes as explained with reference to FIG. 1.

[0055] In an embodiment, the user may choose to input the word DIFFUSION by choosing the predicted word DIFFUSE from the suggestion bar 212 and continue dragging the finger or stylus to glide l-O-N from the split virtual keyboard layout 202 (i.e. tracing a predicted word from the suggestion bar 212 onto the split virtual keyboard layout 202). The apparatus 100 is capable of concatenating the stem word DIFFUSE with ION to form DIFFUSION by removing the character 'E' from the stem word DIFFUSE. It is noted that while conjoining stem word with the one or more affixes, the apparatus 100 is capable of dynamically performing one of a removal and an addition of one or more characters in-between the word prediction and the traced affix. In another example embodiment, user may enter the word DIFFERENTIATED by concatenating the stem word DIFFERENT with the suffix IATED.

[0056] In an embodiment, a user may tap DIFFUS from the suggestion bar 212 and glide l-O-N and the text editor 214 may reflect DIFFUSION. In such a situation, user may tap a pre-defined cue, such as a letter "O" at the next space to automatically remove the previous space and conjoin the words to reflect DIFFUSION0. As explained with reference to FIG. 1, a "Redo" key (not shown in the figure), may be included on the split virtual keyboard layout 202 for providing alternate suggestions and corrections as described in accordance with the pre-defined cue. Accordingly, the decision to provide spacing on a tap after a glide or glide after a tap or Glide after a Glide of a prefix/suffix/shortword/fullword combination may include intelligent space removal logic if a space is incorrectly inserted during text entry. In an embodiment, when the user glides a prefix and then taps a character or glides another character, the processor 102 may be adapted to assign some weightage to the fact that the user intends to complete the word and hence preclude from inserting a space therein. Alternatively, the processor 102 may decide upon undoing the space or adding a space depending on the meaning and context and syntax of the first prefix and second word/suffix in totality. The apparatus 100 is further capable of intelligently inserting space as explained with reference to FIG. 1.

[0057] It is noted that the apparatus 100 (and more specifically, the display 106) may facilitate tracing of both - from the suggestion bar 212 onto the split virtual keyboard layout 202, and, tracing from the split virtual keyboard layout 202 onto the suggestion bar 212 for configuring the word text entry.

[0058] In an embodiment, the user can undo the actions of the apparatus 100 by pressing or touching the undo key 204. For example, the first press of the undo key 204 would remove the inserted space after the entered word DIFFUSION. The second press of the undo key 204 would remove the suffix '-ION' and the stem word DIFFUSE would be retained on the text editor 214. A subsequent press of the undo key 204 would remove the stem word DIFFUSE from the text editor 214.

[0059] FIG. 5 depicts a user interface 500 comprising an exemplary second virtual keyboard layout 502 displayed on the display 106 of the apparatus 100 in accordance with an embodiment. The second virtual keyboard layout 502 includes a first portion 504, a second portion 506 and a third section 508. For illustration, the first portion 504 and the second portion 506 are separated by an imaginary separator 510. The first portion 504 and the second portion 506 include a plurality of character keys. Each character key corresponds to an alphabetic character, such as characters from "A" to "Z". The third section 508 includes a plurality of numeric keys corresponding to digits 0 to 9. The second virtual keyboard layout 502 further includes non-character keys such as the space bar 512, an "Enter" key 514, a "Shift" key 516 and an undo key 518. It is noted that the second virtual keyboard layout 502 may include more or fewer number of keys than those depicted in FIG. 5. Further, a positioning of each key in the second virtual keyboard layout 502 and/or an input associated with each key may also vary than that depicted in FIG. 5.

[0060] The plurality of keys of the second virtual keyboard layout 502 is arranged such that additional keys are duplicated on the first portion 504 and second portion 506. For example, to facilitate the text entry of prefix PRE-, the keys P, R and E are duplicated on the first portion 504 and the second portion 508. This would enable the user to glide and/or tap PRE- by either hand while providing the text entry. The user can input the prefix PRE- by touching P on the second virtual keyboard layout 502 followed by gliding the finger or stylus on the display 106 in the order P-R-E without lifting the finger or stylus. Once the finger or stylus is lifted after E, the input is recognized as the prefix PRE-. Hence, the apparatus 100 enables user to provide the text entry by both the hands easily, faster and conveniently.

[0061] The Ul 500 further includes a suggestion bar 520 for displaying one or more word predictions, and, a text editor 522 for displaying text entry in an on-going manner. The second virtual keyboard layout 502 is configured to facilitate tracing of statistically common conversational words and greetings. As an example, the user can enter the word HELLO by gliding characters in a sequence (H-E-L-L-O). It is noted that text entry of HELLO is depicted herein for exemplary purposes and that the user may choose any one of the methods of text entry as explained with reference to preceding figures. The words HELL and HELLO are predicted in the suggestion bar 520 based on the gliding input. H-E-L-L-0 are the characters touched while gliding, whereas the apparatus 100 predicts HELL also to the user in the suggestion bar 520. The user can further select one word out of the predicted one or more words. The selected word is input in the editor 522 of the display 106, overriding any previous prediction in the text editor 522. In an embodiment, the predicted word based on the user input is simultaneously predicted in the text editor 522. The predicted word in the text editor 522 is based on the gliding input by the user. For example, in the above scenario; only HELLO would be predicted in the text editor 522. Further, the apparatus 100 is capable of inserting a space following the word HELLO (as explained herein with reference to FIG. 3). The user can thereafter enter a subsequent word.

[0062] In an embodiment, the user can switch off the suggestion bar 520 using a toggle key 524 placed on the suggestion bar 520. In case, the user turns off the suggestion bar 520, the predicted word (for example, HELLO) would be displayed only on the text editor 522. Similarly, the user can switch on the suggestion bar 520 using the toggle key 524. In another embodiment, in case the user glided HELLO by mistake, the user can press or touch the undo key 518 to erase the predicted word from the text editor 522. Thereafter, the user can provide another text entry input. It is noted that the prediction of the one or more words in the second virtual keyboard layout 502 based on the inflection of the one or more words and concatenation of the stem word with the one or more affixes may be performed as explained with reference to FIGS. 2 to 4.

[0063] FIG. 6 depicts a user interface 600 comprising an exemplary third virtual keyboard layout 602 (hereinafter referred as split virtual keyboard layout 602) displayed on the display 106 of the apparatus 100 in accordance with an embodiment. As explained with reference to FIG. 1, the plurality of keys in the virtual keyboard layout may be split in one or more portions based on the one or more pre-defined criteria to facilitate optimal tracing of at least one of the statistically common words and statistically common affixes on at least one portion of the at least two portions. For example, the virtual keyboard layout, such as the second virtual keyboard layout 502 of Ul 500 may be split in two halves in a manner such that keys disposed on each half may facilitate optimal tracing the statistically common words and statistically common affixes. The splitting of the virtual keyboard layout into portions may be optimized in an offline manner or dynamically (for example, by swapping, repositioning, adding, deleting keys), such that the optimal tracing of full words and affixes is achieved. The split virtual keyboard layout 602 includes a plurality of alphanumeric keys as well special characters keys combined with alphabetic characters. The non-character keys include an undo key 604, space keys 606 and 608 (on left half and right half of the split virtual keyboard layout 602, respectively), activation key 610 for activation of numerical and special character entries, upper case activation key 612, backspace key 614 and "Enter" key 616. It is noted that the split virtual keyboard layout 602 may include more or fewer number of keys than those depicted in FIG. 6. Further, positioning of each key in the split virtual keyboard layout 602 and/or an input associated with each key may also vary than that depicted in FIG. 6.

[0064] In an embodiment, the text entry may be facilitated by providing input only on one half of the split virtual keyboard layout 602. For example, the word "WATER" may be entered by glide (WA) + glide (TER) on the left half of split virtual keyboard layout 602 as depicted in FIG. 6. Similarly, text entry may be facilitated by providing input only on the right half of the split virtual keyboard layout 602. In an embodiment, the text entry may be facilitated by providing input on either half of the split virtual keyboard layout 602. For example, the word "RETURN" may be entered by glide (RET) + and tap (U) +glide (RN) as depicted in FIG. 6. In an embodiment, the processor 102 of apparatus 100 may identify from the corpus/database in the memory 104 that "ING" is high frequency inflection and hence is beneficial to have ING traceable on one half of a split virtual keyboard layout and accordingly the split virtual keyboard layout 602 is modified such that a duplicate column with G is added to the right hand side of the split virtual keyboard layout 602. A user may then glide (RET) + and tap (U) +glide (RNING).

[0065] The Ul 600 further includes a suggestion bar 618 and a text editor 620. In FIG. 6, the suggestion bar 618 is depicted to suggest commonly used words such as "The", "To", "Is" and "You". Further, the suggestion bar 618 is adapted to include a "SETTINGS" tab 622 configured to enable a user to customize the prediction of the words and/or keys in the split virtual keyboard layout 602. Additionally, the suggestion bar 618 includes scrolling keys 624 for accessing additional word predictions/ suggestions.

[0066] In an embodiment, the processor 202 may execute instructions during offline scenarios to identify, for a given cdrpus of words and frequencies and context, best fit words to either side of the split keyboard layout 602 by gradually duplicating or removing characters from each side such that the cost on the addition or removal of keys is minimal. In an embodiment, when a character is removed from one side, it may be added to another side. In an embodiment, the processor 102, in conjunction with the memory 104, may ensure that a maximum number of high frequency words, high frequency inflections and high frequency prefixes/suffixes can be glided easily on any one side of the virtual keyboard layout.

[0067] In an embodiment, the apparatus 100 is capable of configuring an optimum layout (i.e. optimum arrangement of keys) for the spilt virtual keyboard layout 602 in an offline manner. Various embodiments for optimizing the virtual keyboard layout offline are further explained with reference to FIGS. 8A, 8B and 8C. Similarly, the virtual keyboard layout can De dynamically optimized (Tor example, online modifications) while taking into account the words being entered by the user during text entry. Various embodiments for optimizing the virtual keyboard layout online are further explained with reference to FIG. 9.

[0068] FIG. 7 is a flow diagram depicting an exemplary method 700 of text entry, in accordance with an embodiment. The method 700 depicted in the flow diagram may be executed by, for example, the apparatus 100 explained with reference to FIGS. 1 - 6. Operations of the flowchart, and combinations of operation in the flowchart, may be implemented by, for example, hardware, firmware, a processor, circuitry and/or a different device associated with the execution of software that includes one or more computer program instructions. The operations of the method 700 are described herein with help of the apparatus 100. However, the operations of the method 700 can be described and/or practiced by using a system other than the apparatus 100. The method 700 starts at block 702.

[0069] At block 702, a display of a virtual keyboard layout comprising a plurality of keys may be facilitated (for example, by using processor 102 in conjunction with the memory 104 of the apparatus 100). In an embodiment, the plurality of keys in the virtual keyboard layout are arranged based oh one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes (for example, the statistically common words and affixes explained with reference to FIG. 1). In an embodiment, the plurality of keys in the virtual keyboard layout are arranged such that the statistically common used words and affixes can be traced by tracing/gliding a minimum distance on the virtual keyboard layout. Hence, the user can provide the text entry much faster while using the virtual keyboard layout compared to standard keyboards such as QWERTY keyboard layout, AZERTY keyboard layout and DVORAK keyboard layout. In an embodiment, one or more keys from among the plurality of keys corresponding to the one or more affixes are configured to be duplicated at one or more portions of the virtual keyboard layout as explained herein with reference to FIGS. 3.


[0070] In an embodiment, a criterion from among the one or more pre¬defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes. In an embodiment, a criterion from among the one or more pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors. In an embodiment, suitable weights may be assigned to factors, such as the trace distance, frequency of occurrence, context associations, trace pattern, user usage characteristics, degree of similarity with standard keyboard layouts and language based factors for statistically common words and affixes to determine the optimum arrangement of keys. It is noted that though the trace distance for a majority of the statistically common words and affixes may be reduced, the trace distance for some words and/or affixes might increase as compared to the standard keyboard layouts.

[0071] In an embodiment, a standard keyboard layout is one of a QWERTY keyboard layout, an AZERTY keyboard layout and a DVORAK keyboard layout. In an embodiment, standard keyboard layouts may be modified to facilitate tracing of the most common full words, prefixes, suffixes and the like, without drastically modifying the layout of standard keyboards (for example, to retain a high degree of similarity) to create a balance between learning curve of a new layout and coverage of the words and/or affixes. In an embodiment, the virtual keyboard layout may preclude modification of a standard keyboard layout and instead may include a completely new arrangement of keys (for example, a virtual keyboard layout constructed from an empty layout and gradually adding keys to configure the optimum arrangement of keys for the virtual keyboard layout) to facilitate tracing of statistically common words and affixes. Further, the virtual keyboard layout may comprise one of a full keyboard configuration (such as the second virtual keyboard layout 502 of FIG. 5) and a split keyboard configuration (such as the split virtual keyboard layout 202, 602 of FIGS. 2 and 6, respectively).

[0072] As explained, a criterion from among the one or more pre-defined criteria may be a frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus. In an embodiment, a word corpus from among the at least one word corpus is one of a dictionary word corpus, an application specific word corpus, a conversational word corpus and a user specific word corpus. An application specific word corpus may refer to a word corpus including words commonly used in certain applications, such as e-mail, chats, messages, social networking and the like. The conversational word corpus and the user-specific word corpus may include words commonly used by user during textual communication.

[0073] In an embodiment, the plurality of keys is arranged offline based on the one or more pre-defined criteria (as described above) and user related data, such as user feedback, usability and ergonomic data. In an embodiment, the plurality of keys is dynamically arranged during text entry based on the one or more pre-defined criteria and learning based on user input. The offline and dynamic arrangement of keys is further explained later in description with reference to FIGS. 8A, 8B, 8C and 9.

[0074] In an embodiment, the virtual keyboard layout may be displayed to the user (for example, using a display 106 of the apparatus 100). Upon displaying of the virtual keyboard layout, at block 704, text entry in form of at least one input may be received based on the virtual keyboard layout. The provision of the input may be performed as explained herein with reference to FIG. 1.

[0075] In an embodiment, in addition to displaying the virtual keyboard layout, a suggestion bar and a text editor may be displayed to the user as depicted in FIGS. 2 to 6. The text editor may be configured to display the text entry in an on-going manner. At block 706, one or more word predictions may be provided to the user in response to the received text entry. The one or more word predictions may be displayed in the suggestion bar.


[0076] In an embodiment, the method 700 may further include facilitating concatenation of a word prediction from among the one or more word predictions with a traced affix to configure a word text entry, where the concatenation comprises dynamically performing one of a removal and an addition of one or more characters in-between the word prediction and the traced affix. In an embodiment, the method 700 may further include facilitating at least one of tracing from the suggestion bar onto the virtual keyboard layout, and, tracing from the virtual keyboard layout onto the suggestion bar for configuring the word text entry. The tracing from the suggestion bar and the concatenation of word portions may be performed as explained with reference to FIG. 4.

[0077] In an embodiment, the method 700 further includes inserting a space following a traced affix when the traced affix is a suffix. In an embodiment, a space may be inserted following a selected word prediction from among the one or more word predictions. The apparatus 100 is further capable of intelligently inserting space as explained with reference to FIG. 3. In an embodiment, the plurality of keys corresponding to the virtual keyboard layout may comprise an undo key configured to undo at least one of an insertion of a space during text entry, traced one or more characters, and a selection of a word prediction from among the one or more word predictions. The insertion of space may be performed as explained herein with reference to FIG. 3. In an embodiment, the arrangement of the plurality of keys is further configured to facilitate optimal tracing of at least one of statistically common conversational words and greetings (such as word "HELLO" as explained with reference to FIG. 5).

[0078] FIGS. 8A, 8B and 8C illustrate a flow diagram depicting an exemplary method 800 for configuring an optimum arrangement of keys for a virtual keyboard layout during offline scenarios, in accordance with an embodiment. The method 800 depicted in the flow diagram may be executed by, for example, the apparatus 100 explained with reference to FIGS. 1-6. Operations of the flowchart, and combinations of operation in the flowchart, may be implemented by, for example, hardware, firmware, a processor, circuitry and/or a different device associated with the execution of software that includes one or more computer program instructions. The operations of the method 800 are described herein with help of the apparatus 100. However, the operations of the method 800 can be described and/or practiced by using a system other than the apparatus 100. The method 800 starts at block 802.

[0079] At block 802, a database of words and/or affixes of interest is selected by the apparatus 100. The database of words/affixes is selected from among generic or application specific word corpus (for example, word corpus for social networking sites), conversational corpus, one or more dictionaries including frequently used words and the like. In an embodiment, top 'N' number of words and affixes may be selected from the database by the apparatus 100 to be used for configuring the virtual keyboard layout. The selection criteria may include, but are not limited to, the frequency of usage of the words, common context associations, and word-affix context association and the like. At block 804, the apparatus 100 may determine whether a new virtual keyboard layout needs to be created offline or not (for example, to cater to particular applications or to improve on existing virtual keyboard layouts). In an embodiment, a virtual empty layout including a collection of one or more character and numeric keys (in an unarranged/random fashion) may provide a framework to configure the virtual keyboard layout. Each character key corresponds to an alphabetic character, such as characters from "A" to "Z" and each numeric key corresponds to digits 0 to 9. Further, the virtual empty layout may include any of a split keyboard configuration or a full keyboard configuration. To facilitate the configuration of the virtual keyboard layout from the virtual empty layout, at block 806, one of a word and affix is selected from the database.

[0080] Thereafter, at block 808, all the characters of the word/affix selected at block 806 are added on the virtual empty layout. At block 810, an optimum arrangement of characters (for example, a path corresponding to minimum trace distance) is identified on the virtual empty layout and all the characters are rearranged to map on the identified shortest path. The user is capable of providing one or more touch inputs (for example, on the display 106) which may include, but are not limited to tap, multi-tap, single glide, multi-glide, flick, rotation, pinch and the like. Hence, the characters of the selected word/affix may be arranged on the virtual empty layout in such a way that the user would be able to input the selected word by any one or combination of above mentioned input modes in the fastest way. For example, if the selected word is QUICK, then the characters Q,U,I,C and K are arranged on the virtual empty layout, so that user may use the glide gesture to trace Q-U-l-C-K in the fastest possible way. In an embodiment, the user may provide input on the apparatus 100 using mechanisms other than touch based inputs, such as, input on projected layouts, eye movement tracking, pressure tracking, brain mapping and the like. After placement of first word, the virtual empty layout is referred as an interim virtual keyboard layout.

[0081] At block 812, the apparatus 100 determines whether there are any words/affixes remaining in the database, which have not been accounted for. If there are word(s)/affixes remaining in the database, another word/affix is selected from the database at block 814. At block 816, it is determined whether all characters of the selected word/affix are present on the interim virtual keyboard layout. If it determined that one or more characters are missing in the interim virtual keyboard layout, then those characters are added to the interim virtual keyboard layout at block 818 and operations at block 810-812 are repeated. If is determined at block 816 that all characters of the selected word/affix are included in the interim virtual keyboard layout, then the operations at block 810 and 818 are repeated iteratively till all the words/affixes of the database are exhausted. If it is determined at block 812 that there are no words/affixes left in the selected database that have not been accounted for, then at block 820, an optimum arrangement of keys is selected to develop the virtual keyboard layout.

[0082] It is noted that while modifying the interim virtual keyboard layout, corresponding changes in the interim virtual keyboard layout are made at the block 810. For example, in addition to adding new keys on the interim virtual keyboard layout, the other changes required in the interim virtual keyboard layout may include, but are not limited to, duplicating, rearranging, repositioning, deleting, and swapping one or more keys already placed on the virtual keyboard layout. The apparatus 100 is further capable of maintaining information of one or more character placement on the interim virtual keyboard layout for tracing optimum path corresponding to each of the words and/or affixes of the database. The information maintained by the apparatus may include, but are not limited to, duplication location, rearrangement location, repositioning location, swapping location, word frequency weightage, word context association weightage, word trace pattern, and character frequency. Hence, an optimum interim virtual keyboard layout is generated in accordance with the information parameters mentioned above. It is noted that numeric keys and other non-alphanumeric keys are suitably added to the virtual keyboard layout. Examples of the other keys include, but are not limited to, "Shift" key, "Undo" key, "Space bar", "Redo Key", "Control" Key, "Enter" key and Special character keys.

[0083] If at block 804, the apparatus 100 decides that the virtual keyboard layout needs to be generated offline based on a standard keyboard layout, then a word/affix is selected from the database at block 822. Examples of the standard keyboard layout may include, but are not limited to, QWERTY keyboard layout, AZERTY keyboard layout and DVORAK keyboard layout. At block 824, the apparatus 100 determines whether the word/affix selected at block 822 can be traced entirely on one portion of the virtual keyboard layout (for example, the input of word "WATER" as explained herein with reference to the FIG. 6) and/or with optimum distance. If both the conditions are satisfied by the selected word/affix, then another word/affix is selected by the apparatus 100 from the database.

[0084] If it is determined at block 824 that any one of the specified conditions are not satisfied by the selected word/affix, then the keys corresponding to one or more characters of the selected word/affix are repositioned and/or duplicated on the virtual keyboard layout at block 826. The repositioning and/or duplication of the one or more character keys are performed to facilitate tracing of minimum or optimum distance on the virtual keyboard layout to input the selected word/affix. The apparatus 100 is further capable of maintaining information of one or more character placement on the virtual keyboard layout for tracing optimum path corresponding to each of the word/affix of the database. The information maintained by the apparatus may include, but are not limited to, duplication location, rearrangement location, repositioning location, swapping location, word frequency weightage, word context association weightage, word trace pattern, and character frequency. Hence, an optimum keyboard layout is generated in accordance with the information parameters mentioned above.

[0085] At block 828, the apparatus 100 determines whether there are any words/affixes remaining in the database to be considered for modification in the virtual keyboard layout. If there are any words/affixes remaining in the database to be placed on the virtual keyboard layout, then another word/affix is selected from the database at block 830 and operations corresponding to the blocks 824 to 828 are repeated iteratively till all the words/affixes of the database are exhausted. If it is determined at block 828 that there are no more words/affixes left in the database to be considered for modification in the virtual keyboard layout, the operation of block 832 is performed. At block 832, the apparatus 100 identifies combined weight of introducing change of the one or more characters in the virtual keyboard layout. The changes based on the combined weightage are performed while taking into account the information maintained by the apparatus 100 as explained with the reference of block 826. Additionally, the apparatus 100 is capable of maintaining information corresponding to the cognitive load factor on the user by the modification in the virtual keyboard layout, the region of change on the virtual keyboard layout, the deviation factor from the standard keyboard layout and the like.

[0086] At block 834, the apparatus 100 is capable of modifying the virtual keyboard layout based on the combined weights identified at the block 832. Hence, an optimum virtual keyboard layout is generated in accordance with the information parameters mentioned above. It is noted that the apparatus 100 is capable of generating a split keyboard or a full keyboard by the method 800.

[0087] FIG. 9 illustrates a flow diagram depicting an exemplary method 900 for dynamically configuring an optimum arrangement of keys for a virtual keyboard layout, in accordance with an embodiment. The method 900 depicted in the flow diagram may be executed by, for example, the apparatus 100 explained with reference to FIGs. 1-6. Operations of the flowchart, and combinations of operation in the flowchart, may be implemented by, for example, hardware, firmware, a processor, circuitry and/or a different device associated with the execution of software that includes one or more computer program instructions. The operations of the method 900 are described herein with help of the apparatus 100. However, the operations of the method 900 can be described and/or practiced by using a system other than the apparatus 100. The method 900 starts at block 902.

[0088] It is noted that dynamic configuration of the virtual keyboard layout implies configuring (with minimal change) the virtual keyboard layout while the user is providing textual input. Such a modification may also be referred to herein as Online modification or online scenario. Accordingly, in an online scenario, a modified virtual keyboard layout may be presented to the user while he/she is entering text. Further, the method 900 is performed based on offline learning (for example, optimizing arrangement of the virtual keyboard layout based on the one or more pre-defined criteria as explained herein with reference to FIGS. 8A, 8B and 8C) and the learning accrued from the user's input on the virtual keyboard layout. In an embodiment, a pre-defined number of keys from among the one or more keys are arranged at pre¬defined time intervals for optimizing the arrangement. For example, though it is determined after first fifty input events, that more than one key needs to be one of repositioned, swapped, added, modified, removed, merged and the like, an arrangement of only one key at a time is optimized, Such a dynamic optimization (for example, optimizing arrangement of one key at a time) in smaller time intervals (for example, every fifty input events) or learning cycles avoids a high cognitive load on the user with a changing Ul during text entry or when the virtual keyboard layout is accessed next time. It is noted that the pre-defined number of keys (for example, one key) and the pre-defined interval value (for example, every fifty input events) as used herein may not be considered limiting, and that the pre-defined number of keys and the pre-defined interval may include any such values.

[0089] At block 902, the apparatus 100 selects a words and/or affix which is being frequently used by the user during text entry (i.e the apparatus 100 learns from on-going user input and selects one or words/affixes being frequently used). The apparatus 100 may perform the selection at pre¬defined interim intervals (for example, a pre-defined number of input words). In an embodiment, the interim intervals may be based on timestamp, certain threshold of learning, certain cues from the user and/or pre-defined Ul event(s).

[0090] At 904, it is determined whether the selected word/affix can be traced on one portion and/or with optimum distance. If it is determined that the word/affix can be traced on one portion and/or with optimum distance, then the apparatus 100 selects another word/affix that is being frequently used during text entry at block 902. If it is determined that the selected word/affix cannot be traced on one portion and/or with optimum distance at block 904, then at block 906, one or more characters from the word/affix are considered as candidates for repositioning and/or duplication on the virtual keyboard layout. At block 908, it is determined whether there are any other words/affixes that are being frequently used during text entry. If it is determined that there are additional words/affixes that are being frequently used during text entry, then operations corresponding to the blocks 902 to 908 are repeated till all such words/affixes are exhausted. At block 910, combined weight of introducing change of the one or more characters in the virtual keyboard layout is identified and, at block 912, the virtual keyboard layout is modified based on the identified combined weight. The operations at block 912 and 914 are performed as explained with reference to FIGS. 8A, 8B and 8C and are not explained herein for sake of brevity. It is noted that the change to the keyboard layout may be introduced over one or more points of change, where a point of change may indicate one key change at a time.

[0091] Without in any way limiting the scope, interpretation, or application of the claims appearing below, advantages of one or more of the exemplary embodiments disclosed herein include provisioning of fast and convenient means for text entry. Accordingly, various embodiments provide text entry apparatuses and methods for provisioning of textual input. It is to be noted that the text entry apparatuses and methods, as described in various embodiments, are not limited to the exemplary layouts as described with respect to FIGS. 2 to 6, but, these may be configured in a multitude of layouts. Users may utilize the text entry apparatuses and methods for composing emails or for posting comments or tweets on social networking sites. The arrangement of keys facilitate an ease of tracing affixes, conversational words, greetings and the like, thereby enabling textual entry in easy and convenient manner. Moreover, virtual keyboard layouts as described herein are configured by slight modifications to standard keyboard layouts to facilitate tracing of the most common full words, prefixes, suffixes and the like, without drastically modifying the layout of standard keyboards thereby creating a balance between learning curve of a new layout and a coverage of one or more words/affixes.

[0092] Although the present technology has been described with reference to specific exemplary embodiments, it is noted that various modifications and changes may be made to these embodiments without departing from the broad spirit and scope of the present technology. For example, the various blocks, modules, etc., described herein may be enabled and operated using hardware circuitry (for example, complementary metal oxide semiconductor (CMOS) based logic circuitry), firmware, software and/or any combination of hardware, firmware, and/or software (for example, embodied in a machine-readable medium). For example, the apparatuses and methods may be embodied using transistors, logic gates, and electrical circuits (for example, application specific integrated circuit (ASIC) circuitry and/or in Digital Signal Processor (DSP) circuitry).

[0093] Particularly, the apparatus 100, the processor 102, the memory 104 and the display 106 may be enabled using software and/or using transistors, logic gates, and electrical circuits (for example, integrated circuit circuitry such as ASIC circuitry). Various embodiments of the present disclosure may include one or more computer programs stored or otherwise embodied on a computer-readable medium, wherein the computer programs are configured to cause a processor or computer to perform one or more operations (for example, operations related with blocks explained herein with reference to FIGS. 7 - 9). A computer-readable medium storing, embodying, or encoded with a computer program, or similar language, may be embodied as a tangible data storage device storing one or more software programs that are configured to cause a processor or computer to perform one or more operations. Such operations may be, for example, any of the steps or operations described herein. In some embodiments, the computer programs may be stored and provided to a computer using any type of non-transitory computer readable media. Non-transitory computer readable media include any type of tangible storage media. Examples of non-transitory computer readable media include magnetic storage media (such as floppy disks, magnetic tapes, hard disk drives, etc.), optical magnetic storage media (e.g. magneto-optical disks), CD-ROM (compact disc read only memory), CD-R (compact disc recordable), CD-R/W (compact disc rewritable), DVD (Digital Versatile Disc), BD (Blu-ray (registered trademark) Disc), and semiconductor memories (such as mask ROM, PROM (programmable ROM), EPROM (erasable PROM), flash ROM, RAM (random access memory), etc.). Additionally, a tangible data storage device may be embodied as one or more volatile memory devices, one or more non-volatile memory devices, and/or a combination of one or more volatile memory devices and non¬volatile memory devices. In some embodiments, the computer programs may be provided to a computer using any type of transitory computer readable media. Examples of transitory computer readable media include electric signals, optical signals, and electromagnetic waves. Transitory computer readable media can provide the program to a computer via a wired communication line (e.g. electric wires, and optical fibers) or a wireless communication line.

[0094] Also, techniques, devices, subsystems and methods described and illustrated in the various embodiments as discrete or separate may be combined or integrated with other systems, modules, techniques, or methods without departing from the scope of the present technology. Other items shown or discussed as directly coupled or communicating with each other may be coupled through some interface or device, such that the items may no longer be considered directly coupled with each other but may still be indirectly coupled and in communication, whether electrically, mechanically, or otherwise, with one another. Other examples of changes, substitutions, and alterations ascertainable by one skilled in the art, upon or subsequent to studying the exemplary embodiments disclosed herein, may be made without departing from the spirit and scope of the present technology.

[0095] It should be noted that reference throughout this specification to features, advantages, or similar language does not imply that all of the features and advantages should be or are in any single embodiment. Rather, language referring to the features and advantages may be understood to mean that a specific feature, advantage, or characteristic described in connection with an embodiment may be included in at least one embodiment of the present technology. Thus, discussions of the features and advantages, and similar language, throughout this specification may, but do not necessarily, refer to the same embodiment.

[0096] Various embodiments of the present disclosure, as discussed above, may be practiced with steps and/or operations in a different order, and/or with hardware elements in configurations which are different than those which are disclosed. Therefore, although the technology has been described based upon these exemplary embodiments, it is noted that certain modifications, variations, and alternative constructions may be apparent and well within the spirit and scope of the technology. Although various exemplary embodiments of the present technology are described herein in a language specific to structural features and/or methodological acts, the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as exemplary forms of implementing the claims.


CLAIMS

What is claimed is:

1. An apparatus comprising:

at least one processor; and

a memory having stored therein machine executable instructions, that when executed by the at least one processor, cause the apparatus to:
facilitate display of a virtual keyboard layout comprising a plurality of keys, wherein the plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes;

receive text entry in form of at least one input based on the virtual keyboard layout; and provide one or more word predictions in response to the received text entry.

2. The apparatus as claimed in claim 1, wherein a criterion from among the one or more pre-defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes.

3. The apparatus as claimed in claim 1, wherein a criterion from among the one or more pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors.

4. The apparatus as claimed in claim 3, wherein a word corpus from among the at least one word corpus is one of a dictionary word corpus, an application specific word corpus, a conversational word corpus and a user specific word corpus.

5. The apparatus as claimed in claim 3, wherein a standard keyboard layout from among the standard keyboard layouts is one of QWERTY keyboard layout, AZERTY keyboard layout and DVORAK keyboard layout.

6. The apparatus as claimed in claim 3, wherein the context associations correspond to at least one of context associations between the statistically common words, context associations between the statistically common words and statistically common affixes and context associations between the statistically common affixes.

7. The apparatus as claimed in claim 1, wherein a word from among the statistically common words is a conversational word, a greeting and an application-specific word.

8. The apparatus as claimed in any of the claims 1 to 6, wherein the virtual keyboard layout comprises one of a full keyboard configuration and a split keyboard configuration.

9. The apparatus as claimed in claim 1, wherein one or more keys from among the plurality of keys are duplicated at one or more portions of the virtual keyboard layout for arranging the plurality of keys.

10. The apparatus as claimed in claim 1, further comprising a display for displaying the virtual keyboard layout.

11. The apparatus as claimed in claim 10, wherein the display is further configured to display:

a suggestion bar for displaying the one or more word predictions; and a text editor for displaying the text entry.

12. The apparatus as claimed in claim 11, wherein the apparatus is further caused to: facilitate concatenation of a word prediction from among the one or more word predictions with a traced affix to configure a word text entry.

13. The apparatus as claimed in claim 12, wherein the concatenation comprises dynamically performing at least one of a removal and an addition of one or more characters in-between the word prediction and the traced affix.

14. The apparatus as claimed in claim 11, wherein the display is further configured to facilitate at least one of tracing from the suggestion bar onto the virtual keyboard layout, and tracing from the virtual keyboard layout onto the suggestion bar for configuring the word text entry.

15. The apparatus as claimed in claim 1, wherein the apparatus is further caused to insert a space following a traced affix when the traced affix is a suffix.

16. The apparatus as claimed in claims 1 or 15, wherein the apparatus is further caused to insert a space following a selected word prediction from among the one or more word predictions.

17. The apparatus as claimed in claim 16, wherein the insertion of space is performed based on at least one of a type of affix, weightage assigned to suffix preceding a space, weightage assigned to prefix preceding a space, weightage assigned to space preceding or succeeding an infix, context association between affixes forming the word, context association between affixes and context association between words.

18. The apparatus as claimed in claim 1, wherein the plurality of keys comprises an undo key configured to undo at least one of an insertion of a space during text entry, traced one or more characters, and a selection of a word prediction from among the one or more word predictions.

19. The apparatus as claimed in claim 1, wherein an affix from among the statistically common affixes is one of a prefix, an infix, a suffix and a language inflection.

20. The apparatus as claimed in claim 1, wherein the memory is further configured to store a database of at least one of the statistically common words, the statistically common affixes, usage frequency of the statistically common words, usage frequency of statistically common affixes, word to affix associations, affix to word associations, affix to affix associations and text entry context associations.

21. The apparatus as claimed in claim 1, wherein the memory is further configured to store a database of statistically common words and statistically common affixes that are capable of being traced on one portion of the virtual keyboard layout.

22. The apparatus as claimed in claim 21, wherein the provision of one or more predictions in response to the received text entry is optimized based on the database.

23. The apparatus as claimed in claim 1, Wherein the plurality of keys is arranged offline based on at least one of the one or more pre-defined criteria and user related data.

24. The apparatus as claimed in claim 1, wherein the plurality of keys is dynamically arranged during text entry based on the one or more pre-defined criteria and learning based on user input.

25. The apparatus as claimed in claim 24, wherein the dynamic arrangement comprises arranging a pre-defined number of keys at pre-defined time intervals.

26. The apparatus as claimed in claim 1, wherein an input from among the at least one input is a tapping input, a single touch gliding input, a multi-touch gliding input, a eye movement tracking based input and a brain mapping based input.

27. The apparatus as claimed in any of the claims 1 to 26, wherein the apparatus is an electronic device.

28. The apparatus as claimed in claim 27, wherein the electronic device is one of a personal computer, a mobile phone and a tablet device.

29. An apparatus comprising: at least one processor; and

a memory having stored therein machine executable instructions, that when executed by the at least one processor, cause the apparatus to:

facilitate display of a virtual keyboard layout comprising a plurality of keys, wherein the plurality of keys in the virtual keyboard layout are split in at least two portions based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes on at least one portion of the at least two portions.

receive text entry in form of at least one input based on the virtual keyboard layout; and

provide one or more word predictions in response to the received text entry.

30. The apparatus as claimed in claim 29, wherein a criterion from among the one or more pre-defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes.

31. The apparatus as claimed in claim 29, wherein a criterion from among the one or more pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors.

32. The apparatus as claimed in claim 31, wherein a word corpus from among the at least one word corpus is one of a dictionary word corpus, an application specific word corpus, a conversational word corpus and a user specific word corpus.

33. The apparatus as claimed in claim 29, wherein the memory is further configured to store a database of statistically common words and statistically common affixes that are capable of being traced on the at least one portion.

34. The apparatus as claimed in claim 33, wherein the provision of one or more predictions in response to the received text entry is optimized based on the database.

35. The apparatus as claimed in claim 1, wherein the plurality of keys is arranged offline based on at least one of the one or more pre-defined criteria and user related data.

36. The apparatus as claimed in claim 1, wherein the plurality of keys is dynamically arranged during text entry based on the one or more pre-defined criteria and learning based on User input.

37. The apparatus as claimed in claim 24, wherein the dynamic arrangement comprises arranging a pre-defined number of keys at pre-defined time intervals.

38. A method comprising:

facilitating display of a virtual keyboard layout comprising a plurality of keys, wherein the plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes;

receiving text entry in form of at least one input based on the virtual keyboard layout; and

providing one or more word predictions in response to the received text entry.

39. The method as claimed in claim 38, wherein a criterion from among the one or more pre-defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes.

40. The method as claimed in claim 38, wherein a criterion from among the one or more pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors.

41. The method as claimed in claim 40, wherein a word corpus from among the at least one word corpus is one of a dictionary word corpus, an application specific word corpus, a conversational word corpus and a user specific word corpus.

42. The method as claimed in claim 40, wherein a standard keyboard layout from among the standard keyboard layouts is one of QWERTY keyboard layout, AZERTY keyboard layout and DVORAK keyboard layout.

43. The method as claimed in any of the claims 38 to 42, wherein the virtual keyboard layout comprises one of a full keyboard configuration and a split keyboard configuration.

44. The method as claimed in claim 38, wherein one or more keys from among the plurality of keys are duplicated at one or more portions of the virtual keyboard layout for arranging the plurality of keys.

45. The method as claimed in claim 38, further comprising displaying the virtual keyboard layout.

46. The method as claimed in claim 45, further comprising displaying:

a suggestion bar for displaying the one or more word predictions; and a text editor for displaying the text entry.

47. The method as claimed in claim 46, further comprising facilitating concatenation of a word prediction from among the one or more word predictions with a traced affix to configure a word text entry, wherein the concatenation comprises dynamically performing at least one of a removal and an addition of one or more characters in-between the word prediction and the traced affix.

48. The method as claimed in claim 47, further comprising inserting a space following a traced affix when the traced affix is a suffix.

49. The method as claimed in claims 38 or 48, further comprising inserting a space following a selected word prediction from among the one or more word predictions.

50. The method as claimed in claim 49, wherein the insertion of space is performed based on at least one of a type of affix, weightage assigned to suffix preceding a space, weightage assigned to prefix preceding a space, weightage assigned to space preceding or succeeding an infix, context association between affixes forming the word, context association between affixes and context association between words.

51. The method as claimed in claim 38, wherein the plurality of keys comprises an undo key configured to undo at least one of an insertion of a space during text entry, traced one or more characters, and a selection of a word prediction from among the one or more word predictions.

52. The method as claimed in claim 38, wherein an affix from among the statistically common affixes is one of a prefix, an infix, a suffix and a language inflection.

53. The method as claimed in claim 38, wherein the plurality of keys is arranged offline based on at least one of the one or more pre-defined criteria and user related data.

54. The method as claimed in claim 38, wherein the plurality of keys is dynamically arranged during text entry based on the one or more pre-defined criteria and learning based on user input.

55. The method as claimed in claim 54, wherein the dynamic arrangement comprises arranging a pre-defined number of keys at pre-defined time intervals.

56. The method as claimed in claim 38, wherein an input from among the at least one input is a tapping input, a single touch gliding input, a multi-touch gliding input, a eye movement tracking based input and a brain mapping based input.

57. A non-transitory computer-readable medium storing a set of instructions that when executed cause a computer to perform a method comprising:

facilitating display of a virtual keyboard layout comprising a plurality of keys, wherein the plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes;

receiving text entry in form of at least one input based on the virtual keyboard layout; and

providing one or more word predictions in response to the received text entry.

58. The computer-readable medium as claimed in claim 57, wherein a criterion from among the one or more pre-defined criteria is a minimum trace distance for at least a majority of the statistically common words and the statistically common affixes.

59. The computer-readable medium as claimed in claim 57, wherein a criterion from among the one or rnore pre-defined criteria is at least one of frequency of occurrence of the statistically common words and the statistically common affixes in at least one word corpus, context associations, trace pattern, degree of similarity of the virtual keyboard layout with standard keyboard layouts, user usage statistics and language-based factors.

60. The computer-readable medium as claimed in claim 59, wherein a standard keyboard layout from among the standard keyboard layouts is one of QWERTY keyboard layout, AZERTY keyboard layout and DVORAK keyboard layout.

61. The computer-readable medium as claimed in any of the claims 57 to 60, wherein the virtual keyboard layout comprises one of a full keyboard configuration and a split keyboard configuration.

62. The computer-readable medium as claimed in claim 57, wherein one or more keys from among the plurality of keys are duplicated at one or more portions of the virtual keyboard layout for arranging the plurality of keys.

63. The computer-readable medium as claimed in claim 57, wherein an affix from among the statistically common affixes is one of a prefix, an infix, a suffix and a language inflection.

64. The computer-readable medium as claimed in claim 57, wherein the plurality of keys is arranged offline based on at least one of the one or more pre-defined criteria and user related data.

65. The computer-readable medium as claimed in claim 57, wherein the plurality of keys is dynamically arranged during text entry based on the one or more pre¬defined criteria and learning based on user input.

66. The computer-readable medium as claimed in claim 65, wherein the dynamic arrangement comprises arranging a pre-defined number of keys at pre-defined time intervals.

67. The computer-readable medium as claimed in claim 57, wherein an input from among the at least one input is a tapping input, a single touch gliding input, a multi-touch gliding input, a eye movement tracking based input and a brain mapping based input.

68. An apparatus comprising:

means for facilitating display of a virtual keyboard layout comprising a plurality of keys, wherein the plurality of keys in the virtual keyboard layout are arranged based on one or more pre-defined criteria to facilitate optimal tracing of at least one of statistically common words and statistically common affixes;

means for receiving text entry in form of at least one input based on the virtual keyboard layout; and

means for providing one or more word predictions in response to the received text entry.

69. An apparatus substantially as hereinbefore described with reference to accompanying drawings.

70. A method substantially as hereinbefore described with reference to accompanying drawings.

Documents

Application Documents

# Name Date
1 920-CHE-2013 FORM-5 04-03-2013.pdf 2013-03-04
2 920-CHE-2013 FORM-3 04-03-2013.pdf 2013-03-04
3 920-CHE-2013 FORM-2 04-03-2013.pdf 2013-03-04
4 920-CHE-2013 FORM-1 04-03-2013.pdf 2013-03-04
5 920-CHE-2013 DESCRIPTION (COMPLETE) 04-03-2013.pdf 2013-03-04
6 920-CHE-2013 CORRESPONDENCE OTHERS 04-03-2013.pdf 2013-03-04
7 920-CHE-2013 CLAIMS 04-03-2013.pdf 2013-03-04
8 920-CHE-2013 ABSTRACT 04-03-2013.pdf 2013-03-04
9 920-CHE-2013 POWER OF ATTORNEY 22-08-2013.pdf 2013-08-22
10 920-CHE-2013 FORM-1 22-08-2013.pdf 2013-08-22
11 920-CHE-2013 CORRESPONDENCE OTHERS 22-08-2013.pdf 2013-08-22
12 920-CHE-2013-Correspondence-210416.pdf 2016-07-12
13 Other Document [16-12-2016(online)].pdf_68.pdf 2016-12-16
14 Other Document [16-12-2016(online)].pdf 2016-12-16
15 Form 13 [16-12-2016(online)].pdf_71.pdf 2016-12-16
16 Form 13 [16-12-2016(online)].pdf 2016-12-16
17 Description(Complete) [16-12-2016(online)].pdf_70.pdf 2016-12-16
18 Description(Complete) [16-12-2016(online)].pdf_69.pdf 2016-12-16
19 Description(Complete) [16-12-2016(online)].pdf_62.pdf 2016-12-16
20 Description(Complete) [16-12-2016(online)].pdf 2016-12-16
21 Form 18 [27-02-2017(online)].pdf 2017-02-27
22 920-CHE-2013-FER_SER_REPLY [26-04-2021(online)].pdf 2021-04-26
23 920-CHE-2013-DRAWING [26-04-2021(online)].pdf 2021-04-26
24 920-CHE-2013-COMPLETE SPECIFICATION [26-04-2021(online)].pdf 2021-04-26
25 920-CHE-2013-CLAIMS [26-04-2021(online)].pdf 2021-04-26
26 920-CHE-2013-ABSTRACT [26-04-2021(online)].pdf 2021-04-26
27 920-CHE-2013-FER.pdf 2021-10-17
28 920-CHE-2013-US(14)-HearingNotice-(HearingDate-02-02-2024).pdf 2024-01-02
29 920-CHE-2013-FORM-26 [31-01-2024(online)].pdf 2024-01-31
30 920-CHE-2013-Correspondence to notify the Controller [31-01-2024(online)].pdf 2024-01-31
31 920-CHE-2013-Written submissions and relevant documents [15-02-2024(online)].pdf 2024-02-15
32 920-CHE-2013-PatentCertificate01-03-2024.pdf 2024-03-01
33 920-CHE-2013-IntimationOfGrant01-03-2024.pdf 2024-03-01
34 920-CHE-2013-FORM 4 [04-06-2024(online)].pdf 2024-06-04

Search Strategy

1 SearchStrategyE_14-09-2020.pdf

ERegister / Renewals

3rd: 04 Jun 2024

From 04/03/2015 - To 04/03/2016

4th: 04 Jun 2024

From 04/03/2016 - To 04/03/2017

5th: 04 Jun 2024

From 04/03/2017 - To 04/03/2018

6th: 04 Jun 2024

From 04/03/2018 - To 04/03/2019

7th: 04 Jun 2024

From 04/03/2019 - To 04/03/2020

8th: 04 Jun 2024

From 04/03/2020 - To 04/03/2021

9th: 04 Jun 2024

From 04/03/2021 - To 04/03/2022

10th: 04 Jun 2024

From 04/03/2022 - To 04/03/2023

11th: 04 Jun 2024

From 04/03/2023 - To 04/03/2024

12th: 04 Jun 2024

From 04/03/2024 - To 04/03/2025

13th: 04 Mar 2025

From 04/03/2025 - To 04/03/2026