IP Library Patent Application 14231917
Patent Application
App. No. 14/231,917

PAN AND SELECTION GESTURE DETECTION

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 None
App. No.
14/231,917
Abstract

A user interface that has a canvas that is extendable in an extendable dimension and on which multiple selectable elements may be placed. In this context, when a selecting control is associated with a particular selectable element, and further user gestures are provided, a pan detection mechanism is configured to distinguish between an intent to pan the canvas and an intent to select the particular selectable element. When a selecting control is associated with a particular orthogonally scrollable element, the pan detection mechanism may be distinguish between an intent to pan the canvas and an intent to scroll the orthogonally scrollable element in a direction perpendicular to the extendible dimension of the canvas.

Claims (44)

1 . A computer program product comprising one or more computer-readable storage media having thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to operate a user interface program that is configured to display a user interface on a display of the computing system, the user interface comprising:

a canvas that extends along an extendable dimension on the user interface, and which may be populated by a plurality of selectable elements;

a pan detection mechanism configured to distinguish between a canvas pan gesture and an element selection gesture when a selecting control is associated with a particular selectable element of the plurality of selectable elements,

the user interface program responsive to a canvas pan gesture by panning the canvas along the extendable dimension,

the user interface program responsive to an element selection gesture by selecting the particular selectable element then associated with the selecting control.

2 . The computer program product in accordance with claim 1 , the particular selectable element being within an orthogonally pannable element placed within the canvas, the orthogonally pannable element being pannable in an orthogonal dimension that is orthogonal to the extendable dimension of the canvas.

3 . The computer program product in accordance with claim 2 , the pan detection mechanism configured to distinguish between an orthogonal pan gesture, the canvas pan gesture and the element selection gesture when the selecting control is associated with a particular selectable element,

the user interface program responsive to an orthogonal pan gesture by panning the orthogonally pannable element containing the particular selectable control associated with the selecting control in the orthogonal dimension.

4 . The computer program product in accordance with claim 3 , the pan detection mechanism distinguishing between the orthogonal pan gesture, the canvas pan gesture and the element selection gesture using a pan start region that is defined with respect to a position on the canvas of the selecting control when the selecting control is activated,

such that if the selecting control stays within the pan start region until the selecting control is no longer activated, the pan detection mechanism identifies an element selection gesture, and

such that if the selecting control goes outside of the pan start region while the selecting control is still activated, the pan detection mechanism identifies at least one of the orthogonal pan gesture and the canvas pan gesture.

5 . The computer program product in accordance with claim 4 , wherein if the selecting control goes outside of the pan start region and the canvas pan gesture is identified, the canvas pans in accordance with movement of the selecting control in the extendable dimension.

6 . The computer program product in accordance with claim 5 , wherein if the selecting control goes outside of the pan start region and the orthogonal pan gesture is identified, the canvas pans in accordance with movement of the selecting control in the orthogonal dimension.

7 . The computer program product in accordance with claim 4 , wherein if the selecting control goes outside of the pan start region and the orthogonal pan gesture is identified, the particular selectable element pans in accordance with movement of the selecting control in the orthogonal dimension.

8 . The computer program product in accordance with claim 1 , wherein if the selecting control goes outside of the pan start region while the selecting control is still activated, the pan detection mechanism identifies both the orthogonal pan gesture and the canvas pan gesture.

9 . The computer program product in accordance with claim 1 , the pan detection mechanism distinguishing between the canvas pan gesture and the element selection gesture using a pan start region that is defined with respect to a position on the canvas of the selecting control when the selecting control is activated,

such that if the selecting control stays within the pan start region until the selecting control is no longer activated, the pan detection mechanism identifies an element selection gesture, and

such that if the selecting control goes outside of the pan start region while the selecting control is still activated, the pan detection mechanism identifies the canvas pan gesture.

10 . The computer program product in accordance with claim 9 , the pan start region having greater span in an orthogonal dimension than in the extendable dimension of the canvas, the orthogonal dimension being orthogonal to the extendable dimension of the canvas.

11 . The computer program product in accordance with claim 10 , the pan start region have less span in the extendable dimension towards the ends of the pan start region in the orthogonal dimension than in the middle of the pan start region in the orthogonal dimension.

12 . The computer program product in accordance with claim 10 , the pan start region being in a diamond shape.

13 . The computer program product in accordance with claim 1 , the pan detection mechanism operating in a same manner to detect the canvas pan gesture and the element selection gesture regardless of which of the plurality of selectable elements are associated with the selecting control.

14 . The computer program product in accordance with claim 1 , the pan detection mechanism operating to pan the canvas when the selecting control is activated and associated with the canvas at an area that is not associated with any of the plurality of selectable elements.

15 . The computer program product in accordance with claim 1 , the user interface program further comprising:

an activation mechanism that may be activated to generate a first blade on the canvas, the first blade including multiple selectable elements, each of at least some of the multiple selectable elements having at least one corresponding blade such that if the corresponding element is selected, the corresponding blade appears on the canvas as a second blade on the canvas, wherein the second blade is contiguous with the first blade in the extendable direction of the canvas.

16 . A method for permitting user interaction with a canvas that extends in an extendable dimension on the user interface, and which is be populated with a plurality of selectable elements, the method comprising:

an act of detecting that a selecting control is associated with a particular selectable element of the plurality of selectable elements on the canvas;

an act of distinguishing between a canvas pan gesture and an element selection gesture when the selecting control is still associated with the particular selectable element of the plurality of selectable elements.

17 . The method in accordance with claim 16 , wherein the act of distinguishing results in an identification of a canvas pan gesture, the method further comprising:

an act of panning the canvas in the extendable dimension in accordance with movement of the canvas pan gesture in the extendable dimension.

18 . The method in accordance with claim 16 , wherein the act of distinguishing results in an identification of an element selection gesture, the method further comprising:

an act of selecting the particular selectable element.

19 . The method in accordance with claim 18 , further comprising the following in response to the act of selecting the particular selectable element:

an act of generating a first blade on the canvas, the first blade including multiple selectable elements, each of at least some of the multiple selectable elements having at least one corresponding blade such that if the corresponding element is selected, the corresponding blade appears on the canvas as a second blade on the canvas, wherein the second blade is contiguous with the first blade in the extendable direction of the canvas.

20 . A computer program product comprising one or more computer-readable storage media that have thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to perform a method for permitting user interaction with a canvas that extends in an extendable dimension on the user interface, and which is be populated with a plurality of selectable elements, the method comprising:

determining that a user input gesture has occurred when a selecting control is associated with a particular selectable element of a plurality of selectable element;

distinguishing the user input gesture as a canvas pan gesture of a canvas or an element selection gesture of the particular selectable element;

if the user input gesture is distinguished as a canvas pan gesture, causing the canvas to be panned in the extendible direction; and

if the user input gesture is distinguished as an element selection gesture, causing the particular selectable element to be selected.

21 . A computer program product comprising one or more computer-readable storage media having thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to operate a user interface program that is configured to display a user interface on a display of the computing system, the user interface comprising:

a canvas that extends along an extendable dimension on the user interface, and which may be populated by an orthogonally scrollable element placed on the canvas, the orthogonally scrollable element being scrollable in an orthogonal dimension that is orthogonal to the extendable dimension of the canvas;

a pan/scroll detection mechanism configured to distinguish between a canvas pan gesture and an element scroll gesture when a selecting control is associated with the orthogonally scrollable element,

the user interface program responsive to the canvas pan gesture by panning the canvas along the extendable dimension,

the user interface program responsive to the element scroll gesture by scrolling the particular scrollable element in the orthogonal direction.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2014
From: DANTON, STEPHEN MICHAEL; OWENS, KRISTOFER JOHN; STERLING, JONAH BUSH; FRANCISCO, JESSE DAVID; ANAND, KARANDEEP SINGH; STAPLES, WILLIAM J.; JOSHI, VISHAL R.; WELICKI, LEON EZEQUIEL; BECKWITH, JUSTIN; OLENICK, BRAD; JOSHI, MADHUR; YUEN, WAI MAN; STANFORD, LUCAS; WONG, ROGER PHILIP
To: MICROSOFT CORPORATION
Reel/Frame 033490/0912 →