Responsive user interface to manage a non-responsive application
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are provided for managing application programs with non-responsive user interfaces, possibly due to a bottleneck in handling events/messages. The method and system make an apparently frozen application user interface responsive so as to permit alternative tasks be executed or close the hung application. This is enabled by implementing routines to (a) detect if an application is hung, (b) replace the user interface for the hung application with a ghost interface, implemented by a separate thread, that permits system functionality such as sizing, minimization and closing of the application, and (c) destroying the ghost interface if the hung application becomes responsive again along with restoring the application'"'"'s user interface along with updated event queues. Furthermore, creation of the ghost user interface is accompanied by placing a high priority special event in the hung application'"'"'s queue to detect renewed responsiveness without requiring explicit monitoring.
-
Citations
64 Claims
-
1-35. -35. (canceled)
-
36. A method for managing an original user interface of an application, the method comprising:
-
signaling a hung state for the application;
creating a ghost user interface in response to the hung state that appears in place of the original user interface;
placing a high priority special event in an event queue of the application; and
replacing the ghost user interface with the original user interface as a result of the high priority special event being handled by the application. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
-
-
54. A method of substituting substitute user interfaces for original user interfaces, the method comprising:
-
generating first and second flip-window signals corresponding to first and second threads, respectively;
in response to the first flip-window signal, replacing a first window controlled by the first thread with a first substitute window controlled by a thread designated to ghost the first window;
in response to the second flip-window signal, replacing a second window controlled by the second thread with a second substitute window controlled by the designated thread; and
placing a high priority special event in event queues associated with the first and second threads, wherein handling of the high priority special event by each of the first and second threads causes generation of a flop-window signal. - View Dependent Claims (55)
-
-
56. A multithreaded computing system for executing an application having a user interface, wherein if the application is non-responsive, the user interface is replaced by a ghost user interface, the system comprising:
-
non-responsive-application detecting code for detecting a non-responsive application;
a ghost thread for creating the ghost user interface to replace the user interface in response to detection of a non-responsive application;
a high priority special entry in a message queue of the application for detecting if the application is responsive; and
a plurality of computer executable instructions for destroying the ghost user interface in response to handling of the high priority special entry by the application. - View Dependent Claims (57, 58, 59, 60)
-
-
61. A computer-readable media having computer executable instructions for carrying out the steps of a method for managing an original user interface of an application, method comprising:
-
signaling a hung state for the application;
creating a ghost user interface in response to the hung state that appears in place of the original user interface;
placing a high priority special event in an event queue of the application; and
replacing the ghost user interface with the original user interface as a result of the high priority special event being handled by the application. - View Dependent Claims (62, 63, 64)
-
Specification