Commit 89e50aab authored by darin@chromium.org's avatar darin@chromium.org

2008-10-31 Tony Chang <tony@chromium.org>

        Reviewed by Oliver Hunt.

        Add a new platform specific method cleanupAfterSystemDrag
        that platforms can ue to clean up drag state after a
        system drag.  Use this method on PLAFORM(MAC).
        https://bugs.webkit.org/show_bug.cgi?id=21956

        * ChangeLog:
        * page/DragController.cpp:
        (WebCore::DragController::doSystemDrag):
        * page/DragController.h:
        * page/gtk/DragControllerGtk.cpp:
        (WebCore::DragController::cleanupAfterSystemDrag):
        * page/mac/DragControllerMac.mm:
        (WebCore::DragController::cleanupAfterSystemDrag):
        * page/qt/DragControllerQt.cpp:
        (WebCore::DragController::cleanupAfterSystemDrag):
        * page/win/DragControllerWin.cpp:
        (WebCore::DragController::cleanupAfterSystemDrag):
        * page/wx/DragControllerWx.cpp:
      (WebCore::DragController::cleanupAfterSystemDrag):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38805 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent dbd173a4
2008-10-31 Tony Chang <tony@chromium.org>
Reviewed by Oliver Hunt.
Add a new platform specific method cleanupAfterSystemDrag
that platforms can ue to clean up drag state after a
system drag. Use this method on PLAFORM(MAC).
https://bugs.webkit.org/show_bug.cgi?id=21956
* ChangeLog:
* page/DragController.cpp:
(WebCore::DragController::doSystemDrag):
* page/DragController.h:
* page/gtk/DragControllerGtk.cpp:
(WebCore::DragController::cleanupAfterSystemDrag):
* page/mac/DragControllerMac.mm:
(WebCore::DragController::cleanupAfterSystemDrag):
* page/qt/DragControllerQt.cpp:
(WebCore::DragController::cleanupAfterSystemDrag):
* page/win/DragControllerWin.cpp:
(WebCore::DragController::cleanupAfterSystemDrag):
* page/wx/DragControllerWx.cpp:
(WebCore::DragController::cleanupAfterSystemDrag):
2008-11-26 Nikolas Zimmermann <zimmermann@kde.org>
Reviewed by Oliver Hunt.
......@@ -750,11 +750,7 @@ void DragController::doSystemDrag(DragImageRef image, const IntPoint& dragLoc, c
m_client->startDrag(image, viewProtector->windowToContents(frame->view()->contentsToWindow(dragLoc)),
viewProtector->windowToContents(frame->view()->contentsToWindow(eventPos)), clipboard, frameProtector.get(), forLink);
// Drag has ended, dragEnded *should* have been called, however it is possible
// for the UIDelegate to take over the drag, and fail to send the appropriate
// drag termination event. As dragEnded just resets drag variables, we just
// call it anyway to be on the safe side
dragEnded();
cleanupAfterSystemDrag();
}
// Manual drag caret manipulation
......
......@@ -107,6 +107,7 @@ namespace WebCore {
bool doDrag(Frame* src, Clipboard* clipboard, DragImageRef dragImage, const KURL& linkURL, const KURL& imageURL, Node* node, IntPoint& dragLoc, IntPoint& dragImageOffset);
void doImageDrag(Element*, const IntPoint&, const IntRect&, Clipboard*, Frame*, IntPoint&);
void doSystemDrag(DragImageRef, const IntPoint&, const IntPoint&, Clipboard*, Frame*, bool forLink);
void cleanupAfterSystemDrag();
Page* m_page;
DragClient* m_client;
......
......@@ -63,4 +63,8 @@ const IntSize& DragController::maxDragImageSize()
return maxDragImageSize;
}
void DragController::cleanupAfterSystemDrag()
{
}
}
......@@ -66,4 +66,13 @@ const IntSize& DragController::maxDragImageSize()
return maxDragImageSize;
}
void DragController::cleanupAfterSystemDrag()
{
// Drag has ended, dragEnded *should* have been called, however it is possible
// for the UIDelegate to take over the drag, and fail to send the appropriate
// drag termination event. As dragEnded just resets drag variables, we just
// call it anyway to be on the safe side
dragEnded();
}
}
......@@ -65,4 +65,8 @@ const IntSize& DragController::maxDragImageSize()
return maxDragImageSize;
}
void DragController::cleanupAfterSystemDrag()
{
}
}
......@@ -61,4 +61,8 @@ const IntSize& DragController::maxDragImageSize()
return maxDragImageSize;
}
void DragController::cleanupAfterSystemDrag()
{
}
}
......@@ -65,4 +65,8 @@ const IntSize& DragController::maxDragImageSize()
return maxDragImageSize;
}
void DragController::cleanupAfterSystemDrag()
{
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment