1. A method performed by a sharer computer for analyzing a first window associated with an application executing on the sharer computer, comprising: determining whether a class of a top level parent window of the first window is listed in a map of classes known to be associated with an application of a type selected from the group consisting of single document interface and multiple document interface application types; marking the top level parent window to signify that its class is listed in the map of classes, if it is determined that the class of the top level parent is listed in the map of classes; determining whether the first window has been marked as a window that is to be shared and if the first window has been marked as a window that is to be shared, determining whether the first window is a child of a parent window that is associated with a process using a multiple document interface; and marking the first window with a single document mark to signify that it is a child of a parent window that is associated with a process using a multiple document interface, if it is determined that the first window is a child of a parent window that is associated with a process using a multiple document interface, so that the first window is shared but other windows of the process are unshared.