| | |
| | | |
| | | #import <UIKit/UIKit.h> |
| | | |
| | | #import <FBSDKCoreKit/FBSDKButton.h> |
| | | #import "TargetConditionals.h" |
| | | |
| | | #import <FBSDKLoginKit/FBSDKLoginManager.h> |
| | | #if TARGET_OS_TV |
| | | |
| | | @interface FBLoginButton : UIView |
| | | |
| | | @property (copy, nonatomic) NSArray<NSString *> *permissions; |
| | | |
| | | @end |
| | | |
| | | #else |
| | | |
| | | #import "FBSDKCoreKitImport.h" |
| | | |
| | | #import "FBSDKLoginManager.h" |
| | | #import "FBSDKTooltipView.h" |
| | | |
| | | NS_ASSUME_NONNULL_BEGIN |
| | | |
| | | @protocol FBSDKLoginButtonDelegate; |
| | | |
| | |
| | | /** Force disable. In this case you can still exert more refined |
| | | control by manually constructing a `FBSDKLoginTooltipView` instance. */ |
| | | FBSDKLoginButtonTooltipBehaviorDisable = 2 |
| | | }; |
| | | } NS_SWIFT_NAME(FBLoginButton.TooltipBehavior); |
| | | |
| | | /** |
| | | A button that initiates a log in or log out flow upon tapping. |
| | |
| | | `FBSDKLoginButton` has a fixed height of @c 30 pixels, but you may change the width. `initWithFrame:CGRectZero` |
| | | will size the button to its minimum frame. |
| | | */ |
| | | NS_SWIFT_NAME(FBLoginButton) |
| | | @interface FBSDKLoginButton : FBSDKButton |
| | | |
| | | /** |
| | |
| | | Gets or sets the delegate. |
| | | */ |
| | | @property (weak, nonatomic) IBOutlet id<FBSDKLoginButtonDelegate> delegate; |
| | | /** |
| | | Gets or sets the login behavior to use |
| | | */ |
| | | @property (assign, nonatomic) FBSDKLoginBehavior loginBehavior; |
| | | /** |
| | | The publish permissions to request. |
| | | /*! |
| | | @abstract The permissions to request. |
| | | @discussion To provide the best experience, you should minimize the number of permissions you request, and only ask for them when needed. |
| | | For example, do not ask for "user_location" until you the information is actually used by the app. |
| | | |
| | | |
| | | Use `defaultAudience` to specify the default audience to publish to. |
| | | Note this is converted to NSSet and is only |
| | | an NSArray for the convenience of literal syntax. |
| | | */ |
| | | @property (copy, nonatomic) NSArray *publishPermissions; |
| | | /** |
| | | The read permissions to request. |
| | | |
| | | |
| | | Note, that if read permissions are specified, then publish permissions should not be specified. This is converted to NSSet and is only |
| | | an NSArray for the convenience of literal syntax. |
| | | See [the permissions guide]( https://developers.facebook.com/docs/facebook-login/permissions/ ) for more details. |
| | | */ |
| | | @property (copy, nonatomic) NSArray *readPermissions; |
| | | @property (copy, nonatomic) NSArray<NSString *> *permissions; |
| | | /** |
| | | Gets or sets the desired tooltip behavior. |
| | | */ |
| | |
| | | @protocol |
| | | A delegate for `FBSDKLoginButton` |
| | | */ |
| | | NS_SWIFT_NAME(LoginButtonDelegate) |
| | | @protocol FBSDKLoginButtonDelegate <NSObject> |
| | | |
| | | @required |
| | |
| | | @param error The error (if any) from the login |
| | | */ |
| | | - (void)loginButton:(FBSDKLoginButton *)loginButton |
| | | didCompleteWithResult:(FBSDKLoginManagerLoginResult *)result |
| | | error:(NSError *)error; |
| | | didCompleteWithResult:(nullable FBSDKLoginManagerLoginResult *)result |
| | | error:(nullable NSError *)error; |
| | | |
| | | /** |
| | | Sent to the delegate when the button was used to logout. |
| | |
| | | @param loginButton the sender |
| | | @return YES if the login should be allowed to proceed, NO otherwise |
| | | */ |
| | | - (BOOL) loginButtonWillLogin:(FBSDKLoginButton *)loginButton; |
| | | - (BOOL)loginButtonWillLogin:(FBSDKLoginButton *)loginButton; |
| | | |
| | | @end |
| | | |
| | | NS_ASSUME_NONNULL_END |
| | | |
| | | #endif |