    Sets title and handler for negative button of dialog.
    - Parameter _ title: A string.
    - Parameter handler: A closure handling tap.
-   - Returns: DialogBuilder itself to allow chaining.
+   - Returns: Dialog itself to allow chaining.
    */
   open func negative(_ title: String?, handler: (() -> Void)?) -> Dialog {
     dialogView.negativeButton.title = title
-    controller.didTapNegativeButtonHandler = handler
+    controller.didTapNegativeButtonHandler = { [unowned self] in
+      self.delegate?.dialog?(self, didTapNegative: self.controller.dialogView.negativeButton)
+      handler?()
+    }
     return self
   }
   

  /**
   Sets details of the dialog.
   - Parameter _ text: A string.
   - Returns: DialogBuilder itself to allow chaining.
   */
  open func details(_ text: String?) -> Dialog {
    dialogView.detailsLabel.text = text

   Sets cancelability of dialog and handler for when it's cancelled.
   - Parameter _ value: A Bool.
   - Parameter handler: A closure handling cancellation.
   - Returns: Dialog itself to allow chaining.
   */
  open func isCancelable(_ value: Bool, handler: (() -> Void)? = nil) -> Dialog {
    controller.isCancelable = value
    controller.didCancelHandler = { [unowned self] in
      self.delegate?.dialogDidCancel?(self)
      handler?()
    }
    return self
  }
  
