RESOLVED FIXED 232486
[iOS 15] Loads after WKWebView session restore are marked as app-initiated
https://bugs.webkit.org/show_bug.cgi?id=232486
Summary [iOS 15] Loads after WKWebView session restore are marked as app-initiated
Ali Juma
Reported 2021-10-29 08:36:36 PDT
After restoring a session using -[WKWebView setInteractionState:], all loads within that WKWebView are marked as app-initiated, including back/forward navigation through the restored state, and tapping links. This continues until the next call to -[WKWebView loadRequest:]. This was fixed for Safari in bug 229721 by adding an |isAppInitiated| property to _WKSessionState, but other browsers on iOS still have the same issue since they can't use this SPI. So an equivalent public API way to restore a session but have loads marked as non-app-initiated is needed, perhaps adding an extra argument to -[WKWebView setInteractionState:]. I've also filed FB9728909 for this bug.
Attachments
Patch (7.16 KB, patch)
2021-10-29 17:43 PDT, Kate Cheney
no flags
Radar WebKit Bug Importer
Comment 1 2021-10-29 09:45:29 PDT
Kate Cheney
Comment 2 2021-10-29 11:35:38 PDT
Thanks for filing! We are looking into this.
Kate Cheney
Comment 3 2021-10-29 17:43:05 PDT
Brent Fulgham
Comment 4 2021-10-29 18:53:27 PDT
Comment on attachment 442888 [details] Patch R=me
EWS
Comment 5 2021-10-30 09:08:24 PDT
Committed r285080 (243722@main): <https://commits.webkit.org/243722@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 442888 [details].
Alex Christensen
Comment 6 2021-10-30 09:26:19 PDT
Can we remove _WKSessionState.isAppInitiated now?
Kate Cheney
Comment 7 2021-11-01 08:58:40 PDT
(In reply to Alex Christensen from comment #6) > Can we remove _WKSessionState.isAppInitiated now? Yes
Note You need to log in before you can comment on or make changes to this bug.