Commit f3ab3d97 authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

ole32/ole2: If no effect action selected use ::DragLeave() instead of ::Drop().

parent 9c44ed8a
...@@ -2196,7 +2196,7 @@ static void OLEDD_TrackStateChange(TrackerWindowInfo* trackerInfo) ...@@ -2196,7 +2196,7 @@ static void OLEDD_TrackStateChange(TrackerWindowInfo* trackerInfo)
* If we end-up over a target, drop the object in the target or * If we end-up over a target, drop the object in the target or
* inform the target that the operation was cancelled. * inform the target that the operation was cancelled.
*/ */
if (trackerInfo->curDragTarget!=0) if (trackerInfo->curDragTarget)
{ {
switch (trackerInfo->returnValue) switch (trackerInfo->returnValue)
{ {
...@@ -2205,14 +2205,16 @@ static void OLEDD_TrackStateChange(TrackerWindowInfo* trackerInfo) ...@@ -2205,14 +2205,16 @@ static void OLEDD_TrackStateChange(TrackerWindowInfo* trackerInfo)
* the drop target that we just dropped the object in it. * the drop target that we just dropped the object in it.
*/ */
case DRAGDROP_S_DROP: case DRAGDROP_S_DROP:
{ if (*trackerInfo->pdwEffect != DROPEFFECT_NONE)
IDropTarget_Drop(trackerInfo->curDragTarget, IDropTarget_Drop(trackerInfo->curDragTarget,
trackerInfo->dataObject, trackerInfo->dataObject,
trackerInfo->dwKeyState, trackerInfo->dwKeyState,
trackerInfo->curMousePos, trackerInfo->curMousePos,
trackerInfo->pdwEffect); trackerInfo->pdwEffect);
break; else
} IDropTarget_DragLeave(trackerInfo->curDragTarget);
break;
/* /*
* If the source told us that we should cancel, fool the drop * If the source told us that we should cancel, fool the drop
* target by telling it that the mouse left it's window. * target by telling it that the mouse left it's window.
......
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