Device, method, and graphical user interface for managing user interface content and user interface elements by dynamic snapping of user interface elements to alignment guides
First Claim
Patent Images
1. A method, comprising:
- at a computing device with a display and one or more user input devices adapted to detect user gestures;
displaying a user interface including;
at least one user interface element configured to be moved within the user interface in response to user gestures, anda plurality of alignment guides,wherein;
respective alignment guides in the plurality of alignment guides are configured to attract the user interface element being moved when the user interface element is closer than a first predefined distance threshold to the respective alignment guide, and,respective alignment guides in the plurality of alignment guides are associated with respective gravity variables configured to vary the attraction strength between the alignment guide and the user interface element being moved;
detecting a first portion of a first user gesture, the first user gesture corresponding to a gesture to move the user interface element within the user interface;
in response to detecting the first portion of the first user gesture, initiating movement of the user interface element within the user interface;
after movement of the user interface element is initiated, snapping the user interface element to a first alignment guide;
after snapping the user interface element to the first alignment guide, detecting a second portion of the first user gesture that is different than the first portion of the first user gesture;
in response to detecting the second portion of the first user gesture;
moving the user interface element away from the first alignment guide, and,adjusting the gravity variable associated with the first alignment guide;
after adjusting the gravity variable associated with the first alignment guide;
detecting a third portion of the first user gesture;
in response to detecting the third portion of the first user gesture, snapping the user interface element to a second alignment guide in the plurality of alignment guides when a gravity variable associated with the second alignment guide is greater than the gravity variable associated with the first alignment guide;
detecting a termination of the first user gesture;
in response to detecting the termination of the first user gesture;
maintaining the adjusted value of the gravity variable associated with the first alignment guide, wherein the adjusted value of the gravity variable associated with the first alignment guide is maintained for a succession of user gestures for moving the user interface element within the user interface; and
incrementally adjusting the gravity variable associated with the first alignment guide upon detecting termination of respective user gestures in the succession of user gestures.
1 Assignment
0 Petitions
Accused Products
Abstract
Alignment guides configured for adaptive snap-to behavior are disclosed. In one embodiment, during a user interface element resize or move gesture, match-priority values for potential alignment guides are determined based at least on gravity values associated with said alignment guides. After a displayed object is snapped to a first alignment guide having the highest match-priority value, and the user interface element is moved away from the first alignment guide during the resize or move gesture, the gravity value associated with the first alignment guide is adjusted.
38 Citations
13 Claims
-
1. A method, comprising:
at a computing device with a display and one or more user input devices adapted to detect user gestures; displaying a user interface including; at least one user interface element configured to be moved within the user interface in response to user gestures, and a plurality of alignment guides, wherein; respective alignment guides in the plurality of alignment guides are configured to attract the user interface element being moved when the user interface element is closer than a first predefined distance threshold to the respective alignment guide, and, respective alignment guides in the plurality of alignment guides are associated with respective gravity variables configured to vary the attraction strength between the alignment guide and the user interface element being moved; detecting a first portion of a first user gesture, the first user gesture corresponding to a gesture to move the user interface element within the user interface; in response to detecting the first portion of the first user gesture, initiating movement of the user interface element within the user interface; after movement of the user interface element is initiated, snapping the user interface element to a first alignment guide; after snapping the user interface element to the first alignment guide, detecting a second portion of the first user gesture that is different than the first portion of the first user gesture; in response to detecting the second portion of the first user gesture; moving the user interface element away from the first alignment guide, and, adjusting the gravity variable associated with the first alignment guide; after adjusting the gravity variable associated with the first alignment guide; detecting a third portion of the first user gesture; in response to detecting the third portion of the first user gesture, snapping the user interface element to a second alignment guide in the plurality of alignment guides when a gravity variable associated with the second alignment guide is greater than the gravity variable associated with the first alignment guide; detecting a termination of the first user gesture; in response to detecting the termination of the first user gesture; maintaining the adjusted value of the gravity variable associated with the first alignment guide, wherein the adjusted value of the gravity variable associated with the first alignment guide is maintained for a succession of user gestures for moving the user interface element within the user interface; and incrementally adjusting the gravity variable associated with the first alignment guide upon detecting termination of respective user gestures in the succession of user gestures. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A computing device, comprising:
-
a display; one or more processors; one or more user input devices adapted to detect user gestures; memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for; displaying a user interface including; at least one user interface element configured to be moved within the user interface in response to user gestures, and a plurality of alignment guides, wherein; respective alignment guides in the plurality of alignment guides are configured to attract the user interface element being moved when the user interface element is closer than a first predefined distance threshold to the respective alignment guide, and, respective alignment guides in the plurality of alignment guides are associated with respective gravity variables configured to vary the attraction strength between the alignment guide and the user interface element being moved; detecting a first portion of a first user gesture, the first user gesture corresponding to a gesture to move the user interface element within the user interface; in response to detecting the first portion of the first user gesture, initiating movement of the user interface element within the user interface; after movement of the user interface element is initiated, snapping the user interface element to a first alignment guide; after snapping the user interface element to the first alignment guide, detecting a second portion of the first user gesture that is different than the first portion of the first user gesture; in response to detecting the second portion of the first user gesture; moving the user interface element away from the first alignment guide, and, adjusting the gravity variable associated with the first alignment guide; after adjusting the gravity variable associated with the first alignment guide; detecting a third portion of the first user gesture; in response to detecting the third portion of the first user gesture, snapping the user interface element to a second alignment guide in the plurality of alignment guides when a gravity variable associated with the second alignment guide is greater than the gravity variable associated with the first alignment guide, detecting a termination of the first user gesture; in response to detecting the termination of the first user gesture; maintaining the adjusted value of the gravity variable associated with the first alignment guide, wherein the adjusted value of the gravity variable associated with the first alignment guide is maintained for a succession of user gestures for moving the user interface element within the user interface; and incrementally adjusting the gravity variable associated with the first alignment guide upon detecting termination of respective user gestures in the succession of user gestures. - View Dependent Claims (10, 11, 12)
-
-
13. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computing device with a display and one or more user input devices adapted to detect user gestures, cause the device to:
-
Display a user interface including; at least one user interface element configured to be moved within the user interface in response to user gestures, and a plurality of alignment guides, wherein; respective alignment guides in the plurality of alignment guides are configured to attract the user interface element being moved when the user interface element is closer than a first predefined distance threshold to the respective alignment guide, and, respective alignment guides in the plurality of alignment guides are associated with respective gravity variables configured to vary the attraction strength between the alignment guide and the user interface element being moved; detect a first portion of a first user gesture, the first user gesture corresponding to a gesture to move the user interface element within the user interface; in response to detecting the first portion of the first user gesture, initiate movement of the user interface element within the user interface; after movement of the user interface element is initiated, snapthe user interface element to a first alignment guide; after snapping the user interface element to the first alignment guide, detect a second portion of the first user gesture that is different than the first portion of the first user gesture; in response to detecting the second portion of the first user gesture; move the user interface element away from the first alignment guide, and, adjust the gravity variable associated with the first alignment guide; after adjusting the gravity variable associated with the first alignment guide; detect a third portion of the first user gesture; in response to detecting the third portion of the first user gesture, snap the user interface element to a second alignment guide in the plurality of alignment guides when a gravity variable associated with the second alignment guide is greater than the gravity variable associated with the first alignment guide; after snapping the user interface element to the second alignment guide, detect a termination of the first user gesture; in response to detecting the termination of the first user gesture; maintain the adjusted value of the gravity variable associated with the first alignment guide, wherein the adjusted value of the gravity variable associated with the first alignment guide is maintained for a succession of user gestures for moving the user interface element within the user interface; and incrementally adjust the gravity variable associated with the first alignment guide upon detecting termination of respective user gestures in the succession of user gestures.
-
Specification