mirror of https://github.com/oxen-io/session-ios
				
				
				
			Fix handling of file types in SAE.
							parent
							
								
									c2787341ae
								
							
						
					
					
						commit
						7ea1f3d926
					
				| @ -1,26 +0,0 @@ | ||||
| //
 | ||||
| //  Copyright (c) 2018 Open Whisper Systems. All rights reserved.
 | ||||
| //
 | ||||
| 
 | ||||
| NS_ASSUME_NONNULL_BEGIN | ||||
| 
 | ||||
| @interface NSItemProvider (OWS) | ||||
| 
 | ||||
| // NSItemProvider.loadItem(forTypeIdentifier:...) is unsafe to call from Swift,
 | ||||
| // since it can yield values of arbitrary type.  It has a highly unusual design
 | ||||
| // in which its behavior depends on the _type_ of the completion handler.
 | ||||
| // loadItem(forTypeIdentifier:...) tries to satisfy the expected type of the
 | ||||
| // completion handler.  This "hinting" only works in Objective-C.  In Swift,
 | ||||
| // The type of the completion handler must agree with the param type.
 | ||||
| //
 | ||||
| // Therefore we use an Objective-C category to hint to NSItemProvider that we
 | ||||
| // prefer an instance of NSData.
 | ||||
| //
 | ||||
| // See: https://developer.apple.com/documentation/foundation/nsitemprovider/1403900-loaditemfortypeidentifier
 | ||||
| - (void)loadDataForTypeIdentifier:(NSString *)typeIdentifier | ||||
|                           options:(nullable NSDictionary *)options | ||||
|                 completionHandler:(nullable NSItemProviderCompletionHandler)completionHandler; | ||||
| 
 | ||||
| @end | ||||
| 
 | ||||
| NS_ASSUME_NONNULL_END | ||||
| @ -1,24 +0,0 @@ | ||||
| // | ||||
| //  Copyright (c) 2018 Open Whisper Systems. All rights reserved. | ||||
| // | ||||
| 
 | ||||
| #import "NSItemProvider+OWS.h" | ||||
| 
 | ||||
| NS_ASSUME_NONNULL_BEGIN | ||||
| 
 | ||||
| @implementation NSItemProvider (OWS) | ||||
| 
 | ||||
| - (void)loadDataForTypeIdentifier:(NSString *)typeIdentifier | ||||
|                           options:(nullable NSDictionary *)options | ||||
|                 completionHandler:(nullable NSItemProviderCompletionHandler)completionHandler | ||||
| { | ||||
|     [self loadItemForTypeIdentifier:typeIdentifier | ||||
|                             options:options | ||||
|                   completionHandler:^(NSData *_Nullable item, NSError *__null_unspecified error) { | ||||
|                       completionHandler(item, error); | ||||
|                   }]; | ||||
| } | ||||
| 
 | ||||
| @end | ||||
| 
 | ||||
| NS_ASSUME_NONNULL_END | ||||
					Loading…
					
					
				
		Reference in New Issue