<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>36034</bug_id>
          
          <creation_ts>2010-03-11 14:33:57 -0800</creation_ts>
          <short_desc>[Qt] GraphicsLayer: Opacity change from zero to non-zero doesn&apos;t always have effect with AC</short_desc>
          <delta_ts>2010-03-22 08:47:09 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Kim Grönholm">kim.1.gronholm</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>kenneth</cc>
    
    <cc>noam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>198781</commentid>
    <comment_count>0</comment_count>
      <attachid>50541</attachid>
    <who name="Kim Grönholm">kim.1.gronholm</who>
    <bug_when>2010-03-11 14:33:57 -0800</bug_when>
    <thetext>Created attachment 50541
Opacity transition from 0 to 1 in 5s

When a web page has only an element which opacity is zero and the opacity is changed to non-zero, the element doesn&apos;t become visible. If the mouse cursor is moved outside the window area and back in, the element redraws with correct opacity. After the element has been drawn once with non-zero opacity, the subsequent opacity changes affect immediately. The bug doesn&apos;t occur without AC.

Attached a test case to demonstrate the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>198789</commentid>
    <comment_count>1</comment_count>
      <attachid>50544</attachid>
    <who name="Kim Grönholm">kim.1.gronholm</who>
    <bug_when>2010-03-11 14:44:06 -0800</bug_when>
    <thetext>Created attachment 50544
patch for the bug #36034

The issue seems to be a bug in QGraphicsScene/QGraphicsItem. Attached a patch which introduces a workaround for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199367</commentid>
    <comment_count>2</comment_count>
      <attachid>50544</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-03-13 10:10:42 -0800</bug_when>
    <thetext>Comment on attachment 50544
patch for the bug #36034

Seems sensible. Have you reported the bug to Qt DF?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199383</commentid>
    <comment_count>3</comment_count>
      <attachid>50544</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-13 11:28:51 -0800</bug_when>
    <thetext>Comment on attachment 50544
patch for the bug #36034

Clearing flags on attachment: 50544

Committed r55967: &lt;http://trac.webkit.org/changeset/55967&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199384</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-03-13 11:28:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199421</commentid>
    <comment_count>5</comment_count>
      <attachid>50544</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-03-13 15:49:24 -0800</bug_when>
    <thetext>Comment on attachment 50544
patch for the bug #36034


&gt; -        m_layer.data()-&gt;setOpacity(qMin&lt;qreal&gt;(qMax&lt;qreal&gt;(fromValue + (toValue-fromValue)*progress, 0), 1));
&gt; +        qreal opacity = qBound(qreal(0), fromValue + (toValue-fromValue)*progress, qreal(1));
&gt; +
&gt; +        // FIXME: this is a hack, due to a probable QGraphicsScene bug.
&gt; +        // Without this the opacity change doesn&apos;t always have immediate effect.
&gt; +        if (!m_layer.data()-&gt;opacity() &amp;&amp; opacity)
&gt; +            m_layer.data()-&gt;scene()-&gt;update();
&gt; +
&gt; +        m_layer.data()-&gt;setOpacity(opacity);

It would be good to get a sign-off from Noam on this one and also add a comment here with a link to the bugreport at http://bugreports.qt.nokia.com/ . Updating the entire scene is obviously a very expensive operation, so it would be good to know when we can remove this workaround in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199435</commentid>
    <comment_count>6</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-03-13 17:43:47 -0800</bug_when>
    <thetext>I did a smoke test to this - signed off!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199437</commentid>
    <comment_count>7</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-03-13 17:47:23 -0800</bug_when>
    <thetext>I intend to collect Qt bugs that we needed to work-around to try to look at them deeply with Qt R&amp;D.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>199456</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-03-14 00:56:35 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; I intend to collect Qt bugs that we needed to work-around to try to look at
&gt; them deeply with Qt R&amp;D.

Excellent, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>200230</commentid>
    <comment_count>9</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-03-16 09:05:00 -0700</bug_when>
    <thetext>Apparently http://bugreports.qt.nokia.com/browse/QTBUG-7714 was already reported and being worked on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>201872</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-03-19 09:01:48 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; Apparently http://bugreports.qt.nokia.com/browse/QTBUG-7714 was already
&gt; reported and being worked on.

Excellent, looks like the fix is in Qt 4.6.2, which is released. I think we should place an #ifdef around the update at least, to take the faster code path without the expensive update for Qt versions &gt;= 4.6.2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202477</commentid>
    <comment_count>11</comment_count>
      <attachid>51282</attachid>
    <who name="Kim Grönholm">kim.1.gronholm</who>
    <bug_when>2010-03-22 07:32:50 -0700</bug_when>
    <thetext>Created attachment 51282
ifdef the QTBUG-7714 workaround for qt versions lower than 4.6.2

