<?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>82406</bug_id>
          
          <creation_ts>2012-03-27 17:55:34 -0700</creation_ts>
          <short_desc>[chromium] Compositor visibility setting must be updated even if not actively compositing</short_desc>
          <delta_ts>2012-03-28 11:24:26 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>1</everconfirmed>
          <reporter name="Vangelis Kokkevis">vangelis</reporter>
          <assigned_to name="Vangelis Kokkevis">vangelis</assigned_to>
          <cc>abarth</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enne</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>nduca</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>589521</commentid>
    <comment_count>0</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-03-27 17:55:34 -0700</bug_when>
    <thetext>This is a problem surfaced by the following bug:
http://code.google.com/p/chromium/issues/detail?id=119812

WebViewImpl::setVisibilityState() only updates the visibility state in the compositor if it&apos;s in accelerated compositing mode. However, if a page falls out of compositing mode while it&apos;s hidden (e.g. a html5 video stops playing while the tab is not visible) then switching back to the tab never notifies the compositor that it has become visible again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589536</commentid>
    <comment_count>1</comment_count>
      <attachid>134189</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-27 18:17:41 -0700</bug_when>
    <thetext>Created attachment 134189
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589537</commentid>
    <comment_count>2</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-27 18:18:56 -0700</bug_when>
    <thetext>Vangelis, do you know any way to confirm whether this patch fixes that bug? This is a blind fix (didn&apos;t even compile check) but seems like the behavior we want.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589543</commentid>
    <comment_count>3</comment_count>
      <attachid>134189</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-03-27 18:28:56 -0700</bug_when>
    <thetext>Comment on attachment 134189
Patch

(unofficial) R+ .  This will do the trick.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589588</commentid>
    <comment_count>4</comment_count>
      <attachid>134189</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-27 19:08:27 -0700</bug_when>
    <thetext>Comment on attachment 134189
Patch

Mmm I like this! We should do this regardless.

Which draws my attention to another thing: if we create a layer tree view in !visible, we get the visibility wrong too, e.g. setIsAcceleratedCompositingActive. Can we fold a fix into there too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589590</commentid>
    <comment_count>5</comment_count>
      <attachid>134189</attachid>
    <who name="Nat Duca">nduca</who>
    <bug_when>2012-03-27 19:09:38 -0700</bug_when>
    <thetext>Comment on attachment 134189
Patch

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

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:3459
&gt; +        if (!visible &amp;&amp; isAcceleratedCompositingActive())

This feels like a wart incidentally. I never knew this was here until just now. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589592</commentid>
    <comment_count>6</comment_count>
      <attachid>134189</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-27 19:10:49 -0700</bug_when>
    <thetext>Comment on attachment 134189
Patch

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

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:3460
&gt; -        if (!visible)
&gt; -            m_nonCompositedContentHost-&gt;protectVisibleTileTextures();
&gt;          m_layerTreeView.setVisible(visible);
&gt; +        if (!visible &amp;&amp; isAcceleratedCompositingActive())
&gt; +            m_nonCompositedContentHost-&gt;protectVisibleTileTextures();

Er, why is the call to protectVisibleTileTextures reordered? Don&apos;t we need to protect before setVisible which may drop tiles?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589639</commentid>
    <comment_count>7</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-27 21:15:41 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 134189 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=134189&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/chromium/src/WebViewImpl.cpp:3460
&gt; &gt; -        if (!visible)
&gt; &gt; -            m_nonCompositedContentHost-&gt;protectVisibleTileTextures();
&gt; &gt;          m_layerTreeView.setVisible(visible);
&gt; &gt; +        if (!visible &amp;&amp; isAcceleratedCompositingActive())
&gt; &gt; +            m_nonCompositedContentHost-&gt;protectVisibleTileTextures();
&gt; 
&gt; Er, why is the call to protectVisibleTileTextures reordered? Don&apos;t we need to protect before setVisible which may drop tiles?

Whoops, I did not mean to change that order. Will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589640</commentid>
    <comment_count>8</comment_count>
      <attachid>134212</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-27 21:18:18 -0700</bug_when>
    <thetext>Created attachment 134212
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590135</commentid>
    <comment_count>9</comment_count>
      <attachid>134212</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 10:53:22 -0700</bug_when>
    <thetext>Comment on attachment 134212
Patch

R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590184</commentid>
    <comment_count>10</comment_count>
      <attachid>134212</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-28 11:24:21 -0700</bug_when>
    <thetext>Comment on attachment 134212
Patch

Clearing flags on attachment: 134212

Committed r112417: &lt;http://trac.webkit.org/changeset/112417&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590185</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-28 11:24:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134189</attachid>
            <date>2012-03-27 18:17:41 -0700</date>
            <delta_ts>2012-03-27 21:18:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82406-20120327181740.patch</filename>
            <type>text/plain</type>
            <size>1727</size>
            <attacher name="James Robinson">jamesr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDViZjNiNWNkNjU4ZTRhODgxMTRkZWU4ZDgzOTM1NmU1MzQwMGZhMjkuLmYxNWZmZTQzNmY5M2Jj
