Title: [240466] trunk/Source/WebKit
- Revision
- 240466
- Author
- [email protected]
- Date
- 2019-01-24 18:53:27 -0800 (Thu, 24 Jan 2019)
Log Message
iOS: Split keyboard should not shrink visualViewport.height
https://bugs.webkit.org/show_bug.cgi?id=193798
Reviewed by Tim Horton.
Treat a split keyboard like a floating keyboard and don't consider its input view bounds in computing the visible content rects.
No new tests since while it's possible to transition between split and merged keyboard using some SPI,
there isn't a reliable mechanism to reset the keyboard state. e.g. we need to wait for a hard-coded amount of time.
* Platform/spi/ios/UIKitSPI.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (240465 => 240466)
--- trunk/Source/WebKit/ChangeLog 2019-01-25 02:47:58 UTC (rev 240465)
+++ trunk/Source/WebKit/ChangeLog 2019-01-25 02:53:27 UTC (rev 240466)
@@ -1,3 +1,19 @@
+2019-01-24 Ryosuke Niwa <[email protected]>
+
+ iOS: Split keyboard should not shrink visualViewport.height
+ https://bugs.webkit.org/show_bug.cgi?id=193798
+
+ Reviewed by Tim Horton.
+
+ Treat a split keyboard like a floating keyboard and don't consider its input view bounds in computing the visible content rects.
+
+ No new tests since while it's possible to transition between split and merged keyboard using some SPI,
+ there isn't a reliable mechanism to reset the keyboard state. e.g. we need to wait for a hard-coded amount of time.
+
+ * Platform/spi/ios/UIKitSPI.h:
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
+
2019-01-24 Eric Carlson <[email protected]>
[iOS] Silence MediaPlayer compile warnings
Modified: trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h (240465 => 240466)
--- trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2019-01-25 02:47:58 UTC (rev 240465)
+++ trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h 2019-01-25 02:53:27 UTC (rev 240466)
@@ -297,6 +297,7 @@
+ (UIPeripheralHost *)activeInstance;
+ (CGRect)visiblePeripheralFrame;
- (BOOL)isOnScreen;
+- (BOOL)isUndocked;
- (UIKeyboardRotationState *)rotationState;
@end
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (240465 => 240466)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2019-01-25 02:47:58 UTC (rev 240465)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2019-01-25 02:53:27 UTC (rev 240466)
@@ -3175,6 +3175,9 @@
else
_inputViewBounds = [self.window convertRect:CGRectIntersection([endFrameValue CGRectValue], self.window.screen.bounds) fromWindow:nil];
+ if ([[UIPeripheralHost sharedInstance] isUndocked])
+ _inputViewBounds = CGRectZero;
+
if (adjustScrollView) {
CGFloat bottomInsetBeforeAdjustment = [_scrollView contentInset].bottom;
SetForScope<BOOL> insetAdjustmentGuard(_currentlyAdjustingScrollViewInsetsForKeyboard, YES);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes