Patent ID: 8510743

Claim:
A computer-implemented method for managing computer applications, the method comprising: executing, by a computing system, multiple computer applications; ranking, by the computing system, the computer applications based on times at which each of the computer applications was last in focus such that the ranking is based on, for each of the computer applications, an elapsed time that the computer application has been executing without being in focus, wherein the computer applications were in focus at different times, and wherein a computer application is in focus if it is in a foreground of a display and able to receive user input; saving, by the computing system, state information for certain of the computer applications; in response to a memory condition, terminating, by the computing system and based on the ranking, one or more of the computer applications, wherein an application window of one of the terminated computer applications lost focus, so as to be at least partially visible in a background of the display, before being terminated; copying the at least partially visible application window; displaying the copy of the at least partially visible application window after the one of the terminated computer applications has been terminated; and subsequently reviving, by the computing system, the one of the terminated computer applications using the saved state information.