Update our <select> to work with the latest webkit.

Remove a webkit change that makes some functions public for our
use.  Instead, use a pointer to a base class where those functions
are already public.  In one case where a function has been removed,
call another function which behaves the same.
diff --git a/WebCore/html/HTMLSelectElement.h b/WebCore/html/HTMLSelectElement.h
index df7832c..9ecd81c 100644
--- a/WebCore/html/HTMLSelectElement.h
+++ b/WebCore/html/HTMLSelectElement.h
@@ -105,15 +105,8 @@
     virtual RenderObject* createRenderer(RenderArena*, RenderStyle *);
     virtual bool appendFormData(FormDataList&, bool);
 
-#if PLATFORM(ANDROID)
-public:
     virtual int listToOptionIndex(int listIndex) const;
     virtual int optionToListIndex(int optionIndex) const;
-private:
-#else
-    virtual int listToOptionIndex(int listIndex) const;
-    virtual int optionToListIndex(int optionIndex) const;
-#endif
 
     virtual void reset();
 
diff --git a/WebKit/android/jni/WebViewCore.cpp b/WebKit/android/jni/WebViewCore.cpp
index ebe5d23..8b8d315 100644
--- a/WebKit/android/jni/WebViewCore.cpp
+++ b/WebKit/android/jni/WebViewCore.cpp
@@ -1449,11 +1449,12 @@
         if (!m_select || !CacheBuilder::validNode(m_viewImpl->m_mainFrame,
                 m_frame, m_select))
             return;
-        // FIXME: scroggo, listToOptionIndex was made private in HTMLSelectElement.
-        int optionIndex = m_select->listToOptionIndex(index);
+        // Use a pointer to HTMLSelectElement's superclass, where
+        // listToOptionIndex is public.
+        SelectElement* selectElement = m_select;
+        int optionIndex = selectElement->listToOptionIndex(index);
         m_select->setSelectedIndex(optionIndex, true, false);
-        // FIXME: scroggo, onChange is removed from HTMLSelectElement.
-        // m_select->onChange();
+        m_select->dispatchFormControlChangeEvent();
         m_viewImpl->contentInvalidate(m_select->getRect());
     }
 
@@ -1492,8 +1493,7 @@
                     option->setSelectedState(false);
             }
         }
-        // FIXME scroggo, onChange is removed from HTMLSelectElement
-        // m_select->onChange();
+        m_select->dispatchFormControlChangeEvent();
         m_viewImpl->contentInvalidate(m_select->getRect());
     }
 private:
@@ -1697,9 +1697,12 @@
                 }
             }
             WebCoreReply* reply = new ListBoxReply(select, select->document()->frame(), this);
+            // Use a pointer to HTMLSelectElement's superclass, where
+            // optionToListIndex is public.
+            SelectElement* selectElement = select;
             listBoxRequest(reply, names.begin(), size, enabledArray.begin(), enabledArray.count(),
                     multiple, selectedArray.begin(), multiple ? selectedArray.count() :
-                    select->optionToListIndex(select->selectedIndex()));
+                    selectElement->optionToListIndex(select->selectedIndex()));
             return true;
         }
     }