Bug 899931 - Part e: Cleanup nsListControlFrame::ToggleOptionSelectedFromFrame; r=dzbarsky

This commit is contained in:
Ms2ger 2013-08-02 09:07:32 +02:00
Родитель 2a836c0301
Коммит 43e918fa21
1 изменённых файлов: 5 добавлений и 18 удалений

Просмотреть файл

@ -1359,29 +1359,16 @@ nsListControlFrame::SetOptionsSelectedFromFrame(int32_t aStartIndex,
bool
nsListControlFrame::ToggleOptionSelectedFromFrame(int32_t aIndex)
{
nsCOMPtr<nsIDOMHTMLOptionsCollection> options = GetOptions(mContent);
NS_ASSERTION(options, "No options");
if (!options) {
return false;
}
nsCOMPtr<nsIDOMHTMLOptionElement> option = GetOption(options, aIndex);
NS_ASSERTION(option, "No option");
if (!option) {
return false;
}
nsRefPtr<dom::HTMLOptionElement> option =
GetOption(static_cast<uint32_t>(aIndex));
NS_ENSURE_TRUE(option, false);
bool value = false;
#ifdef DEBUG
nsresult rv =
#endif
option->GetSelected(&value);
NS_ASSERTION(NS_SUCCEEDED(rv), "GetSelected failed");
nsRefPtr<dom::HTMLSelectElement> selectElement =
dom::HTMLSelectElement::FromContent(mContent);
return selectElement->SetOptionsSelectedByIndex(aIndex,
aIndex,
!value,
!option->Selected(),
false,
false,
true);