Ken Thomases : winemac: Cope with apps which return multiple DROPEFFECTs from IDropTarget:: DragEnter() and DragOver().
Alexandre Julliard
julliard at winehq.org
Tue Jun 18 14:42:10 CDT 2013
Module: wine
Branch: master
Commit: 300b231107388c38c89fdfe74415706486394fb1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=300b231107388c38c89fdfe74415706486394fb1
Author: Ken Thomases <ken at codeweavers.com>
Date: Tue Jun 18 05:42:42 2013 -0500
winemac: Cope with apps which return multiple DROPEFFECTs from IDropTarget::DragEnter() and DragOver().
---
dlls/winemac.drv/dragdrop.c | 11 +++++------
1 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/dlls/winemac.drv/dragdrop.c b/dlls/winemac.drv/dragdrop.c
index f7e797b..612a868 100644
--- a/dlls/winemac.drv/dragdrop.c
+++ b/dlls/winemac.drv/dragdrop.c
@@ -307,12 +307,11 @@ static DWORD drag_operations_to_dropeffects(uint32_t ops)
*/
static uint32_t dropeffect_to_drag_operation(DWORD effect, uint32_t ops)
{
- switch (effect)
- {
- case DROPEFFECT_COPY: return (ops & DRAG_OP_COPY) ? DRAG_OP_COPY : DRAG_OP_GENERIC;
- case DROPEFFECT_MOVE: return DRAG_OP_MOVE;
- case DROPEFFECT_LINK: return (ops & DRAG_OP_LINK) ? DRAG_OP_LINK : DRAG_OP_GENERIC;
- }
+ if (effect & DROPEFFECT_LINK && ops & DRAG_OP_LINK) return DRAG_OP_LINK;
+ if (effect & DROPEFFECT_COPY && ops & DRAG_OP_COPY) return DRAG_OP_COPY;
+ if (effect & DROPEFFECT_MOVE && ops & DRAG_OP_MOVE) return DRAG_OP_MOVE;
+ if (effect & DROPEFFECT_LINK && ops & DRAG_OP_GENERIC) return DRAG_OP_GENERIC;
+ if (effect & DROPEFFECT_COPY && ops & DRAG_OP_GENERIC) return DRAG_OP_GENERIC;
return DRAG_OP_NONE;
}
More information about the wine-cvs
mailing list