lpw
2024-06-28 2a6e182ea4428bff2e16f033c28850f3a02a93a9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/*
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 * All rights reserved.
 *
 * This source code is licensed under the license found in the
 * LICENSE file in the root directory of this source tree.
 */
 
#if !TARGET_OS_TV
 
#import <UIKit/UIKit.h>
 
NS_ASSUME_NONNULL_BEGIN
 
/**
 Internal Type exposed to facilitate transition to Swift.
 API Subject to change or removal without warning. Do not use.
 
 @warning INTERNAL - DO NOT USE
 */
NS_SWIFT_NAME(URLOpening)
@protocol FBSDKURLOpening <NSObject>
 
// Implementations should make sure they can handle nil parameters
// which is possible in SafariViewController.
// see canOpenURL below.
- (BOOL)application:(nullable UIApplication *)application
            openURL:(nullable NSURL *)url
  sourceApplication:(nullable NSString *)sourceApplication
         annotation:(nullable id)annotation;
 
// create a different handler to return YES/NO if the receiver can process the above openURL:.
// This is separated so that we can process the openURL: in callbacks, while still returning
// the result of canOpenURL synchronously in FBSDKApplicationDelegate
- (BOOL) canOpenURL:(NSURL *)url
     forApplication:(nullable UIApplication *)application
  sourceApplication:(nullable NSString *)sourceApplication
         annotation:(nullable id)annotation;
 
- (void)applicationDidBecomeActive:(UIApplication *)application;
 
- (BOOL)isAuthenticationURL:(NSURL *)url;
 
@optional
 
+ (instancetype)makeOpener;
 
- (BOOL)shouldStopPropagationOfURL:(NSURL *)url;
 
@end
 
NS_ASSUME_NONNULL_END
 
#endif