Patent ID: 8578283

Claim:
A computer system for controlling user-interface (UI) element presentation, the computer system comprising: a processor; a machine-readable storage device operatively coupled to the processor and embodying a program of instructions that cause the processor to: automatically discover a visual or input characteristic of a UI element when presentation of that element is invoked by an invoking process; allow the presentation of the UI element if the invoking process was launched from an operating-system (OS) shell running on the computer system, if the UI element conforms to a premium navigation experience provided by the OS shell, if the UI element loads one or more system libraries for accepting user input available to a user of the computer system, if the invoking process was already presenting a UI to the user, or if a visual or input characteristic of the UI element is consistent with the OS shell; and suppress presentation of the UI element if the invoking process was not launched from the OS shell, if the UI element does not conform to the premium navigation experience, if the UI element does not load the one or more system libraries for accepting user input available to the user, if the invoking process was not already presenting a UI to the user, and if the visual or input characteristic is not consistent with the OS shell, such suppression including execution of a sequence of one or more suppression steps from an ordered list in order of increasing obtrusiveness and decreasing likelihood of being restricted by the OS shell until presentation is suppressed, the ordered list including: attempting to move the UI element outside of a viewable zone of a display of the computer system, attempting to move the UI element below an opaque UI element of the display, sending a request to the process to close the UI element, and sending a request to one or more of the OS and the invoking process to end the invoking process, and disabling the display.