Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created August 26, 2022 21:17
Show Gist options
  • Save vs-mobiletools-engineering-service2/836b83e145c65102bbc242512109a610 to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/836b83e145c65102bbc242512109a610 to your computer and use it in GitHub Desktop.
previous-api-comparison/tvos-api-diff.md
title description author ms.author ms.date ms.topic ms.assetid ms.prod
Xamarin.TVOS SDK API diff
List of API changes for Xamarin.TVOS.
spouliot
sepoulio
8/26/2022
article
339efc10-9446-71fc-ae7d-055f0909caaf
xamarin

Xamarin.TVOS SDK API diff

Namespace TVUIKit

Type Changed: TVUIKit.TVMediaItemContentView

Added method:

public virtual bool SupportsConfiguration (UIKit.IUIContentConfiguration configuration);

Type Changed: TVUIKit.TVMonogramContentView

Added method:

public virtual bool SupportsConfiguration (UIKit.IUIContentConfiguration configuration);

Namespace UIKit

Type Changed: UIKit.NSCollectionLayoutGroup

Added methods:

public static NSCollectionLayoutGroup GetHorizontalGroup (NSCollectionLayoutSize layoutSize, NSCollectionLayoutItem repeatingSubitem, nint count);
public static NSCollectionLayoutGroup GetVerticalGroup (NSCollectionLayoutSize layoutSize, NSCollectionLayoutItem repeatingSubitem, nint count);

Type Changed: UIKit.NSCollectionLayoutSection

Added property:

public virtual UIContentInsetsReference SupplementaryContentInsetsReference { get; set; }

Type Changed: UIKit.NSMutableParagraphStyle

Added property:

public override NSTextList[] TextLists { get; set; }

Type Changed: UIKit.NSParagraphStyle

Added property:

public virtual NSTextList[] TextLists { get; set; }

Type Changed: UIKit.NSTextElement

Added properties:

public virtual NSTextElement[] ChildElements { get; }
public virtual bool IsRepresentedElement { get; }
public virtual NSTextElement ParentElement { get; }

Type Changed: UIKit.UIAction

Added interfaces:

ObjCRuntime.INativeObject
System.IDisposable
IUIMenuLeaf

Added method:

public virtual void Target (Foundation.NSObject sender, Foundation.NSObject target);

Type Changed: UIKit.UIAlertController

Added property:

public virtual UIAlertControllerSeverity Severity { get; set; }

Type Changed: UIKit.UIBarButtonItem

Added constructors:

public UIBarButtonItem (UIAction primaryAction, UIMenu menu);
public UIBarButtonItem (UIBarButtonSystemItem systemItem, UIAction primaryAction, UIMenu menu);
public UIBarButtonItem (string title, UIImage image, Foundation.NSObject target, ObjCRuntime.Selector action, UIMenu menu);

Type Changed: UIKit.UIButtonConfiguration

Added properties:

public virtual UIButtonConfigurationIndicator Indicator { get; set; }
public virtual UIConfigurationColorTransformerHandler IndicatorColorTransformer { get; set; }

Type Changed: UIKit.UICollectionView

Added property:

public virtual UICollectionViewSelfSizingInvalidation SelfSizingInvalidation { get; set; }

Type Changed: UIKit.UICollectionViewCell

Added property:

public virtual UIBackgroundConfiguration DefaultBackgroundConfiguration { get; }

Type Changed: UIKit.UICollectionViewController

Added methods:

public virtual bool CanPerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void PerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewDelegate

Added methods:

public virtual bool CanPerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void PerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewDelegate_Extensions

Added methods:

