internal static void NotifyUnblocked(TwitterUser source, TwitterUser target) { if (MuteBlockManager.IsBlocked(source)) { return; } if (!NotificationLatch.CheckSetNegative( NotificationLatchTarget.Block, source.Id, target.Id)) { return; } Head.NotifyUnblocked(source, target); }
internal static void NotifyUnfavorited(TwitterUser source, TwitterStatus status) { if (MuteBlockManager.IsBlocked(source)) { return; } if (!NotificationLatch.CheckSetNegative( NotificationLatchTarget.Favorite, source.Id, status.Id)) { return; } Task.Run(() => StatusModel.UpdateStatusInfo( status.Id, model => model.RemoveFavoritedUser(source.Id), _ => { StatusProxy.RemoveFavoritor(status.Id, source.Id); StatusBroadcaster.Republish(status); })); Head.NotifyUnfavorited(source, status); }