Auto-scrolling with mouse speed computation during dragging
First Claim
1. In a computer system having a video display, a computer program displaying on the video display a window with contents and a scroll region, and an input device with an input device indicator reflecting movement of the input device on the video display, a method for displaying the contents of the window comprising the steps of:
- under the control of the computer program,determining a location of the input device indicator on the video display when the input device is performing a drag and drop operation;
determining a speed of the input device indicator when the location of the input device indicator is within the scroll region;
scrolling the contents of the window in response to the input device indicator being within the scroll region and the speed being below a predefined value; and
inhibiting the contents of the window from being scrolled when the speed is above the predefined value.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for scrolling during a drag and drop operation is provided wherein the determination of whether to scroll is based on the location of a mouse indicator as well as the speed of the mouse indicator. The system maintains a predetermined threshold that is empirically proven to reliably distinguish as to whether a user wishes to perform a drag and drop operation or whether the user wishes to invoke the automatic scrolling of the present invention. The system determines when the mouse indicator is over a predefined area of a window, compares the speed of the mouse indicator to the predetermined threshold and scrolls the window if the mouse indicator is over the predefined area and the speed is less than the predetermined threshold.
339 Citations
36 Claims
-
1. In a computer system having a video display, a computer program displaying on the video display a window with contents and a scroll region, and an input device with an input device indicator reflecting movement of the input device on the video display, a method for displaying the contents of the window comprising the steps of:
under the control of the computer program, determining a location of the input device indicator on the video display when the input device is performing a drag and drop operation; determining a speed of the input device indicator when the location of the input device indicator is within the scroll region; scrolling the contents of the window in response to the input device indicator being within the scroll region and the speed being below a predefined value; and inhibiting the contents of the window from being scrolled when the speed is above the predefined value.
-
2. In a computer system having a video display displaying a screen object, a computer program displaying on the video display a window with a predefined area, and an input device with an input device indicator reflecting movement of the input device on the video display, a method comprising the steps of:
under the control of the computer program, receiving an indication that the input device is performing a drag and drop operation on the screen object; determining a location of the input device indicator on the video display responsive to receiving the indication; determining whether the input device indicator is located within the predefined area; determining a metric of how quickly the input device indicator is moving when the input device indicator is located within the predefined area; and scrolling the window in response to both the input device indicator being located within the predefined area and the metric being below a predefined value. - View Dependent Claims (3)
-
4. In a computer system having an operating system managing the computer system, a video display displaying screen objects, a computer program displaying on the video display a window with a scroll region, and an input device with an input device indicator reflecting movement of the input device on the video display, the computer program having a function invoked when the input device is activated, a method performed by the function comprising the steps of:
while the input device remains activated, sending a request to the operating system to receive indications of movement of the input device indicator; receiving a first indication that the input device indicator has moved, the first indication containing a first current position of the input device indicator; determining a first current time from the operating system responsive to receiving the first indication; receiving a second indication that the input device indicator has moved, the second indication containing a second current position of the input device indicator; determining a second current time from the operating system responsive to receiving the second indication; determining a speed of the input device indicator from the first current time, the first current position, the second current time, and the second current position; determining whether the speed is within a predefined range; determining whether the input device indicator is located over the scroll region by examining the second current position; when it is determined that the input device indicator is located over the scroll region and when it is determined that the speed is within the predefined range, scrolling the window responsive to the input device indicator being over the scroll region and the speed being within the predefined range; and when it is determined that the input device indicator is not located over the scroll region or when it is determined that the speed is not within the predefined range, inhibiting scrolling of the window. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
15. A computer system, comprising:
-
a video display displaying a screen object and a window; an input device for use by a user in selecting the screen object, for dragging the screen object to a destination on the video display, and for dropping the screen object at the destination; a memory containing a program that calculates a speed of the input device relative to the video display while the input device is dragging the screen object to the destination, that determines whether the screen object is located over a predefined area of the window while the input device is dragging the screen object to the destination, that scrolls the window when both the speed of the input device is calculated to be within a predefined range and the screen object is located over the predefined area of the window, and that inhibits scrolling when the screen object is not located over the predefined area of the window or when the speed is not within the predefined range; and a processor for running the program. - View Dependent Claims (16, 17)
-
-
18. A computer-readable memory device encoded with a buffer data structure for use in determining whether to scroll a window on a video display of a computer system during a drag and drop operation, the computer system having an input device, an input device indicator reflecting movements of the input device on the video display, and a program, the buffer data structure having entries, each entry containing:
-
a position of the input device indicator on the video display; and a time indication, wherein the program examines at least two entries to determine a speed of the input device indicator during the drag and drop operation, determines a most recent time indication from the entries, determines whether the input device indicator is at a predefined location at the most recent time indication, and scrolls the window when both the determined speed is within a predefined range and the input device indicator is at the predefined location during the drag and drop operation. - View Dependent Claims (19)
-
-
20. A method in a computer system having a video display displaying information, having an input device, and having an input device indicator for reflecting movements of the input device on the video display, the video display having a delineated area containing a delineated portion of the information, comprising the steps of:
-
receiving an indication that a user has initiated an operation such that a selected portion of the information displayed on the video display is selected at a first location on the video display and moved to a second location on the video display; while the operation is in progress, determining a speed of the input device indicator; determining whether the input device indicator is located over a predefined location of the video display; and scrolling the delineated portion of the information in the delineated area responsive to both the determined speed being within a predefined range and the input device indicator being located over the predefined location. - View Dependent Claims (21)
-
-
22. A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having a video display displaying screen objects, a computer program displaying on the video display a window with a predefined area, and an input device with an input device indicator reflecting movement of the input device on the video display, the method comprising the steps of:
under the control of the computer program, receiving an indication that the input device is performing a drag and drop operation on one of the screen objects; determining a location of the input device indicator on the video display responsive to receiving the indication; determining whether the input device indicator is located within the predefined area; determining a speed of the input device indicator when the input device indicator is located within the predefined area; and scrolling the window in response to both the input device indicator being located within the predefined area and the speed being below a predefined value. - View Dependent Claims (23)
-
24. A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having an operating system managing the computer system, a video display displaying screen objects, a computer program displaying on the video display a window with a scroll region, and an input device with an input device indicator reflecting movement of the input device on the video display, the computer program having a function invoked when the input device is activated, the method performed by the function comprising the steps of:
while the input device remains activated, sending a request to the operating system to receive indications of movement of the input device indicator; receiving a first indication that the input device indicator has moved, the first indication containing a first current position of the input device indicator; determining a first current time from the operating system responsive to receiving the first indication; receiving a second indication that the input device indicator has moved, the second indication containing a second current position of the input device indicator; determining a second current time from the operating system responsive to receiving the second indication; determining a speed of the input device indicator from the first current time, the first current position, the second current time, and the second current position; determining whether the speed is within a predefined range; determining whether the input device indicator is located over the scroll region by examining the second current position; when it is determined that the input device indicator is located over the scroll region and when it is determined that the speed is within the predefined range, scrolling the window responsive to the input device indicator being over the scroll region and the speed being within the predefined range; and when it is determined that the input device indicator is not located over the scroll region or when it is determined that the speed is not within the predefined range, inhibiting scrolling of the window. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
35. A computer-readable medium for controlling a computer system to perform a method, the computer system having a video display displaying information, having an input device, and having an input device indicator for reflecting movements of the input device on the video display, the video display having a delineated area containing a delineated portion of the information, the method comprising the steps of:
-
receiving an indication that a user has initiated an operation such that a selected portion of the information displayed on the video display is selected at a first location on the video display and moved to a second location on the video display; while the operation is in progress, determining a speed of the input device indicator; determining whether the input device indicator is located over a predefined location of the video display; and scrolling the delineated portion of the information in the delineated area responsive to both the determined speed being within a predefined range and the input device indicator being located over the predefined location. - View Dependent Claims (36)
-
Specification