diff options
author | Maxim Nikolenko <maximnproductengine@lindenlab.com> | 2023-02-03 16:53:33 +0200 |
---|---|---|
committer | Maxim Nikolenko <maximnproductengine@lindenlab.com> | 2023-02-03 16:53:33 +0200 |
commit | 51142d1341bfd5f4f9749fe1aaf23d4f4270fe0e (patch) | |
tree | 1ced5dc14755b357886eb9fdf3606f5073ed9aaa /indra/newview/llinventorybridge.cpp | |
parent | db80fdb55b646164a71c58e9f4751b368afa3b9f (diff) | |
parent | 8d21d29bd7fa038db632ff90fb0e1207d0713ca2 (diff) |
Merge branch 'main' into DRTVWR-567
# Conflicts:
# indra/newview/llappearancemgr.cpp
# indra/newview/llpanelmaininventory.cpp
Diffstat (limited to 'indra/newview/llinventorybridge.cpp')
-rw-r--r-- | indra/newview/llinventorybridge.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index ae1ac6cc1e..5ca5446d23 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -831,6 +831,12 @@ void LLInvFVBridge::getClipboardEntries(bool show_asset_id, { disabled_items.push_back(std::string("Find Original")); } + + items.push_back(std::string("Cut")); + if (!isItemMovable() || !isItemRemovable()) + { + disabled_items.push_back(std::string("Cut")); + } } else { @@ -2153,6 +2159,7 @@ bool LLItemBridge::isItemCopyable(bool can_copy_as_link) const static LLCachedControl<bool> inventory_linking(gSavedSettings, "InventoryLinking", true); return (can_copy_as_link && inventory_linking) + || (mIsLink && inventory_linking) || item->getPermissions().allowCopyBy(gAgent.getID()); } @@ -2374,6 +2381,12 @@ BOOL LLFolderBridge::isUpToDate() const bool LLFolderBridge::isItemCopyable(bool can_copy_as_link) const { + if (can_copy_as_link && !LLFolderType::lookupIsProtectedType(getPreferredType())) + { + // Can copy and paste unprotected folders as links + return true; + } + // Folders are copyable if items in them are, recursively, copyable. // Get the content of the folder |