Summary: | Fix text autoscrolling when typing in modern webkit | ||
---|---|---|---|
Product: | WebKit | Reporter: | Megan Gardner <megan_gardner> |
Component: | New Bugs | Assignee: | Megan Gardner <megan_gardner> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | commit-queue, ews-watchlist, rniwa, simon.fraser, thorton, webkit-bot-watchers-bugzilla, webkit-bug-importer, wenson_hsieh |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Attachments: |
Description
Megan Gardner
2019-04-08 18:02:30 PDT
Created attachment 367005 [details]
Patch
Comment on attachment 367005 [details] Patch Attachment 367005 [details] did not pass mac-ews (mac): Output: https://webkit-queues.webkit.org/results/11813172 New failing tests: fast/events/autoscroll-when-input-is-offscreen.html fast/events/autoscroll-with-software-keyboard.html Created attachment 367012 [details]
Archive of layout-test-results from ews103 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103 Port: mac-highsierra Platform: Mac OS X 10.13.6
Comment on attachment 367005 [details] Patch Attachment 367005 [details] did not pass mac-wk2-ews (mac-wk2): Output: https://webkit-queues.webkit.org/results/11813284 New failing tests: fast/events/autoscroll-when-input-is-offscreen.html fast/events/autoscroll-with-software-keyboard.html Created attachment 367015 [details]
Archive of layout-test-results from ews107 for mac-highsierra-wk2
The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107 Port: mac-highsierra-wk2 Platform: Mac OS X 10.13.6
Comment on attachment 367005 [details] Patch Attachment 367005 [details] did not pass win-ews (win): Output: https://webkit-queues.webkit.org/results/11814178 New failing tests: fast/events/autoscroll-when-input-is-offscreen.html fast/events/autoscroll-with-software-keyboard.html Created attachment 367024 [details]
Archive of layout-test-results from ews206 for win-future
The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews206 Port: win-future Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Comment on attachment 367005 [details] Patch Attachment 367005 [details] did not pass mac-debug-ews (mac): Output: https://webkit-queues.webkit.org/results/11815105 New failing tests: fast/events/autoscroll-when-input-is-offscreen.html fast/events/autoscroll-with-software-keyboard.html Created attachment 367029 [details]
Archive of layout-test-results from ews116 for mac-highsierra
The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews116 Port: mac-highsierra Platform: Mac OS X 10.13.6
Created attachment 367069 [details]
Patch
Comment on attachment 367069 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=367069&action=review > Source/WebCore/ChangeLog:5 > + rdar://??? > Source/WebCore/ChangeLog:20 > + We should be scrolling the mainframe in WebKit. We have been relying on UIKit, "main frame" IMO > Source/WebCore/ChangeLog:21 > + but we cannot give them enough information to guarentee a correct scroll, so just guarentee (sp) > Source/WebCore/page/FrameView.cpp:1998 > IntRect FrameView::unobscuredContentRectExpandedByContentInsets() const > { > - FloatRect unobscuredContentRect = this->unobscuredContentRect(); > + FloatRect unobscuredContentRect = this->visualViewportRect(); The disparity between the name and reality of this function seems problematic > Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:165 > + return; No need for this return. > Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:167 > +@end Newline before the @end, or not after the @implementation, but not unbalanced like this. > Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:2386 > - _textSelectionAssistant = adoptNS([[UIWKTextInteractionAssistant alloc] initWithView:self]); > + _textSelectionAssistant = adoptNS([[WKUIWKTextInteractionAssistant alloc] initWithView:self]); Sneaky. V. nice. Created attachment 367080 [details]
Patch
Comment on attachment 367080 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=367080&action=review > Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:158 > +@interface WKUIWKTextInteractionAssistant : UIWKTextInteractionAssistant 🤣 Comment on attachment 367080 [details] Patch Clearing flags on attachment: 367080 Committed r244141: <https://trac.webkit.org/changeset/244141> All reviewed patches have been landed. Closing bug. One of the new tests added in https://trac.webkit.org/changeset/244141/webkit is a flaky failure fast/events/autoscroll-when-input-is-offscreen.html is failing approximately 1 in 4 tries. Reproduced with: run-webkit-tests fast/events/autoscroll-when-input-is-offscreen.html --iterations 25 -f --ios-simulator Dashboard: https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fevents%2Fautoscroll-when-input-is-offscreen.html Diff: --- /Volumes/Data/slave/ios-simulator-12-release-tests-wk2/build/layout-test-results/fast/events/autoscroll-when-input-is-offscreen-expected.txt +++ /Volumes/Data/slave/ios-simulator-12-release-tests-wk2/build/layout-test-results/fast/events/autoscroll-when-input-is-offscreen-actual.txt @@ -1,3 +1,3 @@ This test focuses a form, them scrolls to the bottom of the page. Then text is entered in the form, and we check to make sure the page has scrolled so that the input is visible again. -PASS: page has scrolled back to the top to show the element that has text being entered into it. +FAIL: page has failed to scroll when entering text into a form that is offscreen. Fixed test in https://bugs.webkit.org/show_bug.cgi?id=196840 |