A few months back I wrote about disabling the ability of a user to zoom a web page presented in a WKWebView
. This is custom HTML content being displayed in an enterprise app, not a web site, so its not as nefarious as it sounds.
Another wish was to disable callouts. That's the pop-over that shows up when you long-tap on elements in Mobile Safari. They let you copy text, define a word or share a snippet.
A callout on iPad
There's no property on WKWebView
that lets us do this, but we can do this similar to how we disabled the ability to zoom the page.
We pass a custom WKUserScript
to our web view which creates a style
tag and adds some styling which sets both -webkit-user-select
and -webkit-touch-callout
to none
on all elements except input
fields and textarea
elements.
As always, remember that these powers should only be used for good.