Added the Qt version check as Simon suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202513</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-03-22 08:47:09 -0700</bug_when>
    <thetext>Thanks Kim and Kenneth :)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>50541</attachid>
            <date>2010-03-11 14:33:57 -0800</date>
            <delta_ts>2010-03-11 14:33:57 -0800</delta_ts>
            <desc>Opacity transition from 0 to 1 in 5s</desc>
            <filename>opacity-anim-from-zero.html</filename>
            <type>text/html</type>
            <size>533</size>
            <attacher name="Kim Grönholm">kim.1.gronholm</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIj4KPGh0bWw+
CiAgPGhlYWQ+CiAgICA8dGl0bGU+T3BhY2l0eSB0cmFuc2l0aW9uIHRlc3Q8L3RpdGxlPgogICAg
PHN0eWxlPgpkaXYgewogd2lkdGg6IDIwMHB4OwogaGVpZ2h0OiAyMDBweDsKIG9wYWNpdHk6IDA7
CiBiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7CiAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwZGVn
KTsKIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKIC13ZWJraXQtdHJhbnNp
dGlvbi1kdXJhdGlvbjogMTBzOwp9CiAgICA8L3N0eWxlPgoKICAgIDxzY3JpcHQ+CnNldFRpbWVv
dXQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkMScpLnN0eWxlLm9wYWNpdHkgPSAnMSc7Iiwg
MTAwKTsKICAgIDwvc2NyaXB0PgoKICA8L2hlYWQ+CiAgPGJvZHk+CiAgICBPcGFjaXR5IHRyYW5z
aXRpb24gZnJvbSAwIHRvIDEuMCBpbiBvbmUgc2Vjb25kOgogICAgPGRpdiBpZD0iZDEiPjwvZGl2
PgogIDwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>50544</attachid>
            <date>2010-03-11 14:44:06 -0800</date>
            <delta_ts>2010-03-13 15:49:24 -0800</delta_ts>
            <desc>patch for the bug #36034</desc>
            <filename>patch-36034.diff</filename>
            <type>text/plain</type>
            <size>1600</size>
            <attacher name="Kim Grönholm">kim.1.gronholm</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ODJmNjdmZi4uZjk4NDI4YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wMy0xMSAgS2ltIEdyw7ZuaG9s
bSAgPGtpbS5ncm9uaG9sbUBub21vdm9rLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIEdyYXBoaWNzTGF5ZXI6IE9wYWNpdHkgY2hhbmdl
IGZyb20gemVybyB0byBub24temVybyBkb2Vzbid0IGFsd2F5cyBoYXZlIGVmZmVjdCB3aXRoIEFD
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjAzNAor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NMYXllclF0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Ok9wYWNpdHlBbmltYXRpb25RdDo6YXBwbHlGcmFtZSk6CisKIDIwMTAt
MDMtMTEgIEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IERpbWl0cmkgR2xhemtvdi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvcXQvR3JhcGhpY3NMYXllclF0LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvR3JhcGhpY3NMYXllclF0LmNwcAppbmRleCA5YTJlOTMyLi43MzcyMzRiIDEwMDY0NAotLS0g
YS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVyUXQuY3BwCkBAIC0xMTM0
LDcgKzExMzQsMTQgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIGFwcGx5RnJhbWUoY29u
c3QgcXJlYWwmIGZyb21WYWx1ZSwgY29uc3QgcXJlYWwmIHRvVmFsdWUsIHFyZWFsIHByb2dyZXNz
KQogICAgIHsKLSAgICAgICAgbV9sYXllci5kYXRhKCktPnNldE9wYWNpdHkocU1pbjxxcmVhbD4o
cU1heDxxcmVhbD4oZnJvbVZhbHVlICsgKHRvVmFsdWUtZnJvbVZhbHVlKSpwcm9ncmVzcywgMCks
IDEpKTsKKyAgICAgICAgcXJlYWwgb3BhY2l0eSA9IHFCb3VuZChxcmVhbCgwKSwgZnJvbVZhbHVl
ICsgKHRvVmFsdWUtZnJvbVZhbHVlKSpwcm9ncmVzcywgcXJlYWwoMSkpOworCisgICAgICAgIC8v
IEZJWE1FOiB0aGlzIGlzIGEgaGFjaywgZHVlIHRvIGEgcHJvYmFibGUgUUdyYXBoaWNzU2NlbmUg
YnVnLgorICAgICAgICAvLyBXaXRob3V0IHRoaXMgdGhlIG9wYWNpdHkgY2hhbmdlIGRvZXNuJ3Qg
YWx3YXlzIGhhdmUgaW1tZWRpYXRlIGVmZmVjdC4KKyAgICAgICAgaWYgKCFtX2xheWVyLmRhdGEo
KS0+b3BhY2l0eSgpICYmIG9wYWNpdHkpCisgICAgICAgICAgICBtX2xheWVyLmRhdGEoKS0+c2Nl
bmUoKS0+dXBkYXRlKCk7CisKKyAgICAgICAgbV9sYXllci5kYXRhKCktPnNldE9wYWNpdHkob3Bh
Y2l0eSk7CiAgICAgfQogCiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVN0YXRlKFFBYnN0cmFjdEFu
aW1hdGlvbjo6U3RhdGUgbmV3U3RhdGUsIFFBYnN0cmFjdEFuaW1hdGlvbjo6U3RhdGUgb2xkU3Rh
dGUpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51282</attachid>
            <date>2010-03-22 07:32:50 -0700</date>
            <delta_ts>2010-03-22 07:35:44 -0700</delta_ts>
            <desc>ifdef the QTBUG-7714 workaround for qt versions lower than 4.6.2</desc>
            <filename>opacity-workaround-ifdef</filename>
            <type>text/plain</type>
            <size>1723</size>
            <attacher name="Kim Grönholm">kim.1.gronholm</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZTFjMmI3NS4uMDEwODg0NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wMy0yMiAgS2ltIEdyw7ZuaG9s
bSAgPGtpbS5ncm9uaG9sbUBub21vdm9rLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIEdyYXBoaWNzTGF5ZXI6IE9wYWNpdHkgY2hhbmdl
IGZyb20gemVybyB0byBub24temVybyBkb2Vzbid0IGFsd2F5cyBoYXZlIGVmZmVjdCB3aXRoIEFD
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjAzNAor
CisgICAgICAgIFRoZSBRdCBidWcgKFFUQlVHLTc3MTQpIGNhdXNpbmcgdGhlIGlzc3VlIHdhcyBm
aXhlZCBpbiBRdCA0LjYuMiwKKyAgICAgICAgc2VlOiBodHRwOi8vYnVncmVwb3J0cy5xdC5ub2tp
YS5jb20vYnJvd3NlL1FUQlVHLTc3MTQKKyAgICAgICAgVGhlcmVmb3JlIHRoZSBjdXJyZW50IHdv
cmthcm91bmQgaXMgbm90IG5lZWRlZCB3aXRoIFF0IHZlcnNpb25zIAorICAgICAgICA0LjYuMiBh
bmQgaGlnaGVyIGFuZCBpdCdzIGJldHRlciBub3QgdG8gd2FzdGUgdGltZSBvbiBzY2VuZSgpLT51
cGRhdGUoKS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpPcGFjaXR5QW5pbWF0aW9uUXQ6OmFwcGx5RnJhbWUp
OgorCiAyMDEwLTAzLTIxICBLaW0gR3LDtm5ob2xtICA8a2ltLmdyb25ob2xtQG5vbW92b2suY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVyUXQuY3BwIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVyUXQuY3BwCmluZGV4IDY1YzUxZjkuLmZm
MmY2MmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NM
YXllclF0LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5
ZXJRdC5jcHAKQEAgLTExODksMTAgKzExODksMTEgQEAgcHVibGljOgogICAgIHsKICAgICAgICAg
cXJlYWwgb3BhY2l0eSA9IHFCb3VuZChxcmVhbCgwKSwgZnJvbVZhbHVlICsgKHRvVmFsdWUtZnJv
bVZhbHVlKSpwcm9ncmVzcywgcXJlYWwoMSkpOwogCi0gICAgICAgIC8vIEZJWE1FOiB0aGlzIGlz
IGEgaGFjaywgZHVlIHRvIGEgcHJvYmFibGUgUUdyYXBoaWNzU2NlbmUgYnVnLgotICAgICAgICAv
LyBXaXRob3V0IHRoaXMgdGhlIG9wYWNpdHkgY2hhbmdlIGRvZXNuJ3QgYWx3YXlzIGhhdmUgaW1t
ZWRpYXRlIGVmZmVjdC4KKyNpZiBRVF9WRVJTSU9OIDwgUVRfVkVSU0lPTl9DSEVDSyg0LCA2LCAy
KQorICAgICAgICAvLyBUaGlzIGlzIGEgd29ya2Fyb3VuZCBmb3IgUVRCVUctNzcxNCB3aGljaCB3
YXMgZml4ZWQgaW4gUXQgNC42LjIKICAgICAgICAgaWYgKCFtX2xheWVyLmRhdGEoKS0+b3BhY2l0
eSgpICYmIG9wYWNpdHkpCiAgICAgICAgICAgICBtX2xheWVyLmRhdGEoKS0+c2NlbmUoKS0+dXBk
YXRlKCk7CisjZW5kaWYKIAogICAgICAgICBtX2xheWVyLmRhdGEoKS0+c2V0T3BhY2l0eShvcGFj
aXR5KTsKICAgICB9Cg==
</data>
<flag name="review"
          id="34512"
          type_id="1"
          status="+"
          setter="kenneth"
    />
    <flag name="commit-queue"
          id="34513"
          type_id="3"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>