diff --git a/Version.targets b/Version.targets index 12b432cd9..af76c6aab 100644 --- a/Version.targets +++ b/Version.targets @@ -1,22 +1,24 @@  nightly + pre\d $(SYSTEM_PULLREQUEST_TARGETBRANCH) $(BUILD_SOURCEBRANCHNAME) - - $(NightlyTag) - -$(GitSemVerLabel) - - + + $([System.Text.RegularExpressions.Regex]::Match($(GitTag), $(RegexPre))) + $(PreOut) + $(NightlyTag) + -$(GitSemVerLabel) + @@ -34,7 +36,11 @@ +$(VersionMetadataLabel) $(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch) $(GitSemVerMajor).$(GitSemVerMinor).$(GitSemVerPatch)$(GitSemVerDashLabel)$(VersionMetadataPlusLabel) + $(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch).$(BUILDVERSION)$(GitSemVerDashLabel)$(VersionMetadataPlusLabel) + $(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch).$(BUILDVERSION42)$(GitSemVerDashLabel)$(VersionMetadataPlusLabel) + $(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch).$(BUILDVERSION43)$(GitSemVerDashLabel)$(VersionMetadataPlusLabel) + $(GitSemVerMajor).$(GitSemVerMinor).$(GitBaseVersionPatch).$(BUILDVERSION44)$(GitSemVerDashLabel)$(VersionMetadataPlusLabel) diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Issue7361.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Issue7361.cs new file mode 100644 index 000000000..e5c4d7134 --- /dev/null +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Issue7361.cs @@ -0,0 +1,99 @@ +using System; +using System.Collections.Generic; +using System.Text; +using Xamarin.Forms.CustomAttributes; +using Xamarin.Forms.Internals; + +namespace Xamarin.Forms.Controls.Issues +{ + [Preserve(AllMembers = true)] + [Issue(IssueTracker.Github, 7361, "[UWP] Stepper display error when using Slider", PlatformAffected.UWP)] + public class Issue7361 : TestContentPage + { + Slider TheSlider; + Stepper TheStepper; + Label ValueLabel; + + public Issue7361() + { + Title = "Issue 7361"; + } + + protected override void Init() + { + StackLayout layout = new StackLayout(); + layout.Orientation = StackOrientation.Vertical; + + var instructions = new Label + { + Margin = new Thickness(6), + Text = "Slide slider to the extreme Right and Left, check that the Stepper to the right's +/- buttons work as expected, " + + "becoming disabled at the Max and Min positions of the Slider, and then enabled again as the Slider moves towards the center." + }; + + StackLayout controlsLayout = new StackLayout(); + controlsLayout.Orientation= StackOrientation.Horizontal; + controlsLayout.HorizontalOptions = LayoutOptions.FillAndExpand; + + TheSlider = new Slider + { + Maximum = 100, + Minimum = 1, + HorizontalOptions = LayoutOptions.FillAndExpand, + MinimumTrackColor = Color.LightPink, + MaximumTrackColor = Color.LightPink + }; + controlsLayout.Children.Add(TheSlider); + + TheStepper = new Stepper + { + Maximum = 100, + Minimum = 1, + Increment = 1 + }; + controlsLayout.Children.Add(TheStepper); + + StackLayout labelLayout = new StackLayout(); + labelLayout.Orientation = StackOrientation.Horizontal; + labelLayout.HorizontalOptions = LayoutOptions.FillAndExpand; + + Label valueHeaderLabel = new Label + { + Text = "Value:", + FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label)) + }; + labelLayout.Children.Add(valueHeaderLabel); + + ValueLabel = new Label + { + Text = "", + FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label)) + }; + labelLayout.Children.Add(ValueLabel); + + layout.Children.Add(instructions); + layout.Children.Add(controlsLayout); + layout.Children.Add(labelLayout); + + Content = layout; + + TheSlider.Value = 50; + TheStepper.Value = 50; + TheSlider.ValueChanged += SliderChanged; + TheStepper.ValueChanged += StepperChanged; + } + + private void SliderChanged(object sender, ValueChangedEventArgs e) + { + TheStepper.Value = e.NewValue; + ValueLabel.Text = e.NewValue.ToString(); + } + + private void StepperChanged(object sender, ValueChangedEventArgs e) + { + TheSlider.Value = e.NewValue; + ValueLabel.Text = e.NewValue.ToString(); + } + } + +} diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems index 106f56153..9b0ab12f8 100644 --- a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems @@ -38,6 +38,7 @@ + Code @@ -1618,4 +1619,4 @@ MSBuild:Compile - \ No newline at end of file + diff --git a/Xamarin.Forms.Platform.UAP/StepperControl.cs b/Xamarin.Forms.Platform.UAP/StepperControl.cs index 4c7fd1713..5c010a59c 100644 --- a/Xamarin.Forms.Platform.UAP/StepperControl.cs +++ b/Xamarin.Forms.Platform.UAP/StepperControl.cs @@ -223,17 +223,17 @@ namespace Xamarin.Forms.Platform.UWP double increment = Increment; if (_plus != null) { - if (value + increment > Maximum) + if (value + increment > Maximum && _plusStateCache is null) _plusStateCache = PseudoDisable(_plus); - else + else if (value + increment <= Maximum) PsuedoEnable(_plus, ref _plusStateCache); } if (_minus != null) { - if (value - increment < Minimum) + if (value - increment < Minimum && _minusStateCache is null) _minusStateCache = PseudoDisable(_minus); - else + else if (value - increment >= Minimum) PsuedoEnable(_minus, ref _minusStateCache); } } diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 81af22fae..dcf4bde14 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -10,7 +10,13 @@ variables: - name: SolutionFile value: Xamarin.Forms.sln - name: BuildVersion - value: $[counter('$(Build.SourceBranchName)_counter', 1)] + value: $[counter(variables['Build.SourceBranch'], 1)] +- name: BuildVersion42 + value: $[counter('4.2.0', 910311)] +- name: BuildVersion43 + value: $[counter('4.3.0', 991211)] +- name: BuildVersion44 + value: $[counter('4.4.0', 991210)] - name: NUGET_VERSION value: 5.0.2 - name: DOTNET_SKIP_FIRST_TIME_EXPERIENCE