Patent ID: 7565340

Claim:
A computer-implemented method for assisting a user performing multiple tasks in a computing environment, the method comprising: collecting by a computer system event records originating from multiple executing programs on the computer system, wherein each of the event records represents a state change in one of the multiple programs; receiving by the computer system from the user a specification of a task being performed by the user; predicting by the computer system a current task being performed by the user based on evidence including: i) a most recent event record, ii) a most recent specification received from the user of a task being performed by the user, and iii) past event records and associated task identifiers stored in a database; and adapting and displaying by the computer system executing user interface elements in multiple executing programs on the computer system based on the predicted current task; wherein the predicting comprises using machine learning to predict a most probable current task by combining current and recent evidence with past associations between events and tasks.