diff --git a/mozilla/layout/forms/nsListControlFrame.cpp b/mozilla/layout/forms/nsListControlFrame.cpp index e741cd388b1..4062ee5a361 100644 --- a/mozilla/layout/forms/nsListControlFrame.cpp +++ b/mozilla/layout/forms/nsListControlFrame.cpp @@ -108,6 +108,15 @@ nsListControlFrame::nsListControlFrame() //--------------------------------------------------------- nsListControlFrame::~nsListControlFrame() { + // if list is dropped down + // make sure it gets rolled up + if (IsInDropDownMode()) { + PRBool isDown; + mComboboxFrame->IsDroppedDown(&isDown); + if (isDown) { + mComboboxFrame->ShowDropDown(PR_FALSE); + } + } nsCOMPtr reciever(do_QueryInterface(mContent)); diff --git a/mozilla/layout/html/forms/src/nsListControlFrame.cpp b/mozilla/layout/html/forms/src/nsListControlFrame.cpp index e741cd388b1..4062ee5a361 100644 --- a/mozilla/layout/html/forms/src/nsListControlFrame.cpp +++ b/mozilla/layout/html/forms/src/nsListControlFrame.cpp @@ -108,6 +108,15 @@ nsListControlFrame::nsListControlFrame() //--------------------------------------------------------- nsListControlFrame::~nsListControlFrame() { + // if list is dropped down + // make sure it gets rolled up + if (IsInDropDownMode()) { + PRBool isDown; + mComboboxFrame->IsDroppedDown(&isDown); + if (isDown) { + mComboboxFrame->ShowDropDown(PR_FALSE); + } + } nsCOMPtr reciever(do_QueryInterface(mContent));