Currently, WKNavigationDelegate only gets didCommit callbacks for main frame navigations. This means that WKWebView embedders have no way to detect the end of an iframe navigation. However, iframe navigations can still add an item to WKBackForwardList. Since WKBackForwardList.currentItem is not KVO-compliant, there's no way for an embedder to get a callback when such a navigation item is added. This means that embedders (like Chrome on iOS) that depend on performing computation to determine feature availability (like autofill) when the current item changes have breakage on iframe-only navigations that add a navigation item, since that navigation item is silently added (see crbug.com/1361722 for how this breaks autofill in Chrome). It would be useful to either get the full set of navigation callbacks for iframe navigations (these already exist as SPI in WKNavigationDelegage), or to make WKBackForwardList.currentItem KVO-compliant.
<rdar://problem/103761549>