Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 2 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
| 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 4 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 4 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 5 * (C) 2001 Dirk Mueller (mueller@kde.org) | 5 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. |
| 7 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 7 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 8 * Copyright (C) 2010 Google Inc. All rights reserved. | 8 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 9 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) | 9 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) |
| 10 * | 10 * |
| (...skipping 1187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1198 // the event as handled. | 1198 // the event as handled. |
| 1199 if (!renderer() || !renderer()->isMenuList() || isDisabledFormControl()) | 1199 if (!renderer() || !renderer()->isMenuList() || isDisabledFormControl()) |
| 1200 return; | 1200 return; |
| 1201 // Save the selection so it can be compared to the new selection | 1201 // Save the selection so it can be compared to the new selection |
| 1202 // when dispatching change events during selectOption, which | 1202 // when dispatching change events during selectOption, which |
| 1203 // gets called from RenderMenuList::valueChanged, which gets called | 1203 // gets called from RenderMenuList::valueChanged, which gets called |
| 1204 // after the user makes a selection from the menu. | 1204 // after the user makes a selection from the menu. |
| 1205 saveLastSelection(); | 1205 saveLastSelection(); |
| 1206 if (RenderMenuList* menuList = toRenderMenuList(renderer())) | 1206 if (RenderMenuList* menuList = toRenderMenuList(renderer())) |
| 1207 menuList->showPopup(); | 1207 menuList->showPopup(); |
| 1208 int index = selectedIndex(); | |
| 1209 ASSERT(index >= 0); | |
| 1210 ASSERT_WITH_SECURITY_IMPLICATION(index < static_cast<int>(listItems().size() )); | |
| 1211 setSelectedIndex(index); | |
|
tkent
2014/12/15 08:56:25
Hmm, setSelectedIndex(selectedIndex()) looks to do
keishi
2014/12/15 09:01:21
Yup
| |
| 1212 event->setDefaultHandled(); | 1208 event->setDefaultHandled(); |
| 1213 return; | 1209 return; |
| 1214 } | 1210 } |
| 1215 | 1211 |
| 1216 bool HTMLSelectElement::shouldOpenPopupForKeyDownEvent(KeyboardEvent* keyEvent) | 1212 bool HTMLSelectElement::shouldOpenPopupForKeyDownEvent(KeyboardEvent* keyEvent) |
| 1217 { | 1213 { |
| 1218 const String& keyIdentifier = keyEvent->keyIdentifier(); | 1214 const String& keyIdentifier = keyEvent->keyIdentifier(); |
| 1219 RenderTheme& renderTheme = RenderTheme::theme(); | 1215 RenderTheme& renderTheme = RenderTheme::theme(); |
| 1220 | 1216 |
| 1221 if (isSpatialNavigationEnabled(document().frame())) | 1217 if (isSpatialNavigationEnabled(document().frame())) |
| (...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1774 int focusedIndex = activeSelectionEndListIndex(); | 1770 int focusedIndex = activeSelectionEndListIndex(); |
| 1775 if (focusedIndex < 0) | 1771 if (focusedIndex < 0) |
| 1776 focusedIndex = firstSelectableListIndex(); | 1772 focusedIndex = firstSelectableListIndex(); |
| 1777 if (focusedIndex < 0) | 1773 if (focusedIndex < 0) |
| 1778 return nullptr; | 1774 return nullptr; |
| 1779 HTMLElement* focused = listItems()[focusedIndex]; | 1775 HTMLElement* focused = listItems()[focusedIndex]; |
| 1780 return isHTMLOptionElement(focused) ? toHTMLOptionElement(focused) : nullptr ; | 1776 return isHTMLOptionElement(focused) ? toHTMLOptionElement(focused) : nullptr ; |
| 1781 } | 1777 } |
| 1782 | 1778 |
| 1783 } // namespace | 1779 } // namespace |
| OLD | NEW |