Merge branch '4.8.0' into 5.0.0

# Conflicts:
#	Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems
#	build.cake
#	build/steps/build-osx.yml
This commit is contained in:
Shane Neuville 2020-09-23 15:06:58 -05:00
Родитель 7200e07dc7 4704383e0a
Коммит 8f081252d3
7 изменённых файлов: 75 добавлений и 24 удалений

Просмотреть файл

@ -0,0 +1,33 @@
using Xamarin.Forms.CustomAttributes;
using Xamarin.Forms.Internals;
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
#if UITEST
using Xamarin.Forms.Core.UITests;
using Xamarin.UITest;
using NUnit.Framework;
#endif
namespace Xamarin.Forms.Controls.Issues
{
#if UITEST
[Category(UITestCategories.ManualReview)]
#endif
[Preserve(AllMembers = true)]
[Issue(IssueTracker.Github, 11963, "Time Picker is broken in Xamarin.Forms as of iOS 14 Public Beta 6", PlatformAffected.iOS)]
public class Issue11963 : TestContentPage
{
protected override void Init()
{
var timePicker = new TimePicker();
Content = new StackLayout
{
Spacing = 20,
VerticalOptions = LayoutOptions.Center,
Children = { timePicker }
};
}
}
}

Просмотреть файл

@ -1587,6 +1587,11 @@
</Compile>
<Compile Include="$(MSBuildThisFileDirectory)Issue11869.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11723.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11737.xaml.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11764.xaml.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11573.xaml.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11496.xaml.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11963.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11831.xaml.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Issue11496.xaml.cs" >
<DependentUpon>Issue11496.xaml</DependentUpon>
@ -1883,6 +1888,9 @@
<EmbeddedResource Include="$(MSBuildThisFileDirectory)Issue11875.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)Issue11653.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)Issue11737.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>

Просмотреть файл

@ -13,7 +13,7 @@
BindableProperty.Create(nameof(Stroke), typeof(Brush), typeof(Shape), null);
public static readonly BindableProperty StrokeThicknessProperty =
BindableProperty.Create(nameof(StrokeThickness), typeof(double), typeof(Shape), 0.0);
BindableProperty.Create(nameof(StrokeThickness), typeof(double), typeof(Shape), 1.0);
public static readonly BindableProperty StrokeDashArrayProperty =
BindableProperty.Create(nameof(StrokeDashArray), typeof(DoubleCollection), typeof(Shape), null,

Просмотреть файл

@ -38,6 +38,7 @@ namespace Xamarin.Forms
static bool? s_isiOS10OrNewer;
static bool? s_isiOS11OrNewer;
static bool? s_isiOS13OrNewer;
static bool? s_isiOS14OrNewer;
static bool? s_respondsTosetNeedsUpdateOfHomeIndicatorAutoHidden;
internal static bool IsiOS9OrNewer
@ -81,6 +82,16 @@ namespace Xamarin.Forms
}
}
internal static bool IsiOS14OrNewer
{
get
{
if (!s_isiOS14OrNewer.HasValue)
s_isiOS14OrNewer = UIDevice.CurrentDevice.CheckSystemVersion(14, 0);
return s_isiOS14OrNewer.Value;
}
}
internal static bool RespondsToSetNeedsUpdateOfHomeIndicatorAutoHidden
{
get

Просмотреть файл

@ -81,7 +81,12 @@ namespace Xamarin.Forms.Platform.iOS
entry.EditingDidEnd += OnEnded;
_picker = new UIDatePicker { Mode = UIDatePickerMode.Time, TimeZone = new NSTimeZone("UTC") };
#if __XCODE11__
if (Forms.IsiOS14OrNewer)
{
_picker.PreferredDatePickerStyle = UIKit.UIDatePickerStyle.Wheels;
}
#endif
var width = UIScreen.MainScreen.Bounds.Width;
var toolbar = new UIToolbar(new RectangleF(0, 0, width, 44)) { BarStyle = UIBarStyle.Default, Translucent = true };
var spacer = new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace);

