In a digital or capacitive pen-based computing environment, a computing device, such as a slate device, tablet computing device, a wall surface computing device, etc., may be interacted with by a user by way of an interactive display and a writing implement. The writing implement may include a digital pen, capacitive pen, pointer, stylus, or other type of input device (herein referred to as a digital pen device). The interactive display may include a display surface or a writing interface.
Typically when using a digital pen device to interact with a computing device, a user may rely on visual feedback. Providing feedback may increase a user's confidence and speed as he/she interacts with software on the device. Additionally, users with disabilities such as vision and hearing disabilities may depend on feedback when using a digital pen device. The visual feedback may be limited by various factors such as the user's hand or the digital pen device occluding part of the display interface. Additionally, interacting close to a margin on the display interface may further limit screen real estate that may be devoted to visual feedback.
It is with respect to these and other considerations that the present invention has been made.
Embodiments of the present invention solve the above and other problems by providing feedback via an input device as a result of an interaction with a point of interest and providing scribble recognition.
When using an input device (e.g., a digital pen device, a mouse, a stylus, etc.) to navigate a computing device's graphical user interface (GUI), there may be areas or elements on the interface that may be determined as areas or elements that may be beneficial for a user to notice, pay attention to, or avoid. These areas or elements may be referred to as points of interest (POI). For example, if a user is using a digital pen device with a tablet computing device and is approaching an edge of a document displayed on the screen, a determination may be made that the edge of the document is a POI. According to embodiments, when a determination is made that an input may be approaching or interacting with a POI, a feedback may be provided. The feedback may include haptic feedback such as a vibration, a change of friction level, a movement of the input device via a gyroscope, etc., may include a visual feedback such as a light or other type of visual signal, or may include an audible feedback such as a beep or other type of audible alert.
Embodiments may also provide for detecting scribble input. When using an input device such as a digital pen device, a user may “scribble” along a margin to test out attributes of the pen. For example, a user may “scribble” to see the color or thickness of the pen. According to embodiments, a determination may be made that an input is a scribble. Upon a detection of a scribble, a contextual menu may be presented for allowing a user to select other pen attributes (e.g., select another pen color or pen type). In addition, the scribble may be automatically erased upon selection of a pen attribute or upon receive input in another area of the user interface.
The details of one or more embodiments are set forth in the accompanying drawings and description below. Other features and advantages will be apparent from a reading of the following detailed description and a review of the associated drawings. It is to be understood that the following detailed description is explanatory only and is not restrictive of the invention as claimed.
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 features or essential features of the claimed subject matter, nor is it intended as an aid in determining the scope of the claimed subject matter.
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate various embodiments of the present invention. In the drawings:
As briefly described above, embodiments of the present invention are directed to providing feedback via an input device as a result of an interaction with a point of interest and to providing scribble recognition.
The following detailed description refers to the accompanying drawings. Wherever possible, the same reference numbers are used in the drawing and the following description to refer to the same or similar elements. While embodiments of the invention may be described, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the elements illustrated in the drawings, and the methods described herein may be modified by substituting, reordering, or adding stages to the disclosed methods. Accordingly, the following detailed description does not limit the invention, but instead, the proper scope of the invention is defined by the appended claims.
Referring now to the drawings, in which like numerals represent like elements, various embodiments will be described.
An input device 102, such as a digital pen device, may be used to interact with or navigate a computing device's graphical user interface (GUI). For example, an input device 102 may be utilized to interact with a computing device, such as a tablet computing device 100, as a commanding user interface or an inking user interface. As a user utilizes an input device 102, the user may interact with areas that may be of importance for the user to notice, pay attention to, or avoid. These areas may be referred to as points of interest (POI) 106. For example, a POI 106 may include an edge of a document 104 as illustrated in
According to embodiments, a feedback 110 may be provided according to an interaction between an input device 102 (e.g., digital pen device) and a POI 106. The feedback 110 may include force feedback or haptic feedback providing a force, vibration, or motion to a user. For example, the input device 102 may comprises an actuator for providing a vibration. The feedback 110 may include other types of feedback, for example, visual feedback such as a light indication on the input device 102 (digital pen device), audible feedback, or a change of resistance between the input device 102 and the computing device. For example, a change of resistance may impact how quickly or easily a user may swipe with the input device 102 as it touches an input surface of the computing device. This may provide for a physical feeling of the user interface. The resistance level or friction level may change via a use of piezoelectric polymers or other type of technology that allows for a change of material qualities. The change in resistance level or friction level may be provided mechanically via transitioning an input portion (e.g., a part of the input device 102 used for contacting an input surface of a computing device 1000) of the input device 102 with variable friction levels. An input device 102 may comprise a gyroscope that may be utilized to move the input device and guide a user in a direction according to an interaction with a POI 106.
According to embodiments, the interaction between an input device 102 and a POI 106 causing a feedback 110 may include various interactions. For example and as illustrated in
As another example of an interaction between an input device 102 and a POI 106 causing a feedback 110 may include an interaction with a control such as a volume level control, screen brightness control, etc. As illustrated in
According to an embodiment, a determination may be made that a user is interacting with an area of a document that is different from an area or object with which he was previously interacting or interacting. Feedback 110 may be provided as a warning or precaution that the user may be interacting with an area or object that he may not intend to be interacting (POI 106). For example, a user may utilize a digital pen device (input device 102) to enter text into a document 104. The user may touch the digital pen device to an image (POI 106) in the document 104, causing a feedback 110, for example, a change of color of a light indicator on the digital pen device.
As briefly described above, embodiments may operate in various types of computing environments and with a vast number of types of computing devices 1000. For example and as illustrated in
According to an embodiment, a POI 106 may include an input that may be determined as unacceptable or determined as causing an error. For example and as illustrated in
A flow chart of a method for providing feedback is illustrated in
At DECISION OPERATION 515, a determination is made whether the received input meets criteria for providing feedback 110. As described above, the determination for providing feedback 110 may be based on such factors as whether the input may interact with a predetermined POI 106 which may be an area that may be determined as an area or element that may be of importance for the user to notice, pay attention to, or avoid. Feedback 110 may also be provided as a notification of a forthcoming event or action to be executed by the application 108. If the input is determined to not meet criteria for providing feedback 110, the method 500 may return to OPERATION 510 where further input is received or may end at OPERATION 595.
If at DECISION OPERATION 515, a determination is made that the received input meets criteria for providing feedback 110, the method 500 may proceed to OPERATION 520 where feedback 110 may be provided. As described above with respect to
According to another embodiment and with reference to
As briefly described above, embodiments provide for detection of scribble input 604. Various factors may be used to determine if a received input may be a scribble input 604. Factors may include, but are not limited to, location of the input, configuration of the input, a length of time associated with drawing the input, whether a user lifts the digital pen device 602 from the screen or input surface, whether the input is within a boundary, etc. For example, the scribble input 602 illustrated in
Referring now to
According to an embodiment and as illustrated in
A scribble input 604 may be considered an unwanted piece of ink. Embodiments may provide for an automatic erasure of scribble input 604. According to one embodiment, scribble input 604 may be erased if an alternative pen attribute is selected from a contextual user interface element 804,806. According to another embodiment, scribble input 604 may be erased upon receiving input elsewhere on the screen 802 or input surface (away from the scribble input 604). According to another embodiment, scribble input 604 may be erased after a predetermined amount of time of not receiving additional input after receiving the scribble input 604. Alternatively, if the user continues to draw in relation to the scribble input 604 (e.g., near the scribble), a determination may be made that the input may actually be part of a larger drawing and thus not a scribble. Accordingly, the input may not be erased.
A flow chart of a method for providing scribble recognition is illustrated in
The method 900 proceeds to DECISION OPERATION 915, where a determination is made whether the received input may be a scribble input 604. As described above, various factors may be used to determine if a received input may be a scribble input 604 which may include, but are not limited to, location of the input, configuration of the input, a length of time associated with drawing the input, whether a user lifts the digital pen device 602 from the screen or input surface, whether the input is within a boundary, etc.
If the received input is determined not to be scribble input 604, the method 900 may return to OPERATION 910 where additional input is received. If at DECISION OPERATION 915 the received input is determined to be scribble input 604, the method proceeds to OPERATION 920 where one or more contextual user interface elements 804,806 may be presented for selecting alternative pen attributes. For example, a user may scribble on a document 104 with a digital pen device 102 and see that settings of the pen are set to be a thin pen line with blue ink. A number of contextual user interface elements 804,806 may be displayed near the scribble input 106 allowing the user to select to change the pen type.
After one or more contextual user interface elements 804,806 are presented, the method 900 may proceed to OPERATION 925 where a selection of an alternate pen attribute is made. For example, the user may select to change the pen type to a yellow highlighter by selecting a user interface element 806. Upon receiving a selection of an alternate pen attribute, the selected pen attribute may be applied to the digital pen device 602. For example, if a user selects to change the pen type to a yellow highlighter, subsequent input with the digital pen device 602 may have characteristics of a yellow highlighter until the pen attributes are changed again. The method 900 may proceed to OPERATION 930 where the scribble input 604 is erased or removed from the electronic document 104.
Alternatively, after one or more contextual user interface elements 804,806 are presented, the method 900 may return to OPERATION 910 where additional input is received. For example, a user may be content with the current pen attributes and may choose to input data (e.g., write text, add drawings, etc.) into the document 104. Accordingly, the method 900 may proceed to OPERATION 930 where the scribble input 106 is erased. Erasure of scribble input 106 may occur when certain conditions are met, for example, if a predetermined amount of time has passed after a scribble input 106 has been received without further input elsewhere in the document 104 or application 108. As another example, scribble input 106 may be automatically erased when an input device 102 (e.g., digital pen device 602) is lifted from the screen 802 or input surface or after a predetermined amount of time after the input device 102 is lifted from the screen 802 or input surface.
According to embodiments, a mechanism may be provided for undoing an erase if the scribble input 106 erasure is an unwanted action. Machine learning may also be provided wherein if an erasure is undone and a same or similar type of scribble input 106 is later received, the scribble input 106 may not be automatically erased. Additionally, if a scribble input 106 is erased and subsequently another similar scribble input 106 is received in a same or nearby location, the input may not be automatically erased. The method ends at OPERATION 995.
According to another embodiment, feedback 110 may be provided to otherwise affect an automatic erasure of scribble input 106. For example, a user may “scribble” in an electronic document 104 displayed on a tablet computing device 100 with a digital pen device 602 and may subsequently lift the digital pen device 602 from the screen 802 or input surface of the tablet computing device 100. After a predetermined amount of time, a feedback 110, such as haptic feedback, visual feedback, audible feedback, etc. may be communicated to the user via the digital pen device 602 to alert the user that the scribble input 106 is about to be erased. Accordingly, the user may choose to prevent or override the erasure. For example, the user may touch the scribble input 106 or an area on the screen 802 or input surface with the digital pen device 602 or may continue adding to the scribble input 106, which may prevent the scribble input 106 from being erased.
According to another embodiment, feedback 110 may be provided to provide a notification that a received input is being detected to be scribble input 106. For example, a light may be illuminated on the digital pen device 602 when a determination is made that the input is scribble input 106. As another example, a change in the resistance level or friction level between the digital pen device 602 and the computing device may be provided to communicate to the user of detected scribble input 106. As can be appreciated, these are but a few examples of various types of feedback 110 that may be provided in association with scribble recognition.
The embodiments and functionalities described herein may operate via a multitude of computing systems including, without limitation, desktop computer systems, wired and wireless computing systems, mobile computing systems (e.g., mobile telephones, netbooks, tablet or slate type computers, notebook computers, and laptop computers), hand-held devices, IP phones, gaming devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, and mainframe computers. In addition, the embodiments and functionalities described herein may operate over distributed systems (e.g., cloud-based computing systems), where application functionality, memory, data storage and retrieval and various processing functions may be operated remotely from each other over a distributed computing network, such as the Internet or an intranet. User interfaces and information of various types may be displayed via on-board computing device displays or via remote display units associated with one or more computing devices. For example user interfaces and information of various types may be displayed and interacted with on a wall surface onto which user interfaces and information of various types are projected. Interaction with the multitude of computing systems with which embodiments of the invention may be practiced include, keystroke entry, touch screen entry, voice or other audio entry, gesture entry where an associated computing device is equipped with detection (e.g., camera) functionality for capturing and interpreting user gestures for controlling the functionality of the computing device, and the like. As described above, gesture entry may also include an input made with a mechanical input device (e.g., with a mouse, touchscreen, stylus, etc.), the input originating from a bodily motion that can be received, recognized, and translated into a selection and/or movement of an element or object on a graphical user interface that mimics the bodily motion.
As stated above, a number of program modules and data files may be stored in the system memory 1004. While executing on the processing unit 1002, the program modules 1006, such as the feedback module 1050 may perform processes including, for example, one or more of the stages of the method 500 and method 900. The aforementioned process is an example, and the processing unit 1002 may perform other processes. Other program modules that may be used in accordance with embodiments of the present invention may include electronic mail and contacts applications, word processing applications, database applications, slide presentation applications, drawing or computer-aided application programs, etc.
Furthermore, embodiments of the invention may be practiced in an electrical circuit comprising discrete electronic elements, packaged or integrated electronic chips containing logic gates, a circuit utilizing a microprocessor, or on a single chip containing electronic elements or microprocessors. For example, embodiments of the invention may be practiced via a system-on-a-chip (SOC) where each or many of the components illustrated in
The computing device 1000 may also have one or more input device(s) 1012 such as a keyboard, a mouse, a pen, a sound input device, a touch input device, a microphone, a gesture recognition device, etc. The output device(s) 1014 such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used. The computing device 1000 may include one or more communication connections 1016 allowing communications with other computing devices 1018. Examples of suitable communication connections 1016 include, but are not limited to, RF transmitter, receiver, and/or transceiver circuitry; universal serial bus (USB), parallel, or serial ports, and other connections appropriate for use with the applicable computer readable media.
Embodiments of the invention, for example, may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer readable media. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process.
The term computer readable media as used herein may include computer storage media and communication media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. The system memory 1004, the removable storage device 1009, and the non-removable storage device 1010 are all computer storage media examples (i.e., memory storage.) Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by the computing device 1000. Any such computer storage media may be part of the computing device 1000.
Communication media may be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
One or more application programs 1166 may be loaded into the memory 1162 and run on or in association with the operating system 1164. Examples of the application programs include phone dialer programs, e-mail programs, personal information management (PIM) programs, word processing programs, spreadsheet programs, Internet browser programs, messaging programs, and so forth. The system 1102 also includes a non-volatile storage area 1168 within the memory 1162. The non-volatile storage area 1168 may be used to store persistent information that should not be lost if the system 1102 is powered down. The application programs 1166 may use and store information in the non-volatile storage area 1168, such as e-mail or other messages used by an e-mail application, and the like. A synchronization application (not shown) also resides on the system 1102 and is programmed to interact with a corresponding synchronization application resident on a host computer to keep the information stored in the non-volatile storage area 1168 synchronized with corresponding information stored at the host computer. As should be appreciated, other applications may be loaded into the memory 1162 and run on the mobile computing device 1100, including the feedback module 1050 described herein.
The system 1102 has a power supply 1170, which may be implemented as one or more batteries. The power supply 1170 might further include an external power source, such as an AC adapter or a powered docking cradle that supplements or recharges the batteries. The system 1102 may also include a radio 1172 that performs the function of transmitting and receiving radio frequency communications. The radio 1172 facilitates wireless connectivity between the system 1102 and the “outside world”, via a communications carrier or service provider. Transmissions to and from the radio 1172 are conducted under control of the operating system 1164. In other words, communications received by the radio 1172 may be disseminated to the application programs 1166 via the operating system 1164, and vice versa.
The radio 1172 allows the system 1102 to communicate with other computing devices, such as over a network. The radio 1172 is one example of communication media. Communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. The term computer readable media as used herein includes both storage media and communication media.
This embodiment of the system 1102 provides notifications using the visual indicator 1120 that can be used to provide visual notifications and/or an audio interface 1174 producing audible notifications via the audio transducer 1125. In the illustrated embodiment, the visual indicator 1120 is a light emitting diode (LED) and the audio transducer 1125 is a speaker. These devices may be directly coupled to the power supply 1170 so that when activated, they remain on for a duration dictated by the notification mechanism even though the processor 1160 and other components might shut down for conserving battery power. The LED may be programmed to remain on indefinitely until the user takes action to indicate the powered-on status of the device. The audio interface 1174 is used to provide audible signals to and receive audible signals from the user. For example, in addition to being coupled to the audio transducer 1125, the audio interface 1174 may also be coupled to a microphone to receive audible input, such as to facilitate a telephone conversation. The system 1102 may further include a video interface 1176 that enables an operation of an on-board camera 1130 to record still images, video stream, and the like.
A mobile computing device 1100 implementing the system 1102 may have additional features or functionality. For example, the mobile computing device 1100 may also include additional data storage devices (removable and/or non-removable) such as, magnetic disks, optical disks, or tape. Such additional storage is illustrated in
Data/information generated or captured by the mobile computing device 1100 and stored via the system 1102 may be stored locally on the mobile computing device 1100, as described above, or the data may be stored on any number of storage media that may be accessed by the device via the radio 1172 or via a wired connection between the mobile computing device 1100 and a separate computing device associated with the mobile computing device 1100, for example, a server computer in a distributed computing network, such as the Internet. As should be appreciated such data/information may be accessed via the mobile computing device 1100 via the radio 1172 or via a distributed computing network. Similarly, such data/information may be readily transferred between computing devices for storage and use according to well-known data/information transfer and storage means, including electronic mail and collaborative data/information sharing systems.
The description and illustration of one or more embodiments provided in this application are not intended to limit or restrict the scope of the invention as claimed in any way. The embodiments, examples, and details provided in this application are considered sufficient to convey possession and enable others to make and use the best mode of claimed invention. The claimed invention should not be construed as being limited to any embodiment, example, or detail provided in this application. Regardless of whether shown and described in combination or separately, the various features (both structural and methodological) are intended to be selectively included or omitted to produce an embodiment with a particular set of features. Having been provided with the description and illustration of the present application, one skilled in the art may envision variations, modifications, and alternate embodiments falling within the spirit of the broader aspects of the claimed invention and the general inventive concept embodied in this application that do not depart from the broader scope.