Random access browser scrolling for large pages
First Claim
1. A method, performed by a computing device, of rendering a document in a graphical user interface (GUI) window of a display device, the document having a plurality of equally-spaced records, the method comprising:
- loading into system memory of the computing device a set of records of the plurality of equally-spaced records which are to be visible in the GUI window;
placing the loaded set of records within a dynamic markup page for display within the GUI window;
placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and
displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window;
wherein;
the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document;
placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records;
displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar;
placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document;
the method further comprises;
receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document;
loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records;
displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records;
modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height;
redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; and
periodically evaluating whether the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory;
loading the additional records, displaying the new set of records, modifying the container, and redisplaying the scroll bar are performed in response to an evaluation that the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory, the evaluation having been performed as part of the periodically evaluating; and
periodically evaluating is performed at periodic intervals of one second.
9 Assignments
0 Petitions
Accused Products
Abstract
A method includes (a) loading into system memory of a computing device a set of records of a plurality of equally-spaced records which are to be visible in a GUI window, (b) placing the loaded set of records within a dynamic markup page for display within the GUI window, (c) placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records, and (d) displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window. Other embodiments are directed to a computerized apparatus and computer program products for performing methods similar to that described above.
-
Citations
15 Claims
-
1. A method, performed by a computing device, of rendering a document in a graphical user interface (GUI) window of a display device, the document having a plurality of equally-spaced records, the method comprising:
-
loading into system memory of the computing device a set of records of the plurality of equally-spaced records which are to be visible in the GUI window; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the method further comprises; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; and periodically evaluating whether the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory; loading the additional records, displaying the new set of records, modifying the container, and redisplaying the scroll bar are performed in response to an evaluation that the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory, the evaluation having been performed as part of the periodically evaluating; and periodically evaluating is performed at periodic intervals of one second. - View Dependent Claims (2, 3)
-
-
4. A method, performed by a computing device, of rendering a document in a graphical user interface (GUI) window of a display device, the document having a plurality of equally-spaced records, the method comprising:
-
loading into system memory of the computing device a set of records of the plurality of equally-spaced records which are to be visible in the GUI window; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the method further comprises; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; unloading from system memory prior records from the loaded set of records, the prior records including records that are no longer visible in the GUI window upon scrolling down through the document, there being exactly m prior records; placing another container within the dynamic markup page in a location of the dynamic markup page preceding the new set of records, the other container representing the prior records, the other container having another height equal to m multiplied by the record height; and periodically evaluating whether the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory; loading the additional records, unloading the prior records, displaying the new set of records, modifying the container, placing the other container, and redisplaying the scroll bar are performed in response to an evaluation that the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory, the evaluation having been performed as part of the periodically evaluating; and the method further comprises; in response to a subsequent periodic evaluation, determining that the user has scrolled the slider of the scroll bar to another position indicating that the user wishes to see other records of the document that are not loaded within system memory; and in response to determining that the user has scrolled the slider of the scroll bar to the other position; clearing containers and loaded records from the dynamic markup page; loading into system memory the other records, there being exactly p other records; placing the loaded other of records within the dynamic markup page; displaying the other set of records within the GUI window; placing a third container within the dynamic markup page in a location of the dynamic markup page preceding the other records, the third container representing non-visible records that precede the other records in the document, there being exactly q non-visible records that precede the other records in the document, the third container having a third height equal to q multiplied by the record height; placing a fourth container within the dynamic markup page in a location of the dynamic markup page following the other records, the fourth container representing non-visible records that follow the other records in the document, the fourth container having a fourth height equal to the record height multiplied by the difference between the plurality and (p+q); and again redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position of the scroll bar indicative of a location of the other records within the document. - View Dependent Claims (5)
-
-
6. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when executed by a computing device, cause the computing device to perform the operations of:
-
loading into system memory of the computing device a set of records of a plurality of equally-spaced records of a document which are to be visible in a graphical user interface (GUI) window of a display device; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the set of instructions, when executed by the computing device, further cause the computing device to perform the operations of; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; unloading from system memory prior records from the loaded set of records, the prior records including records that are no longer visible in the GUI window upon scrolling down through the document, there being exactly m prior records; and placing another container within the dynamic markup page in a location of the dynamic markup page preceding the new set of records, the other container representing the prior records, the other container having another height equal to m multiplied by the record height; and unloading is performed in response to making a determination that the m prior records exceed a threshold number of records, the threshold number being at least 100,000. - View Dependent Claims (7, 8)
-
-
9. An apparatus comprising:
-
system memory; a user interface connected to a display device and a user input device; and a controller, the controller being configured to perform the following operations; loading into the system memory a set of records of a plurality of equally-spaced records of a document which are to be visible in a graphical user interface (GUI) window of the display device; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll, using the user input device, to any arbitrary position within the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the controller is further configured to perform the following operations; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; and periodically evaluating whether the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory; loading the additional records, displaying the new set of records, modifying the container, and redisplaying the scroll bar are performed in response to an evaluation that the user has scrolled the slider of the scroll bar to a position indicating that the user wishes to see records of the document that are not loaded within system memory, the evaluation having been performed as part of the periodically evaluating; and periodically evaluating is performed at periodic intervals of one second. - View Dependent Claims (10)
-
-
11. A method, performed by a computing device, of rendering a document in a graphical user interface (GUI) window of a display device, the document having a plurality of equally-spaced records, the method comprising:
-
loading into system memory of the computing device a set of records of the plurality of equally-spaced records which are to be visible in the GUI window; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the method further comprises; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; unloading from system memory prior records from the loaded set of records, the prior records including records that are no longer visible in the GUI window upon scrolling down through the document, there being exactly m prior records; and placing another container within the dynamic markup page in a location of the dynamic markup page preceding the new set of records, the other container representing the prior records, the other container having another height equal to m multiplied by the record height; and unloading is performed in response to making a determination that the m prior records exceed a threshold number of records, the threshold number being at least 100,000. - View Dependent Claims (12, 13)
-
-
14. A method, performed by a computing device, of rendering a document in a graphical user interface (GUI) window of a display device, the document having a plurality of equally-spaced records, the method comprising:
-
loading into system memory of the computing device a set of records of the plurality of equally-spaced records which are to be visible in the GUI window; placing the loaded set of records within a dynamic markup page for display within the GUI window; placing a container within the dynamic markup page, the container representing non-visible records of the plurality of equally-spaced records, the container having a height representative of a combined height of the represented non-visible records; and displaying, on the display device, a scroll bar adjunctive to the GUI window, the scroll bar allowing a user of the computing device to scroll to any arbitrary position in the document for display within the GUI window; wherein; the loaded set of records are at a beginning of the plurality of equally-spaced records within the document, the non-visible records following the loaded set of records within the document; placing the container within the dynamic markup page includes placing the container in a location of the dynamic markup page following the loaded set of records; displaying the scroll bar includes displaying a slider of the scroll bar, the slider being positioned at a topmost position of the scroll bar; placing the container within the dynamic markup page further includes setting the height of the container to be equal to a number of the non-visible records multiplied by a record height, the number of the non-visible records being equal to the plurality minus a size of the loaded set of records, the record height being a height in pixels corresponding to the equal-spacing of the plurality of records within the document; the method further comprises; receiving a scroll command from the user via the scroll bar indicating that the user wishes to scroll down through the document; loading into system memory additional records of the document following the loaded set of records, there being exactly n additional records; displaying a new set of records within the GUI window, the new set of records including at least one record of the additional records; modifying the container within the markup page to have a shorter height, the shorter height equaling the height minus a product of n and the record height; redisplaying the scroll bar adjunctive to the GUI window, the redisplayed scroll bar having the slider positioned at a position below the topmost position of the scroll bar; unloading from system memory prior records from the loaded set of records, the prior records including records that are no longer visible in the GUI window upon scrolling down through the document, there being exactly m prior records; and placing another container within the dynamic markup page in a location of the dynamic markup page preceding the new set of records, the other container representing the prior records, the other container having another height equal to m multiplied by the record height; and unloading is performed in response to making a determination that the prior records have a combined size exceeding a threshold size, the threshold size being at least one gigabyte. - View Dependent Claims (15)
-
Specification