summaryrefslogtreecommitdiffstats
path: root/WebKit/android/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/android/plugins')
-rw-r--r--WebKit/android/plugins/ANPSoundInterface.cpp1
-rw-r--r--WebKit/android/plugins/ANPSurfaceInterface.cpp6
-rw-r--r--WebKit/android/plugins/PluginWidgetAndroid.cpp24
-rw-r--r--WebKit/android/plugins/PluginWidgetAndroid.h1
4 files changed, 23 insertions, 9 deletions
diff --git a/WebKit/android/plugins/ANPSoundInterface.cpp b/WebKit/android/plugins/ANPSoundInterface.cpp
index 2e56e24..8e31d69 100644
--- a/WebKit/android/plugins/ANPSoundInterface.cpp
+++ b/WebKit/android/plugins/ANPSoundInterface.cpp
@@ -27,6 +27,7 @@
#include "config.h"
#include "android_npapi.h"
+#include "SkTypes.h"
#include "media/AudioTrack.h"
struct ANPAudioTrack {
diff --git a/WebKit/android/plugins/ANPSurfaceInterface.cpp b/WebKit/android/plugins/ANPSurfaceInterface.cpp
index 02ff77e..6104910 100644
--- a/WebKit/android/plugins/ANPSurfaceInterface.cpp
+++ b/WebKit/android/plugins/ANPSurfaceInterface.cpp
@@ -25,17 +25,17 @@
// must include config.h first for webkit to fiddle with new/delete
#include "config.h"
+#include "ANPSurface_npapi.h"
#include "PluginView.h"
#include "PluginWidgetAndroid.h"
#include "SkANP.h"
+#include "android_graphics.h"
+#include <JNIUtility.h>
#include <ui/Surface.h>
#include <ui/Rect.h>
#include <ui/Region.h>
-#include "jni_utility.h"
#include <utils/RefBase.h>
-#include "android_graphics.h"
-#include "ANPSurface_npapi.h"
using namespace android;
diff --git a/WebKit/android/plugins/PluginWidgetAndroid.cpp b/WebKit/android/plugins/PluginWidgetAndroid.cpp
index 942e94d..9dd9154 100644
--- a/WebKit/android/plugins/PluginWidgetAndroid.cpp
+++ b/WebKit/android/plugins/PluginWidgetAndroid.cpp
@@ -24,10 +24,15 @@
*/
#include "config.h"
-#include "android_graphics.h"
+#include "PluginWidgetAndroid.h"
+
+#if ENABLE(TOUCH_EVENTS)
+#include "ChromeClient.h"
+#endif
#include "Document.h"
#include "Element.h"
#include "Frame.h"
+#include "Page.h"
#include "PluginPackage.h"
#include "PluginView.h"
#include "PluginWidgetAndroid.h"
@@ -36,7 +41,8 @@
#include "SkFlipPixelRef.h"
#include "SkString.h"
#include "WebViewCore.h"
-#include "jni_utility.h"
+#include "android_graphics.h"
+#include <JNIUtility.h>
#define PLUGIN_DEBUG_LOCAL 0 // controls the printing of log messages
#define DEBUG_VISIBLE_RECTS 1 // temporary debug printfs and fixes
@@ -255,12 +261,18 @@ void PluginWidgetAndroid::updateEventFlags(ANPEventFlags flags) {
}
Document* doc = m_pluginView->getParentFrame()->document();
+#if ENABLE(TOUCH_EVENTS)
if((m_eventFlags ^ flags) & kTouch_ANPEventFlag) {
- if(flags & kTouch_ANPEventFlag)
- doc->addTouchEventListener(m_pluginView->getElement());
- else
- doc->removeTouchEventListener(m_pluginView->getElement());
+ if (flags & kTouch_ANPEventFlag) {
+ if (Page* page = doc->page())
+ page->chrome()->client()->needTouchEvents(true, false);
+ doc->addListenerTypeIfNeeded(eventNames().touchstartEvent);
+ } else {
+ if (Page* page = doc->page())
+ page->chrome()->client()->needTouchEvents(false, false);
+ }
}
+#endif
m_eventFlags = flags;
}
diff --git a/WebKit/android/plugins/PluginWidgetAndroid.h b/WebKit/android/plugins/PluginWidgetAndroid.h
index db70912..ae6fcb7 100644
--- a/WebKit/android/plugins/PluginWidgetAndroid.h
+++ b/WebKit/android/plugins/PluginWidgetAndroid.h
@@ -28,6 +28,7 @@
#include "android_npapi.h"
#include "IntPoint.h"
+#include "IntRect.h"
#include "SkRect.h"
#include <jni.h>