diff --git a/CodeHub.Core/ViewModels/Issues/IssueLabelsViewModel.cs b/CodeHub.Core/ViewModels/Issues/IssueLabelsViewModel.cs index 216ce13b..a651acfb 100644 --- a/CodeHub.Core/ViewModels/Issues/IssueLabelsViewModel.cs +++ b/CodeHub.Core/ViewModels/Issues/IssueLabelsViewModel.cs @@ -12,6 +12,8 @@ namespace CodeHub.Core.ViewModels.Issues { public class IssueLabelsViewModel : LoadableViewModel { + private IEnumerable _originalLables; + private bool _isSaving; public bool IsSaving { @@ -48,7 +50,9 @@ public void Init(NavObject navObject) Repository = navObject.Repository; Id = navObject.Id; SaveOnSelect = navObject.SaveOnSelect; - SelectedLabels.Items.Reset(GetService().Get() as IEnumerable); + + _originalLables = GetService().Get() as IEnumerable; + SelectedLabels.Items.Reset(_originalLables); } public ICommand SaveLabelChoices @@ -58,6 +62,13 @@ public ICommand SaveLabelChoices private async Task SelectLabels(IEnumerable x) { + //If nothing has changed, dont do anything... + if (_originalLables != null && _originalLables.Intersect(x).Count() == _originalLables.Count()) + { + ChangePresentation(new MvxClosePresentationHint(this)); + return; + } + if (SaveOnSelect) { try diff --git a/CodeHub.iOS/Setup.cs b/CodeHub.iOS/Setup.cs index 5ac01a04..70c7bfc2 100755 --- a/CodeHub.iOS/Setup.cs +++ b/CodeHub.iOS/Setup.cs @@ -52,11 +52,11 @@ protected override Assembly[] GetViewModelAssemblies() list.Add(typeof(BaseStartupViewModel).Assembly); return list.ToArray(); } -// -// protected override IMvxTrace CreateDebugTrace() -// { -// return new ; -// } + + protected override Cirrious.CrossCore.Platform.IMvxTrace CreateDebugTrace() + { + return new Cirrious.CrossCore.Platform.MvxDebugOnlyTrace(); + } protected override void FillBindingNames(IMvxBindingNameRegistry obj) { diff --git a/CodeHub.iOS/Views/Issues/IssueView.cs b/CodeHub.iOS/Views/Issues/IssueView.cs index ecb70153..546c0fa6 100755 --- a/CodeHub.iOS/Views/Issues/IssueView.cs +++ b/CodeHub.iOS/Views/Issues/IssueView.cs @@ -112,9 +112,8 @@ public void RenderIssue() }; labelsElement.Tapped += () => ViewModel.GoToLabelsCommand.Execute(null); - - secDetails.Add(milestoneElement); secDetails.Add(assigneeElement); + secDetails.Add(milestoneElement); secDetails.Add(labelsElement); root.Add(secDetails);