From 62df2475e2d75cc2dfc19d89f5804fa8842a01be Mon Sep 17 00:00:00 2001 From: "pollmann%netscape.com" Date: Wed, 18 Jul 2001 08:23:57 +0000 Subject: [PATCH] Bug 43410: Correct z-index ordering of iframes. Passing in initdata that tells the widget it needs to clip sibling and child widgets prevents overlapping iframes from painting on top of one another. Fix includes work by beard@netscape.com. r=beard@netscape.com,self sr=jst@netscape.com git-svn-id: svn://10.0.0.236/trunk@99479 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/layout/generic/nsFrameFrame.cpp | 7 ++++++- mozilla/layout/html/document/src/nsFrameFrame.cpp | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/mozilla/layout/generic/nsFrameFrame.cpp b/mozilla/layout/generic/nsFrameFrame.cpp index 549b461d464..91925347755 100644 --- a/mozilla/layout/generic/nsFrameFrame.cpp +++ b/mozilla/layout/generic/nsFrameFrame.cpp @@ -1053,7 +1053,12 @@ nsHTMLFrameInnerFrame::CreateDocShell(nsIPresContext* aPresContext, presShell->GetViewManager(getter_AddRefs(viewMan)); rv = view->Init(viewMan, viewBounds, parView); viewMan->InsertChild(parView, view, 0); - rv = view->CreateWidget(kCChildCID); + + nsWidgetInitData initData; + initData.clipChildren = PR_TRUE; + initData.clipSiblings = PR_TRUE; + + rv = view->CreateWidget(kCChildCID, &initData); SetView(aPresContext, view); // if the visibility is hidden, reflect that in the view diff --git a/mozilla/layout/html/document/src/nsFrameFrame.cpp b/mozilla/layout/html/document/src/nsFrameFrame.cpp index 549b461d464..91925347755 100644 --- a/mozilla/layout/html/document/src/nsFrameFrame.cpp +++ b/mozilla/layout/html/document/src/nsFrameFrame.cpp @@ -1053,7 +1053,12 @@ nsHTMLFrameInnerFrame::CreateDocShell(nsIPresContext* aPresContext, presShell->GetViewManager(getter_AddRefs(viewMan)); rv = view->Init(viewMan, viewBounds, parView); viewMan->InsertChild(parView, view, 0); - rv = view->CreateWidget(kCChildCID); + + nsWidgetInitData initData; + initData.clipChildren = PR_TRUE; + initData.clipSiblings = PR_TRUE; + + rv = view->CreateWidget(kCChildCID, &initData); SetView(aPresContext, view); // if the visibility is hidden, reflect that in the view