Summary: | Call setFullscreenClient on iOS. | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Jeremy Jones <jeremyj-wk> | ||||||||||||
Component: | WebKit2 | Assignee: | Jeremy Jones <jeremyj-wk> | ||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||
Severity: | Normal | CC: | commit-queue, simon.fraser, thorton, webkit-bug-importer | ||||||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||||||
Version: | WebKit Nightly Build | ||||||||||||||
Hardware: | Unspecified | ||||||||||||||
OS: | Unspecified | ||||||||||||||
Attachments: |
|
Description
Jeremy Jones
2017-10-09 11:12:22 PDT
Created attachment 323191 [details]
Patch
Comment on attachment 323191 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=323191&action=review > Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm:-1308 > - m_page->setFullscreenClient(std::make_unique<WebKit::FullscreenClient>(view)); How does removing this not break WKView?? Created attachment 323623 [details]
Patch
Created attachment 323967 [details]
Patch
Created attachment 324034 [details]
Patch
Created attachment 324874 [details]
Patch
(In reply to Tim Horton from comment #2) > Comment on attachment 323191 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=323191&action=review > > > Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm:-1308 > > - m_page->setFullscreenClient(std::make_unique<WebKit::FullscreenClient>(view)); > > How does removing this not break WKView?? I put that back in and just added it for iOS in WKContentView. Comment on attachment 324874 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=324874&action=review > Source/WebKit/UIProcess/ios/WKContentView.mm:205 > + _page->setFullscreenClient(std::make_unique<WebKit::FullscreenClient>(_webView)); This API seems a bit weird. Normally you don't pass ownership of a client to the thing that it's a client of. You hold ownership, and the client relationship is weak. (In reply to Simon Fraser (smfr) from comment #8) > Comment on attachment 324874 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=324874&action=review > > > Source/WebKit/UIProcess/ios/WKContentView.mm:205 > > + _page->setFullscreenClient(std::make_unique<WebKit::FullscreenClient>(_webView)); > > This API seems a bit weird. Normally you don't pass ownership of a client to > the thing that it's a client of. You hold ownership, and the client > relationship is weak. A regular expression search for '_page->set[A-Za-z]*Client\(' shows that we always do this. I've filed https://bugs.webkit.org/show_bug.cgi?id=178893 to investigate this pattern. Comment on attachment 324874 [details] Patch Clearing flags on attachment: 324874 Committed r224063: <https://trac.webkit.org/changeset/224063> All reviewed patches have been landed. Closing bug. |