public async override void OnViewCreated (View view, Bundle savedInstanceState)
        {
            base.OnViewCreated (view, savedInstanceState);

            viewModel = new EditTimeEntryViewModel (TimeEntryIds);
            viewModel.OnIsLoadingChanged += OnModelLoaded;
            await viewModel.Init ();
        }
        public EditGroupedTimeEntryFragment (IList<TimeEntryData> timeEntryList)
        {
            var ids = timeEntryList.Select ( t => t.Id.ToString ()).ToList ();

            var args = new Bundle ();
            args.PutStringArrayList (TimeEntriesIdsArgument, ids);
            Arguments = args;

            viewModel = new EditTimeEntryViewModel (timeEntryList);
        }
        public async override void OnViewCreated (View view, Bundle savedInstanceState)
        {
            base.OnViewCreated (view, savedInstanceState);

            if (viewModel == null) {
                var timeEntryList = await EditTimeEntryActivity.GetIntentTimeEntryData (Activity.Intent);
                viewModel = new EditTimeEntryViewModel (timeEntryList);
            }

            viewModel.OnIsLoadingChanged += OnModelLoaded;
            viewModel.Init ();
        }
 public EditTimeEntryViewController (TimeEntryData data, List<TagData> tagList)
 {
     this.tagList = tagList;
     this.data = data;
     ViewModel = EditTimeEntryViewModel.Init (data, tagList);
 }
        public override void OnDestroyView ()
        {
            if (viewModel != null) {
                // TimeEntry property must be nullified to
                // stop event listeners on BaseEditTimeEntryFragment.
                editTimeEntryFragment.TimeEntry = null;

                viewModel.OnProjectListChanged -= OnProjectListChanged;
                viewModel.OnIsLoadingChanged -= OnModelLoaded;
                viewModel.Dispose ();
                viewModel = null;
            }
            base.OnDestroyView ();
        }