RESOLVED FIXED 161448
AX: Cannot tab out of WKWebView for macOS
https://bugs.webkit.org/show_bug.cgi?id=161448
Summary AX: Cannot tab out of WKWebView for macOS
Dan Saunders
Reported 2016-08-31 11:56:24 PDT
When WKWebView control exists in a window with other controls that accept keyboard focus on macOS, there is no way to tab out of the WKWebView and access the other controls with keyboard. The keyView loop contains a cycle inside the WKWebView regardless of the page being loaded. This could block using WKWebView in accessible applications, without voiceover there is no way to exit the control using keyboard. WebView control does not have this issue.
Attachments
Patch (35.05 KB, patch)
2019-01-14 23:51 PST, Tim Horton
no flags
Patch (35.41 KB, patch)
2019-01-15 11:02 PST, Tim Horton
no flags
Patch (35.41 KB, patch)
2019-01-15 13:03 PST, Tim Horton
no flags
Radar WebKit Bug Importer
Comment 1 2016-08-31 11:57:02 PDT
Dan Saunders
Comment 2 2016-09-12 17:39:20 PDT
UIDelegate::UIClient::takeFocus needs to be implemented to get this behavior
Tim Horton
Comment 3 2019-01-14 23:51:29 PST
Wenson Hsieh
Comment 4 2019-01-15 07:26:31 PST
Comment on attachment 359141 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=359141&action=review > Tools/TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:86 > + window = [[OffscreenWindow alloc] initWithSize:CGSizeMake(100, 100)]; adopt? > Tools/TestWebKitAPI/Tests/WebKitCocoa/TabOutOfWebView.mm:61 > + RetainPtr<TestWKWebView> webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 100, 100, 100) configuration:[[WKWebViewConfiguration alloc] init] addToWindow:NO]); Let's -autorelease the configuration, or put it in a RetainPtr and use adoptNS.
Tim Horton
Comment 5 2019-01-15 10:43:15 PST
(In reply to Wenson Hsieh from comment #4) > Comment on attachment 359141 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=359141&action=review > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:86 > > + window = [[OffscreenWindow alloc] initWithSize:CGSizeMake(100, 100)]; > > adopt? > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/TabOutOfWebView.mm:61 > > + RetainPtr<TestWKWebView> webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 100, 100, 100) configuration:[[WKWebViewConfiguration alloc] init] addToWindow:NO]); > > Let's -autorelease the configuration, or put it in a RetainPtr and use > adoptNS. LOL I've been ARCing too much. Thank you for your eyes.
Tim Horton
Comment 6 2019-01-15 11:02:25 PST
Tim Horton
Comment 7 2019-01-15 13:03:58 PST
WebKit Commit Bot
Comment 8 2019-01-15 14:53:45 PST
Comment on attachment 359193 [details] Patch Clearing flags on attachment: 359193 Committed r240010: <https://trac.webkit.org/changeset/240010>
WebKit Commit Bot
Comment 9 2019-01-15 14:53:46 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.