Bug 198244

Summary: iOS: Main frame should be scrollable when pinch zoomed or software keyboard is up
Product: WebKit Reporter: Ryosuke Niwa <rniwa>
Component: ScrollingAssignee: Ryosuke Niwa <rniwa>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, ews-watchlist, koivisto, rniwa, simon.fraser, thorton, wenson_hsieh
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=198412
Bug Depends on: 198436    
Bug Blocks:    
Attachments:
Description Flags
WIP
none
WIP
ews-watchlist: commit-queue-
Archive of layout-test-results from ews107 for mac-highsierra-wk2
none
Archive of layout-test-results from ews103 for mac-highsierra
none
Archive of layout-test-results from ews214 for win-future
none
Archive of layout-test-results from ews117 for mac-highsierra
none
WIP3
none
WIP4
none
Fixes the bug
none
Fixed a bug
none
Patch for landing none

Description Ryosuke Niwa 2019-05-24 23:44:48 PDT
Even when overflow: hidden is specified on the frame view, we still need to make the main frame scrollable
when the software keyboard is up or the user had pinch zoomed the page.
Comment 1 Ryosuke Niwa 2019-05-24 23:45:59 PDT
Created attachment 370624 [details]
WIP
Comment 2 Ryosuke Niwa 2019-05-24 23:50:37 PDT
Created attachment 370625 [details]
WIP
Comment 3 EWS Watchlist 2019-05-25 00:46:28 PDT
Comment on attachment 370625 [details]
WIP

Attachment 370625 [details] did not pass mac-wk2-ews (mac-wk2):
Output: https://webkit-queues.webkit.org/results/12286121

Number of test failures exceeded the failure limit.
Comment 4 EWS Watchlist 2019-05-25 00:46:29 PDT
Created attachment 370628 [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 5 EWS Watchlist 2019-05-25 00:54:39 PDT
Comment on attachment 370625 [details]
WIP

Attachment 370625 [details] did not pass mac-ews (mac):
Output: https://webkit-queues.webkit.org/results/12286136

New failing tests:
compositing/backgrounds/fixed-background-on-descendant.html
imported/blink/svg/as-image/overflow-auto.html
imported/blink/svg/as-background-image/overflow-auto.html
fast/scrolling/rtl-initial-scroll-position.html
fast/block/positioning/vertical-rl/fixed-positioning.html
imported/blink/fast/overflow/hidden-viewport-y.html
svg/overflow/overflow-y-hidden-on-outermost-svg-element.svg
fast/block/positioning/rtl-fixed-positioning.html
Comment 6 EWS Watchlist 2019-05-25 00:54:41 PDT
Created attachment 370629 [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 7 EWS Watchlist 2019-05-25 01:30:30 PDT
Comment on attachment 370625 [details]
WIP

Attachment 370625 [details] did not pass win-ews (win):
Output: https://webkit-queues.webkit.org/results/12286216

Number of test failures exceeded the failure limit.
Comment 8 EWS Watchlist 2019-05-25 01:30:32 PDT
Created attachment 370631 [details]
Archive of layout-test-results from ews214 for win-future

The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews214  Port: win-future  Platform: CYGWIN_NT-10.0-17763-3.0.5-338.x86_64-x86_64-64bit
Comment 9 EWS Watchlist 2019-05-25 01:37:12 PDT
Comment on attachment 370625 [details]
WIP

Attachment 370625 [details] did not pass mac-debug-ews (mac):
Output: https://webkit-queues.webkit.org/results/12286180

New failing tests:
compositing/backgrounds/fixed-background-on-descendant.html
imported/blink/svg/as-image/overflow-auto.html
imported/blink/svg/as-background-image/overflow-auto.html
fast/scrolling/rtl-initial-scroll-position.html
fast/block/positioning/vertical-rl/fixed-positioning.html
imported/blink/fast/overflow/hidden-viewport-y.html
svg/overflow/overflow-y-hidden-on-outermost-svg-element.svg
fast/block/positioning/rtl-fixed-positioning.html
Comment 10 EWS Watchlist 2019-05-25 01:37:14 PDT
Created attachment 370632 [details]
Archive of layout-test-results from ews117 for mac-highsierra

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-highsierra  Platform: Mac OS X 10.13.6
Comment 11 Ryosuke Niwa 2019-05-28 19:57:25 PDT
Created attachment 370825 [details]
WIP3
Comment 12 Ryosuke Niwa 2019-05-28 20:14:04 PDT
Created attachment 370826 [details]
WIP4
Comment 13 Ryosuke Niwa 2019-05-30 17:22:32 PDT
Created attachment 371000 [details]
Fixes the bug
Comment 14 Ryosuke Niwa 2019-05-30 17:26:15 PDT
<rdar://problem/51283532>
Comment 15 Ryosuke Niwa 2019-05-30 20:03:59 PDT
Created attachment 371024 [details]
Fixed a bug
Comment 16 Simon Fraser (smfr) 2019-05-30 20:51:15 PDT
Comment on attachment 371024 [details]
Fixed a bug

View in context: https://bugs.webkit.org/attachment.cgi?id=371024&action=review

> LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-keyboard.html:24
> +    // FIXME: Work around the bug that scrolling down after the software keyborad is brought up for the very first time does not work.

keyborad

You should file a bug and reference it here.

> LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-keyboard.html:36
> +    await new Promise((resolve) => setTimeout(resolve, 100));

UIHelper.delayFor()

> LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-zoomed-1.html:31
> +    await new Promise((resolve) => setTimeout(resolve, 200));

UIHelper.delayFor()

> LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-zoomed-2.html:35
> +    await new Promise((resolve) => setTimeout(resolve, 200));

UIHelper.delayFor
Comment 17 Ryosuke Niwa 2019-05-30 21:10:07 PDT
Thanks for the review!

(In reply to Simon Fraser (smfr) from comment #16)
> Comment on attachment 371024 [details]
> Fixed a bug
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=371024&action=review
> 
> > LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-keyboard.html:24
> > +    // FIXME: Work around the bug that scrolling down after the software keyborad is brought up for the very first time does not work.
> 
> keyborad
> 
> You should file a bug and reference it here.

Will do.

> > LayoutTests/fast/scrolling/ios/body-overflow-hidden-height-100-percent-keyboard.html:36
> > +    await new Promise((resolve) => setTimeout(resolve, 100));
> 
> UIHelper.delayFor()

Oh, that's a neat function! Will fix this and the rest.
Comment 18 Ryosuke Niwa 2019-05-30 21:31:53 PDT
Created attachment 371032 [details]
Patch for landing
Comment 19 Ryosuke Niwa 2019-05-30 21:32:56 PDT
Comment on attachment 371032 [details]
Patch for landing

Wait for iOS EWS bot.
Comment 20 Ryosuke Niwa 2019-05-31 00:25:45 PDT
Committed r245953: <https://trac.webkit.org/changeset/245953>
Comment 21 WebKit Commit Bot 2019-05-31 14:09:21 PDT
Re-opened since this is blocked by bug 198436
Comment 22 Ryosuke Niwa 2019-05-31 15:12:21 PDT
Committed r245989: <https://trac.webkit.org/changeset/245989>