[webkit-changes] [WebKit/WebKit] d7f28b: Resizing a fullscreen element doesn't always resiz...
mwyrzykowski
noreply at github.com
Mon Jul 24 11:11:10 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d7f28b8f18d6f400feac62dc7054759e91014765
https://github.com/WebKit/WebKit/commit/d7f28b8f18d6f400feac62dc7054759e91014765
Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
Date: 2023-07-24 (Mon, 24 Jul 2023)
Changed paths:
M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
A Tools/TestWebKitAPI/Tests/ios/WKWebViewResize.mm
Log Message:
-----------
Resizing a fullscreen element doesn't always resize children to the correct size
https://bugs.webkit.org/show_bug.cgi?id=258847
<radar://110880116>
Reviewed by Tim Horton.
During a window resize, [_contentView bounds] will not be up to date during the precommit
handler so it is incorrect to intersect it with the web view's bounds.
Additionally it makes fullscreen resizing look much smoother.
* Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _updateVisibleContentRects]):
Skip intersection if we just resized the WKWebView.
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/ios/WKWebViewResize.mm: Added.
(-[NSObject swizzled_didUpdateVisibleRect:unobscuredRect:contentInsets:unobscuredRectInScrollViewCoordinates:obscuredInsets:unobscuredSafeAreaInsets:inputViewBounds:scale:minimumScale:viewStability:enclosedInScrollableAncestorView:sendEvenIfUnchanged:]):
(setupWKContentViewSwizzle):
(operator==):
Required for EXPECT_EQ on CGRect.
(webViewHasExpectedBounds):
(TEST):
Add API test which ensures a content view with no other insets will have an
unobscuredRect which matches the enclosing WKWebView's bounds after setFrame: is called.
Tests both resizing the web view larger and smaller.
Canonical link: https://commits.webkit.org/266257@main
More information about the webkit-changes
mailing list