/// <summary> /// Refresh the messages list /// </summary> /// <param name="innfts"></param> /// <returns></returns> public async Task RefreshMessages(List <INFT> innfts) { if (!PublicKeyFound) { var bobPubKey = await NFTHelpers.GetPubKeyFromLastFoundTx(Address); if (bobPubKey.Item1) { PublicKey = bobPubKey.Item2; PublicKeyFound = true; } else { PublicKeyFound = false; } } var msgs = await NFTHelpers.LoadAddressNFTMessages(Address, AccountAddress, NFTs); lock (_lock) { NFTMessages = msgs; } // add related messages from main account await AddAccoundMessages(innfts); if (AccountSecret != null) { await DecryptMessages(); } NFTMessages = NFTMessages.OrderBy(m => m.Time).Reverse().ToList(); }
/// <summary> /// Add messages from the main account to the list /// This will combine list of received and sent messages to one list /// </summary> /// <param name="innfts"></param> /// <returns></returns> public async Task AddAccoundMessages(List <INFT> innfts) { var msgs = await NFTHelpers.LoadAddressNFTMessages(Address, AccountAddress, innfts); lock (_lock) { foreach (var m in msgs) { NFTMessages.Add(m); } } }