While the user resizes a window, programmatical resize operations are ignored,

likewise, while the user moves a window around, programmatical moves are ignored
as well.
This fixes bug #264.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16743 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2006-03-12 16:59:15 +00:00
parent 32600acb6b
commit f025cd8b72
3 changed files with 29 additions and 8 deletions
+8 -5
View File
@@ -1960,9 +1960,10 @@ BWindow::MoveBy(float dx, float dy)
fLink->StartMessage(AS_WINDOW_MOVE);
fLink->Attach<float>(dx);
fLink->Attach<float>(dy);
fLink->Flush();
fFrame.OffsetBy(dx, dy);
status_t status;
if (fLink->FlushWithReply(status) == B_OK && status == B_OK)
fFrame.OffsetBy(dx, dy);
Unlock();
}
@@ -2016,10 +2017,12 @@ BWindow::ResizeBy(float dx, float dy)
fLink->StartMessage(AS_WINDOW_RESIZE);
fLink->Attach<float>(dx);
fLink->Attach<float>(dy);
fLink->Flush();
fFrame.SetRightBottom(fFrame.RightBottom() + BPoint(dx, dy));
_AdoptResize();
status_t status;
if (fLink->FlushWithReply(status) == B_OK && status == B_OK) {
fFrame.SetRightBottom(fFrame.RightBottom() + BPoint(dx, dy));
_AdoptResize();
}
}
Unlock();
}