I've got an app that uses a web view where text can be selected. It's long been an annoyance that you can't select text across a block boundary in UIWebView. WKWebView seems to fix this with a property on its configuration: selectionGranularity
. One of the possible values is WKSelectionGranularityCharacter
:
Selection endpoints can be placed at any character boundary.
Sounds great! Exactly what I need. Except that when I set that in my web view, I often can no longer select text at all. What is going on? Is there something else I need to set? Has anyone figured this out?
Update: I've figured out the following bugs:
When there is more than one WKWebView in an app with
selectionGranularity
set toWKSelectionGranularityCharacter
, only the most recent one to load can select text. I've filed this as bug 18441138.If there is a click handler attached to an element inside the
body
in the HTML content of a WKWebView whoseselectionGranularity
is set to WKSelectionGranularityCharacter, text selection doesn't work inside that element. I've filed this as bug 18440833.Text selection fails in the WKWebView after you've entered edit mode on a UITextView somewhere else in the app until the WKWebView reloads. I've filed this as bug 18468405.
Has anyone worked around any of these?