Simply make a taskbar with tabs.

When for a given application there’s more than one window, the number appears on the tab (nothing new here), then one can expand horizontally the tab showing the windows by name.
One can expand a tab vertically as a drawer, the user decides how he wants to display the windows, either by name or with thumbnail. The user can as well put in the tab some tools or utilities of the application e.g for a web browser, the personnal bookmark.
Eventually there’s a scrolling bar, though one could also set the height of the drawer as needed.
Hovering an object displays information in the prompt. Though, it could be displayed with a layer as well.
There’s a tab too for the desktop, then, instead of put it in front, one just have to expand the tab to get its content. It could be the same for the trash folder.
By this mean, one can have a quick overview upon some documents related to a global task.