summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorMaxim Nikolenko <maximnproductengine@lindenlab.com>2023-11-06 15:28:26 +0200
committerGitHub <noreply@github.com>2023-11-06 15:28:26 +0200
commitd079c11c99c381a3e9aae292e132c67f39d038ff (patch)
tree45d7dab06204ce562fcc72ed71617cef73a8b417 /indra
parent0ab4edd019d84aa5683b9cc77c66e81be2fa58a4 (diff)
SL-20565 Places floater -- allow dragging a folder into a folder (#491)
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llinventorybridge.cpp2
-rw-r--r--indra/newview/llplacesinventorypanel.cpp10
-rw-r--r--indra/newview/llplacesinventorypanel.h3
3 files changed, 14 insertions, 1 deletions
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp
index 73005d6903..fddf5179fa 100644
--- a/indra/newview/llinventorybridge.cpp
+++ b/indra/newview/llinventorybridge.cpp
@@ -2796,7 +2796,7 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
is_movable = can_move_folder_to_marketplace(master_folder, dest_folder, inv_cat, tooltip_msg, bundle_size);
}
- if (is_movable)
+ if (is_movable && !move_is_into_landmarks)
{
LLInventoryPanel* active_panel = LLInventoryPanel::getActiveInventoryPanel(FALSE);
is_movable = active_panel != NULL;
diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp
index 1c14acd843..f3455bb4f0 100644
--- a/indra/newview/llplacesinventorypanel.cpp
+++ b/indra/newview/llplacesinventorypanel.cpp
@@ -120,3 +120,13 @@ S32 LLPlacesInventoryPanel::notify(const LLSD& info)
}
return 0;
}
+
+BOOL LLPlacesInventoryPanel::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, EDragAndDropType cargo_type, void *cargo_data,
+ EAcceptance *accept, std::string &tooltip_msg)
+{
+ if (mAcceptsDragAndDrop)
+ {
+ return LLInventoryPanel::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg);
+ }
+ return FALSE;
+}
diff --git a/indra/newview/llplacesinventorypanel.h b/indra/newview/llplacesinventorypanel.h
index 5629438415..467eee91af 100644
--- a/indra/newview/llplacesinventorypanel.h
+++ b/indra/newview/llplacesinventorypanel.h
@@ -53,6 +53,9 @@ public:
virtual S32 notify(const LLSD& info) ;
+ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, EDragAndDropType cargo_type, void *cargo_data,
+ EAcceptance *accept, std::string &tooltip_msg) override;
+
private:
LLSaveFolderState* mSavedFolderState;
};