IP Library Granted Patent US 9,600,169
Granted Patent B2
US 9,600,169 · App. 13/405,708 · Granted Mar 21, 2017

Customizable gestures for mobile devices

Inventors: Marco de Sa (San Francisco, CA); Elizabeth F. Churchill (San Francisco, CA); R. Preston McAfee (San Marino, CA); David Ayman Shamma (San Francisco, CA)
Assignee: Yahoo! Inc.
G06F3/0488G06F3/04883
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,600,169
App. No.
13/405,708
Granted
Mar 21, 2017
Kind
B2
Abstract

Users are enabled to define and modify mappings between (1) gestures and (2) actions performed by one or more computing devices in response to a device detecting performance of a gesture. A generalized gesture-to-action mapping framework allows users to intuitively define and modify such mappings. In response to a device detecting the performance of a particular gesture, one or more devices may cause the execution of one or more device actions based on a set of user-defined gesture-to-action mappings.

Claims (93)

1. A computer-implemented method comprising:

receiving, from a user via a user interface of a first device, mapping input that specifies a particular gesture, one or more first device actions to associate with the particular gesture, and a first device context to associate with the particular gesture and the one or more first device actions, wherein the first device context includes one or more devices, other than the first device, are in the presence of the first device, or the one or more devices have logged in to a particular user account;

storing, in a non-transitory storage medium, a first mapping that specifies the particular gesture, the first device context, and the one or more first device actions, wherein the non-transitory storage medium further stores a second mapping that specifies the particular gesture, a second device context, and one or more second device actions;

detecting, by the first device, performance of a given gesture;

in response to detecting performance of the given gesture:

determining that the given gesture matches the particular gesture that is specified in the first mapping and the second mapping;

in response to determining that the given gesture matches the particular gesture specified in the first mapping and the second mapping, reading the first mapping to determine the first device context that is specified in the first mapping and reading the second mapping to determine the second device context that is specified in the second mapping;

determining whether one or more conditions external to the first device, detected by the first device, match the first device context;

responsive to determining that the one or more conditions external to the first device match the first device context, causing the first device to perform the one or more first device actions that are specified in the first mapping;

determining whether the one or more conditions external to the first device, detected by the first device, match the second device context; and

responsive to determining that the one or more conditions external to the first device match the second device context, causing the first device to perform the one or more second device actions that are specified in the second mapping.

2. The computer-implemented method of claim 1 , wherein the particular gesture is a defined input event and includes one or more of: a motion detected by a touch-enabled interface associated with the first device, a detected motion of the first device, a motion detected by a camera associated with the first device, a pattern of speech, or a sound.

3. The computer-implemented method of claim 1 , wherein:

detecting, by the first device, performance of the given gesture includes detecting first input and the particular gesture is a first particular gesture;

the computer-implemented method further comprises:

receiving second input indicating that the first device detected a gesturing event that is one of the first particular gesture or a second particular gesture, and

determining, based on the first device context, that the gesturing event corresponds to the first particular gesture.

4. The computer-implemented method of claim 1 , wherein the first mapping is associated with a gesture package comprising a stored representation of one or more user-defined mappings in a portable format.

5. The computer-implemented method of claim 1 , wherein the first device context is based on one or more devices other than the first device detectable by the first device.

6. The computer-implemented method of claim 5 , wherein the first device context is further based on one or more characteristics of the one or more devices other than the first device detectable by the first device.

7. The computer-implemented method of claim 1 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are in the presence of the first device.

8. The computer-implemented method of claim 7 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are logged in to the particular user account.

9. The computer-implemented method of claim 1 , wherein the one or more conditions external to the first device includes whether a particular amount of ambient light is detected by the first device.

10. The computer-implemented method of claim 1 , wherein the first device context further includes whether a particular ambient temperature is detected by the first device.

11. The computer-implemented method of claim 1 , further comprising:

detecting, by a second device of the one or more devices other than the first device, performance of the given gesture at the second device;

in response to detecting performance of the given gesture by the second device:

