@@ -19,6 +19,7 @@ open class FluidRideauViewController: FluidTransitionViewController {
1919 // MARK: - Properties
2020
2121 public var onWillDismiss : ( ) -> Void = { }
22+ public var onDidDismiss : ( ) -> Void = { }
2223
2324 public let rideauView : RideauView
2425
@@ -153,39 +154,41 @@ open class FluidRideauViewController: FluidTransitionViewController {
153154 }
154155
155156 self . onWillDismiss ( )
156-
157+
158+ let onDidDismiss = self . onDidDismiss
157159 if Self . supportsModalPresentation {
158160
159161 if self . isInFluidStackController {
160- self . fluidStackContext? . removeSelf ( transition: . disabled)
162+ self . fluidStackContext? . removeSelf ( transition: . disabled, completion : { _ in onDidDismiss ( ) } )
161163 } else {
162- self . dismiss ( animated: true , completion: nil )
164+ self . dismiss ( animated: true , completion: onDidDismiss )
163165 }
164166
165167 } else {
166- self . fluidStackContext? . removeSelf ( transition: . disabled)
168+ self . fluidStackContext? . removeSelf ( transition: . disabled, completion : { _ in onDidDismiss ( ) } )
167169 }
168170
169171 }
170172
171173 }
172174
173175 @objc private dynamic func didTapBackdropView( gesture: UITapGestureRecognizer ) {
174-
176+
177+ let onDidDismiss = self . onDidDismiss
175178 if Self . supportsModalPresentation {
176179
177180 if self . isInFluidStackController {
178181 assert ( fluidStackContext != nil )
179182 onWillDismiss ( )
180- fluidPop ( transition: nil , completion: nil )
183+ fluidPop ( transition: nil , completion: { _ in onDidDismiss ( ) } )
181184 } else {
182- self . dismiss ( animated: true , completion: nil )
185+ self . dismiss ( animated: true , completion: onDidDismiss )
183186 }
184187
185188 } else {
186189 assert ( fluidStackContext != nil )
187190 onWillDismiss ( )
188- fluidPop ( transition: nil , completion: nil )
191+ fluidPop ( transition: nil , completion: { _ in onDidDismiss ( ) } )
189192 }
190193
191194
0 commit comments