This commit addresses several issues with inventory offers:
1. When enabling legacy accept messages, the notification now allows to perform
silent actions without notifying the sender. This has been implemented only
for legacy style accept messages, because the V3-way will notify the sender
automatically if the offer is received, so that it doesn't make any sense to
add this feature here.
2. Inventory offers from agents now allows to choose between either accepting
the offer OR accepting and showing. This is independent from the ShowNewInventory
debug setting ("Automatically show new notecards, textures, landmarks after
accepting"). However, due to the way inventory offers from groups or inworld
objects work, there is no separation and accepting offers from these sources
will still either open automatically or not, depending on the ShowNewInventory
setting.
3. The debug setting ShowOfferedInventory that was exposed nowhere and therefore
always TRUE has been made obsolete. Since ShowOfferedInventory is tied to
inventory offers from agents, there is no need for this setting anymore, as
inventory offers from agents now show separate options for showing or just
accepting. If an inventory offers is shown depends on either the user's
choice per agent inventory offer or the ShowNewInventory debug setting.
4. Removed the check for ShowNewInventory in check_offer_throttle() as it will
be called by open_inventory_offer(). Instead, check for ShowNewInventory
before actually trying to open an inventory offer.
5. Fix the inventory panel still jumping to the new item despite the debug
setting ShowInInventory has been set to FALSE. The new item will now only be
shown in inventory, if ShowInInventory is TRUE. If the inventory panel is
closed, it will be opened.
connections. Convert background and foreground fetches, both
items and folders/inventory and library, to use new HTTP.
Non-fetch inventory operations continue to use LLHTTPClient
(at least for now). Error handling and retry on fetches wasn't
100% previously and that's still the case. I'll rip through
this again to clean that up. Cleaned up logging in much of
the inventory code with consistent labels on logging events
and correct macros (removed deprecation warnings).
This started as an attempt to get libcurl to do pipelining
on POSTs and PUTs. Discovered that this is going to be
very difficult to support in general in libcurl. May
look at that again in the future.