Chromium Code Reviews| Index: chrome/browser/guest_view/guest_view_base.cc |
| diff --git a/chrome/browser/guest_view/guest_view_base.cc b/chrome/browser/guest_view/guest_view_base.cc |
| index 122833cd63eb067971eea24bf36f2e5e4e29af2c..884903de9223f399cb4db5493d9422455d8317f9 100644 |
| --- a/chrome/browser/guest_view/guest_view_base.cc |
| +++ b/chrome/browser/guest_view/guest_view_base.cc |
| @@ -5,13 +5,16 @@ |
| #include "chrome/browser/guest_view/guest_view_base.h" |
| #include "base/lazy_instance.h" |
| +#include "base/strings/utf_string_conversions.h" |
| #include "chrome/browser/guest_view/ad_view/ad_view_guest.h" |
| #include "chrome/browser/guest_view/guest_view_constants.h" |
| #include "chrome/browser/guest_view/guest_view_manager.h" |
| #include "chrome/browser/guest_view/web_view/web_view_guest.h" |
| #include "chrome/browser/profiles/profile.h" |
| #include "chrome/common/content_settings.h" |
| +#include "content/public/browser/render_frame_host.h" |
| #include "content/public/browser/render_process_host.h" |
| +#include "content/public/browser/render_view_host.h" |
| #include "content/public/browser/web_contents.h" |
| #include "content/public/common/url_constants.h" |
| #include "extensions/browser/event_router.h" |
| @@ -223,6 +226,16 @@ void GuestViewBase::RegisterDestructionCallback( |
| destruction_callback_ = callback; |
| } |
| +void GuestViewBase::DidStopLoading(content::RenderViewHost* render_view_host) { |
| + // Disable drag-and-drop by default. Derived classes that override this method |
|
lazyboy
2014/05/30 00:30:52
Don't think this is a good way of doing this: "you
Fady Samuel
2014/05/30 01:53:21
You got the logic reversed. This disables DND by d
lazyboy
2014/05/30 03:11:40
Yeah I misread.
But my concern is still the same,
|
| + // can avoid the script injection, thereby enabling drag-and-drop. |
| + const char script[] = "window.addEventListener('dragstart', function() { " |
| + " window.event.preventDefault(); " |
| + "});"; |
| + render_view_host->GetMainFrame()->ExecuteJavaScript( |
| + base::ASCIIToUTF16(script)); |
| +} |
| + |
| void GuestViewBase::WebContentsDestroyed() { |
| delete this; |
| } |