P
US7571391B2ExpiredUtilityPatentIndex 92

Selective rendering of user interface of computer program

Assignee: SAP AGPriority: Oct 17, 2003Filed: Oct 17, 2003Granted: Aug 4, 2009
Est. expiryOct 17, 2023(expired)· nominal 20-yr term from priority
Inventors:ROESSLER ANDREAS
G06F 16/9577
92
PatentIndex Score
23
Cited by
25
References
17
Claims

Abstract

Methods, system and apparatus, including computer program products, for rendering a user interface in a client program. The techniques include detecting multiple changes to a user interface of a computer program, the user interface having multiple user interface elements, each change being a change to one of the multiple user interface elements; generating a rendering request for each change, each rendering request specifying the user interface element that has changed and a type of modification to be performed on the user interface element; and filtering the requests to eliminate redundant requests. The user interface can be rendered based on the filtered requests.

Claims

exact text as granted — not AI-modified
1. A computer program product, tangibly embodied in a computer-readable storage medium, the computer program product comprising instructions operable to cause a client apparatus to perform operations comprising:
 displaying, by the client apparatus, a user interface to a server computer program running on a server, the user interface including a plurality of user interface elements including a first user interface element, the first user interface element having a plurality of attributes; 
 receiving, from the server, a server-generated chance to the first user interface element; 
 receiving a client-generated change to the first user interface element based on a user input to the client apparatus; 
 receiving a plurality of additional changes to the first user interface element based on additional user inputs to the client apparatus or additional changes received from the server; 
 generating a server-based rendering request for the server-generated change and a client-based rendering request for the client-generated change, the server-based rendering request and client-based rendering request each specifying the first user interface element and a type of modification to be performed on the first user interface element; 
 generating additional rendering requests for the additional chances to the first user interface element; 
 categorizing both the server-based rendering request and the client-based rendering request as redundant because both the server-based rendering request and the client-based rendering request identify subsets of the attributes of the first user interface element also identified by the additional rendering requests for the additional changes; 
 filtering both the server-based rendering request and the client-based rendering request to eliminate the redundant server-based rendering request and the redundant client-based rendering request; and 
 rendering the first user input element, the rendering being limited to additional rendering requests and excluding the filtered server-based rendering request and the filtered client-based rendering request. 
 
     
     
       2. The product of  claim 1 , wherein each rendering request is a request to modify a data structure representing the user interface. 
     
     
       3. The product of  claim 2 , wherein the data structure is a document object model representation of the user interface. 
     
     
       4. The product of  claim 1 , wherein:
 at least one of the additional rendering requests is a request for a complete re-rendering of the user interface element. 
 
     
     
       5. The computer program product according to  claim 1 , wherein:
 the first user element is a text field, radio button, table, tray, or menu. 
 
     
     
       6. The computer program product according to  claim 1 , wherein at least one of the additional rendering requests, the server-based rendering request, or the client-based rendering request specifies a color attribute of the first user interface element. 
     
     
       7. The computer program product according to  claim 1 , wherein the first user interface element elements filters its own rendering requests. 
     
     
       8. A client apparatus comprising:
 means for displaying a user interface to a server computer program running on a server, the user interface including a plurality of user interface elements including a first user interface element, the first user interface element having a plurality of attributes; 
 means for receiving, from the server, a server-generated change to the first user interface element; 
 means for receiving a client-generated change to the first user interface element based on a user input to the client apparatus; 
 means for receiving a plurality of additional changes to the first user interface element based on additional user inputs to the client apparatus or additional changes received from the server; 
 means for generating a server-based rendering request for the server-generated change and a client-based rendering request for the client-generated change, the server-based rendering request and client-based rendering request each specifying the first user interface element and a type of modification to be performed on the first user interface element; 
 means for generating additional rendering requests for the additional changes to the first user interface element; 
 means for categorizing both the server-based rendering request and the client-based rendering request as redundant because both the server-based rendering request and the client-based rendering request identify subsets of the attributes of the first user interface element also identified by the additional rendering requests for the additional changes; 
 means for filtering, both the server-based rendering request and the client-based rendering request to eliminate the redundant server-based rendering request and the redundant client-based rendering request; 
 means for rendering the first user input element, the rendering being limited to additional rendering requests and excluding the filtered server-based rendering request and the filtered client-based rendering request; and 
 a processor for implementing at least the means for filtering. 
 
     
     
       9. The client apparatus of  claim 8 , wherein each rendering request is a request to modify a data structure representing the user interface. 
     
     
       10. The client apparatus of  claim 9 , wherein the data structure is a document object model representation of the user interface. 
     
     
       11. The client apparatus of  claim 8 , wherein:
 at least one of the additional rendering requests is a request for a complete re-rendering of the user interface element. 
 
     
     
       12. The client apparatus according to  claim 8 , wherein the first user interface element filters its own rendering requests. 
     
     
       13. A computer-implemented method comprising:
 displaying, by a client apparatus, a user interface to a server computer program running on a server, the user interface including a plurality of user interface elements including a first user interface element, the first user interface element having a plurality of attributes; 
 receiving, from the server, a server-generated change to the first user interface element; 
 receiving a client-generated change to the first user interface element based on a user input to the client apparatus; 
 receiving a plurality of additional changes to the first user interface element based on additional user inputs to the client apparatus or additional changes received from the server; 
 generating a server-based rendering request for the server-generated change and a client-based rendering request for the client-generated change, the server-based rendering request and client-based rendering request each specifying the first user interface element and a type of modification to be performed on the first user interface element; 
 generating additional rendering requests for the additional changes to the first user interface element; 
 categorizing both the server-based rendering request and the client-based rendering request as redundant because both the server-based rendering request and the client-based rendering request identify subsets of the attributes of the first user interface element also identified by the additional rendering requests for the additional changes; 
 filtering both the server-based rendering request and the client-based rendering request to eliminate the redundant server-based rendering request and the redundant client-based rendering request; and 
 rendering the first user input element, the rendering being limited to additional rendering requests and excluding the filtered server-based rendering request and the filtered client-based rendering request. 
 
     
     
       14. The computer-implemented method according to  claim 13 , wherein each rendering request is a request to modify a data structure representing the user interface. 
     
     
       15. The computer-implemented method according to  claim 13 , wherein the data structure is a document object model representation of the user interface. 
     
     
       16. The computer-implemented method according to  claim 13 , wherein at least one of the additional rendering requests is a request for a complete re-rendering of the user interface element. 
     
     
       17. The computer-implemented method according to  claim 13 , wherein the first user interface element filters its own rendering requests.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.