diff --git a/mozilla/layout/generic/nsContainerFrame.cpp b/mozilla/layout/generic/nsContainerFrame.cpp index 8e985b22636..f29595a303a 100644 --- a/mozilla/layout/generic/nsContainerFrame.cpp +++ b/mozilla/layout/generic/nsContainerFrame.cpp @@ -577,14 +577,15 @@ nsContainerFrame::SyncFrameViewAfterReflow(nsIPresContext* aPresContext, NS_RELEASE(widget); } else { - // If it's a scroll frame, then hide the view. This means that + // If it's a scroll frame or a list control frame which is derived from the scrollframe, + // then hide the view. This means that // child elements can't override their parent's visibility, but // it's not practical to leave it visible in all cases because // the scrollbars will be showing nsIAtom* frameType; aFrame->GetFrameType(&frameType); - if (frameType == nsLayoutAtoms::scrollFrame) { + if (frameType == nsLayoutAtoms::scrollFrame || frameType == nsLayoutAtoms::listControlFrame) { viewIsVisible = PR_FALSE; } else { diff --git a/mozilla/layout/html/base/src/nsContainerFrame.cpp b/mozilla/layout/html/base/src/nsContainerFrame.cpp index 8e985b22636..f29595a303a 100644 --- a/mozilla/layout/html/base/src/nsContainerFrame.cpp +++ b/mozilla/layout/html/base/src/nsContainerFrame.cpp @@ -577,14 +577,15 @@ nsContainerFrame::SyncFrameViewAfterReflow(nsIPresContext* aPresContext, NS_RELEASE(widget); } else { - // If it's a scroll frame, then hide the view. This means that + // If it's a scroll frame or a list control frame which is derived from the scrollframe, + // then hide the view. This means that // child elements can't override their parent's visibility, but // it's not practical to leave it visible in all cases because // the scrollbars will be showing nsIAtom* frameType; aFrame->GetFrameType(&frameType); - if (frameType == nsLayoutAtoms::scrollFrame) { + if (frameType == nsLayoutAtoms::scrollFrame || frameType == nsLayoutAtoms::listControlFrame) { viewIsVisible = PR_FALSE; } else { diff --git a/mozilla/view/public/nsIScrollableView.h b/mozilla/view/public/nsIScrollableView.h index 6e17502fdba..cd12bc930b6 100644 --- a/mozilla/view/public/nsIScrollableView.h +++ b/mozilla/view/public/nsIScrollableView.h @@ -176,11 +176,6 @@ public: NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible, PRBool *aHorizontalVisible) const = 0; - /** - * Set the visible (disables the scrollbars when the are hidden) - */ - NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible, - PRBool aHorizontalVisible) = 0; /** * Set the properties describing how scrolling can be performed * in this scrollable. diff --git a/mozilla/view/src/nsScrollPortView.cpp b/mozilla/view/src/nsScrollPortView.cpp index 06119485ff5..4e1e4ffa69a 100644 --- a/mozilla/view/src/nsScrollPortView.cpp +++ b/mozilla/view/src/nsScrollPortView.cpp @@ -345,15 +345,6 @@ NS_IMETHODIMP nsScrollPortView::GetScrollbarVisibility(PRBool *aVerticalVisible, return NS_OK; } -NS_IMETHODIMP nsScrollPortView::SetScrollbarVisibility(PRBool aVerticalVisible, - PRBool aHorizontalVisible) -{ - NS_WARNING("Attempt to set scrollbars visibility this is not xp!"); - return NS_OK; -} - - - void nsScrollPortView::AdjustChildWidgets(nsScrollPortView *aScrolling, nsView *aView, nscoord aDx, nscoord aDy, float scale) { diff --git a/mozilla/view/src/nsScrollPortView.h b/mozilla/view/src/nsScrollPortView.h index efd13313153..f683393640c 100644 --- a/mozilla/view/src/nsScrollPortView.h +++ b/mozilla/view/src/nsScrollPortView.h @@ -75,8 +75,6 @@ public: NS_IMETHOD GetControlInsets(nsMargin &aInsets) const; NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible, PRBool *aHorizontalVisible) const; - NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible, - PRBool aHorizontalVisible); NS_IMETHOD SetScrollProperties(PRUint32 aProperties); NS_IMETHOD GetScrollProperties(PRUint32 *aProperties); NS_IMETHOD SetLineHeight(nscoord aHeight); diff --git a/mozilla/view/src/nsScrollingView.cpp b/mozilla/view/src/nsScrollingView.cpp index b28d3ec4a28..c35e1e8a0af 100644 --- a/mozilla/view/src/nsScrollingView.cpp +++ b/mozilla/view/src/nsScrollingView.cpp @@ -1389,17 +1389,6 @@ NS_IMETHODIMP nsScrollingView::GetScrollbarVisibility(PRBool *aVerticalVisible, return NS_OK; } -// must also disable them or they get turned back on -NS_IMETHODIMP nsScrollingView::SetScrollbarVisibility(PRBool aVerticalVisible, - PRBool aHorizontalVisible) -{ - ((ScrollBarView *)mHScrollBarView)->SetEnabled(aHorizontalVisible); - ((ScrollBarView *)mVScrollBarView)->SetEnabled(aVerticalVisible); - mHScrollBarView->SetVisibility(aHorizontalVisible?nsViewVisibility_kShow:nsViewVisibility_kHide); - mVScrollBarView->SetVisibility(aVerticalVisible?nsViewVisibility_kShow:nsViewVisibility_kHide); - return NS_OK; -} - void nsScrollingView::AdjustChildWidgets(nsScrollingView *aScrolling, nsView *aView, nscoord aDx, nscoord aDy, float scale) { diff --git a/mozilla/view/src/nsScrollingView.h b/mozilla/view/src/nsScrollingView.h index 43024eef598..2a9bb667829 100644 --- a/mozilla/view/src/nsScrollingView.h +++ b/mozilla/view/src/nsScrollingView.h @@ -89,8 +89,6 @@ public: NS_IMETHOD GetControlInsets(nsMargin &aInsets) const; NS_IMETHOD GetScrollbarVisibility(PRBool *aVerticalVisible, PRBool *aHorizontalVisible) const; - NS_IMETHOD SetScrollbarVisibility(PRBool aVerticalVisible, - PRBool aHorizontalVisible); NS_IMETHOD SetScrollProperties(PRUint32 aProperties); NS_IMETHOD GetScrollProperties(PRUint32 *aProperties); NS_IMETHOD SetLineHeight(nscoord aHeight);