summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Controls.Issues
diff options
context:
space:
mode:
authorPaul DiPietro <pauldipietro@users.noreply.github.com>2016-12-16 09:58:47 -0600
committerRui Marinho <me@ruimarinho.net>2016-12-16 15:58:47 +0000
commitdb4486db8f41642dcd2948c929bee54500d23938 (patch)
tree1ab1b646ce0804781f2d00bd124c294ca0dce8c6 /Xamarin.Forms.Controls.Issues
parent3716c57aabc2407b02a8fd724d6ad9074e7b9d8f (diff)
downloadxamarin-forms-db4486db8f41642dcd2948c929bee54500d23938.tar.gz
xamarin-forms-db4486db8f41642dcd2948c929bee54500d23938.tar.bz2
xamarin-forms-db4486db8f41642dcd2948c929bee54500d23938.zip
[WinRT] Use a queue to prevent multiple MessageDialogs from causing a crash (#347)
* [WinRT] Use a queue to prevent multiple MessageDialogs from causing a crash * Make change to use Device.IsInvokeRequired
Diffstat (limited to 'Xamarin.Forms.Controls.Issues')
-rw-r--r--Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla43469.cs37
-rw-r--r--Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems1
2 files changed, 38 insertions, 0 deletions
diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla43469.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla43469.cs
new file mode 100644
index 00000000..b81f98e3
--- /dev/null
+++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla43469.cs
@@ -0,0 +1,37 @@
+using Xamarin.Forms.CustomAttributes;
+using Xamarin.Forms.Internals;
+using System;
+using System.Threading.Tasks;
+
+#if UITEST
+using Xamarin.UITest;
+using NUnit.Framework;
+#endif
+
+namespace Xamarin.Forms.Controls
+{
+ [Preserve(AllMembers = true)]
+ [Issue(IssueTracker.Bugzilla, 43469, "Calling DisplayAlert twice in WinRT causes a crash", PlatformAffected.WinRT)]
+ public class Bugzilla43469 : TestContentPage
+ {
+ protected override void Init()
+ {
+ var button = new Button { Text = "Click to call DisplayAlert twice" };
+
+ button.Clicked += (sender, args) =>
+ {
+ Device.BeginInvokeOnMainThread(new Action(async () =>
+ {
+ await DisplayAlert("First", "Text", "Cancel");
+ }));
+
+ Device.BeginInvokeOnMainThread(new Action(async () =>
+ {
+ await DisplayAlert("Second", "Text", "Cancel");
+ }));
+ };
+
+ Content = button;
+ }
+ }
+} \ No newline at end of file
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 76c721f1..57f1cb83 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
@@ -131,6 +131,7 @@
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla42364.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla42519.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla43313.cs" />
+ <Compile Include="$(MSBuildThisFileDirectory)Bugzilla43469.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla43516.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla43663.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Bugzilla44944.cs" />