Transient messages are displayed on devices with displays, such as smart phones, tablets, laptop computers, and other processor driven devices. Such messages may have a static length of time they are displayed prior to fading or otherwise being removed from the display. Since the messages may be removed from the display after some time, the user may not have been aware of or read the message prior to its removal. Removal of the message may also be delayed by a user performing a physical action, such as moving a cursor over the message. The messages may also be dismissed by some physical action of the user.
A method includes observing via a camera of a device and a gaze tracking function that a user is looking at a transient message displayed on a display screen of a device, determining a time to remove the transient message from the display screen as a function of the observing, and removing the transient message as a function of the determined time.
A machine readable storage device has instructions for execution by a processor of the machine to perform observing via a camera of a device and a gaze tracking function that a user is looking at a transient message displayed on a display screen of a device, determining a time to remove the transient message from the display screen as a function of the observing, and removing the transient message as a function of the determined time.
A device includes a processor, a camera, and a memory device having a program stored thereon for execution by the processor to observe via a camera of a device and a gaze tracking function that a user is looking at a transient message displayed on a display screen of a device, determine a time to remove the transient message from the display screen as a function of the observing, and remove the transient message as a function of the determined time.
In the following description, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration specific embodiments which may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that structural, logical and electrical changes may be made without departing from the scope of the present invention. The following description of example embodiments is, therefore, not to be taken in a limited sense, and the scope of the present invention is defined by the appended claims.
The functions or algorithms described herein may be implemented in software or a combination of software and human implemented procedures in one embodiment. The software may consist of computer executable instructions stored on computer readable media such as memory or other type of hardware based storage devices, either local or networked. Further, such functions correspond to modules, which are software, hardware, firmware or any combination thereof. Multiple functions may be performed in one or more modules as desired, and the embodiments described are merely examples. The software may be executed on a digital signal processor, ASIC, microprocessor, or other type of processor operating on a computer system, such as a personal computer, server or other computer system. The article “a” or “an” means “one or more” unless explicitly limited to a single one.
In various embodiments, a device determines if a user of the device is looking at a transient message using gaze tracking. The message is then faded out or otherwise removed from a display of the device based on the gaze tracking determination. The length of time prior to removal or fading may be based on whether the gaze tracking indicates that the user has reached the end of the transient message if accuracy of gaze tracking permits such a determination. In a further embodiment, the removal of the message may be based on a length of time corresponding to an estimate of how long it takes to read the message following the determination that the user is looking at the transient message.
If the transient message is faded, the fade-out time may be exponential, starting to fade slowly at first, but fading much faster over time, allowing the user to easily still read the message at the beginning of the fade-out. In still further embodiments, a reading speed of the user may be calculated utilizing gaze tracking of previous messages.
The calculated reading speed may be used to determine a length of time to display the transient message as a function of the length of the message to ensure the user has sufficient time to completely read the transient message. Longer messages may be displayed for a longer period than shorter messages.
In a further embodiment, gaze tracking may be used to determine that the user has not completely read the message prior to looking away from the message, which may result in delaying fading until it is determined that the user has again looked at the message. The total gaze time on the message may be used to trigger removal of the message.
At 210, a transient message is received or generated and displayed. At 215, the method 200 observes via the camera of the device and gaze tracking functions that a user is looking at a transient message displayed on a display screen of a device. In one embodiment, observing may include detecting a position of the transient message at which the user is looking. At 220, a time is determined to remove the transient message from the display screen as a function of the observing. Determining a time to remove the message may correspond to the user looking at an end of the transient message.
In further embodiments, the time is determined based on a total length of time that the user has looked at the transient message. In still further embodiments, the total length of time that the user has looked at the transient message may include multiple different times that the user has looked at the transient message. In further embodiments the time to remove the message is a function of observing that the user has looked at the entire message. The determined time may also be a fixed amount of time starting from when it is first observed that the user is looking at the transient message.
At 225, the transient message is removed from the display as a function of the determined time. Removing the transient message may be done in many different ways. The transient message may be faded starting at the determined time, and may be exponentially faded in some embodiments.
Computer-readable instructions stored on a computer-readable medium are executable by the processing unit 502 of the computer 500. A hard drive, CD-ROM, and RAM are some examples of articles including a non-transitory computer-readable medium. For example, a computer program 518 capable of providing a generic technique to perform access control check for data access and/or for doing an operation on one of the servers in a component object model (COM) based system may be included on a CD-ROM and loaded from the CD-ROM to a hard drive. The computer-readable instructions allow computer 500 to provide generic access controls in a COM based computer network system having multiple users and servers.
1. A method comprising:
observing via a camera of a device and a gaze tracking function that a user is looking at a transient message displayed on a display screen of a device;
determining a time to remove the transient message from the display screen as a function of the observing; and removing the transient message as a function of the determined time.
2. The method of example 1 wherein the observing comprises detecting a position of the transient message at which the user is looking.
3. The method of example 2 wherein determining a time to remove the message corresponds to the user looking at an end of the transient message.
4. The method of example 3 wherein removing the transient message comprises fading the message starting at the determined time.
5. The method of example 4 wherein fading the transient message comprises exponentially fading the transient message.
6. The method of any of examples 4-5 wherein fading the message comprises:
determining that a user has looked away from the transient message;
pausing the fading;
determining that a user is looking back at the transient message; and
continuing the fading when it is determined that the user is looking back at the transient message.
7. The method of any of examples 1-6 wherein the time is determined based on a total length of time that the user has looked at the transient message.
8. The method of example 7 wherein the total length of time that the user has looked at the transient message includes multiple different times that the user has looked at the transient message.
9. The method of any of examples 1-8 wherein determining a time comprises:
obtaining a length of the transient message;
obtaining a historical reading speed of the user; and
using the length of the transient message and the reading speed of the user to calculate the time.
10. The method of any of examples 1-9 wherein the time to remove the message is a function of observing that the user has looked at the entire message.
11. The method of any of examples 1-10 wherein the determined time is a fixed amount of time starting from when it is first observed that the user is looking at the transient message.
12. The method of any of examples 1-11 wherein the message is an operating system message, and wherein the method is performed by the device executing code corresponding to the operating system.
13. The method of any of examples 1-12 and further comprising emphasizing the transient message when it is observed that the user is looking at the transient message.
14. A machine readable storage device having instructions for execution by a processor of the machine to perform:
observing via a camera of a device and a gaze tracking function that a user is looking at a transient message displayed on a display screen of a device;
determining a time to remove the transient message from the display screen as a function of the observing; and removing the transient message as a function of the determined time.
15. The machine readable storage device of example 14 wherein the observing comprises detecting a position of the transient message at which the user is looking, wherein determining a time to remove the message corresponds to the user looking at an end of the transient message, and wherein removing the transient message comprises fading the message starting at the determined time.
16. The machine readable storage device of example 15 wherein fading the message comprises:
determining that a user has looked away from the transient message;
pausing the fading;
determining that a user is looking back at the transient message; and
continuing the fading when it is determined that the user is looking back at the transient message.
17. The machine readable storage device of any of examples 14-16 wherein the time is determined based on a total length of time that the user has looked at the transient message, wherein the total length of time that the user has looked at the transient message includes multiple different times that the user has looked at the transient message, and wherein determining a time comprises:
obtaining a length of the transient message;
obtaining a historical reading speed of the user; and
using the length of the transient message and the reading speed of the user to calculate the time.
18. A device comprising:
a processor;
a camera; and
a memory device having a program stored thereon for execution by the processor to:
19. The device of example 18 wherein observing comprises detecting a position of the transient message at which the user is looking, wherein determining a time to remove the message corresponds to the user looking at an end of the transient message, and wherein removing the transient message comprises fading the message starting at the determined time.
20. The device of example 19 wherein fading the message comprises:
determining that a user has looked away from the transient message;
pausing the fading;
determining that a user is looking back at the transient message; and
continuing the fading when it is determined that the user is looking back at the transient message.
Although a few embodiments have been described in detail above, other modifications are possible. For example, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. Other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Other embodiments may be within the scope of the following claims.