private void RefreshMessages() { if (_isRefreshingMessage) { return; } this.MessageList.Visibility = ViewStates.Gone; _isRefreshingMessage = true; ((MainActivity)this.Activity).BlockUI(); Model.Message[] messages = null; _cts1 = new CancellationTokenSource(); AppController.RefreshMessages(_cts1, _issue.IssueId, (newMessages) => { messages = newMessages; }, (error) => { Toast.MakeText(this.Activity.ApplicationContext, error, ToastLength.Long).Show(); }, () => { if (messages != null) { LoadMessages(messages); if (_adapter?.ItemCount > 0) { this.MessageList.Visibility = ViewStates.Visible; } _isRefreshingMessage = false; ((MainActivity)this.Activity).UnblockUI(); } else { AppController.Utility.ExecuteOnAsyncTask(_cts1.Token, () => { messages = AppController.GetMessages(_issue.IssueId); }, () => { LoadMessages(messages); if (_adapter?.ItemCount > 0) { this.MessageList.Visibility = ViewStates.Visible; } _isRefreshingMessage = false; ((MainActivity)this.Activity).UnblockUI(); }); } }); }
private void RefreshMessages() { if (_isRefreshingMessage) { return; } this.MessageList.Hidden = true; _isRefreshingMessage = true; ((MainViewController)this.MainViewController).BlockUI(); Model.Message[] messages = null; _cts1 = new CancellationTokenSource(); AppController.RefreshMessages(_cts1, _issue.IssueId, (newMessages) => { messages = newMessages; }, (error) => { UIToast.MakeText(error, UIToastLength.Long).Show(); }, () => { if (messages != null) { LoadMessages(messages); if (_source?.Count > 0) { this.MessageList.Hidden = false; } _isRefreshingMessage = false; ((MainViewController)this.MainViewController).UnblockUI(); } else { AppController.Utility.ExecuteOnAsyncTask(_cts1.Token, () => { messages = AppController.GetMessages(_issue.IssueId); }, () => { LoadMessages(messages); if (_source?.Count > 0) { this.MessageList.Hidden = false; } _isRefreshingMessage = false; ((MainViewController)this.MainViewController).UnblockUI(); }); } }); }