* We should not ignore the minimize request completely when the window is

hidden, but at least set it to minimized.
* Also, we shouldn't show minimized windows, but keep them hidden. This prevents
  the app_server/BWindow to go out of sync wrt the show level. This also fixes
  bug #3258.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28938 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2009-01-18 17:30:57 +00:00
parent 0c1404badd
commit 2ea5e5e8e5

View File

@ -373,7 +373,8 @@ ServerWindow::_Show()
// NOTE: if you do something else, other than sending a port message, PLEASE lock
STRACE(("ServerWindow %s: _Show\n", Title()));
if (fQuitting || !fWindow->IsHidden() || fWindow->IsOffscreenWindow())
if (fQuitting || fWindow->IsMinimized() || !fWindow->IsHidden()
|| fWindow->IsOffscreenWindow())
return;
// TODO: Maybe we need to dispatch a message to the desktop to show/hide us
@ -669,6 +670,7 @@ ServerWindow::_DispatchMessage(int32 code, BPrivate::LinkReceiver &link)
if (showLevel <= 0) {
// window is currently hidden - ignore the minimize request
fWindow->SetMinimized(minimize);
break;
}