diff --git a/src/kits/interface/Window.cpp b/src/kits/interface/Window.cpp index 6855e59512..d7b1260ec1 100644 --- a/src/kits/interface/Window.cpp +++ b/src/kits/interface/Window.cpp @@ -998,7 +998,9 @@ BWindow::SetSizeLimits(float minWidth, float maxWidth, if (fLink->FlushWithReply(code) == B_OK && code == SERVER_TRUE) { // read the values that were really enforced on - // the server side + // the server side (the window frame could have + // been changed, too) + fLink->Read(&fFrame); fLink->Read(&fMinWidth); fLink->Read(&fMaxWidth); fLink->Read(&fMinHeight); diff --git a/src/servers/app/ServerWindow.cpp b/src/servers/app/ServerWindow.cpp index e772e42ef5..5128cc6eeb 100644 --- a/src/servers/app/ServerWindow.cpp +++ b/src/servers/app/ServerWindow.cpp @@ -1376,7 +1376,6 @@ myRootLayer->Unlock(); STRACE(("ServerWindow %s: Message AS_WINDOW_RESIZE %.1f, %.1f\n", Title(), xResizeBy, yResizeBy)); fWinBorder->ResizeBy(xResizeBy, yResizeBy); - break; } case AS_WINDOW_MOVE: @@ -1390,7 +1389,6 @@ myRootLayer->Unlock(); STRACE(("ServerWindow %s: Message AS_WINDOW_MOVE: %.1f, %.1f\n", Title(), xMoveBy, yMoveBy)); fWinBorder->MoveBy(xMoveBy, yMoveBy); - break; } case AS_SET_SIZE_LIMITS: @@ -1417,13 +1415,13 @@ myRootLayer->Unlock(); fWinBorder->GetSizeLimits(&minWidth, &maxWidth, &minHeight, &maxHeight); fLink.StartMessage(SERVER_TRUE); + fLink.Attach(fWinBorder->Frame()); fLink.Attach(minWidth); fLink.Attach(maxWidth); fLink.Attach(minHeight); fLink.Attach(maxHeight); fLink.Flush(); - break; } case B_MINIMIZE: