Bug 21049

Summary: Opacity fails in multicolumn layouts
Product: WebKit Reporter: Simon Raboczi <srab8378>
Component: CSSAssignee: Dave Hyatt <hyatt>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, eric, garrett, hyatt, simon.fraser, webkit, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.5   
Attachments:
Description Flags
HTML markup demonstrating different behavior of opacity in second column
none
Screenshot of multi-col with Opacity:.8 links.
none
Patch
none
Patch oliver: review+

Description Simon Raboczi 2008-09-24 01:17:23 PDT
In all but the first column of a multicolumn layout, an opacity less than 1 is displayed as 0.  The following markup demonstrates this behavior:

<html>
<head>
<style>
body { -webkit-column-count: 2 }
div { height: 5000 }
span { opacity: 0.5 }
</style>
</head>
<body>
<div>Left <span>is dim.</span></div>
<div>Right <span>is invisible.</span></div>
</body>
</html>
Comment 1 Simon Raboczi 2008-09-24 01:19:42 PDT
Created attachment 23741 [details]
HTML markup demonstrating different behavior of opacity in second column
Comment 2 Simon Fraser (smfr) 2009-07-08 08:45:35 PDT
*** Bug 27069 has been marked as a duplicate of this bug. ***
Comment 3 jjm 2009-07-08 08:52:38 PDT
Created attachment 32454 [details]
Screenshot of multi-col with Opacity:.8 links.

Attached screenshot shows how webkit renders 1 column, then splits it up. Elements with opacity display as if they were in that one column.
Comment 4 Simon Fraser (smfr) 2009-07-29 08:43:10 PDT
*** Bug 27761 has been marked as a duplicate of this bug. ***
Comment 5 Dave Hyatt 2010-05-14 20:21:45 PDT
r59513 has made this better in that if the content is all contained in a single column it will behave correctly.  If it spans multiple columns, however, then it won't render correctly yet.
Comment 6 Dave Hyatt 2010-05-18 23:10:29 PDT
*** Bug 25455 has been marked as a duplicate of this bug. ***
Comment 7 Dave Hyatt 2010-05-18 23:23:13 PDT
Created attachment 56462 [details]
Patch
Comment 8 WebKit Review Bot 2010-05-18 23:24:50 PDT
Attachment 56462 [details] did not pass style-queue:

Failed to run "['WebKitTools/Scripts/check-webkit-style', '--no-squash']" exit_code: 1
WebCore/rendering/RenderLayer.cpp:2549:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
WebCore/rendering/RenderLayer.cpp:2996:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 2 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 9 Dave Hyatt 2010-05-19 00:15:22 PDT
Created attachment 56467 [details]
Patch
Comment 10 Oliver Hunt 2010-05-19 13:09:03 PDT
Comment on attachment 56467 [details]
Patch

r=me

I did like the factoring out of hit test and painting logic for the various renderer lists
Comment 11 Dave Hyatt 2010-05-19 14:41:48 PDT
Fixed.
Comment 12 WebKit Review Bot 2010-05-19 16:02:02 PDT
http://trac.webkit.org/changeset/59784 might have broken GTK Linux 32-bit Debug
The following changes are on the blame list:
http://trac.webkit.org/changeset/59784
http://trac.webkit.org/changeset/59785
http://trac.webkit.org/changeset/59783