---
title: "safariViewControllerDidFinish(_:)"
framework: safariservices
role: symbol
role_heading: Instance Method
path: "safariservices/sfsafariviewcontrollerdelegate/safariviewcontrollerdidfinish(_:)"
---

# safariViewControllerDidFinish(_:)

Tells the delegate that the user dismissed the view.

## Declaration

```swift
optional func safariViewControllerDidFinish(_ controller: SFSafariViewController)
```

## Parameters

- `controller`: The view controller.

## Discussion

Discussion You can perform any necessary cleanup here. The view controller is dismissed afterwards.

## See Also

### Working with the View Controller

- [safariViewController(_:didCompleteInitialLoad:)](safariservices/sfsafariviewcontrollerdelegate/safariviewcontroller(_:didcompleteinitialload:).md)
- [safariViewController(_:activityItemsFor:title:)](safariservices/sfsafariviewcontrollerdelegate/safariviewcontroller(_:activityitemsfor:title:).md)
- [safariViewController(_:excludedActivityTypesFor:title:)](safariservices/sfsafariviewcontrollerdelegate/safariviewcontroller(_:excludedactivitytypesfor:title:).md)
