Comparison between monotouch-6.2.7.dll and monotouch-6.4.0.dll

Namespace: MonoTouch

Type Changed: MonoTouch.Constants

Removed:

 	public const string Version = "6.2.7";

Added:

 	public const string Version = "6.4.0";

Namespace: MonoTouch.AVFoundation

Type Changed: MonoTouch.AVFoundation.AVPlayerItem

Removed:

 	public virtual AVPlayerItemOutput Outputs {

Added:

 	public virtual AVPlayerItemOutput[] Outputs {

Type Changed: MonoTouch.AVFoundation.AVPlayerItemVideoOutput

Removed:

 	public virtual MonoTouch.CoreVideo.CVPixelBuffer CopyPixelBuffer (MonoTouch.CoreMedia.CMTime itemTime, ref MonoTouch.CoreMedia.CMTime outItemTimeForDisplay);

Added:

 	public MonoTouch.CoreVideo.CVPixelBuffer CopyPixelBuffer (MonoTouch.CoreMedia.CMTime itemTime, ref MonoTouch.CoreMedia.CMTime outItemTimeForDisplay);
 	protected virtual IntPtr WeakCopyPixelBuffer (MonoTouch.CoreMedia.CMTime itemTime, ref MonoTouch.CoreMedia.CMTime outItemTimeForDisplay);

Namespace: MonoTouch.Accounts

Type Changed: MonoTouch.Accounts.ACAccountStore

Added:

 	public virtual System.Threading.Tasks.Task<ACAccountCredentialRenewResult> RenewCredentialsAsync (ACAccount account);
 	[Obsolete("Obsolete in iOS 6.0. Use overload with options instead")]
	public virtual System.Threading.Tasks.Task<bool> RequestAccessAsync (ACAccountType accountType);
 	public System.Threading.Tasks.Task<bool> RequestAccessAsync (ACAccountType accountType, AccountStoreOptions options);
 	protected virtual System.Threading.Tasks.Task<bool> RequestAccessAsync (ACAccountType accountType, MonoTouch.Foundation.NSDictionary options);
 	public virtual System.Threading.Tasks.Task<bool> SaveAccountAsync (ACAccount account);

Namespace: MonoTouch.AddressBook

Type Changed: MonoTouch.AddressBook.ABPerson

Removed:

 	public void SetAddresses (ABMultiValue`1 addresses);
 	public void SetInstantMessages (ABMultiValue`1 value);
 	public void SetSocialProfile (ABMultiValue`1 value);

Added:

 	public void SetAddresses (ABMultiValue`1 addresses);
 	public void SetInstantMessages (ABMultiValue`1 value);
 	public void SetSocialProfile (ABMultiValue`1 value);

Namespace: MonoTouch.AssetsLibrary

Type Changed: MonoTouch.AssetsLibrary.ALAsset

Added:

 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> SetImageDataAsync (MonoTouch.Foundation.NSData imageData, MonoTouch.Foundation.NSDictionary metadata);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> SetVideoAtPathAsync (MonoTouch.Foundation.NSUrl videoPathURL);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteModifiedImageToSavedToPhotosAlbumAsync (MonoTouch.Foundation.NSData imageData, MonoTouch.Foundation.NSDictionary metadata);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteModifiedVideoToSavedPhotosAlbumAsync (MonoTouch.Foundation.NSUrl videoPathURL);

Type Changed: MonoTouch.AssetsLibrary.ALAssetsLibrary

Added:

 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (MonoTouch.CoreGraphics.CGImage imageData, ALAssetOrientation orientation);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (MonoTouch.CoreGraphics.CGImage imageData, MonoTouch.Foundation.NSDictionary metadata);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (MonoTouch.Foundation.NSData imageData, MonoTouch.Foundation.NSDictionary metadata);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSUrl> WriteVideoToSavedPhotosAlbumAsync (MonoTouch.Foundation.NSUrl videoPathURL);

Namespace: MonoTouch.AudioToolbox

Type Changed: MonoTouch.AudioToolbox.AudioStreamBasicDescription

Removed:

 	public const double AudioStreamAnyRate = 0;

Added:

 	public const double AudioStreamAnyRate = 0;

Namespace: MonoTouch.CoreBluetooth

Type Changed: MonoTouch.CoreBluetooth.CBCentralManager

Added:

 	public void ConnectPeripheral (CBPeripheral peripheral, PeripheralConnectionOptions options);
 	public void ScanForPeripherals (CBUUID[] peripheralUuids, PeripheralScanningOptions options);
 	public void ScanForPeripherals (Guid [] serviceUuids, PeripheralScanningOptions options);

New Type: MonoTouch.CoreBluetooth.PeripheralConnectionOptions

public class PeripheralConnectionOptions : MonoTouch.Foundation.DictionaryContainer {
	
	public PeripheralConnectionOptions ();
	public PeripheralConnectionOptions (MonoTouch.Foundation.NSDictionary dictionary);
	
	public bool NotifyOnConnectionKey {
		set;
	}
	public bool NotifyOnDisconnectionKey {
		set;
	}
	public bool NotifyOnNotificationKey {
		set;
	}
}

New Type: MonoTouch.CoreBluetooth.PeripheralScanningOptions

public class PeripheralScanningOptions : MonoTouch.Foundation.DictionaryContainer {
	
	public PeripheralScanningOptions ();
	public PeripheralScanningOptions (MonoTouch.Foundation.NSDictionary dictionary);
	
	public bool AllowDuplicatesKey {
		set;
	}
}

Namespace: MonoTouch.CoreFoundation

Type Changed: MonoTouch.CoreFoundation.DispatchObject

Added:

 	public void SetTargetQueue (DispatchQueue queue);

Namespace: MonoTouch.CoreMedia

Type Changed: MonoTouch.CoreMedia.CMSampleBuffer

Added:

 	public static CMSampleBuffer CreateWithNewTiming (CMSampleBuffer original, CMSampleTimingInfo[] timing);
 	public static CMSampleBuffer CreateWithNewTiming (CMSampleBuffer original, CMSampleTimingInfo[] timing, out int status);
 	public CMSampleTimingInfo[] GetSampleTimingInfo ();
 	public CMSampleTimingInfo[] GetSampleTimingInfo (out int status);

Type Changed: MonoTouch.CoreMedia.CMTime

Removed:

 	public const int MaxTimeScale = 2147483647;

Added:

 	public const int MaxTimeScale = 2147483647;

Namespace: MonoTouch.CoreText

Type Changed: MonoTouch.CoreText.CTFontDescriptor

Removed:

 	[Obsolete("Deprecated")]
	public CTFontDescriptor WithFeature (Selector featureSelector);

Added:

 	[Obsolete("Deprecated")]
	public CTFontDescriptor WithFeature (Selector featureSelector);

Namespace: MonoTouch.CoreVideo

Type Changed: MonoTouch.CoreVideo.CVImageBuffer

Removed:

 	protected override void Finalize ();
 	

Namespace: MonoTouch.EventKit

Type Changed: MonoTouch.EventKit.EKEventStore

Added:

 	public virtual System.Threading.Tasks.Task<EKReminder[]> FetchRemindersAsync (MonoTouch.Foundation.NSPredicate predicate);
 	public virtual System.Threading.Tasks.Task<bool> RequestAccessAsync (EKEntityType entityType);

Namespace: MonoTouch.ExternalAccessory

Type Changed: MonoTouch.ExternalAccessory.EAAccessoryManager

Added:

 	public virtual System.Threading.Tasks.Task ShowBluetoothAccessoryPickerAsync (MonoTouch.Foundation.NSPredicate predicate);

Namespace: MonoTouch.Foundation

Type Changed: MonoTouch.Foundation.NSComparisonPredicateOptions

Removed:

 	DiacriticInsensitive

Added:

 	DiacriticInsensitive,
 	Normalized

New Type: MonoTouch.Foundation.NSMutableOrderedSet

public class NSMutableOrderedSet : NSOrderedSet {
	
	public NSMutableOrderedSet (params NSObject[] objs);
	public NSMutableOrderedSet (params object [] objs);
	public NSMutableOrderedSet (params string [] strings);
	public NSMutableOrderedSet ();
	public NSMutableOrderedSet (NSCoder coder);
	public NSMutableOrderedSet (NSObjectFlag t);
	public NSMutableOrderedSet (IntPtr handle);
	public NSMutableOrderedSet (NSObject start);
	public NSMutableOrderedSet (NSSet source);
	public NSMutableOrderedSet (NSOrderedSet source);
	public NSMutableOrderedSet (int capacity);
	
	public virtual void Add (NSObject obj);
	public virtual void AddObjects (NSObject[] source);
	public virtual void ExchangeObject (int first, int second);
	public virtual void Insert (NSObject obj, int atIndex);
	public virtual void InsertObjects (NSObject[] objects, NSIndexSet atIndexes);
	public virtual void Intersect (NSOrderedSet intersectWith);
	public virtual void MoveObjects (NSIndexSet indexSet, int destination);
	public virtual void Remove (int index);
	public virtual void RemoveAllObjects ();
	public virtual void RemoveObject (NSObject obj);
	public virtual void RemoveObjects (NSIndexSet indexSet);
	public virtual void RemoveObjects (NSObject[] objects);
	public virtual void RemoveObjects (NSRange range);
	public virtual void Replace (int objectAtIndex, NSObject newObject);
	public virtual void ReplaceObjects (NSIndexSet indexSet, NSObject[] replacementObjects);
	public virtual void SetObject (NSObject obj, int index);
	public virtual void Sort (NSComparator comparator);
	public virtual void Sort (NSSortOptions sortOptions, NSComparator comparator);
	public virtual void SortRange (NSRange range, NSSortOptions sortOptions, NSComparator comparator);
	
	public override IntPtr ClassHandle {
		get;
	}
	public NSObject this [int idx] {
		get;
		set;
	}
}

New Type: MonoTouch.Foundation.NSOrderedSet

public class NSOrderedSet : NSObject, System.Collections.IEnumerable, System.Collections.Generic.IEnumerable {
	
	public NSOrderedSet (params NSObject[] objs);
	public NSOrderedSet (params object [] objs);
	public NSOrderedSet (params string [] strings);
	public NSOrderedSet ();
	public NSOrderedSet (NSCoder coder);
	public NSOrderedSet (NSObjectFlag t);
	public NSOrderedSet (IntPtr handle);
	public NSOrderedSet (NSObject start);
	public NSOrderedSet (NSSet source);
	public NSOrderedSet (NSOrderedSet source);
	
	public static NSOrderedSet MakeNSOrderedSet (T[] values) where T : NSObject;
	public virtual NSSet AsSet ();
	public virtual bool Contains (NSObject obj);
	public bool Contains (object obj);
	public virtual NSObject FirstObject ();
	public System.Collections.Generic.IEnumerator GetEnumerator ();
	public virtual NSOrderedSet GetReverseOrderedSet ();
	public virtual int IndexOf (NSObject obj);
	public virtual bool Intersects (NSOrderedSet other);
	public virtual bool Intersects (NSSet other);
	public virtual bool IsEqualToOrderedSet (NSOrderedSet other);
	public virtual bool IsSubset (NSOrderedSet other);
	public virtual bool IsSubset (NSSet other);
	public virtual NSObject LastObject ();
	System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator ();
	public T[] ToArray () where T : NSObject;
	
	public static NSOrderedSet operator + (NSOrderedSet first, NSOrderedSet second);
	public static NSOrderedSet operator - (NSOrderedSet first, NSOrderedSet second);
	public static NSOrderedSet operator - (NSOrderedSet first, NSSet second);
	public static bool operator == (NSOrderedSet first, NSOrderedSet second);
	public static bool operator != (NSOrderedSet first, NSOrderedSet second);
	
	public override IntPtr ClassHandle {
		get;
	}
	public virtual int Count {
		get;
	}
	public NSObject this [int idx] {
		get;
	}
}

Type Changed: MonoTouch.Foundation.NSRange

Removed:

 	public const int NotFound = 2147483647;

Added:

 	public const int NotFound = 2147483647;

New Type: MonoTouch.Foundation.NSSortOptions

[Serializable]
[Flags]
public enum NSSortOptions {
	Concurrent,
	Stable
}

Type Changed: MonoTouch.Foundation.NSUserDefaults

Added:

 	public static NSString ArgumentDomain {
 		get;
 	}
 	public static NSString GlobalDomain {
 		get;
 	}
 	public static NSString RegistrationDomain {
 		get;
 	}

Namespace: MonoTouch.GLKit

Type Changed: MonoTouch.GLKit.GLKTextureLoader

Added:

 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginLoadCubeMapAsync (MonoTouch.Foundation.NSUrl filePath, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginLoadCubeMapAsync (string fileName, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (MonoTouch.CoreGraphics.CGImage image, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (MonoTouch.Foundation.NSData data, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (MonoTouch.Foundation.NSUrl filePath, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);
 	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (string file, MonoTouch.Foundation.NSDictionary textureOperations, MonoTouch.CoreFoundation.DispatchQueue queue);

Namespace: MonoTouch.GameKit

Type Changed: MonoTouch.GameKit.GKAchievement

Added:

 	public static System.Threading.Tasks.Task<GKAchievement[]> LoadAchievementsAsync ();
 	public static System.Threading.Tasks.Task ReportAchievementsAsync (GKAchievement[] achievements);
 	public static System.Threading.Tasks.Task ResetAchivementsAsync ();
 	public virtual System.Threading.Tasks.Task ReportAchievementAsync ();
 	public virtual System.Threading.Tasks.Task<string []> SelectChallengeablePlayerIDsAsync (string [] playerIDs);

Type Changed: MonoTouch.GameKit.GKAchievementDescription

Added:

 	public static System.Threading.Tasks.Task<GKAchievementDescription[]> LoadAchievementDescriptionsAsync ();
 	public virtual System.Threading.Tasks.Task<MonoTouch.UIKit.UIImage> LoadImageAsync ();

New Type: MonoTouch.GameKit.GKCategoryResult

public class GKCategoryResult {
	
	public GKCategoryResult (string [] categories, string [] titles);
	
	public string [] Categories {
		get;
		set;
	}
	public string [] Titles {
		get;
		set;
	}
}

Type Changed: MonoTouch.GameKit.GKChallenge

Added:

 	public static System.Threading.Tasks.Task<GKChallenge[]> LoadReceivedChallengesAsync ();

Type Changed: MonoTouch.GameKit.GKLeaderboard

Added:

 	[Obsolete("Deprecated iOS 6.0, use loadLeaderboardsWithCompletionHandler")]
	public static System.Threading.Tasks.Task<GKCategoryResult> LoadCategoriesAsync ();
 	public static System.Threading.Tasks.Task<GKLeaderboard[]> LoadLeaderboardsAsync ();
 	public static System.Threading.Tasks.Task SetDefaultLeaderboardAsync (string categoryID);
 	public virtual System.Threading.Tasks.Task<GKScore[]> LoadScoresAsync ();

Type Changed: MonoTouch.GameKit.GKLocalPlayer

Added:

 	[Obsolete("Replaced by AuthenticateHandler in iOS 6.0")]
	public virtual System.Threading.Tasks.Task AuthenticateAsync ();
 	public virtual System.Threading.Tasks.Task<string> LoadDefaultLeaderboardCategoryIDAsync ();
 	public virtual System.Threading.Tasks.Task<string []> LoadFriendsAsync ();
 	public virtual System.Threading.Tasks.Task SetDefaultLeaderboardCategoryIDAsync (string categoryID);

Type Changed: MonoTouch.GameKit.GKMatch

Added:

 	public virtual System.Threading.Tasks.Task<string> ChooseBestHostPlayerAsync ();
 	public virtual System.Threading.Tasks.Task<GKMatch> RematchAsync ();

Type Changed: MonoTouch.GameKit.GKMatchmaker

Added:

 	public virtual System.Threading.Tasks.Task AddPlayersAsync (GKMatch toMatch, GKMatchRequest matchRequest);
 	public virtual System.Threading.Tasks.Task<GKMatch> FindMatchAsync (GKMatchRequest request);
 	public virtual System.Threading.Tasks.Task<string []> FindPlayersAsync (GKMatchRequest request);
 	public virtual System.Threading.Tasks.Task<GKMatch> MatchAsync (GKInvite invite);
 	public virtual System.Threading.Tasks.Task<int> QueryActivityAsync ();
 	public virtual System.Threading.Tasks.Task<int> QueryPlayerGroupActivityAsync (int playerGroup);

Type Changed: MonoTouch.GameKit.GKNotificationBanner

Added:

 	public static System.Threading.Tasks.Task ShowAsync (string title, string message);
 	public static System.Threading.Tasks.Task ShowAsync (string title, string message, double durationSeconds);

Type Changed: MonoTouch.GameKit.GKPlayer

Added:

 	public static System.Threading.Tasks.Task<GKPlayer[]> LoadPlayersForIdentifiersAsync (string [] identifiers);
 	public virtual System.Threading.Tasks.Task<MonoTouch.UIKit.UIImage> LoadPhotoAsync (GKPhotoSize size);

Type Changed: MonoTouch.GameKit.GKScore

Added:

 	public static System.Threading.Tasks.Task ReportScoresAsync (GKScore[] scores);
 	public virtual System.Threading.Tasks.Task ReportScoreAsync ();

Type Changed: MonoTouch.GameKit.GKTurnBasedMatch

Added:

 	public static System.Threading.Tasks.Task<GKTurnBasedMatch> FindMatchAsync (GKMatchRequest request);
 	public static System.Threading.Tasks.Task<GKTurnBasedMatch> LoadMatchAsync (string matchId);
 	public static System.Threading.Tasks.Task<GKTurnBasedMatch[]> LoadMatchesAsync ();
 	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> AcceptInviteAsync ();
 	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> DeclineInviteAsync ();
 	public virtual System.Threading.Tasks.Task EndMatchInTurnAsync (MonoTouch.Foundation.NSData matchData);
 	public virtual System.Threading.Tasks.Task EndTurnAsync (GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, MonoTouch.Foundation.NSData matchData);
 	[Obsolete("Replaced by EndTurn in iOS 6.0")]
	public virtual System.Threading.Tasks.Task EndTurnWithNextParticipantAsync (GKTurnBasedParticipant nextParticipant, MonoTouch.Foundation.NSData matchData);
 	public virtual System.Threading.Tasks.Task<MonoTouch.Foundation.NSData> LoadMatchDataAsync ();
 	[Obsolete("Replaced by ParticipantQuitInTurn (GKTurnBasedMatchOutcome, GKTurnBasedParticipant[], double, NSData, Action<NSError>) in iOS 6.0")]
	public virtual System.Threading.Tasks.Task ParticipantQuitInTurnAsync (GKTurnBasedMatchOutcome matchOutcome, GKTurnBasedParticipant nextParticipant, MonoTouch.Foundation.NSData matchData);
 	public virtual System.Threading.Tasks.Task ParticipantQuitInTurnAsync (GKTurnBasedMatchOutcome matchOutcome, GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, MonoTouch.Foundation.NSData matchData);
 	public virtual System.Threading.Tasks.Task ParticipantQuitOutOfTurnAsync (GKTurnBasedMatchOutcome matchOutcome);
 	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> RematchAsync ();
 	public virtual System.Threading.Tasks.Task RemoveAsync ();
 	public virtual System.Threading.Tasks.Task SaveCurrentTurnAsync (MonoTouch.Foundation.NSData matchData);

Namespace: MonoTouch.MapKit

Type Changed: MonoTouch.MapKit.MKLocalSearch

Added:

 	public virtual System.Threading.Tasks.Task<MKLocalSearchResponse> StartAsync ();
 	public virtual System.Threading.Tasks.Task<MKLocalSearchResponse> StartAsync (System.Threading.CancellationToken token);

Namespace: MonoTouch.MediaPlayer

Type Changed: MonoTouch.MediaPlayer.MPMediaItemProperty

Removed:

 public static class MPMediaItemProperty {

Added:

 [Obsolete]
public static class MPMediaItemProperty {

Type Changed: MonoTouch.MediaPlayer.MPMoviePlayerController

Removed:

 		public static MonoTouch.Foundation.NSObject ObserveWillEnterFullscreen (EventHandler<MPMoviePlayerFullScreenEventArgs> handler);

Added:

 		public static MonoTouch.Foundation.NSObject ObserveWillEnterFullscreen (System.EventHandler<MonoTouch.Foundation.NSNotificationEventArgs> handler);

Namespace: MonoTouch.ObjCRuntime

Type Changed: MonoTouch.ObjCRuntime.Selector

Added:

 	public static Selector FromHandle (IntPtr sel);

Namespace: MonoTouch.StoreKit

Type Changed: MonoTouch.StoreKit.SKStoreProductViewController

Added:

 	public System.Threading.Tasks.Task<bool> LoadProductAsync (StoreProductParameters parameters);

Namespace: MonoTouch.SystemConfiguration

Type Changed: MonoTouch.SystemConfiguration.NetworkReachability

Added:

 	public bool Schedule ();
 	public bool SetDispatchQueue (MonoTouch.CoreFoundation.DispatchQueue queue);
 	public bool Unschedule ();

Namespace: MonoTouch.Twitter

Type Changed: MonoTouch.Twitter.TWRequest

Added:

 	public virtual System.Threading.Tasks.Task<TWRequestResult> PerformRequestAsync ();

New Type: MonoTouch.Twitter.TWRequestResult

public class TWRequestResult {
	
	public TWRequestResult (MonoTouch.Foundation.NSData responseData, MonoTouch.Foundation.NSHttpUrlResponse urlResponse);
	
	public MonoTouch.Foundation.NSData ResponseData {
		get;
		set;
	}
	public MonoTouch.Foundation.NSHttpUrlResponse UrlResponse {
		get;
		set;
	}
}

Namespace: MonoTouch.UIKit

Type Changed: MonoTouch.UIKit.UICollectionView

Added:

 	public virtual System.Threading.Tasks.Task<bool> PerformBatchUpdatesAsync (MonoTouch.Foundation.NSAction updates);

Type Changed: MonoTouch.UIKit.UICollectionViewLayoutAttributes

Removed:

 	public static T CreateForCell<T> (MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;
 	public static T CreateForDecorationView<T> (MonoTouch.Foundation.NSString kind, MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;
 	public static T CreateForSupplementaryView<T> (MonoTouch.Foundation.NSString kind, MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;

Added:

 	public static T CreateForCell<T> (MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;
 	public static T CreateForDecorationView<T> (MonoTouch.Foundation.NSString kind, MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;
 	public static T CreateForSupplementaryView<T> (MonoTouch.Foundation.NSString kind, MonoTouch.Foundation.NSIndexPath indexPath) where T : UICollectionViewLayoutAttributes;

Type Changed: MonoTouch.UIKit.UIDevice

Removed:

 	[Obsolete("Deprecated in iOS 5.0")]
	public virtual string UniqueIdentifier {

Added:

 	[Obsolete("Deprecated in iOS 5.0. Apple now reject application using it the selector is removed and an empty string is returned")]
	public virtual string UniqueIdentifier {

Type Changed: MonoTouch.UIKit.UIDocument

Added:

 	public virtual System.Threading.Tasks.Task<bool> AutoSaveAsync ();
 	public virtual System.Threading.Tasks.Task<bool> CloseAsync ();
 	public virtual System.Threading.Tasks.Task<bool> OpenAsync ();
 	public virtual System.Threading.Tasks.Task PerformAsynchronousFileAccessAsync ();
 	public virtual System.Threading.Tasks.Task<bool> RevertToContentsOfUrlAsync (MonoTouch.Foundation.NSUrl url);
 	public virtual System.Threading.Tasks.Task<bool> SaveAsync (MonoTouch.Foundation.NSUrl url, UIDocumentSaveOperation saveOperation);

Type Changed: MonoTouch.UIKit.UIImage

Removed:

 	public UIImage (UIImage image);
 	public UIImage (UIImage image, MonoTouch.Foundation.NSDictionary options);

Type Changed: MonoTouch.UIKit.UIPageViewController

Added:

 	public virtual System.Threading.Tasks.Task<bool> SetViewControllersAsync (UIViewController[] viewControllers, UIPageViewControllerNavigationDirection direction, bool animated);

Type Changed: MonoTouch.UIKit.UIPrintInteractionController

Added:

 	public virtual System.Threading.Tasks.Task<UIPrintInteractionResult> PresentAsync (bool animated);
 	public virtual System.Threading.Tasks.Task<UIPrintInteractionResult> PresentFromBarButtonItemAsync (UIBarButtonItem item, bool animated);
 	public virtual System.Threading.Tasks.Task<UIPrintInteractionResult> PresentFromRectInViewAsync (System.Drawing.RectangleF rect, UIView view, bool animated);

New Type: MonoTouch.UIKit.UIPrintInteractionResult

public class UIPrintInteractionResult {
	
	public UIPrintInteractionResult (UIPrintInteractionController printInteractionController, bool completed);
	
	public bool Completed {
		get;
		set;
	}
	public UIPrintInteractionController PrintInteractionController {
		get;
		set;
	}
}

Type Changed: MonoTouch.UIKit.UIView

Added:

 	public static System.Threading.Tasks.Task<bool> AnimateNotifyAsync (double duration, MonoTouch.Foundation.NSAction animation);
 	public static System.Threading.Tasks.Task<bool> AnimateNotifyAsync (double duration, double delay, UIViewAnimationOptions options, MonoTouch.Foundation.NSAction animation);
 	public static System.Threading.Tasks.Task<bool> TransitionNotifyAsync (UIView withView, double duration, UIViewAnimationOptions options, MonoTouch.Foundation.NSAction animation);
 	public static System.Threading.Tasks.Task<bool> TransitionNotifyAsync (UIView fromView, UIView toView, double duration, UIViewAnimationOptions options);

Type Changed: MonoTouch.UIKit.UIViewController

Added:

 	public virtual System.Threading.Tasks.Task DismissViewControllerAsync (bool animated);
 	public virtual System.Threading.Tasks.Task PresentViewControllerAsync (UIViewController viewControllerToPresent, bool animated);
 	public virtual System.Threading.Tasks.Task<bool> TransitionAsync (UIViewController fromViewController, UIViewController toViewController, double duration, UIViewAnimationOptions options, MonoTouch.Foundation.NSAction animations);

Xamarin Workbook

If it's not already installed, install the Xamarin Workbooks app first. The workbook file should download automatically, but if it doesn't, just click to start the workbook download manually.