RenderTheme does not need to be per-page
[WebKit-https.git] / Source / WebCore / html / HTMLSelectElement.cpp
index f19756b..f4c6143 100644 (file)
@@ -193,7 +193,7 @@ void HTMLSelectElement::listBoxSelectItem(int listIndex, bool allowMultiplySelec
 bool HTMLSelectElement::usesMenuList() const
 {
 #if !PLATFORM(IOS)
-    if (RenderTheme::themeForPage(document().page())->delegatesMenuListRendering())
+    if (RenderTheme::singleton().delegatesMenuListRendering())
         return true;
 
     return !m_multiple && m_size <= 1;
@@ -1085,7 +1085,7 @@ void HTMLSelectElement::reset()
 
 bool HTMLSelectElement::platformHandleKeydownEvent(KeyboardEvent* event)
 {
-    if (!RenderTheme::themeForPage(document().page())->popsMenuByArrowKeys())
+    if (!RenderTheme::singleton().popsMenuByArrowKeys())
         return false;
 
     if (!isSpatialNavigationEnabled(document().frame())) {
@@ -1119,8 +1119,6 @@ void HTMLSelectElement::menuListDefaultEventHandler(Event& event)
     ASSERT(renderer());
     ASSERT(renderer()->isMenuList());
 
-    RefPtr<RenderTheme> renderTheme = RenderTheme::themeForPage(document().page());
-
     if (event.type() == eventNames().keydownEvent) {
         if (!is<KeyboardEvent>(event))
             return;
@@ -1188,7 +1186,7 @@ void HTMLSelectElement::menuListDefaultEventHandler(Event& event)
             return;
         }
 
-        if (renderTheme->popsMenuBySpaceOrReturn()) {
+        if (RenderTheme::singleton().popsMenuBySpaceOrReturn()) {
             if (keyCode == ' ' || keyCode == '\r') {
                 focus();
 
@@ -1205,7 +1203,7 @@ void HTMLSelectElement::menuListDefaultEventHandler(Event& event)
                 downcast<RenderMenuList>(*renderer).showPopup();
                 handled = true;
             }
-        } else if (renderTheme->popsMenuByArrowKeys()) {
+        } else if (RenderTheme::singleton().popsMenuByArrowKeys()) {
             if (keyCode == ' ') {
                 focus();