summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorcallum <none@none>2009-11-24 20:20:53 -0800
committercallum <none@none>2009-11-24 20:20:53 -0800
commite2e7d544b6a114e70e3b46f516a4f0e8d7db4bd1 (patch)
tree41bd0df5d5873d876458ca250e1f8283da627252 /indra/newview
parent8d84b7ae4062d8680aae2bb8325813bdac0335ed (diff)
Added support for dropping SURLs onto viewer
Does right thing when logged in - needs some work at login page Removed (commented out) WM_DROPFILES code for now
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llviewerwindow.cpp10
-rw-r--r--indra/newview/llviewerwindow.h2
2 files changed, 10 insertions, 2 deletions
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index 17b9490f63..dd84140d5b 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -80,6 +80,7 @@
#include "llviewermenu.h"
#include "lltooltip.h"
#include "llmediaentry.h"
+#include "llurldispatcher.h"
// newview includes
#include "llagent.h"
@@ -819,11 +820,18 @@ BOOL LLViewerWindow::handleMiddleMouseDown(LLWindow *window, LLCoordGL pos, MAS
return TRUE;
}
-BOOL LLViewerWindow::handleDragNDrop( LLWindow *window, LLCoordGL pos, MASK mask, BOOL drop, std::string data )
+BOOL LLViewerWindow::handleDragNDrop( LLWindow *window, LLCoordGL pos, MASK mask, BOOL drop, std::string data, BOOL slurl )
{
BOOL result = FALSE;
if (gSavedSettings.getBOOL("PrimMediaDragNDrop"))
{
+ // special case SLURLs
+ if ( slurl )
+ {
+ LLURLDispatcher::dispatch( data, NULL, true );
+ return TRUE;
+ };
+
LLPickInfo pick_info = pickImmediate( pos.mX, pos.mY, TRUE /*BOOL pick_transparent*/ );
LLUUID object_id = pick_info.getObjectID();
diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h
index 428c602b73..4296495067 100644
--- a/indra/newview/llviewerwindow.h
+++ b/indra/newview/llviewerwindow.h
@@ -170,7 +170,7 @@ public:
/*virtual*/ BOOL handleRightMouseUp(LLWindow *window, LLCoordGL pos, MASK mask);
/*virtual*/ BOOL handleMiddleMouseDown(LLWindow *window, LLCoordGL pos, MASK mask);
/*virtual*/ BOOL handleMiddleMouseUp(LLWindow *window, LLCoordGL pos, MASK mask);
- /*virtual*/ BOOL handleDragNDrop(LLWindow *window, LLCoordGL pos, MASK mask, BOOL drop, std::string data);
+ /*virtual*/ BOOL handleDragNDrop(LLWindow *window, LLCoordGL pos, MASK mask, BOOL drop, std::string data, BOOL slurl);
void handleMouseMove(LLWindow *window, LLCoordGL pos, MASK mask);
/*virtual*/ void handleMouseLeave(LLWindow *window);
/*virtual*/ void handleResize(LLWindow *window, S32 x, S32 y);