Bug 68012: Allow frames in a frameset to be manually resized by dragging the border. This is accomplished by changing the reflow from a ResizeReflow, which was blocked by block to box adapter optimizations as the window had not changed size, to a ReflowDirtyChild. r=jst@netscape.com, sr=attinasi@netscape.com, a=drivers@mozilla.org (blizzard)

git-svn-id: svn://10.0.0.236/trunk@97414 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
pollmann%netscape.com 2001-06-19 08:29:13 +00:00
parent 13b314bf39
commit a71639eba6
2 changed files with 26 additions and 2 deletions

View File

@ -1550,9 +1550,21 @@ nsHTMLFramesetFrame::MouseDrag(nsIPresContext* aPresContext,
if (change != 0) {
mDrag.Reset(mDragger->mVertical, mDragger->mPrevNeighbor, change, this);
nsIFrame* parentFrame = nsnull;
GetParent((nsIFrame**)&parentFrame);
if (!parentFrame) {
return;
}
nsCOMPtr<nsIPresShell> shell;
aPresContext->GetShell(getter_AddRefs(shell));
shell->ResizeReflow(mTopLevelFrameset->mRect.width, mTopLevelFrameset->mRect.height);
if (!shell) {
return;
}
parentFrame->ReflowDirtyChild(shell, this);
// Update the view immediately (make drag appear snappier)
nsCOMPtr<nsIViewManager> vm;
shell->GetViewManager(getter_AddRefs(vm));
if (vm) {

View File

@ -1550,9 +1550,21 @@ nsHTMLFramesetFrame::MouseDrag(nsIPresContext* aPresContext,
if (change != 0) {
mDrag.Reset(mDragger->mVertical, mDragger->mPrevNeighbor, change, this);
nsIFrame* parentFrame = nsnull;
GetParent((nsIFrame**)&parentFrame);
if (!parentFrame) {
return;
}
nsCOMPtr<nsIPresShell> shell;
aPresContext->GetShell(getter_AddRefs(shell));
shell->ResizeReflow(mTopLevelFrameset->mRect.width, mTopLevelFrameset->mRect.height);
if (!shell) {
return;
}
parentFrame->ReflowDirtyChild(shell, this);
// Update the view immediately (make drag appear snappier)
nsCOMPtr<nsIViewManager> vm;
shell->GetViewManager(getter_AddRefs(vm));
if (vm) {