public void ChangeCurrentActivity(ActivityModel newActivity, int nextIndex) { if (_activities.Count <= nextIndex) { _activities.Add(newActivity); } CurrentIndex = nextIndex; BackStackChanged?.Invoke(); }
public bool RemoveActivityAt(int index) { if (index == CurrentIndex) { throw new ArgumentException("The current activity cannot be removed from the stack. "); } _activities.RemoveAt(index); if (index < CurrentIndex) { CurrentIndex--; } BackStackChanged?.Invoke(); return(true); }
private void ActivityStackManagerOnBackStackChanged() { BackStackChanged?.Invoke(this, EventArgs.Empty); }