Bug 74874 - REGRESSION (r102040): Wrong column widths when row has colspan and unwrappable text
Summary: REGRESSION (r102040): Wrong column widths when row has colspan and unwrappabl...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tables (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P1 Normal
Assignee: Robert Hogan
URL:
Keywords: InRadar, Regression
: 76807 (view as bug list)
Depends on:
Blocks: 76807
  Show dependency treegraph
 
Reported: 2011-12-19 11:15 PST by Robert Hogan
Modified: 2012-03-08 19:40 PST (History)
7 users (show)

See Also:


Attachments
Reduction - colspan 2 looks fine (486 bytes, text/html)
2011-12-19 11:15 PST, Robert Hogan
no flags Details
Reduction - colspan 3 fails (486 bytes, text/html)
2011-12-19 11:17 PST, Robert Hogan
no flags Details
Patch (78.66 KB, patch)
2012-01-16 15:08 PST, Robert Hogan
no flags Details | Formatted Diff | Diff
Patch (78.65 KB, patch)
2012-01-18 14:04 PST, Robert Hogan
no flags Details | Formatted Diff | Diff
Patch (80.48 KB, patch)
2012-01-23 11:48 PST, Robert Hogan
jchaffraix: review+
jchaffraix: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Hogan 2011-12-19 11:15:00 PST
This is a reduction of an issue seen at build.webkit.org/console

The columns with 'texttesttest' collapse to a tiny width if the colspan is set to 3, but not when set to 2 or 4.
Comment 1 Robert Hogan 2011-12-19 11:15:33 PST
Created attachment 119891 [details]
Reduction - colspan 2 looks fine
Comment 2 Robert Hogan 2011-12-19 11:17:10 PST
Created attachment 119892 [details]
Reduction - colspan 3 fails
Comment 3 Robert Hogan 2012-01-16 15:08:40 PST
Created attachment 122687 [details]
Patch
Comment 4 WebKit Review Bot 2012-01-16 22:03:13 PST
Comment on attachment 122687 [details]
Patch

Attachment 122687 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/11268065

New failing tests:
fast/css/min-width-with-spanned-cell.html
Comment 5 Robert Hogan 2012-01-18 14:04:28 PST
Created attachment 122989 [details]
Patch
Comment 6 Julien Chaffraix 2012-01-20 12:02:36 PST
Comment on attachment 122989 [details]
Patch

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

Good catch, the code part looks fine.

> LayoutTests/ChangeLog:17
> +        * platform/chromium-linux/fast/table/027-expected.png:
> +        * platform/chromium-linux/fast/table/027-vertical-expected.png:
> +        * platform/chromium-win/fast/table/027-expected.txt:
> +        * platform/chromium-win/fast/table/027-vertical-expected.txt:

Those 2 tests should be disabled on all other platforms to avoid breaking the tree.

> LayoutTests/fast/css/min-width-with-spanned-cell-fixed.html:15
> +<!--When a cell spans an entire row on a table with fixed layout, allow cells containing text to be
> +squeezed smaller than the width of the text.-->

The comment is wrong, it says the opposite of the other test.

It would be nice to add what you expect to see in the pixel dump too for both tests.

> LayoutTests/platform/chromium-win/fast/table/027-vertical-expected.txt:40
> -          RenderTableRow {TR} at (0,28) size 344x744
> +          RenderTableRow {TR} at (0,28) size 344x756

I am concerned about this change. Why is it changing so much when it was a 1px change in an horizontal-writing mode?

Have you checked if our new size matches more closely FF / IE now?
Comment 7 Julien Chaffraix 2012-01-23 11:15:41 PST
*** Bug 76807 has been marked as a duplicate of this bug. ***
Comment 8 Robert Hogan 2012-01-23 11:40:06 PST
Comment on attachment 122989 [details]
Patch

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

>> LayoutTests/fast/css/min-width-with-spanned-cell-fixed.html:15
>> +squeezed smaller than the width of the text.-->
> 
> The comment is wrong, it says the opposite of the other test.
> 
> It would be nice to add what you expect to see in the pixel dump too for both tests.

The text is intentional. This is the way it works for fixed width tables afaict.

>> LayoutTests/platform/chromium-win/fast/table/027-vertical-expected.txt:40
>> +          RenderTableRow {TR} at (0,28) size 344x756
> 
> I am concerned about this change. Why is it changing so much when it was a 1px change in an horizontal-writing mode?
> 
> Have you checked if our new size matches more closely FF / IE now?

It's a progression - the image in the last cell no longer extrudes from the table when the height of the view is lower thin the vertical 'width' of the table.
Comment 9 Robert Hogan 2012-01-23 11:48:42 PST
Created attachment 123590 [details]
Patch
Comment 10 Julien Chaffraix 2012-01-23 13:41:48 PST
Comment on attachment 123590 [details]
Patch

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

The patch does not apply on ToT because your win expectation file change needs to be rebased.

> LayoutTests/ChangeLog:18
> +        * platform/chromium-linux/fast/table/027-expected.png:
> +          1 px difference - benign
> +        * platform/chromium-linux/fast/table/027-vertical-expected.png:
> +          This is a progression - previously the image in the last cell was
> +          extruding from the table in a 800x600 view.

Nit: Spaces would make those 2 comments stand out more.

> LayoutTests/platform/mac/test_expectations.txt:201
> +BUGWK74874 : fast/table/027.html = TEXT
> +BUGWK74874 : fast/table/027-vertical.html = TEXT

Unless I am missing something, this should also be TEXT+IMAGE as you haven't rebaselined Mac in this patch.
Comment 11 Robert Hogan 2012-01-24 11:58:09 PST
(In reply to comment #10)
> 
> > LayoutTests/platform/mac/test_expectations.txt:201
> > +BUGWK74874 : fast/table/027.html = TEXT
> > +BUGWK74874 : fast/table/027-vertical.html = TEXT
> 
> Unless I am missing something, this should also be TEXT+IMAGE as you haven't rebaselined Mac in this patch.

The mac bots don't run pixel tests - so will only ever see the TEXT difference.
Comment 12 Robert Hogan 2012-01-24 12:33:14 PST
Committed r105775: <http://trac.webkit.org/changeset/105775>
Comment 13 Julien Chaffraix 2012-01-24 13:27:51 PST
(In reply to comment #11)
> (In reply to comment #10)
> > 
> > > LayoutTests/platform/mac/test_expectations.txt:201
> > > +BUGWK74874 : fast/table/027.html = TEXT
> > > +BUGWK74874 : fast/table/027-vertical.html = TEXT
> > 
> > Unless I am missing something, this should also be TEXT+IMAGE as you haven't rebaselined Mac in this patch.
> 
> The mac bots don't run pixel tests - so will only ever see the TEXT difference.

That is not a good reason not to put TEXT+IMAGE. I am sure some developers - apart from myself - are running the tests on Mac with pixel dumps enabled and they will see an unexpected image difference. On top of that, the test_expectations.txt files are annotation on the state of our tests. Here you are doing only half of the annotation for the future maintainer looking at the failure.
Comment 14 Robert Hogan 2012-01-24 13:38:04 PST
(In reply to comment #13)
> (In reply to comment #11)
> > (In reply to comment #10)
> > > 
> > > > LayoutTests/platform/mac/test_expectations.txt:201
> > > > +BUGWK74874 : fast/table/027.html = TEXT
> > > > +BUGWK74874 : fast/table/027-vertical.html = TEXT
> > > 
> > > Unless I am missing something, this should also be TEXT+IMAGE as you haven't rebaselined Mac in this patch.
> > 
> > The mac bots don't run pixel tests - so will only ever see the TEXT difference.
> 
> That is not a good reason not to put TEXT+IMAGE. I am sure some developers - apart from myself - are running the tests on Mac with pixel dumps enabled and they will see an unexpected image difference. On top of that, the test_expectations.txt files are annotation on the state of our tests. Here you are doing only half of the annotation for the future maintainer looking at the failure.

Right, but using TEXT+IMAGE means that the bots will report them as unexpected failures in the results.html - even though they're not listed as regressions in the results stdio.

See https://bugs.webkit.org/show_bug.cgi?id=71244#c35 where this came up previously. The lack of a Mac gardener really hurts in this situation.
Comment 15 Robert Hogan 2012-01-24 13:45:04 PST
Landed results for Qt and Gtk:

http://trac.webkit.org/changeset/105799
Comment 16 Julien Chaffraix 2012-01-24 13:50:37 PST
> > That is not a good reason not to put TEXT+IMAGE. I am sure some developers - apart from myself - are running the tests on Mac with pixel dumps enabled and they will see an unexpected image difference. On top of that, the test_expectations.txt files are annotation on the state of our tests. Here you are doing only half of the annotation for the future maintainer looking at the failure.
> 
> Right, but using TEXT+IMAGE means that the bots will report them as unexpected failures in the results.html - even though they're not listed as regressions in the results stdio.
> 
> See https://bugs.webkit.org/show_bug.cgi?id=71244#c35 where this came up previously. The lack of a Mac gardener really hurts in this situation.

Ah, that my friend is a good explanation of why we don't want the IMAGE part.

I agree that it is unfortunate that we have to do that just because of snow-leopard.
Comment 17 Andy Estes 2012-03-08 19:40:23 PST
<rdar://problem/10960651>