public static bool CanPerformPrimaryActionForItem (this IUICollectionViewDelegate This, UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public static void PerformPrimaryActionForItem (this IUICollectionViewDelegate This, UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewSource

Added methods:

public virtual bool CanPerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void PerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICommand

Added interfaces:

ObjCRuntime.INativeObject
System.IDisposable
IUIMenuLeaf

Added property:

public virtual Foundation.NSObject Sender { get; }

Added method:

public virtual void Target (Foundation.NSObject sender, Foundation.NSObject target);

Type Changed: UIKit.UIFocusDebugger

Added methods:

public static IUIFocusDebuggerOutput GetFocusGroups (IUIFocusEnvironment environment);
public static IUIFocusDebuggerOutput GetPreferredFocusEnvironments (IUIFocusEnvironment environment);

Type Changed: UIKit.UIFont

Added method:

public static UIFont SystemFontOfSize (nfloat fontSize, UIFontWeight weight, UIFontWidth width);

Type Changed: UIKit.UIImage

Added methods:

public static UIImage FromBundle (string name, Foundation.NSBundle bundle, double value, UIImageConfiguration configuration);
public static UIImage GetSystemImage (string name, double value, UIImageConfiguration configuration);

Type Changed: UIKit.UIImageSymbolConfiguration

Added method:

public static UIImageSymbolConfiguration GetConfigurationPreferringMonochrome ();

Type Changed: UIKit.UIListContentTextProperties

Added property:

public virtual bool ShowsExpansionTextWhenTruncated { get; set; }

Type Changed: UIKit.UIListContentView

Added method:

public virtual bool SupportsConfiguration (IUIContentConfiguration configuration);

Type Changed: UIKit.UIMenu

Added property:

public virtual UIMenuElementSize PreferredElementSize { get; set; }

Type Changed: UIKit.UIMenuElementAttributes

Added value:

KeepsMenuPresented = 8,

Type Changed: UIKit.UIMenuIdentifier

Added value:

Document = 46,

Type Changed: UIKit.UIPageControl

Added properties:

public virtual UIPageControlDirection Direction { get; set; }
public virtual UIImage PreferredCurrentPageIndicatorImage { get; set; }

Added methods:

public virtual UIImage GetCurrentPageIndicatorImage (nint page);
public virtual void SetCurrentPageIndicatorImage (UIImage image, nint page);

Type Changed: UIKit.UIResponder

Added methods:

public virtual void Duplicate (Foundation.NSObject sender);
public virtual void Export (Foundation.NSObject sender);
public virtual void Find (Foundation.NSObject sender);
public virtual void FindAndReplace (Foundation.NSObject sender);
public virtual void FindNext (Foundation.NSObject sender);
public virtual void FindPrevious (Foundation.NSObject sender);
public virtual void Move (Foundation.NSObject sender);
public virtual void Rename (Foundation.NSObject sender);
public virtual void UseSelectionForFind (Foundation.NSObject sender);

Type Changed: UIKit.UIResponderStandardEditActions_Extensions

Added methods:

public static void Duplicate (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void Export (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void Find (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void FindAndReplace (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void FindNext (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void FindPrevious (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void Move (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void Rename (this IUIResponderStandardEditActions This, Foundation.NSObject sender);
public static void UseSelectionForFind (this IUIResponderStandardEditActions This, Foundation.NSObject sender);

Type Changed: UIKit.UISceneErrorCode

Added values:

GeometryRequestDenied = 101,
GeometryRequestUnsupported = 100,

Type Changed: UIKit.UISceneSizeRestrictions

Added property:

public virtual bool AllowsFullScreen { get; set; }

Type Changed: UIKit.UIScreen

Added properties:

public virtual nfloat CurrentEdrHeadroom { get; }
public virtual nfloat PotentialEdrHeadroom { get; }
public virtual UIScreenReferenceDisplayModeStatus ReferenceDisplayModeStatus { get; }
public static Foundation.NSString ReferenceDisplayModeStatusDidChangeNotification { get; }

Type Changed: UIKit.UIScreen.Notifications

Added methods:

public static Foundation.NSObject ObserveReferenceDisplayModeStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveReferenceDisplayModeStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: UIKit.UIScrollViewKeyboardDismissMode

Added values:

InteractiveWithAccessory = 4,
OnDragWithAccessory = 3,

Type Changed: UIKit.UISearchSuggestionItem

Added property:

public virtual Foundation.NSObject RepresentedObject { get; set; }

Type Changed: UIKit.UISearchSuggestion_Extensions

Added methods:

public static Foundation.NSObject GetRepresentedObject (this IUISearchSuggestion This);
public static void SetRepresentedObject (this IUISearchSuggestion This, Foundation.NSObject value);

Type Changed: UIKit.UITableView

Added property:

public virtual UITableViewSelfSizingInvalidation SelfSizingInvalidation { get; set; }

Type Changed: UIKit.UITableViewCell

Added property:

public virtual UIBackgroundConfiguration DefaultBackgroundConfiguration { get; }

Type Changed: UIKit.UITableViewController

Added methods:

public virtual bool CanPerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void PerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);

Type Changed: UIKit.UITableViewDelegate

Added methods:

public virtual bool CanPerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void PerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);

Type Changed: UIKit.UITableViewDelegate_Extensions

Added methods:

public static bool CanPerformPrimaryAction (this IUITableViewDelegate This, UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public static void PerformPrimaryAction (this IUITableViewDelegate This, UITableView tableView, Foundation.NSIndexPath rowIndexPath);

Type Changed: UIKit.UITableViewHeaderFooterView

Added property:

public virtual UIBackgroundConfiguration DefaultBackgroundConfiguration { get; }

Type Changed: UIKit.UITableViewSource

Added methods:

public virtual bool CanPerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void PerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);

Type Changed: UIKit.UITextField

Added method:

public virtual UIMenu GetEditMenu (UITextRange textRange, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITextFieldDelegate

Added method:

public virtual UIMenu GetEditMenu (UITextField textField, Foundation.NSRange range, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITextFieldDelegate_Extensions

Added method:

public static UIMenu GetEditMenu (this IUITextFieldDelegate This, UITextField textField, Foundation.NSRange range, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITextInput_Extensions

Added method:

public static UIMenu GetEditMenu (this IUITextInput This, UITextRange textRange, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITextView

Added property:

public virtual NSTextLayoutManager TextLayoutManager { get; }

Added methods:

public virtual UIMenu GetEditMenu (UITextRange textRange, UIMenuElement[] suggestedActions);
public static UITextView GetTextView (bool usingTextLayoutManager);

Type Changed: UIKit.UITextViewDelegate

Added method:

public virtual UIMenu GetEditMenuForText (UITextView textView, Foundation.NSRange range, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITextViewDelegate_Extensions

Added method:

public static UIMenu GetEditMenuForText (this IUITextViewDelegate This, UITextView textView, Foundation.NSRange range, UIMenuElement[] suggestedActions);

Type Changed: UIKit.UITraitCollection

Added property:

public virtual UINSToolbarItemPresentationSize ToolbarItemPresentationSize { get; }

Added method:

public static UITraitCollection GetTraitCollection (UINSToolbarItemPresentationSize toolbarItemPresentationSize);

Type Changed: UIKit.UIView

Added property:

public virtual CoreGraphics.CGPoint AnchorPoint { get; set; }

Type Changed: UIKit.UIViewController

Added properties:

public virtual UIPresentationController ActivePresentationController { get; }
public virtual string InteractionActivityTrackingBaseName { get; set; }

Added method:

public virtual void SetNeedsUpdateOfSupportedInterfaceOrientations ();

Type Changed: UIKit.UIWindow

Added property:

public virtual IUILayoutGuideAspectFitting SafeAreaAspectFitLayoutGuide { get; }

Type Changed: UIKit.UIWindowScene

Added properties:

public virtual UIWindowSceneGeometry EffectiveGeometry { get; }
public virtual bool FullScreen { get; }
public virtual UISceneWindowingBehaviors WindowingBehaviors { get; }

Added method:

public virtual void RequestGeometryUpdate (UIWindowSceneGeometryPreferences geometryPreferences, System.Action<Foundation.NSError> errorHandler);

Type Changed: UIKit.UIWindowSceneSessionRole

Added value:

ExternalDisplayNonInteractive = 3,

New Type: UIKit.IUILayoutGuideAspectFitting

public interface IUILayoutGuideAspectFitting : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nfloat AspectRatio { get; set; }
}

New Type: UIKit.IUIMenuLeaf

public interface IUIMenuLeaf : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIMenuElementAttributes Attributes { get; set; }
	public virtual string DiscoverabilityTitle { get; set; }
	public virtual UIImage Image { get; set; }
	public virtual Foundation.NSObject Sender { get; }
	public virtual UIMenuElementState State { get; set; }
	public virtual string Title { get; set; }
	// methods
	public virtual void Target (Foundation.NSObject sender, Foundation.NSObject target);
}

New Type: UIKit.NSTextList

public class NSTextList : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSTextList ();
	public NSTextList (Foundation.NSCoder coder);
	protected NSTextList (Foundation.NSObjectFlag t);
	protected NSTextList (IntPtr handle);
	public NSTextList (string format, NSTextListOptions mask);
	public NSTextList (NSTextListMarkerFormats format, NSTextListOptions mask);
	public NSTextList (string markerFormat, NSTextListOptions options, nint startingItemNumber);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSTextListOptions ListOptions { get; }
	public virtual string MarkerFormat { get; }
	public virtual bool Ordered { get; }
	public virtual nint StartingItemNumber { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual string GetMarker (nint itemNum);
}

New Type: UIKit.NSTextListElement

public class NSTextListElement : UIKit.NSTextParagraph {
	// constructors
	public NSTextListElement ();
	public NSTextListElement (Foundation.NSAttributedString attributedString);
	protected NSTextListElement (Foundation.NSObjectFlag t);
	protected NSTextListElement (IntPtr handle);
	public NSTextListElement (NSTextContentManager textContentManager);
	public NSTextListElement (NSTextListElement parent, NSTextList textList, Foundation.NSAttributedString contents, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> markerAttributes, NSTextListElement[] children);
	// properties
	public virtual Foundation.NSAttributedString AttributedString { get; }
	public virtual NSTextListElement[] ChildElements { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSAttributedString Contents { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> MarkerAttributes { get; }
	public virtual NSTextListElement ParentElement { get; }
	public virtual NSTextList TextList { get; }
	// methods
	public static NSTextListElement Create (NSTextListElement[] children, NSTextList textList, nint nestingLevel);
	public static NSTextListElement Create (Foundation.NSAttributedString contents, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> markerAttributes, NSTextList textList, NSTextListElement[] children);
	protected override void Dispose (bool disposing);
}

New Type: UIKit.NSTextListMarkerFormats

[Serializable]
public enum NSTextListMarkerFormats {
	Box = 0,
	Check = 1,
	Circle = 2,
	Decimal = 16,
	Diamond = 3,
	Disc = 4,
	Hyphen = 5,
	LowercaseAlpha = 10,
	LowercaseHexadecimal = 7,
	LowercaseLatin = 12,
	LowercaseRoman = 14,
	Octal = 9,
	Square = 6,
	UppercaseAlpha = 11,
	UppercaseHexadecimal = 8,
	UppercaseLatin = 13,
	UppercaseRoman = 15,
}

New Type: UIKit.NSTextListMarkerFormatsExtensions

public static class NSTextListMarkerFormatsExtensions {
	// methods
	public static Foundation.NSString GetConstant (this NSTextListMarkerFormats self);
	public static NSTextListMarkerFormats GetValue (Foundation.NSString constant);
}

New Type: UIKit.NSTextListOptions

[Serializable]
[Flags]
public enum NSTextListOptions {
	PrependEnclosingMarker = 1,
}

New Type: UIKit.UIAlertControllerSeverity

[Serializable]
public enum UIAlertControllerSeverity {
	Critical = 1,
	Default = 0,
}

New Type: UIKit.UIButtonConfigurationIndicator

[Serializable]
public enum UIButtonConfigurationIndicator {
	Automatic = 0,
	None = 1,
	Popup = 2,
}

New Type: UIKit.UICollectionViewSelfSizingInvalidation

[Serializable]
public enum UICollectionViewSelfSizingInvalidation {
	Disabled = 0,
	Enabled = 1,
	EnabledIncludingConstraints = 2,
}

New Type: UIKit.UIContentView_Extensions

public static class UIContentView_Extensions {
	// methods
	public static bool SupportsConfiguration (this IUIContentView This, IUIContentConfiguration configuration);
}

New Type: UIKit.UIFindSessionSearchResultDisplayStyle

[Serializable]
public enum UIFindSessionSearchResultDisplayStyle {
	CurrentAndTotal = 0,
	None = 2,
	Total = 1,
}

New Type: UIKit.UIFontWidth

[Serializable]
public enum UIFontWidth {
	Compressed = 3,
	Condensed = 0,
	Expanded = 2,
	Standard = 1,
}

New Type: UIKit.UIMenuElementSize

[Serializable]
public enum UIMenuElementSize {
	Large = 2,
	Medium = 1,
	Small = 0,
}

New Type: UIKit.UINSToolbarItemPresentationSize

[Serializable]
public enum UINSToolbarItemPresentationSize {
	Large = 3,
	Regular = 0,
	Small = 1,
	Unspecified = -1,
}

New Type: UIKit.UIPageControlDirection

[Serializable]
public enum UIPageControlDirection {
	BottomToTop = 4,
	LeftToRight = 1,
	Natural = 0,
	RightToLeft = 2,
	TopToBottom = 3,
}

New Type: UIKit.UIPasteControlDisplayMode

[Serializable]
public enum UIPasteControlDisplayMode {
	IconAndLabel = 0,
	IconOnly = 1,
	LabelOnly = 2,
}

New Type: UIKit.UISceneWindowingBehaviors

public class UISceneWindowingBehaviors : Foundation.NSObject {
	// constructors
	protected UISceneWindowingBehaviors (Foundation.NSObjectFlag t);
	protected UISceneWindowingBehaviors (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Closable { get; set; }
	public virtual bool Miniaturizable { get; set; }
}

New Type: UIKit.UIScreenReferenceDisplayModeStatus

[Serializable]
public enum UIScreenReferenceDisplayModeStatus {
	Enabled = 3,
	Limited = 2,
	NotEnabled = 1,
	NotSupported = 0,
}

New Type: UIKit.UITableViewSelfSizingInvalidation

[Serializable]
public enum UITableViewSelfSizingInvalidation {
	Disabled = 0,
	Enabled = 1,
	EnabledIncludingConstraints = 2,
}

New Type: UIKit.UITextSearchMatchMethod

[Serializable]
public enum UITextSearchMatchMethod {
	Contains = 0,
	FullWord = 2,
	StartsWith = 1,
}

New Type: UIKit.UIWindowSceneGeometry

public class UIWindowSceneGeometry : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected UIWindowSceneGeometry (Foundation.NSObjectFlag t);
	protected UIWindowSceneGeometry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGRect SystemFrame { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: UIKit.UIWindowSceneGeometryPreferences

public class UIWindowSceneGeometryPreferences : Foundation.NSObject {
	// constructors
	public UIWindowSceneGeometryPreferences ();
	protected UIWindowSceneGeometryPreferences (Foundation.NSObjectFlag t);
	protected UIWindowSceneGeometryPreferences (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UIWindowSceneGeometryPreferencesMac

public class UIWindowSceneGeometryPreferencesMac : UIKit.UIWindowSceneGeometryPreferences {
	// constructors
	public UIWindowSceneGeometryPreferencesMac ();
	public UIWindowSceneGeometryPreferencesMac (CoreGraphics.CGRect systemFrame);
	protected UIWindowSceneGeometryPreferencesMac (Foundation.NSObjectFlag t);
	protected UIWindowSceneGeometryPreferencesMac (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGRect SystemFrame { get; set; }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment