Stop the inventory popping up and selecting a calling card after startup if calling cards get synchronized for whatever reason

master
Ansariel 2015-11-20 20:49:32 +01:00
parent 05dfa7bb98
commit e941c3c6ea
2 changed files with 14 additions and 0 deletions

View File

@ -96,10 +96,12 @@ private:
*/
const LLUUID extractAvatarID(const LLUUID& avatarID);
public: // <FS:Ansariel> Needed to check in LLOpenTaskOffer
bool isAvatarDataStored(const LLUUID& avatarID) const
{
return (mBuddyIDSet.end() != mBuddyIDSet.find(avatarID));
}
private: // <FS:Ansariel> Needed to check in LLOpenTaskOffer
const LLUUID& findChildFolderUUID(const LLUUID& parentFolderUUID, const std::string& nonLocalizedName) const;
const LLUUID& findFriendFolderUUIDImpl() const;

View File

@ -140,6 +140,7 @@
#include "fswsassetblacklist.h"
#include "llfloaterbump.h"
#include "llfloaterreg.h"
#include "llfriendcard.h"
#include "llgiveinventory.h"
#include "lltexturefetch.h"
#include "rlvactions.h"
@ -1129,6 +1130,17 @@ protected:
LL_DEBUGS("Inventory_Move") << "Found asset UUID: " << asset_uuid << LL_ENDL;
was_moved = true;
}
// <FS:Ansariel> We might end up here if LLFriendCardsManager tries to sync the friend cards at login
// and that might pop up the inventory window for extra annoyance -> silence this!
else if (added_item->getActualType() == LLAssetType::AT_CALLINGCARD)
{
if (LLFriendCardsManager::instance().isAvatarDataStored(added_item->getCreatorUUID()))
{
LL_DEBUGS("FriendCard") << "Skipping added calling card from friend cards sync: " added_item->getCreatorUUID().asString() << LL_ENDL;
was_moved = true;
}
}
// </FS:Ansariel>
}
}