* 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:
@@ -373,7 +373,8 @@ ServerWindow::_Show()
|
|||||||
// NOTE: if you do something else, other than sending a port message, PLEASE lock
|
// NOTE: if you do something else, other than sending a port message, PLEASE lock
|
||||||
STRACE(("ServerWindow %s: _Show\n", Title()));
|
STRACE(("ServerWindow %s: _Show\n", Title()));
|
||||||
|
|
||||||
if (fQuitting || !fWindow->IsHidden() || fWindow->IsOffscreenWindow())
|
if (fQuitting || fWindow->IsMinimized() || !fWindow->IsHidden()
|
||||||
|
|| fWindow->IsOffscreenWindow())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// TODO: Maybe we need to dispatch a message to the desktop to show/hide us
|
// 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) {
|
if (showLevel <= 0) {
|
||||||
// window is currently hidden - ignore the minimize request
|
// window is currently hidden - ignore the minimize request
|
||||||
|
fWindow->SetMinimized(minimize);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user