diff --git a/src/UIKit/UIEnums.cs b/src/UIKit/UIEnums.cs index 0fc51a1877b6..366881f8b625 100644 --- a/src/UIKit/UIEnums.cs +++ b/src/UIKit/UIEnums.cs @@ -4937,4 +4937,11 @@ public enum UIViewLayoutRegionAdaptivityAxis : long { Horizontal, Vertical, } + + [TV (26, 0), iOS (26, 0), MacCatalyst (26, 0)] + [Native] + public enum UIGlassEffectStyle : long { + Regular, + Clear, + } } diff --git a/src/uikit.cs b/src/uikit.cs index 59b15471ae13..a6b5ff72a77c 100644 --- a/src/uikit.cs +++ b/src/uikit.cs @@ -8108,6 +8108,11 @@ interface UIDocument : NSFilePresenter, NSProgressReporting, UIUserActivityResto [Notification] NSString StateChangedNotification { get; } + [MacCatalyst (26, 0), NoTV, iOS (26, 0)] + [Notification] + [Field ("UIDocumentDidMoveToWritableLocationNotification")] + NSString DidMoveToWritableLocationNotification { get; } + // ActivityContinuation Category [MacCatalyst (13, 1)] [Export ("userActivity", ArgumentSemantic.Retain)] @@ -8127,6 +8132,9 @@ interface UIDocument : NSFilePresenter, NSProgressReporting, UIUserActivityResto [Field ("NSUserActivityDocumentURLKey")] NSString UserActivityDocumentUrlKey { get; } + [MacCatalyst (26, 0), NoTV, iOS (26, 0)] + [Field ("UIDocumentDidMoveToWritableLocationOldURLKey")] + NSString DidMoveToWritableLocationOldUrlKey { get; } } interface IUIDynamicAnimatorDelegate { } @@ -17333,6 +17341,10 @@ interface UISearchBarDelegate { If developers do not assign a value to this event, this will reset the value for the WeakDelegate property to an internal handler that maps delegates to events. """)] void ListButtonClicked (UISearchBar searchBar); + + [MacCatalyst (26, 0), TV (26, 0), iOS (26, 0)] + [Export ("searchBar:shouldChangeTextInRanges:replacementText:"), IgnoredInDelegate] + bool ShouldChangeText (UISearchBar searchBar, NSValue [] ranges, string replacementText); } [MacCatalyst (13, 1)] @@ -22959,6 +22971,14 @@ interface UIView : UIAppearance, UIAppearanceContainer, UIAccessibility, UIDynam [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] [Export ("layoutGuideForLayoutRegion:")] UILayoutGuide GetLayoutGuide (UIViewLayoutRegion layoutRegion); + + [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] + [Export ("cornerConfiguration", ArgumentSemantic.Copy)] + UICornerConfiguration CornerConfiguration { get; set; } + + [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] + [Export ("effectiveRadiusForCorner:")] + nfloat SetEffectiveRadius (UIRectCorner corner); } /// Class that implements a text field in a view. @@ -27101,6 +27121,10 @@ interface UIGlassEffect { [NullAllowed, Export ("tintColor", ArgumentSemantic.Copy)] UIColor TintColor { get; set; } + + [Static] + [Export ("effectWithStyle:")] + UIGlassEffect Create (UIGlassEffectStyle style); } [TV (26, 0), iOS (26, 0), MacCatalyst (26, 0)] @@ -35046,6 +35070,21 @@ interface UIButtonConfiguration : NSCopying, NSSecureCoding { [Export ("symbolContentTransition", ArgumentSemantic.Strong)] [NullAllowed] NSSymbolContentTransition SymbolContentTransition { get; set; } + + [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] + [Static] + [Export ("clearGlassButtonConfiguration")] + UIButtonConfiguration ClearGlassButtonConfiguration { get; } + + [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] + [Static] + [Export ("prominentClearGlassButtonConfiguration")] + UIButtonConfiguration ProminentClearGlassButtonConfiguration { get; } + + [iOS (26, 0), TV (26, 0), MacCatalyst (26, 0)] + [Static] + [Export ("prominentGlassButtonConfiguration")] + UIButtonConfiguration ProminentGlassButtonConfiguration { get; } } [NoTV, iOS (15, 0), MacCatalyst (15, 0)] @@ -38940,4 +38979,73 @@ interface UITraitSplitViewControllerLayoutEnvironment : UINSIntegerTraitDefiniti interface UITraitTabAccessoryEnvironment : UINSIntegerTraitDefinition { } + + [TV (26, 0), MacCatalyst (26, 0), iOS (26, 0)] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface UICornerConfiguration : NSCopying { + // Following Swift naming suggestions in all of these methods below. + + [Static] + [Export ("configurationWithRadius:")] + UICornerConfiguration CreateCorners (UICornerRadius radius); + + [Static] + [Export ("configurationWithTopLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:")] + UICornerConfiguration CreateCorners ([NullAllowed] UICornerRadius topLeftRadius, [NullAllowed] UICornerRadius topRightRadius, [NullAllowed] UICornerRadius bottomLeftRadius, [NullAllowed] UICornerRadius bottomRightRadius); + + [Static] + [Export ("capsuleConfiguration")] + UICornerConfiguration CreateCapsule (); + + [Static] + [Export ("capsuleConfigurationWithMaximumRadius:")] + UICornerConfiguration CreateCapsule (nfloat maximumRadius); + + [Static] + [Export ("configurationWithUniformRadius:")] + UICornerConfiguration CreateUniformCorners (UICornerRadius radius); + + [Static] + [Export ("configurationWithUniformTopRadius:uniformBottomRadius:")] + UICornerConfiguration CreateUniformEdgesTopBottom (UICornerRadius topRadius, UICornerRadius bottomRadius); + + [Static] + [Export ("configurationWithUniformLeftRadius:uniformRightRadius:")] + UICornerConfiguration CreateUniformEdgesLeftRight (UICornerRadius leftRadius, UICornerRadius rightRadius); + + [Static] + [Export ("configurationWithUniformTopRadius:bottomLeftRadius:bottomRightRadius:")] + UICornerConfiguration CreateUniformTopRadius (UICornerRadius topRadius, [NullAllowed] UICornerRadius bottomLeftRadius, [NullAllowed] UICornerRadius bottomRightRadius); + + [Static] + [Export ("configurationWithUniformBottomRadius:topLeftRadius:topRightRadius:")] + UICornerConfiguration CreateUniformBottomRadius (UICornerRadius bottomRadius, [NullAllowed] UICornerRadius topLeftRadius, [NullAllowed] UICornerRadius topRightRadius); + + [Static] + [Export ("configurationWithUniformLeftRadius:topRightRadius:bottomRightRadius:")] + UICornerConfiguration CreateUniformLeftRadius (UICornerRadius leftRadius, [NullAllowed] UICornerRadius topRightRadius, [NullAllowed] UICornerRadius bottomRightRadius); + + [Static] + [Export ("configurationWithUniformRightRadius:topLeftRadius:bottomLeftRadius:")] + UICornerConfiguration CreateUniformRightRadius (UICornerRadius rightRadius, [NullAllowed] UICornerRadius topLeftRadius, [NullAllowed] UICornerRadius bottomLeftRadius); + } + + [TV (26, 0), MacCatalyst (26, 0), iOS (26, 0)] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface UICornerRadius : NSCopying { + + [Static] + [Export ("fixedRadius:")] + UICornerRadius CreateFixed (nfloat radius); + + [Static] + [Export ("containerConcentricRadius")] + UICornerRadius CreateContainerConcentric (); + + [Static] + [Export ("containerConcentricRadiusWithMinimum:")] + UICornerRadius CreateContainerConcentric (nfloat minimum); + } } diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo deleted file mode 100644 index 83a7b1bf7571..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-UIKit.todo +++ /dev/null @@ -1,27 +0,0 @@ -!missing-enum! UIGlassEffectStyle not bound -!missing-field! UIDocumentDidMoveToWritableLocationNotification not bound -!missing-field! UIDocumentDidMoveToWritableLocationOldURLKey not bound -!missing-protocol-member! UISearchBarDelegate::searchBar:shouldChangeTextInRanges:replacementText: not found -!missing-selector! +UIButtonConfiguration::clearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentClearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentGlassButtonConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfigurationWithMaximumRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithTopLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformBottomRadius:topLeftRadius:topRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:topRightRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:uniformRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRightRadius:topLeftRadius:bottomLeftRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:uniformBottomRadius: not bound -!missing-selector! +UICornerRadius::containerConcentricRadius not bound -!missing-selector! +UICornerRadius::containerConcentricRadiusWithMinimum: not bound -!missing-selector! +UICornerRadius::fixedRadius: not bound -!missing-selector! +UIGlassEffect::effectWithStyle: not bound -!missing-selector! UIView::cornerConfiguration not bound -!missing-selector! UIView::effectiveRadiusForCorner: not bound -!missing-selector! UIView::setUIView: not bound -!missing-type! UICornerConfiguration not bound -!missing-type! UICornerRadius not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo deleted file mode 100644 index 83a7b1bf7571..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-UIKit.todo +++ /dev/null @@ -1,27 +0,0 @@ -!missing-enum! UIGlassEffectStyle not bound -!missing-field! UIDocumentDidMoveToWritableLocationNotification not bound -!missing-field! UIDocumentDidMoveToWritableLocationOldURLKey not bound -!missing-protocol-member! UISearchBarDelegate::searchBar:shouldChangeTextInRanges:replacementText: not found -!missing-selector! +UIButtonConfiguration::clearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentClearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentGlassButtonConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfigurationWithMaximumRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithTopLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformBottomRadius:topLeftRadius:topRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:topRightRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:uniformRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRightRadius:topLeftRadius:bottomLeftRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:uniformBottomRadius: not bound -!missing-selector! +UICornerRadius::containerConcentricRadius not bound -!missing-selector! +UICornerRadius::containerConcentricRadiusWithMinimum: not bound -!missing-selector! +UICornerRadius::fixedRadius: not bound -!missing-selector! +UIGlassEffect::effectWithStyle: not bound -!missing-selector! UIView::cornerConfiguration not bound -!missing-selector! UIView::effectiveRadiusForCorner: not bound -!missing-selector! UIView::setUIView: not bound -!missing-type! UICornerConfiguration not bound -!missing-type! UICornerRadius not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo deleted file mode 100644 index f3495695c3a0..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-UIKit.todo +++ /dev/null @@ -1,25 +0,0 @@ -!missing-enum! UIGlassEffectStyle not bound -!missing-protocol-member! UISearchBarDelegate::searchBar:shouldChangeTextInRanges:replacementText: not found -!missing-selector! +UIButtonConfiguration::clearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentClearGlassButtonConfiguration not bound -!missing-selector! +UIButtonConfiguration::prominentGlassButtonConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfiguration not bound -!missing-selector! +UICornerConfiguration::capsuleConfigurationWithMaximumRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithTopLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformBottomRadius:topLeftRadius:topRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:topRightRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformLeftRadius:uniformRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformRightRadius:topLeftRadius:bottomLeftRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:bottomLeftRadius:bottomRightRadius: not bound -!missing-selector! +UICornerConfiguration::configurationWithUniformTopRadius:uniformBottomRadius: not bound -!missing-selector! +UICornerRadius::containerConcentricRadius not bound -!missing-selector! +UICornerRadius::containerConcentricRadiusWithMinimum: not bound -!missing-selector! +UICornerRadius::fixedRadius: not bound -!missing-selector! +UIGlassEffect::effectWithStyle: not bound -!missing-selector! UIView::cornerConfiguration not bound -!missing-selector! UIView::effectiveRadiusForCorner: not bound -!missing-selector! UIView::setUIView: not bound -!missing-type! UICornerConfiguration not bound -!missing-type! UICornerRadius not bound