diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/App.xaml b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/App.xaml index d67f7f3d6..9ef10872e 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/App.xaml +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/App.xaml @@ -112,9 +112,9 @@ + Value="{StaticResource BlackColor}" /> + Value="{StaticResource BlackColor}" /> (); _unityContainer.RegisterType(); _unityContainer.RegisterType(); + _unityContainer.RegisterType(); } public T Resolve() diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs index f2a28a184..2cc8a9585 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/MainViewModel.cs @@ -3,11 +3,14 @@ using eShopOnContainers.ViewModels.Base; using eShopOnContainers.Core.Models.Navigation; using Xamarin.Forms; using eShopOnContainers.Core.ViewModels.Base; +using System.Windows.Input; namespace eShopOnContainers.Core.ViewModels { public class MainViewModel : ViewModelBase { + public ICommand SettingsCommand => new Command(Settings); + public override Task InitializeAsync(object navigationData) { IsBusy = true; @@ -20,5 +23,10 @@ namespace eShopOnContainers.Core.ViewModels return base.InitializeAsync(navigationData); } + + private void Settings() + { + NavigationService.NavigateToAsync(); + } } } \ No newline at end of file diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/SettingsViewModel.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/SettingsViewModel.cs new file mode 100644 index 000000000..659a921c8 --- /dev/null +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/ViewModels/SettingsViewModel.cs @@ -0,0 +1,9 @@ +using eShopOnContainers.ViewModels.Base; + +namespace eShopOnContainers.Core.ViewModels +{ + public class SettingsViewModel : ViewModelBase + { + + } +} diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/FiltersView.xaml b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/FiltersView.xaml index 35e84655b..e91b27527 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/FiltersView.xaml +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/FiltersView.xaml @@ -21,7 +21,9 @@ + Value="Fill" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/SettingsView.xaml.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/SettingsView.xaml.cs new file mode 100644 index 000000000..f7ad31a47 --- /dev/null +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Views/SettingsView.xaml.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using Xamarin.Forms; + +namespace eShopOnContainers.Core.Views +{ + public partial class SettingsView : ContentPage + { + public SettingsView() + { + InitializeComponent(); + } + } +} diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj index 73791230b..ab0e87af1 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj @@ -48,6 +48,7 @@ CartButton.xaml + @@ -99,6 +100,7 @@ + CartView.xaml @@ -126,6 +128,9 @@ ProfileView.xaml + + SettingsView.xaml + CartOrderItemTemplate.xaml @@ -303,6 +308,12 @@ Designer + + + MSBuild:UpdateDesignTimeXaml + Designer + + diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Renderers/CustomSwitchRenderer.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Renderers/CustomSwitchRenderer.cs new file mode 100644 index 000000000..a22a2936a --- /dev/null +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Renderers/CustomSwitchRenderer.cs @@ -0,0 +1,58 @@ +using System; +using Xamarin.Forms.Platform.Android; +using Xamarin.Forms; +using eShopOnContainers.Core.Controls; + +namespace eShopOnContainers.Droid.Renderers +{ + public class CustomSwitchRenderer : ViewRenderer + { + protected override void OnElementChanged(ElementChangedEventArgs e) + { + base.OnElementChanged(e); + + if (e.OldElement != null) + { + this.Element.Toggled -= ElementToggled; + return; + } + + if (this.Element == null) + { + return; + } + + var switchControl = new Android.Widget.Switch(Forms.Context) + { + TextOn = this.Element.TextOn, + TextOff = this.Element.TextOff + }; + + switchControl.CheckedChange += ControlValueChanged; + this.Element.Toggled += ElementToggled; + + this.SetNativeControl(switchControl); + } + + protected override void Dispose(bool disposing) + { + if (disposing) + { + this.Control.CheckedChange -= this.ControlValueChanged; + this.Element.Toggled -= ElementToggled; + } + + base.Dispose(disposing); + } + + private void ElementToggled(object sender, ToggledEventArgs e) + { + this.Control.Checked = this.Element.IsToggled; + } + + private void ControlValueChanged(object sender, EventArgs e) + { + this.Element.IsToggled = this.Control.Checked; + } + } +} \ No newline at end of file diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj index 83c3d49ab..9e9f9ebc9 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj @@ -203,6 +203,7 @@ + diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/App.xaml b/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/App.xaml index 25cd8e1e5..51f9ddfc0 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/App.xaml +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/App.xaml @@ -6,9 +6,9 @@ RequestedTheme="Light"> - + #00A69C - +