iOS 7 GM: UITextView data detectors open the wrong URLs

Originator:agiletortoise
Number:rdar://15070698 Date Originated:24-Sept-2013
Status:Open Resolved:
Product:iOS SDK Product Version:5A1413
Classification:UI/Usability Reproducible:Always
 
Summary:
If data detectors are enabled on a UITextView, and an URL triggered by tapping on a data detector link, that URL can get cached and stuck, then when the text is changed or other links tapped the cached URL is opened.

Steps to Reproduce:
1. Launch attached project (simulator or device).
2. Tap "Text1" button. A URL will be placed in the text view, and should get identified by data detectors as a link.
3. Tap the link...it will open in Safari.
4. Return to example app, tap "Text2" button.
5. New text will appear, and it erroneously highlighted.  Tap on links in that text.

Expected Results:
The link tapped should open the URL corresponding to the text tapped.

Actual Results:
After step 5, you will go to Safari with the URL tapped in step #3, not the one tapped in step #5.  Also, UITextViewDelegate's shouldInteractWithURL:inRange method is called with the wrong URL.  The characterRange is correct and match the new link range, however.

Version:
iOS 7 SDK 5A1413

Notes:


Configuration:


Attachments:
'TEST_DataDetectorLinkCaching.zip' was successfully uploaded.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!