From ee4c86d1990a9e26277a6948e7027ad8d525ebfa Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Thu, 18 Oct 2012 10:55:06 +0200 Subject: Imported WebKit commit 795dcd25a9649fccaf1c9b685f6e2ffedaf7e620 (http://svn.webkit.org/repository/webkit/trunk@131718) New snapshot that includes the return of -fkeep-memory at link time to reduce memory pressure as well as modularized documentation --- Source/WebCore/page/DragController.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Source/WebCore/page/DragController.cpp') diff --git a/Source/WebCore/page/DragController.cpp b/Source/WebCore/page/DragController.cpp index c744c189e..2e0aafb96 100644 --- a/Source/WebCore/page/DragController.cpp +++ b/Source/WebCore/page/DragController.cpp @@ -48,6 +48,7 @@ #include "HTMLAnchorElement.h" #include "HTMLInputElement.h" #include "HTMLNames.h" +#include "HTMLPlugInElement.h" #include "HitTestRequest.h" #include "HitTestResult.h" #include "Image.h" @@ -552,7 +553,11 @@ bool DragController::canProcessDrag(DragData* dragData) if (dragData->containsFiles() && asFileInput(result.innerNonSharedNode())) return true; - if (!result.innerNonSharedNode()->rendererIsEditable()) + if (result.innerNonSharedNode()->isPluginElement()) { + HTMLPlugInElement* plugin = static_cast(result.innerNonSharedNode()); + if (!plugin->canProcessDrag() && !result.innerNonSharedNode()->rendererIsEditable()) + return false; + } else if (!result.innerNonSharedNode()->rendererIsEditable()) return false; if (m_didInitiateDrag && m_documentUnderMouse == m_dragInitiator && result.isSelected()) -- cgit v1.2.1