accessing, by the second device, a device hierarchy establishing a precedence among the first device and the second device of the one or more devices other than the first device;

determining, based on the precedence of the second device relative to the first device in the device hierarchy, whether to cause the first device to perform the one or more first device actions.

12. The computer-implemented method of claim 11 , wherein the device hierarchy is selected based on the first device context.

13. One or more non-transitory computer-readable storage media storing instructions which, when processed by one or more processors cause:

receiving, from a user via a user interface of a first device, mapping input that specifies a particular gesture, one or more first device actions to associate with the particular gesture, and a first device context to associate with the particular gesture and the one or more first device actions, wherein the first device context includes one or more devices, other than the first device, are in the presence of the first device, or the one or more devices have logged in to a particular user account;

storing, in a non-transitory storage medium, a first mapping that specifies the particular gesture, the first device context, and the one or more first device actions, wherein the non-transitory storage medium further stores a second mapping that specifies the particular gesture, a second device context, and one or more second device actions;

detecting, by the first device, performance of a given gesture;

in response to detecting performance of the given gesture:

determining that the given gesture matches the particular gesture that is specified in the first mapping and the second mapping;

in response to determining that the given gesture matches the particular gesture specified in the first mapping and the second mapping, reading the first mapping to determine the first device context that is specified in the first mapping and reading the second mapping to determine the second device context that is specified in the second mapping;

determining whether one or more conditions external to the first device, detected by the first device, match the first device context;

responsive to determining that the one or more conditions external to the first device match the first device context, causing the first device to perform the one or more first device actions that are specified in the first mapping;

determining whether the one or more conditions external to the first device, detected by the first device, match the second device context; and

responsive to determining that the one or more conditions external to the first device match the second device context, causing the first device to perform the one or more second device actions that are specified in the second mapping.

14. The one or more non-transitory computer-readable storage media of claim 13 , wherein the particular gesture is a defined input event and includes one or more of: a motion detected by a touch-enabled interface associated with the first device, a detected motion of the first device, a motion detected by a camera associated with the first device, or a pattern of speech, and a sound.

15. The one or more non-transitory computer-readable storage media of claim 13 , wherein:

detecting, by the first device, performance of the given gesture includes detecting first input and the particular gesture is a first particular gesture;

the non-transitory computer-readable medium stores additional instructions which, when processed by the one or more processors, cause:

receiving second input indicating that the first device detected a gesturing event that is one of the first particular gesture or a second particular gesture, and

determining, based on the first device context, that the gesturing event corresponds to the first particular gesture.

16. The one or more non-transitory computer-readable storage media of claim 13 , wherein the first mapping is associated with a gesture package comprising a stored representation of one or more user-defined mappings in a portable format.

17. The one or more non-transitory computer-readable storage media of claim 13 , wherein the first device context is based on one or more devices other than the first device detectable by the first device.

18. The one or more non-transitory computer-readable storage media of claim 17 , wherein the first device context is further based on one or more characteristics of the one or more devices other than the first device detectable by the first device.

19. The one or more non-transitory computer-readable storage media of claim 13 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are in the presence of the first device.

20. The one or more non-transitory computer-readable storage media of claim 19 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are logged in to the particular user account.

21. The one or more non-transitory computer-readable storage media of claim 13 , wherein the one or more conditions external to the first device includes whether a particular amount of ambient light is detected by the first device.

22. The one or more non-transitory computer-readable storage media of claim 13 , wherein the first device context further includes whether a particular ambient temperature is detected by the first device.

23. The one or more non-transitory computer-readable storage media of claim 13 , further comprising additional instructions which, when processed by the one or more processors, cause:

detecting, by a second device of the one or more devices other than the first device, performance of the given gesture at the second device;

in response to detecting performance of the given gesture by the second device:

accessing, by the second device, a device hierarchy establishing a precedence among the first device and the second device of the one or more devices other than the first device;

determining, based on the precedence of the second device relative to the first device in the device hierarchy, whether to cause the first device to perform the one or more first device actions.

24. The one or more non-transitory computer-readable storage media of claim 23 , wherein the device hierarchy is selected based on the first device context.