NzEwOWE0MDQzNmY3MTZlMTAyOWFkZGY0MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTItMDMtMjcgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIENvbXBvc2l0b3IgdmlzaWJpbGl0eSBzZXR0
aW5nIG11c3QgYmUgdXBkYXRlZCBldmVuIGlmIG5vdCBhY3RpdmVseSBjb21wb3NpdGluZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0MDYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm9wYWdhdGUgdGhl
IHZpc2liaWxpdHkgYml0IHRvIHRoZSBXZWJMYXllclRyZWVWaWV3IGV2ZW4gd2hlbiBjb21wb3Np
dGluZyBpcyBpbmFjdGl2ZS4KKworICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpzZXRWaXNpYmlsaXR5U3RhdGUpOgorCiAyMDEyLTAz
LTI2ICBWYW5nZWxpcyBLb2trZXZpcyAgPHZhbmdlbGlzQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBbY2hyb21pdW1dIFNpbXBsaWZ5IGFuZCBmaXggQ0NMYXllclNvcnRlcgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCmluZGV4IDcyOTBhNTBkZjczOTQ5OTdhZWI3
MGYzZTdmNjU5MWJjYWVkYTc0Y2QuLmNhYjFmYzc5ZWMwYmFlYzMyYTA3NmUyZGNjZWY3MTg2ODVj
MDAzNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAg
LTM0NTMsMTEgKzM0NTMsMTEgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0VmlzaWJpbGl0eVN0YXRl
KFdlYlBhZ2VWaXNpYmlsaXR5U3RhdGUgdmlzaWJpbGl0eVN0YXRlLAogI2VuZGlmCiAKICNpZiBV
U0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCi0gICAgaWYgKGlzQWNjZWxlcmF0ZWRDb21wb3Np
dGluZ0FjdGl2ZSgpKSB7CisgICAgaWYgKCFtX2xheWVyVHJlZVZpZXcuaXNOdWxsKCkpIHsKICAg
ICAgICAgYm9vbCB2aXNpYmxlID0gdmlzaWJpbGl0eVN0YXRlID09IFdlYlBhZ2VWaXNpYmlsaXR5
U3RhdGVWaXNpYmxlOwotICAgICAgICBpZiAoIXZpc2libGUpCi0gICAgICAgICAgICBtX25vbkNv
bXBvc2l0ZWRDb250ZW50SG9zdC0+cHJvdGVjdFZpc2libGVUaWxlVGV4dHVyZXMoKTsKICAgICAg
ICAgbV9sYXllclRyZWVWaWV3LnNldFZpc2libGUodmlzaWJsZSk7CisgICAgICAgIGlmICghdmlz
aWJsZSAmJiBpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmUoKSkKKyAgICAgICAgICAgIG1f
bm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LT5wcm90ZWN0VmlzaWJsZVRpbGVUZXh0dXJlcygpOwog
ICAgIH0KICNlbmRpZgogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134212</attachid>
            <date>2012-03-27 21:18:18 -0700</date>
            <delta_ts>2012-03-28 11:24:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82406-20120327211817.patch</filename>
            <type>text/plain</type>
            <size>1641</size>
            <attacher name="James Robinson">jamesr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMzYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDI4MDVjNmM5ZTYxMjljYjJmZGI1NTY5NjRiNjc4MzE3MWI1NjFmYWUuLjQxZDYxYzA3ZmQyMGI1
MDBjZjRkZjQ1NzM2YmVhYjU5YzVlNTBjMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTItMDMtMjcgIEphbWVzIFJvYmluc29uICA8amFtZXNyQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIENvbXBvc2l0b3IgdmlzaWJpbGl0eSBzZXR0
aW5nIG11c3QgYmUgdXBkYXRlZCBldmVuIGlmIG5vdCBhY3RpdmVseSBjb21wb3NpdGluZworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0MDYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcm9wYWdhdGUgdGhl
IHZpc2liaWxpdHkgYml0IHRvIHRoZSBXZWJMYXllclRyZWVWaWV3IGV2ZW4gd2hlbiBjb21wb3Np
dGluZyBpcyBpbmFjdGl2ZS4KKworICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpzZXRWaXNpYmlsaXR5U3RhdGUpOgorCiAyMDEyLTAz
LTI3ICBOYXQgRHVjYSAgPG5kdWNhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1d
IFJvdXRlIG1vbm90b25pYyBjbG9jayB1cCBmcm9tIGNvbXBvc2l0b3IKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCA2M2E0MjFiMGJiN2VlMTM3N2UwNGFh
NTU5M2JmNDg0YjdlNmRmZjE4Li43OGUwM2MxODZjMzI5NGM1ZmFhZDA0YzZmYTNhZDU0MTQyNWNj
ZTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC0z
NDY2LDkgKzM0NjYsOSBAQCB2b2lkIFdlYlZpZXdJbXBsOjpzZXRWaXNpYmlsaXR5U3RhdGUoV2Vi
UGFnZVZpc2liaWxpdHlTdGF0ZSB2aXNpYmlsaXR5U3RhdGUsCiAjZW5kaWYKIAogI2lmIFVTRShB
Q0NFTEVSQVRFRF9DT01QT1NJVElORykKLSAgICBpZiAoaXNBY2NlbGVyYXRlZENvbXBvc2l0aW5n
QWN0aXZlKCkpIHsKKyAgICBpZiAoIW1fbGF5ZXJUcmVlVmlldy5pc051bGwoKSkgewogICAgICAg
ICBib29sIHZpc2libGUgPSB2aXNpYmlsaXR5U3RhdGUgPT0gV2ViUGFnZVZpc2liaWxpdHlTdGF0
ZVZpc2libGU7Ci0gICAgICAgIGlmICghdmlzaWJsZSkKKyAgICAgICAgaWYgKCF2aXNpYmxlICYm
IGlzQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0FjdGl2ZSgpKQogICAgICAgICAgICAgbV9ub25Db21w
b3NpdGVkQ29udGVudEhvc3QtPnByb3RlY3RWaXNpYmxlVGlsZVRleHR1cmVzKCk7CiAgICAgICAg
IG1fbGF5ZXJUcmVlVmlldy5zZXRWaXNpYmxlKHZpc2libGUpOwogICAgIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>