From 16887287375dd5348d5800a14b92116ccfeba220 Mon Sep 17 00:00:00 2001 From: Samantha Houts Date: Wed, 30 Mar 2016 12:01:54 -0700 Subject: [iOS] PageRenderer no longer swallows touches Will allow users to create custom renderers that have touch events. --- .../Bugzilla21177.cs | 58 ++++++++++++++++++++++ .../Xamarin.Forms.Controls.Issues.Shared.projitems | 1 + 2 files changed, 59 insertions(+) create mode 100644 Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla21177.cs (limited to 'Xamarin.Forms.Controls.Issues') diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla21177.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla21177.cs new file mode 100644 index 00000000..bf1be618 --- /dev/null +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla21177.cs @@ -0,0 +1,58 @@ +using System; + +using Xamarin.Forms.CustomAttributes; +using System.Collections; +using System.Linq; +using System.Collections.Generic; + +#if UITEST +using Xamarin.UITest.iOS; +using Xamarin.UITest; +using NUnit.Framework; +#endif + +namespace Xamarin.Forms.Controls +{ + [Preserve(AllMembers = true)] + [Issue(IssueTracker.Bugzilla, 21177, "Using a UICollectionView in a ViewRenderer results in issues with selection")] + public class Bugzilla21177 : TestContentPage + { + public class CollectionView : View + { + public event EventHandler ItemSelected; + + public void InvokeItemSelected(int index) + { + if (ItemSelected != null) + { + ItemSelected.Invoke(this, index); + } + } + } + + protected override void Init() + { + var view = new CollectionView() { AutomationId = "view" }; + view.ItemSelected += View_ItemSelected; + Content = view; + } + + private void View_ItemSelected(object sender, int e) + { + DisplayAlert("Success", "Success", "Cancel"); + } + +#if UITEST + [Test] + public void Bugzilla21177Test() + { + if (RunningApp is iOSApp) + { + RunningApp.WaitForElement(q => q.Marked("#1")); + RunningApp.Tap(q => q.Marked("#1")); + RunningApp.WaitForElement(q => q.Marked("Success")); + } + } +#endif + } +} 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 81a6c2e2..a2fcb3ea 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 @@ -125,6 +125,7 @@ + -- cgit v1.2.3