diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 76bc033c97..97447c5c98 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -82,7 +82,7 @@ jobs: inputs: script: 'dotnet workload install maui' - - pwsh: | + - powershell: | Invoke-WebRequest 'https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.ps1' -OutFile 'workload-install.ps1' .\workload-install.ps1 displayName: Install Tizen Workload @@ -212,7 +212,7 @@ jobs: inputs: script: dotnet workload install maui --skip-sign-check --source https://api.nuget.org/v3/index.json - - pwsh: | + - powershell: | Invoke-WebRequest 'https://raw.githubusercontent.com/Samsung/Tizen.NET/main/workload/scripts/workload-install.ps1' -OutFile 'workload-install.ps1' .\workload-install.ps1 displayName: Install Tizen Workload diff --git a/src/CommunityToolkit.Maui/Behaviors/PlatformBehaviors/Touch/TouchBehavior.android.cs b/src/CommunityToolkit.Maui/Behaviors/PlatformBehaviors/Touch/TouchBehavior.android.cs index 1f53f9fd90..6b5a56c719 100644 --- a/src/CommunityToolkit.Maui/Behaviors/PlatformBehaviors/Touch/TouchBehavior.android.cs +++ b/src/CommunityToolkit.Maui/Behaviors/PlatformBehaviors/Touch/TouchBehavior.android.cs @@ -42,7 +42,7 @@ protected override void OnAttachedTo(VisualElement bindable, AView platformView) Element = bindable; view = platformView; - viewGroup = Microsoft.Maui.Platform.ViewExtensions.GetParentOfType(platformView); + viewGroup = platformView.GetParentOfType(); platformView.Touch += OnTouch; UpdateClickHandler(); @@ -289,28 +289,34 @@ sealed class AccessibilityListener : Java.Lang.Object, AccessibilityManager.IAccessibilityStateChangeListener, AccessibilityManager.ITouchExplorationStateChangeListener { - TouchBehavior? platformTouchBehavior; + readonly WeakReference platformTouchBehaviorReference; internal AccessibilityListener(TouchBehavior platformTouchBehavior) { - this.platformTouchBehavior = platformTouchBehavior; + platformTouchBehaviorReference = new(platformTouchBehavior); } public void OnAccessibilityStateChanged(bool enabled) { - platformTouchBehavior?.UpdateClickHandler(); + if (platformTouchBehaviorReference.TryGetTarget(out var platformTouchBehavior)) + { + platformTouchBehavior.UpdateClickHandler(); + } } public void OnTouchExplorationStateChanged(bool enabled) { - platformTouchBehavior?.UpdateClickHandler(); + if (platformTouchBehaviorReference.TryGetTarget(out var platformTouchBehavior)) + { + platformTouchBehavior.UpdateClickHandler(); + } } protected override void Dispose(bool disposing) { if (disposing) { - platformTouchBehavior = null; + platformTouchBehaviorReference.SetTarget(null); } base.Dispose(disposing);