Nantes icon indicating copy to clipboard operation
Nantes copied to clipboard

touchesEnded and thus handleLinkTapped are never executed

Open kevinrenskers opened this issue 3 years ago • 2 comments

I'm not sure why, but in my project the didSelectLink delegate method is never called. It seems that the root cause is that touchesEnded is also never called inside of NantesLabel, only touchesBegan and touchesCancelled.

In my case the label is used within a UIStackView within a UITableViewCell, auto-sizing everything. I set myLabel.attributedText to an instance of NSAttributedString with the .foregroundColor and .font attributes set, and links are added the old-fashioned way via NSMutableAttributedString's addAttribute. The links are styled just fine (via linkAttributes), so they are definitely recognized. Also within touchesBegan I can see that it does find the link and sets activeLink. But.. touchesEnded is never called, so handleLinkTapped is also never executed.

I'm not sure how easy it's going to be to make a minimum reproducible project 😰 But I'll see what I can do!

kevinrenskers avatar May 26 '21 18:05 kevinrenskers

As I feared, a minimum project works just fine. I think it's going to be extremely difficult to pinpoint where in my project this bug gets introduced.

kevinrenskers avatar May 26 '21 19:05 kevinrenskers

I actually have the same problem with TTTAttributedLabel. Very weird. I'll dig deeper tomorrow.

kevinrenskers avatar May 26 '21 20:05 kevinrenskers