diff options
author | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-07 23:25:03 +0000 |
---|---|---|
committer | tc@google.com <tc@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-07 23:25:03 +0000 |
commit | 0bcde72cee05bb587e7069a490081834e6ceac1c (patch) | |
tree | 7b5e59f055a1f038ceb7e891a054c26acc6d1d7e /webkit/glue/dragclient_impl.cc | |
parent | 4f8b87a4c6d06ebad053160a61fc90492afc8439 (diff) | |
download | chromium_src-0bcde72cee05bb587e7069a490081834e6ceac1c.zip chromium_src-0bcde72cee05bb587e7069a490081834e6ceac1c.tar.gz chromium_src-0bcde72cee05bb587e7069a490081834e6ceac1c.tar.bz2 |
Remove windows-isms from drag & drop. This
makes it more portable, fixes some bugs, and
removes glue from port.
Review URL: http://codereview.chromium.org/9801
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5032 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/dragclient_impl.cc')
-rw-r--r-- | webkit/glue/dragclient_impl.cc | 25 |
1 files changed, 6 insertions, 19 deletions
diff --git a/webkit/glue/dragclient_impl.cc b/webkit/glue/dragclient_impl.cc index b0f1cf8..25654b0 100644 --- a/webkit/glue/dragclient_impl.cc +++ b/webkit/glue/dragclient_impl.cc @@ -6,17 +6,8 @@ #include "base/compiler_specific.h" -#include "build/build_config.h" - -#if defined(OS_WIN) -#include <objidl.h> -#endif - MSVC_PUSH_WARNING_LEVEL(0); -#if defined(OS_WIN) -#include "ClipboardWin.h" -#include "COMPtr.h" -#endif +#include "ClipboardChromium.h" #include "DragData.h" #include "Frame.h" #include "HitTestResult.h" @@ -29,6 +20,7 @@ MSVC_POP_WARNING(); #include "base/logging.h" #include "base/string_util.h" +#include "webkit/glue/clipboard_conversion.h" #include "webkit/glue/context_node_types.h" #include "webkit/glue/glue_util.h" #include "webkit/glue/webdropdata.h" @@ -68,15 +60,11 @@ void DragClientImpl::startDrag(WebCore::DragImageRef drag_image, // Add a ref to the frame just in case a load occurs mid-drag. RefPtr<WebCore::Frame> frame_protector = frame; -#if defined(OS_WIN) - COMPtr<IDataObject> data_object( - static_cast<WebCore::ClipboardWin*>(clipboard)->dataObject()); + RefPtr<WebCore::ChromiumDataObject> data_object = + static_cast<WebCore::ClipboardChromium*>(clipboard)->dataObject(); DCHECK(data_object.get()); - WebDropData drop_data; - WebDropData::PopulateWebDropData(data_object.get(), &drop_data); -#elif defined(OS_MACOSX) || defined(OS_LINUX) - WebDropData drop_data; -#endif + WebDropData drop_data = webkit_glue::ChromiumDataObjectToWebDropData( + data_object.get()); webview_->StartDragging(drop_data); } @@ -92,4 +80,3 @@ WebCore::DragImageRef DragClientImpl::createDragImageForLink( void DragClientImpl::dragControllerDestroyed() { delete this; } - |