Commit Graph

56 Commits (c4e18fbcaab2413d153ec79356930bf667839b4f)

Author SHA1 Message Date
Kitty Barnett 4503a28aee Merged with RLVa fixes 2016-12-03 17:13:17 +01:00
Kitty Barnett 7e82891bce [FIXED] Items can be moved out of locked folders by manipulating node vs subtree locks
-> see https://jira.phoenixviewer.com/browse/FIRE-15499

--HG--
branch : RLVa
2016-11-12 02:22:14 +01:00
Kitty Barnett 093592871b Merged with RLVa tip 2016-07-16 20:12:34 +02:00
Kitty Barnett 51b95b190b [FIXED] An RLV_LOCK_ADD locked root folder is considered remove-locked when determining whether a folder is RLV_LOCK_REMOVE type locked
-> see FIRE-3485

--HG--
branch : RLVa
2016-07-12 23:10:50 +02:00
Kitty Barnett 05d22f77ae Merged with RLVa tip 2016-07-11 22:44:01 +02:00
Kitty Barnett bb9affd554 [FIXED] @unsharedunwear=n doesn't block "Remove from Outfit" (if no attachment/wearable locks exist)
-> see previous commit as well
  -> lookups ended up refreshing before the actual attachments were attached leaving them (from a user's perspective unpredictably) detachable

--HG--
branch : RLVa
2016-07-10 17:45:30 +02:00
Kitty Barnett cffa8397ad [FIXED] Can't (re)move items or folders when @unsharedwear or @unsharedunwear restricted
--HG--
branch : RLVa
2016-07-01 00:20:55 +02:00
Kitty Barnett f2b05ea2e4 [FIXED] RlvAttachmentLocks::updateLockedHUD() isn't disabling wireframe mode properly
--HG--
branch : RLVa
2016-05-15 16:15:09 +02:00
Kitty Barnett 188cad8e5e Merged with RLVa tip 2016-07-01 00:27:14 +02:00
Kitty Barnett 17a9b09f25 Reapply FS-specific changes 2016-06-24 17:18:38 +02:00
Kitty Barnett 0fe6c21df0 Merged with pre-big bird RLVa tip
--HG--
branch : RLVa
2015-07-18 05:24:19 +02:00
Kitty Barnett 7fa9ac3ddb Merged with Appearance-Misc tip for big bird
--HG--
branch : RLVa
2015-06-25 19:26:11 +02:00
Kitty Barnett ffeee4889e - internal : RLVa files #include clean-up
--HG--
branch : RLVa
2015-06-25 17:04:02 +02:00
Kitty Barnett c4d557d529 Merged with default tip (Revision aeab2661776f)
--HG--
branch : RLVa
2014-10-29 21:45:12 +02:00
Kitty Barnett 71af2b6afa - internal : remove hack for legacy viewers without multi-attachment support
--HG--
branch : RLVa
2014-02-28 12:07:13 +01:00
Kitty Barnett e1b955226d Merged with viewer-sunshine tip (Revision bd1162cb6fbe)
--HG--
branch : RLVa
2013-02-11 23:04:05 +01:00
Kitty Barnett 6d73b0465f - fixed : the RLV API randomly renames "Avatar Center" to "Root" so make sure we add it (but keep the official name)
--HG--
branch : RLVa
2012-02-08 17:05:19 +01:00
Kitty Barnett ad31969cf9 - fixed : inventory links under a remove-locked shared folder should be non-detachable
--HG--
branch : RLVa
2011-11-26 14:29:32 +01:00
Kitty Barnett ec589a9a41 - fixed : folded folders should be locked if their parent folder is locked
-> transplanted from RLVa-1.5.4 (changeset adaed3f0b83a)

--HG--
branch : RLVa
2011-11-26 13:02:49 +01:00
Kitty Barnett c54741770e - fixed : RlvFolderLocks::m_cntLockAdd and RlvFolderLocks::m_cntLockRem aren't initialized to 0
-> transplanted from RLVa-1.5.4 (changeset 315c21d73a6a)

--HG--
branch : RLVa
2011-11-26 12:34:21 +01:00
Kitty Barnett 54d1669a5e - added : "RLVaWearReplaceUnlocked" to not block replace when at least one attachment on the target attachment point is non-detachable
-> locked (cuff) attachment on left and right lower leg
    -> ankle boots with attachments on left and right lower leg
    -> FALSE: "Wear" on a new set of ankle boots will fail (can not replace the non-detachable ankle cuffs)
       TRUE : "Wear" on a new set of ankle boots will replace the existing boots (ankle cuffs are not affected)

--HG--
branch : RLVa
2011-06-13 19:20:52 +02:00
Kitty Barnett d47980b3d7 - fixed : silly GCC compiler warnings (thankies Satomi and Arrehn)
--HG--
branch : RLVa
2011-06-05 12:51:59 +02:00
Kitty Barnett e248153477 Merged with RLVa-1.3.1a tip
--HG--
branch : RLVa
2011-05-27 15:54:30 +02:00
Kitty Barnett 330b78817d - internal : header dependency cleanup for common RLVa cpp files
--HG--
branch : RLVa
2011-05-22 16:23:59 +02:00
Kitty Barnett c80812fb9f - internal : header dependency cleanup for rlvcommon.h and rlvhandler.h
--HG--
branch : RLVa
2011-05-22 11:34:34 +02:00
Kitty Barnett 78e17b0bf8 - fixed : "Wear" and "Add" aren't grayed out on context menus when @addttach=n restricted
-> RlvAttachmentLocks::canAttach() would return RLV_WEAR and allow the attach
    -> RlvAttachmentLockWatchdog would detach the attachment as soon as it attached due to the @remattach=n

--HG--
branch : RLVa
2011-05-22 03:21:14 +02:00
Kitty Barnett c55f28def1 - internal : updated copyright year
--HG--
branch : RLVa
2011-05-21 23:10:45 +02:00
Kitty Barnett c834c86cd8 Merged with RLVa-1.3.0g tip
--HG--
branch : RLVa
2011-05-21 22:51:45 +02:00
Kitty Barnett 44f003b537 Merged with RLVa-1.3.0f tip
--HG--
branch : RLVa
2011-05-21 18:22:10 +02:00
Kitty Barnett fc31320f2f - fixed : crash at start-up on Linux (thankies Arrehn)
-> the RlvFolderLocks constructor (indirectly) adds an inventory observer
    -> depending on the order of construction of gRlvFolderLocks and gInventoryModel the constructor will either work as intended or crash
    => changed RlvFolderLocks into a singleton since the construction order of globals is up to the compiler

--HG--
branch : RLVa
2011-04-13 23:07:16 +02:00
Kitty Barnett 363659fc22 - added : wearable and attachments related @notify notifications
--HG--
branch : RLVa
2011-04-01 02:45:06 +02:00
Kitty Barnett d3c9adad04 - fixed : inventory item move, rename or removal should be subject to folder locks as well
--HG--
branch : RLVa
2011-03-30 21:19:44 +02:00
Kitty Barnett 04d1e98bfb - changed : more fiddling with moving, removing and renaming of locked folders
-> added checking for a combination of lock source types [see hasLockedFolderDescendent() and isLockedFolderEntry()]
    -> added getting the lock source of a locked folder [see isLockedFolder()]
    -> clarified which function parameters in RlvFolderLocks will accept an enumeration mask
    -> blocked being able to move a shared folder out of #RLV when @unshared*wear restricted
    -> blocked being able to rename attachment/attachment point/wearable type locked folders to "dot" folders and invalidate the folder lock

--HG--
branch : RLVa
2011-03-30 19:42:00 +02:00
Kitty Barnett 1a1f35ca6c - fixed : locked folder lookups aren't refreshed for canMove(), canRename() or canRemove()
--HG--
branch : RLVa
2011-03-29 15:04:02 +02:00
Kitty Barnett 1edb9bde6f - changed : block renaming of PERM_ALLOW locked folders in addition to PERM_DENY
-> @unshared*wear will PERM_DENY the inventory root and PERM_ALLOW the #RLV shared root
    -> no folders are blocked from being rename'able though only #RLV and descendants are wearable/removable
    -> user can't move folders into (or out of) #RLV
    -> user renames #RLV -> #RLV-2 and FolderWithThingsToWear to #RLV
    => user bypassed @unshared*wear

--HG--
branch : RLVa
2011-03-29 11:43:30 +02:00
Kitty Barnett 45180e6f19 - changed : only block renaming a locked folder if the folder (or one of its descendents) is locked by shared path
-> @attachthis:some/path=n relies on folder names to lookup the locked folder => block rename on the path only
    -> @attachthis:spine=n is looked up through attachments' inventory item UUID => allow rename
    -> @unshared*wear=n locks down the inventory root and shouldn't also blanket block the ability to rename

--HG--
branch : RLVa
2011-03-29 10:25:49 +02:00
Kitty Barnett 1458f852ac - internal : added a callback signal when the tracked #RLV shared root changes
--HG--
branch : RLVa
2011-03-29 08:49:14 +02:00
Kitty Barnett 6d9c8064fa - internal : added ST_FOLDER as a folder lock source type to lock a folder by its inventory UUID
-> supports locking down the inventory root

--HG--
branch : RLVa
2011-03-28 17:25:11 +01:00
Kitty Barnett 538b3ee6d4 - internal : introduced ELockSourceType to differentiate between different folder lock source types
-> an attachment would be identified by its object UUID
    -> an non-shared inventory folder would be identify by its category UUID
    => the same type can't have two different meanings so we needed an additional explicit type qualifier

--HG--
branch : RLVa
2011-03-28 16:49:09 +01:00
Kitty Barnett d32a9cc5b0 - internal : extensive rewrite of RlvFolderLocks to accomodate PERM_ALLOW type folder locks (aka folder lock exceptions)
--HG--
branch : RLVa
2011-03-27 20:48:36 +01:00
Kitty Barnett 8c1fab0782 - internal : split folder locks into "deny locks" and "allow locks"
-> no functional change yet, "allow locks" are currently ignored

--HG--
branch : RLVa
2011-03-27 09:26:17 +01:00
Kitty Barnett 3666f5e305 Merged with RLVa-1.3.0b tip
--HG--
branch : RLVa
2011-02-03 00:55:54 +01:00
Kitty Barnett 7e35c80fb3 - internal : added caching of folder UUIDs for @attachthis[:<option>]=n and @detachthis[:<option>]=n
--HG--
branch : RLVa
2010-11-30 19:22:40 +01:00
Kitty Barnett d26ba4ca71 - internal : inlined the has*() and is*() functions of RlvFolderLocks
--HG--
branch : RLVa
2010-11-30 18:35:12 +01:00
Kitty Barnett f78b60ba5a - internal : reviewed RlvFolderLocks::getLockedFoldersRem()
--HG--
branch : RLVa
2010-11-30 18:34:36 +01:00
Kitty Barnett f3ee0b3f91 - internal : mark cached folder locked items as dirty on every change to COF
-> rebuilding the item list is post-poned until the first call that actually needs it so this is essentially "free"

--HG--
branch : RLVa
2010-11-30 17:41:57 +01:00
Kitty Barnett 4518f5234c - internal : extended @detach*this[:<option>]=n to also RLV_LOCK_REMOVE individual wearables
-> only the worn wearable is remove-locked, not the entire wearable type

--HG--
branch : RLVa
2010-11-30 17:36:23 +01:00
Kitty Barnett 9307712aaf - internal : minimal implementation of @detach*this[:<option>]=n
-> test code currently only prevents attachments in locked folders from being detached (or replaced)
    -> TODO: RlvAttachmentLocks::isLockedAttachmentExcept(...) and RlvAttachmentLocks::isLockedAttachmentPointExcept(...)

--HG--
branch : RLVa
2010-11-30 17:23:33 +01:00
Kitty Barnett 91989b6a6e - internal : added minimal interface to support @attach*this[:<option>]=n and @detach*this[:<option>]=n
--HG--
branch : RLVa
2010-11-30 15:13:47 +01:00
Kitty Barnett a80ef78845 - internal : moved initialization of RlvAttachPtLookup from RlvHandler::onLoginComplete() to LLVOAvatarSelf::initInstance()
--HG--
branch : RLVa
2010-12-12 01:13:35 +01:00