From 50ce436941bb9ab842926837d26cf5ed2aba98d5 Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Thu, 29 Jan 2026 20:06:02 +0100 Subject: [PATCH] [MediaAccessibility] Tweak nullability in MACaptionAppearance. Allow null for a few parameters where we handle null values with a defined (non-throwing) behavior. --- src/MediaAccessibility/MediaAccessibility.cs | 8 ++++++-- tests/cecil-tests/Documentation.KnownFailures.txt | 2 -- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/MediaAccessibility/MediaAccessibility.cs b/src/MediaAccessibility/MediaAccessibility.cs index b6dcc8cf8757..4887aaba1937 100644 --- a/src/MediaAccessibility/MediaAccessibility.cs +++ b/src/MediaAccessibility/MediaAccessibility.cs @@ -308,11 +308,13 @@ public static MACaptionAppearanceTextEdgeStyle GetTextEdgeStyle (MACaptionAppear [DllImport (Constants.MediaAccessibilityLibrary)] static extern void MACaptionAppearanceDidDisplayCaptions (IntPtr /* CFArratRef */ strings); + /// Notifies the system that the specified captions were displayed. + /// The captions that were displayed, or null or an empty array if no captions were displayed. [SupportedOSPlatform ("tvos13.0")] [SupportedOSPlatform ("macos")] [SupportedOSPlatform ("ios13.0")] [SupportedOSPlatform ("maccatalyst")] - public static void DidDisplayCaptions (string [] strings) + public static void DidDisplayCaptions (string []? strings) { if ((strings is null) || (strings.Length == 0)) MACaptionAppearanceDidDisplayCaptions (IntPtr.Zero); @@ -322,11 +324,13 @@ public static void DidDisplayCaptions (string [] strings) } } + /// Notifies the system that the specified captions were displayed. + /// The captions that were displayed, or null or an empty array if no captions were displayed. [SupportedOSPlatform ("tvos13.0")] [SupportedOSPlatform ("macos")] [SupportedOSPlatform ("ios13.0")] [SupportedOSPlatform ("maccatalyst")] - public static void DidDisplayCaptions (NSAttributedString [] strings) + public static void DidDisplayCaptions (NSAttributedString []? strings) { // CFAttributedString is “toll-free bridged” with its Foundation counterpart, NSAttributedString. // https://developer.apple.com/documentation/corefoundation/cfattributedstring?language=objc diff --git a/tests/cecil-tests/Documentation.KnownFailures.txt b/tests/cecil-tests/Documentation.KnownFailures.txt index 9333b1029ed0..1f11d69c2001 100644 --- a/tests/cecil-tests/Documentation.KnownFailures.txt +++ b/tests/cecil-tests/Documentation.KnownFailures.txt @@ -12894,8 +12894,6 @@ M:MapKit.MKUserTrackingButton.MKUserTrackingButtonAppearance.#ctor(System.IntPtr M:MapKit.MKZoomControl.#ctor(CoreGraphics.CGRect) M:MapKit.MKZoomControl.Dispose(System.Boolean) M:MapKit.MKZoomControl.MKZoomControlAppearance.#ctor(System.IntPtr) -M:MediaAccessibility.MACaptionAppearance.DidDisplayCaptions(Foundation.NSAttributedString[]) -M:MediaAccessibility.MACaptionAppearance.DidDisplayCaptions(System.String[]) M:MediaAccessibility.MAFlashingLightsProcessor.CanProcess(IOSurface.IOSurface) M:MediaAccessibility.MAFlashingLightsProcessor.Process(IOSurface.IOSurface,IOSurface.IOSurface,System.Double,Foundation.NSDictionary) M:MediaAccessibility.MAImageCaptioning.GetCaption(Foundation.NSUrl,Foundation.NSError@)