private async void OnSubredditChanged(SelectSubredditMessage message)
{
if (_selectedSubreddit == null && message == null)
return;
if (message != null)
{
if (message.Subreddit == _selectedSubreddit)
{
return;
}
_selectedSubreddit = message.Subreddit;
SelectedLink = null;
if (!message.DontRefresh)
{
_links = null;
RefreshLinks();
}
Heading = _selectedSubreddit.Data.DisplayName;
RaisePropertyChanged("DisplayingSubreddit");
var currentUser = await _userService.GetUser();
if (currentUser != null && currentUser.Me != null)
{
_subscribed = (await _redditService.GetSubscribedSubreddits()).Contains(_selectedSubreddit.Data.Name);
RaisePropertyChanged("NotSubscribed");
RaisePropertyChanged("Subscribed");
}
}
else
{
//set us back to default state
_selectedSubreddit = null;
SelectedLink = null;
_links = null;
Heading = null;
RaisePropertyChanged("DisplayingSubreddit");
_subscribed = false;
RaisePropertyChanged("NotSubscribed");
RaisePropertyChanged("Subscribed");
}
}