Floating windows start with 0 workspaces - probably didn't matter, though, as

freshly added windows are hidden anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15810 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2006-01-03 11:36:45 +00:00
parent 69706266c5
commit 574af5597c

View File

@ -1070,8 +1070,6 @@ Desktop::SendWindowBehind(WindowLayer* window, WindowLayer* behindOf)
dirty.Exclude(&clean);
MarkDirty(dirty);
// TODO: if this window has any floating windows, remove them here
_UpdateFronts();
SetFocusWindow(FrontWindow());
//_WindowsChanged();
@ -1386,6 +1384,10 @@ Desktop::SetWindowWorkspaces(WindowLayer* window, uint32 workspaces)
}
/*! \brief Adds the window to the desktop.
At this point, the window is still hidden and must be shown explicetly
via ShowWindow().
*/
void
Desktop::AddWindow(WindowLayer *window)
{
@ -1400,7 +1402,8 @@ Desktop::AddWindow(WindowLayer *window)
window->SetWorkspaces(workspace_to_workspaces(CurrentWorkspace()));
} else {
// subset windows are visible on all workspaces their subset is on
window->SetWorkspaces(window->SubsetWorkspaces());
// (but floating windows default to not visible)
window->SetWorkspaces(window->IsModal() ? window->SubsetWorkspaces() : 0);
}
_ChangeWindowWorkspaces(window, 0, window->Workspaces());