WebViewCore fix
diff --git a/WebCore/platform/PlatformKeyboardEvent.h b/WebCore/platform/PlatformKeyboardEvent.h
index 248f399..1499ac5 100644
--- a/WebCore/platform/PlatformKeyboardEvent.h
+++ b/WebCore/platform/PlatformKeyboardEvent.h
@@ -140,7 +140,8 @@
 #endif
 
 #if PLATFORM(ANDROID)
-        PlatformKeyboardEvent(int keyCode, UChar32 unichar, Type type, int repeatCount, ModifierKey modifier);
+        PlatformKeyboardEvent(int keyCode, UChar32 unichar, int repeatCount,
+                    bool down, bool cap, bool alt, bool sym);
         UChar32 unichar() const { return m_unichar; }
         int repeatCount() const { return m_repeatCount; }
 #endif
diff --git a/WebCore/platform/android/KeyEventAndroid.cpp b/WebCore/platform/android/KeyEventAndroid.cpp
index ab848bd..998c781 100644
--- a/WebCore/platform/android/KeyEventAndroid.cpp
+++ b/WebCore/platform/android/KeyEventAndroid.cpp
@@ -211,9 +211,8 @@
 }
 
 PlatformKeyboardEvent::PlatformKeyboardEvent(int keyCode, UChar32 unichar,
-                                             Type type, int repeatCount,
-                                             ModifierKey mods)
-    : m_type(type)
+        int repeatCount, bool down, bool cap, bool alt, bool sym)
+    : m_type(down ? KeyDown : KeyUp)
     , m_text(singleCharacterString(unichar))
     , m_unmodifiedText(singleCharacterString(unichar))
     , m_keyIdentifier(keyIdentifierForAndroidKeyCode(keyCode))
@@ -221,10 +220,10 @@
     , m_windowsVirtualKeyCode(windowsKeyCodeForKeyEvent(keyCode))
     , m_nativeVirtualKeyCode(keyCode)
     , m_isKeypad(false)
-    , m_shiftKey((mods & ShiftKey))
-    , m_ctrlKey((mods & CtrlKey))
-    , m_altKey((mods & AltKey))
-    , m_metaKey((mods & MetaKey))
+    , m_shiftKey(cap ? ShiftKey : 0)
+    , m_ctrlKey(sym ? CtrlKey : 0)
+    , m_altKey(alt ? AltKey : 0)
+    , m_metaKey(0)
     // added for android
     , m_repeatCount(repeatCount)
     , m_unichar(unichar)
diff --git a/WebKit/android/jni/WebViewCore.cpp b/WebKit/android/jni/WebViewCore.cpp
index 973e317..8e56fcc 100644
--- a/WebKit/android/jni/WebViewCore.cpp
+++ b/WebKit/android/jni/WebViewCore.cpp
@@ -1639,7 +1639,7 @@
         // listToOptionIndex is public.
         SelectElement* selectElement = m_select;
         int optionIndex = selectElement->listToOptionIndex(index);
-        m_select->setSelectedIndex(optionIndex, true, false);
+        m_select->setSelectedIndex(optionIndex, true);
         m_select->dispatchFormControlChangeEvent();
         m_viewImpl->contentInvalidate(m_select->getRect());
     }
@@ -2558,7 +2558,7 @@
 #ifdef ANDROID_INSTRUMENT
     TimeCounterAuto counter(TimeCounter::WebViewCoreTimeCounter);
 #endif
-    WebCore::FrameLoader::registerURLSchemeAsLocal(to_string(env, scheme));
+    WebCore::SecurityOrigin::registerURLSchemeAsLocal(to_string(env, scheme));
 }
 
 static void ClearContent(JNIEnv *env, jobject obj)