RESOLVED FIXED 30175
[Win] Windows DRT UIDelegate::doDragDrop does not return OLE drag-and-drop return value
https://bugs.webkit.org/show_bug.cgi?id=30175
Summary [Win] Windows DRT UIDelegate::doDragDrop does not return OLE drag-and-drop re...
Daniel Bates
Reported 2009-10-07 10:51:20 PDT
We should have UIDelegate::doDragDrop return the OLE drag-and-drop return value just like the Windows API function it emulates, DoDragDrop <http://msdn.microsoft.com/en-us/library/ms678486%28VS.85%29.aspx>.
Attachments
Patch (6.57 KB, patch)
2009-10-07 11:43 PDT, Daniel Bates
aroben: review-
Patch (4.51 KB, patch)
2009-10-07 12:22 PDT, Daniel Bates
no flags
Daniel Bates
Comment 1 2009-10-07 11:43:03 PDT
Created attachment 40808 [details] Patch No test included because it is not possible to test this outside of unit testing.
Adam Roben (:aroben)
Comment 2 2009-10-07 11:53:52 PDT
Comment on attachment 40808 [details] Patch > +++ WebKit/win/WebCoreSupport/WebDragClient.cpp (working copy) > @@ -161,11 +161,9 @@ void WebDragClient::startDrag(DragImageR > if (SUCCEEDED(m_webView->uiDelegate(&ui))) { > COMPtr<IWebUIDelegatePrivate> uiPrivate; > if (SUCCEEDED(ui->QueryInterface(IID_IWebUIDelegatePrivate, (void**)&uiPrivate))) > - if (SUCCEEDED(uiPrivate->doDragDrop(m_webView, dataObject.get(), source.get(), okEffect, &effect))) > - return; > - } > - > - DoDragDrop(dataObject.get(), source.get(), okEffect, &effect); > + uiPrivate->doDragDrop(m_webView, dataObject.get(), source.get(), okEffect, &effect); > + } else > + DoDragDrop(dataObject.get(), source.get(), okEffect, &effect); I don't think this change is what we want. This will require that all WebKit clients that support the IWebUIDelegatePrivate interface implement doDragDrop. I think we want to leave this code as it was. > +++ WebKitTools/DumpRenderTree/win/EventSender.h (working copy) > @@ -29,13 +29,15 @@ > #ifndef EventSender_h > #define EventSender_h > > +#include <windows.h> It would be nicer to just forward-declare HRESULT. The rest of the DRT changes look fine.
Daniel Bates
Comment 3 2009-10-07 12:22:51 PDT
Created attachment 40812 [details] Patch As per Adam's comment, removed changes to WebDragClient::startDrag and in EventSender defined typedef for HRESULT, instead of including <window.h>.
Adam Roben (:aroben)
Comment 4 2009-10-07 12:46:11 PDT
Comment on attachment 40812 [details] Patch r=me
Daniel Bates
Comment 5 2009-10-08 19:11:06 PDT
Comment on attachment 40812 [details] Patch Clearing flags on attachment: 40812 Committed r49336: <http://trac.webkit.org/changeset/49336>
Daniel Bates
Comment 6 2009-10-08 19:11:09 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.