New issue
Advanced search Search tips

Issue 918112 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

android webview doesnt show the entire content

Reported by elises...@gmail.com, Dec 28

Issue description

Steps to reproduce the problem:
1. set webkit-column-width 
2. scroll to the end of the right side
3. check the last word is 'THE END !!'  

What is the expected behavior?
webview does show the whole content 

What went wrong?
My test html file ends with the word 'THE END !!!'
after i add webkit-column-width, the webview dose not show the entire html so i'm not able to find that word.

I've tested with galaxy S8 note and galaxytab S3 

Did this work before? N/A 

Chrome version: 71.0.3578.98  Channel: stable
OS Version: 2)
Flash Version:
 
webviewtest.zip
1.2 MB Download
Components: -Blink Blink>Layout>MultiCol
Owner: mstensho@chromium.org
Status: Assigned (was: Unconfirmed)
(only testing test.html in the zip; ignoring the Android parts for now)

This test is clearly hitting some internal limits in our engine, making the last column very tall. That is expected. But there's also some unexpected behavior here. Weird gaps between lines (pagination struts gone wild?). See attachment. And missing "THE END" is bad too, of course.
Screen Shot 2018-12-30 at 10.04.27 AM.png
447 KB View Download
i attached my test project.
I am now making a e-book viewer, so I have to fix this asap.
please look into why this problem happened and help me to solve this 
android_webview_test.zip
20.3 MB Download
Are the Android parts relevant? I'm asking, because I have no environment set up for that (and also generally little knowledge about Android). So, if possible, could you provide regular HTML tests, please?

Anyway, I found app/build/intermediates/assets/debug/test.html in the zip, and at least that one displays everything here. Why is the font so big, BTW? Our internal limits are pixel-based, so with a larger font we'll run out of pixels faster. :)

Also, what version of WebView are you using? For a brief period, we had some really strict size limits for multicol, which did cause trouble for real content like this.
The bug I was thinking of was  bug 808189 . The last fix for that bug made it into Chrome 68, so if you're using that or something later, we're on the same page.
app/build/intermediates/assets/debug/test.html is not my test html file.
you should test with app/src/main/assets/test.html 

I tested test.html with pc chrome and i confirmed that android parts are not relevant. (please refer to attached file named pc_chrome_test_result.png) 

my application is an e-book viewer and some users with poor eyesight can increase font size.
If there is an internal limit, is there no solution for this problem? 
pc_chrome_test_result.png
34.8 KB View Download
Status: Started (was: Assigned)
Thanks for confirming. So we're dealing with a problem that still exists.

There are two internal limits causing trouble here: max column count [1], and max column width/height [2]. Your test hits the first limit, so that the last column becomes super-tall, which hits the second limit: max column height.

I think we should increase the max column count limit. We used to have severe performance issues with many columns, but I think that has been improved in the meantime.

[1] https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc?l=1464&rcl=24ee9b5e8feee600b38e7b26a1270288a93902fc
[2] https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/layout/multi_column_fragmentainer_group.cc?l=460&rcl=24ee9b5e8feee600b38e7b26a1270288a93902fc

Fix in progress here:
https://chromium-review.googlesource.com/c/chromium/src/+/1392955

Your test displays fine with this fix.

The new limit will be 10000 columns. Hopefully that's enough. We still seem to be running into performance problems with extremely large column counts, so keeping some sort of limit seems necessary.
Project Member

Comment 9 by bugdroid1@chromium.org, Jan 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/64752ee4b1b93f069b2d64a4327af81319f45191

commit 64752ee4b1b93f069b2d64a4327af81319f45191
Author: Morten Stenshorne <mstensho@chromium.org>
Date: Wed Jan 02 16:21:50 2019

Less restrictive internal column count limit.

Just allow up to 10000 columns unconditionally.

We used to have severe performance problems with many columns (O(n^2)),
but that should be long gone, thanks to
https://chromium-review.googlesource.com/c/chromium/src/+/1070562/

This is essentially a revert of
https://chromium-review.googlesource.com/c/chromium/src/+/1068929/
(and earlier clamping attempts).

Bug:  918112 ,  808189 
Change-Id: I3c767fa4f2da5197d1a02c8f4ad89fbc35c5614d
Reviewed-on: https://chromium-review.googlesource.com/c/1392955
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619413}
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.cc
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/layout/layout_multi_column_flow_thread.h
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/layout/multi_column_fragmentainer_group.cc
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/layout/multi_column_fragmentainer_group.h
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/layout/multi_column_fragmentainer_group_test.cc
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/renderer/core/paint/paint_property_tree_builder_test.cc
[modify] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/web_tests/TestExpectations
[add] https://crrev.com/64752ee4b1b93f069b2d64a4327af81319f45191/third_party/blink/web_tests/external/wpt/css/css-multicol/large-actual-column-count.html
[delete] https://crrev.com/702131a0cbed54f73277fe87b544bcc9f74f40b9/third_party/blink/web_tests/fast/multicol/column-clamping-expected.html
[delete] https://crrev.com/702131a0cbed54f73277fe87b544bcc9f74f40b9/third_party/blink/web_tests/fast/multicol/column-clamping.html

Status: Fixed (was: Started)

Sign in to add a comment