Patent ID: 8171423

Claim:
In a computing environment, comprising: a display server comprising a display to display windows on the display in a presentation environment; one or more client devices coupled to the display server; one or more window managers running on one or more of the client devices; and a single window broker running on one of the client devices, wherein each window manager implements a visual user interface that allows users to control location, size and visibility of windows being displayed by the display server, and wherein the window broker controls permissions and ultimate location, size and visibility of all windows displayed by the display server, a method of retrieving information from at least one of the display server or window broker, the method comprising: at a window manager, retrieving, from at least one of the display server or window broker, location, size and back-to-front order of all visible windows displayed on the display by the display server; at the window manager, retrieving from at least one of the display server or window broker descriptive information about any visible windows displayed on the display including its owner, name, and contents; at the window manager, retrieving from at least one of the display server or window broker descriptive information of any windows on a shelf, wherein windows on the shelf are not currently displayed by the display server including not being displayed as minimized icons, but are waiting to be displayed as specified by window managers and approved by the window broker; at the window manager, receiving notifications of changes to at least one of window position, size, visibility or shelf order approved by the window broker; based on information retrieved from at least one of the display server or window broker and received notifications, displaying at a user interface to a user a graphical interactive view of windows displayed on the display by the display server and windows on the shelf at the display server; receiving a user request at the user interface for a change to what is displayed by the display server; and sending the user request, directly or indirectly, to the window broker, whereafter the window broker: performs at least one of approving the user request, denying the user request or making arbitrary changes to one or more windows to accommodate the user request and sends a window broker request to the display server, wherein the window broker's requests are always honored by the display server, and notifies all window managers of the changes that have been made so that their user interfaces can be updated.