25. A computing apparatus comprising:

one or more processors, and

one or more non-transitory computer-readable storage media storing instructions which,

when processed by one or more processors cause:

receiving, from a user via a user interface of a first device, mapping input that specifies a particular gesture, one or more first device actions to associate with the particular gesture, and a first device context to associate with the particular gesture and the one or more first device actions, wherein the first device context includes one or more devices, other than the first device, are in the presence of the first device, or the one or more devices have logged in to a particular user account;

storing, in a non-transitory storage medium, a first mapping that specifies the particular gesture, the first device context, and the one or more first device actions, wherein the non-transitory storage medium further stores a second mapping that specifies the particular gesture, a second device context, and one or more second device actions;

detecting, by the first device, performance of a given gesture;

in response to detecting performance of the given gesture:

determining that the given gesture matches the particular gesture that is specified in the first mapping and the second mapping;

in response to determining that the given gesture matches the particular gesture specified in the first mapping and the second mapping, reading the first mapping to determine the first device context that is specified in the first mapping and reading the second mapping to determine the second device context that is specified in the second mapping;

determining whether one or more conditions external to the first device, detected by the first device, match the first device context;

responsive to determining that the one or more conditions external to the first device match the first device context, causing the first device to perform the one or more first device actions that are specified in the first mapping;

determining whether the one or more conditions external to the first device, detected by the first device, match the second device context; and

responsive to determining that the one or more conditions external to the first device match the second device context, causing the first device to perform the one or more second device actions that are specified in the second mapping.

26. The computing apparatus of claim 25 , wherein the particular gesture is a defined input event and includes one or more of: a motion detected by a touch-enabled interface associated with the first device, a detected motion of the first device, a motion detected by a camera associated with the first device, or a pattern of speech, and a sound.

27. The computing apparatus of claim 25 , wherein:

detecting, by the first device, performance of the given gesture includes detecting first input and the particular gesture is a first particular gesture;

the non-transitory computer-readable medium stores additional instructions which, when processed by the one or more processors, cause:

receiving second input indicating that the first device detected a gesturing event that is one of the first particular gesture or a second particular gesture, and

determining, based on the first device context, that the gesturing event corresponds to the first particular gesture.

28. The computing apparatus of claim 25 , wherein the first mapping is associated with a gesture package comprising a stored representation of one or more user-defined mappings in a portable format.

29. The computing apparatus of claim 25 , wherein the first device context is based on one or more devices other than the first device detectable by the first device.

30. The computing apparatus of claim 29 , wherein the first device context is further based on one or more characteristics of the one or more devices other than the first device detectable by the first device.

31. The computing apparatus of claim 25 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are in the presence of the first device.

32. The computing apparatus of claim 31 , wherein the one or more conditions external to the first device include that the one or more devices, other than the first device, are logged in to the particular user account.

33. The computing apparatus of claim 25 , wherein the one or more conditions external to the first device includes whether a particular amount of ambient light is detected by the first device.

34. The computing apparatus of claim 25 , wherein the first device context further includes whether a particular ambient temperature is detected by the first device.

35. The computing apparatus of claim 25 , wherein the one or more non-transitory computer-readable storage media store additional instructions which, when processed by the one or more processors, cause:

detecting, by a second device of the one or more devices other than the first device, performance of the given gesture at the second device;

in response to detecting performance of the given gesture by the second device:

accessing, by the second device, a device hierarchy establishing a precedence among the first device and the second device of the one or more devices other than the first device;

determining, based on the precedence of the second device relative to the first device in the device hierarchy, whether to cause the first device to perform the one or more first device actions.

36. The computing apparatus of claim 35 , wherein the device hierarchy is selected based on the first device context.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2012
From: SA, MARCO DE; CHURCHILL, ELIZABETH F; MCAFEE, R PRESTON; SHAMMA, DAVID AYMAN
To: YAHOO! INC.
Reel/Frame 027826/0882 →
Continuity (1)
Related Publication 20130227418A1 · Aug 29, 2013