Просмотреть файл

@ -181,19 +181,15 @@ string monoVersion = "";
if(releaseChannel == ReleaseChannel.Stable)
{
if(IsXcodeVersionOver("11.4"))
if(IsXcodeVersionAtLeast("12.0"))
{
}
else
{
// Xcode 11.3
monoMajorVersion = "";
monoPatchVersion = "";
androidSDK_macos = "https://download.visualstudio.microsoft.com/download/pr/8f94ca38-039a-4c9f-a51a-a6cb33c76a8c/aa46188c5f7a2e0c6f2d4bd4dc261604/xamarin.android-10.2.0.100.pkg";
iOSSDK_macos = $"https://download.visualstudio.microsoft.com/download/pr/8f94ca38-039a-4c9f-a51a-a6cb33c76a8c/21e09d8084eb7c15eaa07c970e0eccdc/xamarin.ios-13.14.1.39.pkg";
macSDK_macos = $"https://download.visualstudio.microsoft.com/download/pr/8f94ca38-039a-4c9f-a51a-a6cb33c76a8c/979144aead55378df75482d35957cdc9/xamarin.mac-6.14.1.39.pkg";
monoSDK_macos = "https://download.visualstudio.microsoft.com/download/pr/8f94ca38-039a-4c9f-a51a-a6cb33c76a8c/3a376d8c817ec4d720ecca2d95ceb4c1/monoframework-mdk-6.8.0.123.macos10.xamarin.universal.pkg";
iOSSDK_macos = $"https://bosstoragemirror.blob.core.windows.net/wrench/jenkins/d16-7-xcode11.7/3016ffe2b0ee27bf4a2d61e6161430d6bbd62f78/7/package/notarized/xamarin.ios-13.20.3.5.pkg";
macSDK_macos = $"https://bosstoragemirror.blob.core.windows.net/wrench/jenkins/d16-7-xcode11.7/3016ffe2b0ee27bf4a2d61e6161430d6bbd62f78/7/package/notarized/xamarin.mac-6.20.3.5.pkg";
}
}
@ -1089,11 +1085,19 @@ MSBuildSettings GetMSBuildSettings(PlatformTarget? platformTarget = PlatformTarg
return buildSettings;
}
bool IsXcodeVersionOver(string version)
bool IsXcodeVersionAtLeast(string version)
{
if(IsRunningOnWindows())
return true;
return XcodeVersion() >= Version.Parse(version);
}
Version XcodeVersion()
{
if(IsRunningOnWindows())
return null;
IEnumerable<string> redirectedStandardOutput;
StartProcess("xcodebuild",
new ProcessSettings {
@ -1109,22 +1113,12 @@ bool IsXcodeVersionOver(string version)
{
var xcodeVersion = Version.Parse(item.Replace("Xcode", ""));
Information($"Xcode: {xcodeVersion}");
var xcodePath = xcodeVersion.ToString().Replace(".0", "");
if(isCIBuild)
{
StartProcess("xcode-select",
new ProcessSettings {
Arguments = new ProcessArgumentBuilder().Append($"-s /Applications/Xcode_{xcodePath}.app")
}
);
}
return Version.Parse(item.Replace("Xcode", "")) >= Version.Parse(version);
return xcodeVersion;
}
}
return true;
return null;
}
IReadOnlyList<AppleSimulator> iosSimulators = null;
@ -1184,4 +1178,4 @@ public void SetEnvironmentVariable(string key, string value, ICakeContext contex
{
System.Environment.SetEnvironmentVariable(key, value);
}
}
}

Просмотреть файл

@ -8,7 +8,7 @@ if (IsMac)
}
ForceJavaCleanup();
Item (XreItem.Java_OpenJDK_1_8_0_25);
OpenJDK ("1.8.0-40");
string releaseChannel = Environment.GetEnvironmentVariable ("CHANNEL");
Console.WriteLine ("ANDROID_SDK_MAC: {0}", Environment.GetEnvironmentVariable ("ANDROID_SDK_MAC"));