diff --git a/mozilla/view/public/nsIView.h b/mozilla/view/public/nsIView.h index 263305ab4f5..ffd6a68808d 100644 --- a/mozilla/view/public/nsIView.h +++ b/mozilla/view/public/nsIView.h @@ -81,7 +81,9 @@ public: * @param aManager view manager that "owns" the view. The view does NOT * hold a reference to the view manager * @param aBounds initial bounds for view - * @param aParent parent view + * @param aParent intended parent for view. this is not actually set in the + * nsIView through this method. it is only used by the initialization + * code to walk up the view tree, if necessary, to find resources. * @param aWindowIID IID for Widget type that this view * should have associated with it. if nsull, then no * width will be created for this view @@ -90,7 +92,6 @@ public: * @param aNative native window that will be used as parent of * aWindowIID. if nsnull, then parent will be derived from * parent view and it's ancestors - * @param aZIndex initial z depth of view * @param aCilpRect initial clip rect of view * @param aOpacity initial opacity of view * @param aVisibilityFlag initial visibility state of view @@ -98,11 +99,10 @@ public: */ NS_IMETHOD Init(nsIViewManager* aManager, const nsRect &aBounds, - nsIView *aParent, + const nsIView *aParent, const nsIID *aWindowIID = nsnull, nsWidgetInitData *aWidgetInitData = nsnull, nsNativeWidget aNative = nsnull, - PRInt32 aZIndex = 0, const nsViewClip *aClip = nsnull, float aOpacity = 1.0f, nsViewVisibility aVisibilityFlag = nsViewVisibility_kShow) = 0; diff --git a/mozilla/view/src/nsScrollingView.cpp b/mozilla/view/src/nsScrollingView.cpp index 4adc8c016bd..70ded15c987 100644 --- a/mozilla/view/src/nsScrollingView.cpp +++ b/mozilla/view/src/nsScrollingView.cpp @@ -398,11 +398,10 @@ nsrefcnt nsScrollingView :: Release() NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, const nsRect &aBounds, - nsIView *aParent, + const nsIView *aParent, const nsIID *aWindowIID, nsWidgetInitData *aWidgetInitData, nsNativeWidget aNative, - PRInt32 aZIndex, const nsViewClip *aClip, float aOpacity, nsViewVisibility aVisibilityFlag) @@ -410,7 +409,7 @@ NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, nsresult rv; rv = nsView :: Init(aManager, aBounds, aParent, aWindowIID, aWidgetInitData, - aNative, aZIndex, aClip, aOpacity, aVisibilityFlag); + aNative, aClip, aOpacity, aVisibilityFlag); if (rv == NS_OK) { @@ -427,7 +426,7 @@ NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, // of 0.0f (completely transparent) // XXX The clip widget should be created on demand only... rv = mClipView->Init(mViewManager, aBounds, this, &kWidgetCID, nsnull, - mWindow ? nsnull : aNative, -1, nsnull, 0.0f); + mWindow ? nsnull : aNative, nsnull, 0.0f); mViewManager->InsertChild(this, mClipView, -1); } @@ -446,7 +445,7 @@ NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, trect.y = aBounds.y + aBounds.YMost() - trect.height; rv = mCornerView->Init(mViewManager, trect, this, nsnull, nsnull, nsnull, - -1, nsnull, 1.0f, nsViewVisibility_kHide); + nsnull, 1.0f, nsViewVisibility_kHide); mViewManager->InsertChild(this, mCornerView, -1); } @@ -466,7 +465,7 @@ NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, static NS_DEFINE_IID(kCScrollbarIID, NS_VERTSCROLLBAR_CID); rv = mVScrollBarView->Init(mViewManager, trect, this, &kCScrollbarIID, nsnull, - mWindow ? nsnull : aNative, -3); + mWindow ? nsnull : aNative); mViewManager->InsertChild(this, mVScrollBarView, -3); } @@ -486,7 +485,7 @@ NS_IMETHODIMP nsScrollingView :: Init(nsIViewManager* aManager, static NS_DEFINE_IID(kCHScrollbarIID, NS_HORZSCROLLBAR_CID); rv = mHScrollBarView->Init(mViewManager, trect, this, &kCHScrollbarIID, nsnull, - mWindow ? nsnull : aNative, -3); + mWindow ? nsnull : aNative); mViewManager->InsertChild(this, mHScrollBarView, -3); } diff --git a/mozilla/view/src/nsScrollingView.h b/mozilla/view/src/nsScrollingView.h index 29d516f7007..5efb309054a 100644 --- a/mozilla/view/src/nsScrollingView.h +++ b/mozilla/view/src/nsScrollingView.h @@ -37,11 +37,10 @@ public: NS_IMETHOD Init(nsIViewManager* aManager, const nsRect &aBounds, - nsIView *aParent, + const nsIView *aParent, const nsIID *aWindowIID = nsnull, nsWidgetInitData *aWidgetInitData = nsnull, nsNativeWidget aNative = nsnull, - PRInt32 aZIndex = 0, const nsViewClip *aClip = nsnull, float aOpacity = 1.0f, nsViewVisibility aVisibilityFlag = nsViewVisibility_kShow); diff --git a/mozilla/view/src/nsView.cpp b/mozilla/view/src/nsView.cpp index 36719ccde8a..ce8a07bd5fd 100644 --- a/mozilla/view/src/nsView.cpp +++ b/mozilla/view/src/nsView.cpp @@ -189,11 +189,10 @@ nsIView* nsView::GetViewFor(nsIWidget* aWidget) NS_IMETHODIMP nsView :: Init(nsIViewManager* aManager, const nsRect &aBounds, - nsIView *aParent, + const nsIView *aParent, const nsCID *aWindowCIID, nsWidgetInitData *aWidgetInitData, nsNativeWidget aNative, - PRInt32 aZIndex, const nsViewClip *aClip, float aOpacity, nsViewVisibility aVisibilityFlag) @@ -220,13 +219,12 @@ NS_IMETHODIMP nsView :: Init(nsIViewManager* aManager, } mOpacity = aOpacity; - mZindex = aZIndex; - - // assign the parent view - SetParent(aParent); SetBounds(aBounds); + //temporarily set it... + SetParent((nsIView *)aParent); + // check if a real window has to be created if (aWindowCIID) { @@ -257,6 +255,9 @@ NS_IMETHODIMP nsView :: Init(nsIViewManager* aManager, SetVisibility(aVisibilityFlag); + //clear this again... + SetParent(nsnull); + return NS_OK; } diff --git a/mozilla/view/src/nsView.h b/mozilla/view/src/nsView.h index 4e74ad14a98..59af07b7ae5 100644 --- a/mozilla/view/src/nsView.h +++ b/mozilla/view/src/nsView.h @@ -47,11 +47,10 @@ public: // nsIView NS_IMETHOD Init(nsIViewManager* aManager, const nsRect &aBounds, - nsIView *aParent, + const nsIView *aParent, const nsCID *aWindowIID = nsnull, nsWidgetInitData *aWidgetInitData = nsnull, nsNativeWidget aNative = nsnull, - PRInt32 aZIndex = 0, const nsViewClip *aClip = nsnull, float aOpacity = 1.0f, nsViewVisibility aVisibilityFlag = nsViewVisibility_kShow);