Black Dragon is MY Viewer, i decide which feature i want to add and which to remove, i share this Viewer to show the world that user base size is not important, i do rate quality by effort, thought and love put into the project, not some rough estimated numbers. I consider feature requests only if i you can name proper valid reasons i can agree on. It is my (unpaid) time i'm putting into this project, i'm not here to cater to every Joe's desires.

Wednesday, July 22, 2015

Black Dragon Viewer - Update 2.4.4 "Viewer Managed Update"

Viewer Managed Marketplace baby!

Fully unfunctional of course (for me).

This update introduces the Viewer Managed Marketplace feature and adds a few RLVa fixes that should make RLVa fully functional and compatible with all current stuff from LL. Yay.

Sorry for the long delay, played lots of Mass Effect 3 again because a friend got it recently.



Added: Some code credit.
Changed: Open Object floater layout.
Fixed: Compile.
Fixed: All kinds of broken RLVa stuff all over the place after several merges.
Merged with Viewer Managed Marketplace
DD-2 : Implement LLMarketplaceTuple and LLMarketplaceData
DD-3 : WIP : Add test data to LLMarketplaceData when opening the floater for the first time
DD-4, DD-5, DD-6, DD-7, DD-8: WIP : Add Merchant Items panel and make it somewhat work, in a clunky sort of way
DD-10 : WIP : Added embryonic tool strip at the top of the marketplace floater
DD-11 : Implement getListingURL() and parametrize it correctly. Change Show Listing to Edit Listing.
DD-12, DD-19 : Add a button to create a new listing folder. Also added a validate button though it does nothing ATM
DD-13 : Clean up Associate/Disassociate listing. Also clarify the update folder code in marketplace
DD-14 : Add all right click menu items for marketplace. Make Add, Activate and Deactivate work. Right click fails on non folder items though in marketplace
DD-15 : Allow version folder to be made active/inactive, add new methods to marketplace to make all that a bit more clear and clean
DD-16 : WIP : Update sort / show menu, not actionable yet though
DD-17 : WIP : some work on the suffix for Listing folders
DD-18 : WIP : Implement stock folder counting but no propagation so far, also update is not working
DD-19 : WIP : Add marketplace validation modal dialog to view the log (no validation text yet)
DD-20 : WIP : Implemented the cut and paste code for marketplace. Stock update still not working as expected.
DD-21 : WIP : Call DirectDelivery cap, nothing done but print out the url in the log
DD-22 : WIP : Implemented SLM API GET merchant, use it in initialization but glitch in UI (needs to reopen the floater to see content)
DD-23 : WIP : Catch the SLM_UPDATE_FOLDER notification and trigger the GET /listing route so to get the updated SLM status for the listing
DD-24 : Add FT_MARKETPLACE_STOCK as a new type for folders, implement the promotion code for Drag and Drop, display of stock folders and embryonic marketplace validation
DD-40 : Style active listings in bold, implement a working initialization indicator
DD-41 : Clean up and add back into contextual menu the clipboard options, as well as Rename and Properties
DD-42 : Rename merchant items to marketplace listings to be consistent with spec
DD-43, DD-44 : implement update_marketplace_category() and get it called swhen appropriate
DD-45 : Add Activate right click menu item to marketplace listings folders
DD-49 : Add FUI button for Marketplace Listings
DD-50 : WIP : Add tabs to the marketplace listing UI
DD-54 : WIP : Improved validation to wrap items and stock items within version folders if necessary. Also hooked up the audit button with the validation code though all printout happens in the log
DD-57 : Update stock folder count when item moved back to inventory
DD-58 : Implement associate listing UI and primitive
DD-59 : WIP : Added marketplace consitency check and cleaning when updating a marketplace folder
DD-63 : Suppress the filtering options in the marketplace option submenu. Redundants with tabs
DD-64 : Add New Folder to right click menu on marketplace
DD-65, DD-55: Treat activation/deactivation separately for listing and version folders. Also use max instead of stock for suffix for non stock folders.
DD-66 : WIP : Added new icons for stock folders
DD-68 : Simply unlist if active version folder moved out of listing
DD-69 : Fixed! Added an xml parameter to optionally allow the visualization of the root folder on an inventory panel. Used only for marketplace floater so far.
DD-70 : Use List/Delist for listing folders and Activate/Deactivate for version folders. Also create test SLM ID when creating listing.
DD-71 : Implement a new item properties floater, calls the same code as the sidepanel in the inventory but with the back button hidden
DD-72 : Fix display of stock number on listing with no associated version folder
DD-73 : Rewrote the move single item to marketplace code so to support the required folder structure better
DD-75 : Prevent dropping on filtered tabs root. Adding an allow_drop option to inventory tab and folder view folders so that case can be taken into account.
DD-76 : Do not allow Calling Cards in Marketplace Listings
DD-77, DD-90 : recycled can_move_to_outbox() into can_move_to_marketplace() so we have now the same logic for both marketplace and merchant outbox
DD-81 : Fixed the stock folder count update using an inventory observer. This observe other changes as well of interest to marketplace and should improve consistency in general
DD-82 : Update marketplace listings after delete, cut and other operations on selected items
DD-83 : New listing folders immediately renamable on creation
DD-84 : WIP : Verify restrictions when moving things to marketplace, provide clear alert for errors, parametrize alerts and tooltips correctly
DD-88 : Make Drag and Drop tooltips for Merchant Outbox and Marketplace restrictions identical
DD-89 : Add a MarketplaceListingsLogging setting to get SLM API logs. DD-22 : Fixed the delete /listing route
DD-91 : WIP : Fix taking the correct root folder (merchant outbox or marketplace listings) into account
DD-92 : WIP : Use the new LLCurl::Responder interface. Marketplace Listings functional again.
DD-95 : Prevent validation to run on folders that are not under the marketplace root
DD-97 : When clearing the version folder of a record, force activation (listed) status to false at the same time, avoiding confusing (and eventually wrong) double call to updateSLMListing
DD-98 : Add message with link to marketplace if listing cannot be edited
DD-100 : WIP : Setting up inventory panel code in marketplace listing so that panels can be deleted and rebuilt with new root
DD-101 : Do not list or associate listings that do not validate. Present user with relevant error when that happens.
DD-102 : Fix crash when emptying trash containing nested folders. Also avoid getting listings several times
DD-103 : Use the same logic than Drag and Drop for Paste operations. Prompt with dialog instead of tooltip though.
DD-104 : Use default folder icons for stock folders outside of the marketplace root
DD-105 : WIP : Adding (updating...) suffix when SLM transaction in progress
DD-106 : Unlist and deactivate old listing when reassociating a listing id
DD-107, DD-111 : Fixed! Do not allow active listing and version folders to be moved or cut or deleted (must unlist first).
DD-110 : Prevent paste of Library items into the marketplace
DD-112 : Disable the add folder button if the tab doesn't support drop on root
DD-114, DD-115, DD-116: Fixed counts on folder, folder depth and items on operations on marketplace listings
DD-117 : Prevent drag and drop of linked items into the marketplace
DD-118 : Disable Edit Listing menu option if no version folder on a listing
DD-122 : WIP : Raise error when trying to list something that is empty or has empty stock folders.
DD-126 : Fixed. Check that the version folder depth is 2 when enforcing consistency rules
DD-128 : Fixed. Do not allow clothes or body parts on active listings to be worn or rendered IW
DD-129 : Prevent DAMA when dropping under the root of a listing, even active. Finer granularity of DAMA for all drop and cut and paste cases.
DD-130 : Fixed. Count items and folders from the version folder, not the listing root
DD-133 : Fixed. Add the original items to the list of things to update after action is performed.
DD-150 : Fix U32 to S32 conversion that failed a condition in folder count
DD-152 : Fixed. Update all the descendent of a marketplace folder when moving it out of the marketplace
DD-160 : Open the root folder widget on creation in inventory panels that requires one
DD-161 : Make marketplace listings root folder not movable and add a special tooltip to that effect
DD-168 : Display an error message when SLM transactions fail
DD-170 : Handle 503 answer from SLM and added a MARKET_MERCHANT_NOT_MIGRATED state to the UI, showing only the relevant UI to the user (i.e. Merchant Outbox or Marketplace Listings).
DD-174 : Clean up UI strings for Marketplace
DD-175 : Prevent Marketplace Listings folder to be renamable
DD-176 : Show marketplace listing root even if InventoryOutboxMakeVisible is false.
DD-179 : Return no listing for a lone object lost under the marketplace listing root
DD-180 : Simple xml fix so that the last item in inventory panels is selectable
DD-183 : overloaded the buildContextMenu() method for Notecards so that we get the right menu in marketplace
DD-184 : Make sure the Properties panel shows up for items in active listed listings
DD-190 : When dismissing an alert, take into account that the last focused view may have changed since the alert was created
DD-193 : Suppress show_load_status from inventory_panel description xml since it's not used anywhere
DD-195 : Add text filtering to the marketplace listings floater
DD-196 : Add message to panel when search returns empty
DD-211 : Verify that the items have the right permissions when dropping in a stock folder, add an adequate message when failing to drop in a stock folder.
DD-213 : Differentiate pasting from moving when verifying if action is legit. Also takes into account moving within the same version folder when moving items
DD-220 : Avoid testing folders against marketplace root if we are not filtering against the marketplace
DD-221 : Pointer testing to avoid potential crash
DD-224 : WIP : Add a deleteListing method, call SLM_UPDATE_FOLDER notification if state is deleted
DD-235 : Use newly built jsoncpp libraries that do include the security fix
DD-242 : Added beta invitation message to merchants in the marketplace listings floater
DD-243 : Set up callbacks for merchant outbox importer in the postBuild
DD-246 : Clean up code when receiving delete notification. Display DAMA alert when associating listing
DD-258 : Disable the Check for Errors buttons (aka Audit) while the inventory is still fetching
DD-259 : Show only one error when failing on listing, user can see all errors in Check for Errors
DD-260 : Silence the SLM delete message so to prevent server notification to show up when deleting or unassociating things from the viewer
DD-263 : Update the count on hand on SLM in various situation where stock count changes (activate, drag/drop, associate, etc...)
DD-264 : Do not unlist listings when version folder is emptied
DD-265 : Validate the listing id when associating, show alert if value out of positive integer limit
DD-266 : Use prevalidateNonNegativeS32 instead of prevalidatePositiveS32... Grmbl...
DD-272 : Be more consistent when updating the count on hand in SLM, also prevent multiple folder update when receiving data from SLM
DD-274 : Do not display super long error description (there are in the log though)
DD-276 : Let the count on hand be updated locally when updateSLMListing returns with data from the server
DD-280 : Serialize update count on SLM by preventing sending update while previous transaction not completed
DD-281 : Do not unlist listings that go out of stock
DD-282 : Suppress Unassociate menu item. Confirm when cutting, deleting or moving a listing
DD-284 : Separate no copy from copy items when counting items in marketplace listings folders
DD-286 : We report if a stock folder contains subfolders, we do not count subfolders in stock count and we move subfolders out on drop
DD-287 : Use the current tab correctly when creating a new folder. Fixed the sorting to be applied to all tabs as intended.
DD-289 : WIP : Prevent building tabs twice
DD-290 : Add an option to filter out marketplace, use it in Recent tab
DD-291 : Trigger a GET /listing when receiving a category update
DD-292 : Decrement cargo count when dropping items one by one in the marketplace listings folder
DD-296 : Added contextual menu items to copy and move to the marketplace. Hide copy to merchant outbox. Message when moving to the marketplace.
DD-297 : Performance on login : Refactored the code so that we have a new LLMarketplaceFolderBridge class in the bridge model. Only the panels with the use_marketplace_folders param flag will use that one.
DD-298 : Do not show beta notice in Merchant Outbox panel on error
DD-299 : Suppress cap hardcoded fallback. Recheck cap after each teleport.
DD-300 : WIP : Add drop zone to marketplace (XUI work)
DD-301 : Add show only listing folders as an optional filter
DD-303 : Auto activate version folder when only one present on creation or association
DD-305 : Do not call update_marketplace_category on the marketplace listings folder itself
DD-306 : WIP : Add Check Listing to menu to audit listings individually
DD-316 : Disable New Folder under version folder hierarchy of InventoryOutboxMaxFolderCount has been reached
DD-319 : Fix wording in some error messages and tooltips
DD-320 : Special case HTTP error 422 on the Marketplace and give it a nicer error dialog
DD-321 : Fix the drop zone to react really on the drop zone
DD-322 : Use vector of UUIDs instead of pointers to items when reparenting those items
DD-324 : Alert the user when we split a stock folder
DD-329 : Do not update listing folders before the association is completed
DD-333 : Prevent dropping no copy items if it'll create folders above the folder limit
DD-335 : Improve the performance of Get listings by 400%, fix a bug when error occured on SLM
DD-336 : WIP : Introduced a reverse lookup table for version folder to listing folder to improve performance
DD-337 : Validate the version folder before setting it and show error dialog if error
DD-338 : Auto unlist when stock gets to 0 during stock folder manipulation
DD-339 : Adding loading indicator to marketplace floater when the listings data and inventory data are being fetched
DD-359 : Improve performance by caching display data while updating and preventing refreshing the whole marketplace (never useful)
DD-362 : WIP : Check stock folder count limit
DD-366 : Update validated listing folders more consistently
DD-368 : Handle the merchant / non merchant status correctly on floater open
DD-370: Fix tooltip on Drag and Drop
DD-371 : Do not go through the accept logic when user confirmation is not required (because already given)
DD-378 : Separate stock items of different permissions in different stock folders
DD-379 : a 404 on a Get /listing means that said listing is not in SLM, then delete it from the local store
DD-381 : Fix update of count on hand on drop. Will spam SLM a bit but only solution
DD-382 : Set count_on_hand correctly when creating or assigning a listing
DD-384, DD-388 : Do not trust cached values for stock folders, do not consider a non fetched stock folder empty
DD-394 : Make sure Copy and Move to Marketplace menu items are disabled if the Marketplace listing folder doesn't exist
DD-393 : Rework association so that is_listed property is not overwritten before we get data from SLM
DD-396 : Add decription check on the common 422 error on marketplace listing
DD-399 : Use folder name to create new folders when under listing level
DD-403 : Add sort by name and by most recent
DD-410 : Do not extend inventory selections to items that are not visible
DD-412 : WIP : Validate a listing before creating a listing on SLM
DD-416 : Unlist a listed listing that becomes devoid of any item
Merged Project Notice
MAINT-5370 FIXED [Notice] Hard to operate with notification window controls
MAINT-5414 FIXED Viewer crashes after opening Group info panel
MAINT-5425 FIXED No icon is shown for certain transaction notifications.
Merged with RLVa, massive broken Viewer time, again.
- fixed : wearing something while an inventory link is pending will detach the attachment and potentially leave an unworn COF link
- fixed : questionable code is questionable (aka LLAttachmentsMgr::checkInvalidCOFLinks seems redundant)
- fixed : LLInventoryCallback::fire() is called with the NULL UUID when creating links using AIS
- fixed : attaching a rezzed object delays attachment link creation by 5 seconds
- fixed : don't start creating links to attachments until LLAppearanceMgr::setAttachmentInvLinkEnable has been called
- internal : partial backout of Appearance-SyncAttach to ease the big bird merge madness
- fixed : scripted items that machine gun fire small force-wears (e.g. Sub Suit) can cause some items to not get worn


  1. Wew. I've been waiting for this feature for trwo years. Next thing that LL needs to add will be robbing cow-'o'-vans. -_-

  2. were to download ?, link dead at bitbucket org