public TimeEntriesLogViewSource( ObservableGroupedOrderedCollection <TimeEntryViewModel> collection, string cellIdentifier, ITimeService timeService, ISchedulerProvider schedulerProvider) : base(collection, cellIdentifier) { Ensure.Argument.IsNotNull(timeService, nameof(timeService)); Ensure.Argument.IsNotNull(schedulerProvider, nameof(schedulerProvider)); this.timeService = timeService; this.schedulerProvider = schedulerProvider; if (!UIDevice.CurrentDevice.CheckSystemVersion(11, 0)) { deleteTableViewRowAction = UITableViewRowAction.Create( UITableViewRowActionStyle.Destructive, Resources.Delete, handleDeleteTableViewRowAction); deleteTableViewRowAction.BackgroundColor = Foundation.MvvmCross.Helper.Color.TimeEntriesLog.DeleteSwipeActionBackground.ToNativeColor(); } ContinueTap = continueTapSubject.AsDriver(schedulerProvider); SwipeToContinue = swipeToContinueSubject.AsDriver(schedulerProvider); SwipeToDelete = swipeToDeleteSubject.AsDriver(schedulerProvider); FirstCell = firstCellSubject.AsDriver(schedulerProvider); }