From 3d4e0155f9f6c5380ace37dc207f0a21da2cbbf9 Mon Sep 17 00:00:00 2001 From: "rods%netscape.com" Date: Wed, 8 Sep 1999 19:54:30 +0000 Subject: [PATCH] Fixed selection in lists git-svn-id: svn://10.0.0.236/trunk@46384 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/layout/forms/nsListControlFrame.cpp | 10 +++++++--- mozilla/layout/html/forms/src/nsListControlFrame.cpp | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/mozilla/layout/forms/nsListControlFrame.cpp b/mozilla/layout/forms/nsListControlFrame.cpp index 8c263ba46db..9ac63f16706 100644 --- a/mozilla/layout/forms/nsListControlFrame.cpp +++ b/mozilla/layout/forms/nsListControlFrame.cpp @@ -1887,8 +1887,8 @@ nsListControlFrame::MouseUp(nsIDOMEvent* aMouseEvent) PRBool optionIsDisabled; if (NS_OK == IsTargetOptionDisabled(optionIsDisabled)) { if (optionIsDisabled) { - mSelectedIndex = mSelectedIndexWhenPoppedDown; if (IsInDropDownMode() == PR_TRUE && mComboboxFrame) { + mSelectedIndex = mSelectedIndexWhenPoppedDown; mComboboxFrame->ListWasSelected(mPresContext); } return NS_OK; @@ -1969,8 +1969,12 @@ nsListControlFrame::MouseDown(nsIDOMEvent* aMouseEvent) // NS_ERROR_FAILURE is returned is it isn't over an option PRBool optionIsDisabled; if (NS_OK == IsTargetOptionDisabled(optionIsDisabled)) { - mSelectedIndex = mSelectedIndexWhenPoppedDown; - return NS_OK; + if (optionIsDisabled) { + if (IsInDropDownMode() == PR_TRUE) { + mSelectedIndex = mSelectedIndexWhenPoppedDown; + } + return NS_OK; + } } PRInt32 oldIndex; diff --git a/mozilla/layout/html/forms/src/nsListControlFrame.cpp b/mozilla/layout/html/forms/src/nsListControlFrame.cpp index 8c263ba46db..9ac63f16706 100644 --- a/mozilla/layout/html/forms/src/nsListControlFrame.cpp +++ b/mozilla/layout/html/forms/src/nsListControlFrame.cpp @@ -1887,8 +1887,8 @@ nsListControlFrame::MouseUp(nsIDOMEvent* aMouseEvent) PRBool optionIsDisabled; if (NS_OK == IsTargetOptionDisabled(optionIsDisabled)) { if (optionIsDisabled) { - mSelectedIndex = mSelectedIndexWhenPoppedDown; if (IsInDropDownMode() == PR_TRUE && mComboboxFrame) { + mSelectedIndex = mSelectedIndexWhenPoppedDown; mComboboxFrame->ListWasSelected(mPresContext); } return NS_OK; @@ -1969,8 +1969,12 @@ nsListControlFrame::MouseDown(nsIDOMEvent* aMouseEvent) // NS_ERROR_FAILURE is returned is it isn't over an option PRBool optionIsDisabled; if (NS_OK == IsTargetOptionDisabled(optionIsDisabled)) { - mSelectedIndex = mSelectedIndexWhenPoppedDown; - return NS_OK; + if (optionIsDisabled) { + if (IsInDropDownMode() == PR_TRUE) { + mSelectedIndex = mSelectedIndexWhenPoppedDown; + } + return NS_OK; + } } PRInt32 oldIndex;