diff options
author | snej@chromium.org <snej@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-08 17:29:25 +0000 |
---|---|---|
committer | snej@chromium.org <snej@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-08 17:29:25 +0000 |
commit | 1d9f4137eff50f1305e288767bb770151526552d (patch) | |
tree | 4ae1750d34778e7b0ae23dfe315118cf124c3715 /chrome/browser/tab_contents/interstitial_page.cc | |
parent | c7f475ed4a9fd8f198468df696c55e1c75d65526 (diff) | |
download | chromium_src-1d9f4137eff50f1305e288767bb770151526552d.zip chromium_src-1d9f4137eff50f1305e288767bb770151526552d.tar.gz chromium_src-1d9f4137eff50f1305e288767bb770151526552d.tar.bz2 |
Plumb the DragOperation through all the layers between the platform Drag-n-drop code and WebCore.
This allows the HTML5 DataTransfer effectAllowed and dropEffect properties to be set correctly in JS handlers, as per the HTML5 spec.
(The drag-dropeffect test isn't in WebKit yet -- it's part of a separate WebKit patch that's been in review for weeks.)
R=darin,pink
BUG=http://code.google.com/p/chromium/issues/detail?id=14654, http://code.google.com/p/chromium/issues/detail?id=20985
TEST=LayoutTests/fast/events/drag-dropeffect.html, LayoutTests/editing/pasteboard/files-during-page-drags.html
Review URL: http://codereview.chromium.org/174364
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25629 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/tab_contents/interstitial_page.cc')
-rw-r--r-- | chrome/browser/tab_contents/interstitial_page.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/chrome/browser/tab_contents/interstitial_page.cc b/chrome/browser/tab_contents/interstitial_page.cc index f9d6ded..7421c3a 100644 --- a/chrome/browser/tab_contents/interstitial_page.cc +++ b/chrome/browser/tab_contents/interstitial_page.cc @@ -25,6 +25,9 @@ #include "net/base/escape.h" #include "views/window/window_delegate.h" +using WebKit::WebDragOperation; +using WebKit::WebDragOperationsMask; + namespace { class ResourceRequestTask : public Task { @@ -86,8 +89,9 @@ class InterstitialPage::InterstitialPageRVHViewDelegate virtual void ShowCreatedWidget(int route_id, const gfx::Rect& initial_pos); virtual void ShowContextMenu(const ContextMenuParams& params); - virtual void StartDragging(const WebDropData& drop_data); - virtual void UpdateDragCursor(bool is_drop_target); + virtual void StartDragging(const WebDropData& drop_data, + WebDragOperationsMask operations_allowed); + virtual void UpdateDragCursor(WebDragOperation operation); virtual void GotFocus(); virtual void TakeFocus(bool reverse); virtual void HandleKeyboardEvent(const NativeWebKeyboardEvent& event); @@ -549,12 +553,13 @@ void InterstitialPage::InterstitialPageRVHViewDelegate::ShowContextMenu( } void InterstitialPage::InterstitialPageRVHViewDelegate::StartDragging( - const WebDropData& drop_data) { + const WebDropData& drop_data, + WebDragOperationsMask allowed_operations) { NOTREACHED() << "InterstitialPage does not support dragging yet."; } void InterstitialPage::InterstitialPageRVHViewDelegate::UpdateDragCursor( - bool is_drop_target) { + WebDragOperation) { NOTREACHED() << "InterstitialPage does not support dragging yet."; } |