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