Add view parameter to userDidTapOnFailIcon() (#167)

* Add view parameter to userDidTapOnFailIcon() interaction handler method. Pass failed button view into it.
This commit is contained in:
Igor Kashkuta 2016-06-28 15:20:20 +01:00 committed by GitHub
parent 37dd3bd562
commit 25b32bb0cb
6 changed files with 9 additions and 9 deletions

View File

@ -34,7 +34,7 @@ public protocol ViewModelBuilderProtocol {
public protocol BaseMessageInteractionHandlerProtocol {
associatedtype ViewModelT
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT)
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT, failIconView: UIView)
func userDidTapOnBubble(viewModel viewModel: ViewModelT)
func userDidBeginLongPressOnBubble(viewModel viewModel: ViewModelT)
func userDidEndLongPressOnBubble(viewModel viewModel: ViewModelT)
@ -113,7 +113,7 @@ public class BaseMessagePresenter<BubbleViewT, ViewModelBuilderT, InteractionHan
}
cell.onFailedButtonTapped = { [weak self] (cell) in
guard let sSelf = self else { return }
sSelf.onCellFailedButtonTapped()
sSelf.onCellFailedButtonTapped(cell.failedButton)
}
additionalConfiguration?()
}, animated: animated, completion: nil)
@ -173,7 +173,7 @@ public class BaseMessagePresenter<BubbleViewT, ViewModelBuilderT, InteractionHan
self.interactionHandler?.userDidEndLongPressOnBubble(viewModel: self.messageViewModel)
}
public func onCellFailedButtonTapped() {
self.interactionHandler?.userDidTapOnFailIcon(viewModel: self.messageViewModel)
public func onCellFailedButtonTapped(failedButtonView: UIView) {
self.interactionHandler?.userDidTapOnFailIcon(viewModel: self.messageViewModel, failIconView: failedButtonView)
}
}

View File

@ -176,7 +176,7 @@ public class BaseMessageCollectionViewCell<BubbleViewType where BubbleViewType:U
self.removeAccessoryView()
}
private lazy var failedButton: UIButton = {
public lazy var failedButton: UIButton = {
let button = UIButton(type: .Custom)
button.addTarget(self, action: #selector(BaseMessageCollectionViewCell.failedButtonTapped), forControlEvents: .TouchUpInside)
return button

View File

@ -79,7 +79,7 @@ class PhotoMessageTestHandler: BaseMessageInteractionHandlerProtocol {
typealias ViewModelT = PhotoMessageViewModel<PhotoMessageModel<MessageModel>>
var didHandleTapOnFailIcon = false
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT) {
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT, failIconView: UIView) {
self.didHandleTapOnFailIcon = true
}

View File

@ -89,7 +89,7 @@ class TextMessagePresenterTests: XCTestCase, UICollectionViewDataSource {
class TextMessageTestHandler: BaseMessageInteractionHandlerProtocol {
typealias ViewModelT = TextMessageViewModel<TextMessageModel<MessageModel>>
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT) {
func userDidTapOnFailIcon(viewModel viewModel: ViewModelT, failIconView: UIView) {
}

View File

@ -31,7 +31,7 @@ class DemoPhotoMessageHandler: BaseMessageInteractionHandlerProtocol {
self.baseHandler = baseHandler
}
func userDidTapOnFailIcon(viewModel viewModel: DemoPhotoMessageViewModel) {
func userDidTapOnFailIcon(viewModel viewModel: DemoPhotoMessageViewModel, failIconView: UIView) {
self.baseHandler.userDidTapOnFailIcon(viewModel: viewModel)
}

View File

@ -30,7 +30,7 @@ class DemoTextMessageHandler: BaseMessageInteractionHandlerProtocol {
init (baseHandler: BaseMessageHandler) {
self.baseHandler = baseHandler
}
func userDidTapOnFailIcon(viewModel viewModel: DemoTextMessageViewModel) {
func userDidTapOnFailIcon(viewModel viewModel: DemoTextMessageViewModel, failIconView: UIView) {
self.baseHandler.userDidTapOnFailIcon(viewModel: viewModel)
}