IP Library Granted Patent US 9,003,332
Granted Patent B2
US 9,003,332 · App. 13/912,020 · Granted Apr 7, 2015

Predictive scrolling

Inventors: Camilo Mattos (Los Angeles, CA); Joel Kraut (San Francisco, CA); Alex C. Schaefer (Solana Beach, CA); Santiago Becerra (Del Mar, CA); Patrick Cheng (San Diego, CA); Jaime Zuluaga (Encinitas, CA)
Assignee: MeLLmo Inc.
G06F3/0485G06F3/04855G06F3/04883G06F2203/04802Y10S715/977
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,003,332
App. No.
13/912,020
Granted
Apr 7, 2015
Kind
B2
Abstract

A system and a method are disclosed for effectively displaying database records on a device having a display area that is small compared to the underlying data being represented. A simulated catalogue is displayed with cards associated with database records. Detailed information is presented for a record on a card obscuring information related to other records. A user is allowed to swipe on the catalogue causing simulated movement of the cards thereby displaying information associated with a database record previously obscured. The catalogue is moved with an initial velocity determined by the speed of swiping and decelerated based on a drag factor until it comes to a stop and displays information for the record reached. The ability to determine the final record displayed when the catalogue stops allows pre-fetching of the data associated with the record.

Claims (48)

1. A computer-implemented method for graphically displaying database records on a display screen with limited display area, the method comprising:

displaying a first database record on a first face of a cube;and

responsive to a user input, animating the display to rotate the cube;

determining a final record from the plurality of database records to display at a conclusion of the rotation before the rotation comes to the conclusion;

rendering an image of the cube displaying the final record before the rotation comes to the conclusion; and

responsive to the conclusion of the rotation, receiving the rendered image and displaying the rendered image on a second face of the cube.

2. The method of claim 1 , wherein the user input is indicative of an input speed value and animating comprises displaying the cube rotating with a speed initialized to a first speed value determined based on the input speed value.

3. The method of claim 2 , wherein the animating further comprises displaying the cube rotating with a second speed that is less than the first speed and greater than a predetermined minimum threshold, wherein the second speed value is determined by multiplying the first speed value by a predetermined drag value.

4. The method of claim 1 , further comprising:

preloading the final record while the cube is displayed as rotating.

5. The method of claim 1 , further comprising:

rendering an image of the second face of the cube for displaying the final record while the cube is displayed as rotating.

6. The method of claim 5 , further comprising:

storing the image of the second face of the cube in a cache for retrieval prior to subsequently displaying the final record.

7. The method of claim 1 , wherein the user input includes a swiping gesture across the display screen.

8. The method of claim 1 , wherein the user input includes a swiping gesture across the display screen and an input speed value is determined based on the speed of swiping.

9. The method of claim 1 , wherein the database records represent pages of report data.

10. A system for graphically displaying database records on a display screen with limited display area, the system comprising:

a computer processor; and

a computer-readable storage medium storing computer program modules configured to execute on the computer processor, the computer program modules comprising:

an input/output driver module configured to:

display a first database record on a first face of a cube;

responsive to a user input, animating the display to rotate the cube;

determine a final record from the plurality of database records to display at a conclusion of the rotation before the rotation comes to the conclusion;

render an image of the cube displaying the final record before the rotation comes to the conclusion; and

responsive to the conclusion of the rotation, receive the rendered image and displaying the rendered image on a second face of the cube.

11. The system of claim 10 , wherein the user input is indicative of an input speed value and animating comprises displaying the cube rotating with a speed initialized to a first speed value determined based on the input speed value.

12. The system of claim 11 , wherein the animating further comprises displaying the cube rotating with a second speed that is less than the first speed and greater than a predetermined minimum threshold, wherein the second speed value is determined by multiplying the first speed value by a predetermined drag value.

13. The system of claim 10 , wherein the input/output driver module is further configured to:

preload the final record while the cube is displayed as rotating.

14. The system of claim 10 , wherein the input/output driver module is further configured to:

render an image of the second face of the cube for displaying the final record while the cube is displayed as rotating.

15. The system of claim 14 , wherein the input/output driver module is further configured to:

store the image of the second face of the cube in a cache for retrieval prior to subsequently displaying the final record.

16. The system of claim 14 , wherein the user input includes a swiping gesture across the display screen, and wherein the input/output driver module is configured to determine an input speed value based on the speed of swiping.

17. A computer program product having a non-transitory computer-readable storage medium storing computer-executable code for graphically displaying database records on a display screen with limited display area, the code comprising:

an input/output driver module configured to:

display a first database record on a first face of a cube;

responsive to a user input, animating the display to rotate the cube;

determine a final record from the plurality of database records to display at a conclusion of the rotation before the rotation comes to the conclusion;

render an image of the cube displaying the final record before the rotation comes to the conclusion; and

responsive to the conclusion of the rotation, receive the rendered image and displaying the rendered image on a second face of the cube.

18. The computer program product of claim 17 , wherein the input/output driver module is further configured to:

preload the final record while the cube is displayed as rotating.

19. The computer program product of claim 17 , wherein the input/output driver module is further configured to:

render an image of the second face of the cube for displaying the final record while the cube is displayed as rotating.

20. The computer program product of claim 19 , wherein the input/output driver module is further configured to:

store the image of the second face of the cube in a cache for retrieval prior to subsequently displaying the final record.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: MELLMO INC.
To: SAP SE
Reel/Frame 038272/0046 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2015
From: MATTOS, CAMILO; KRAUT, JOEL; SCHAEFER, ALEX C.; BECERRA, SANTIAGO; CHENG, PATRICK; ZULUAGA, JAIME
To: MELLMO INC.
Reel/Frame 035070/0183 →
Continuity (3)
Continuation 13588041 · Aug 17, 2012
Continuation 12478749 · Jun 4, 2009
Related Publication 20140157187A1 · Jun 5, 2014