summaryrefslogtreecommitdiff
path: root/indra/llwindow/lldragdropwin32.cpp
diff options
context:
space:
mode:
authorRick Pasetto <rick@lindenlab.com>2009-11-19 09:29:08 -0800
committerRick Pasetto <rick@lindenlab.com>2009-11-19 09:29:08 -0800
commit0627d550f371c26b00e802bae288a5e6def53345 (patch)
tree8f4e740736d4fbca2eb543bb0148232e968286ef /indra/llwindow/lldragdropwin32.cpp
parent9e53ad6111ce0e15cb10f2ffb47fee8b48d1c3db (diff)
parent51e640e5d753ac9dc005cd6827db77988a04b8fa (diff)
Automated merge with ssh://rick@hg.lindenlab.com/rick/viewer-2-0-rickcallum/
Diffstat (limited to 'indra/llwindow/lldragdropwin32.cpp')
-rw-r--r--indra/llwindow/lldragdropwin32.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/indra/llwindow/lldragdropwin32.cpp b/indra/llwindow/lldragdropwin32.cpp
index 471c88675d..a10cfbf12f 100644
--- a/indra/llwindow/lldragdropwin32.cpp
+++ b/indra/llwindow/lldragdropwin32.cpp
@@ -125,6 +125,22 @@ class LLDragDropWin32Target:
{
if ( mAllowDrop )
{
+ // XXX MAJOR MAJOR HACK!
+ LLWindowWin32 *window_imp = (LLWindowWin32 *)GetWindowLong(mAppWindowHandle, GWL_USERDATA);
+ if (NULL != window_imp)
+ {
+ LLCoordGL gl_coord( 0, 0 );
+
+ POINT pt2;
+ pt2.x = pt.x;
+ pt2.y = pt.y;
+ ScreenToClient( mAppWindowHandle, &pt2 );
+
+ LLCoordWindow cursor_coord_window( pt2.x, pt2.y );
+ window_imp->convertCoords(cursor_coord_window, &gl_coord);
+ MASK mask = gKeyboard->currentMask(TRUE);
+ window_imp->completeDragNDropRequest( gl_coord, mask, FALSE, std::string( "" ) );
+ }
*pdwEffect = DROPEFFECT_COPY;
}
else
@@ -183,7 +199,7 @@ class LLDragDropWin32Target:
MASK mask = gKeyboard->currentMask( TRUE );
// actually do the drop
- window_imp->completeDropRequest( gl_coord, mask, std::string( (char*)data ) );
+ window_imp->completeDragNDropRequest( gl_coord, mask, TRUE, std::string( (char*)data ) );
};
GlobalUnlock( stgmed.hGlobal );