<?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>74086</bug_id>
          
          <creation_ts>2011-12-08 06:43:17 -0800</creation_ts>
          <short_desc>[chromium] Layer contents scale change should trigger invalidation</short_desc>
          <delta_ts>2011-12-08 16:38:06 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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>0</everconfirmed>
          <reporter name="Sami Kyostila">skyostil</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>hclam</cc>
    
    <cc>jamesr</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>517374</commentid>
    <comment_count>0</comment_count>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2011-12-08 06:43:17 -0800</bug_when>
    <thetext>LayerChromium::setContentsScale() should invalidate the layer contents to ensure the scale change becomes visible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517387</commentid>
    <comment_count>1</comment_count>
      <attachid>118384</attachid>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2011-12-08 07:03:31 -0800</bug_when>
    <thetext>Created attachment 118384
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517560</commentid>
    <comment_count>2</comment_count>
      <attachid>118384</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-12-08 10:54:39 -0800</bug_when>
    <thetext>Comment on attachment 118384
Patch

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

&gt; Source/WebCore/platform/graphics/chromium/LayerChromium.cpp:428
&gt; +    if (!needsContentsScale() || m_contentsScale == contentsScale)

I don&apos;t understand how this interacts with the needsContentsScale() check.  Only ContentLayerChromium handles contents scale at this point.  Do we want to set the contents scale for any layer, even if it doesn&apos;t handle it?

What layer type are you trying to solve this for?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517593</commentid>
    <comment_count>3</comment_count>
      <attachid>118384</attachid>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2011-12-08 11:15:22 -0800</bug_when>
    <thetext>Comment on attachment 118384
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/chromium/LayerChromium.cpp:428
&gt;&gt; +    if (!needsContentsScale() || m_contentsScale == contentsScale)
&gt; 
&gt; I don&apos;t understand how this interacts with the needsContentsScale() check.  Only ContentLayerChromium handles contents scale at this point.  Do we want to set the contents scale for any layer, even if it doesn&apos;t handle it?
&gt; 
&gt; What layer type are you trying to solve this for?

The contents scale should only be set for layers for which needsContentScale() is true. The check that I&apos;ve added is intended to avoid unnecessary invalidation in the case that the contents scale did not actually change from its current value. I haven&apos;t checked whether that actually happens; this is just a precaution.

I&apos;m seeing the problem of missed invalidations on non-root ContentLayerChromium instances. The root layer is properly invalidated through WebViewImpl::invalidateRootLayerRect() when the page scale changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517647</commentid>
    <comment_count>4</comment_count>
      <attachid>118384</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-12-08 12:02:39 -0800</bug_when>
    <thetext>Comment on attachment 118384
Patch

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

&gt;&gt;&gt; Source/WebCore/platform/graphics/chromium/LayerChromium.cpp:428
&gt;&gt;&gt; +    if (!needsContentsScale() || m_contentsScale == contentsScale)
&gt;&gt; 
&gt;&gt; I don&apos;t understand how this interacts with the needsContentsScale() check.  Only ContentLayerChromium handles contents scale at this point.  Do we want to set the contents scale for any layer, even if it doesn&apos;t handle it?
&gt;&gt; 
&gt;&gt; What layer type are you trying to solve this for?
&gt; 
&gt; The contents scale should only be set for layers for which needsContentScale() is true. The check that I&apos;ve added is intended to avoid unnecessary invalidation in the case that the contents scale did not actually change from its current value. I haven&apos;t checked whether that actually happens; this is just a precaution.
&gt; 
&gt; I&apos;m seeing the problem of missed invalidations on non-root ContentLayerChromium instances. The root layer is properly invalidated through WebViewImpl::invalidateRootLayerRect() when the page scale changes.

Thanks for the explanation; this makes a lot more sense to me with that context.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517652</commentid>
    <comment_count>5</comment_count>
      <attachid>118384</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-12-08 12:09:29 -0800</bug_when>
    <thetext>Comment on attachment 118384
Patch

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

Please fix the ChangeLogs + nits, otherwise R=me

&gt; Source/WebCore/ChangeLog:10
&gt; +        Change-Id: Ic824414f65c2214ab7bacbe50f909c4cbc9ab59d

I don&apos;t know where this comes from but it doesn&apos;t belong here.

&gt;&gt;&gt;&gt; Source/WebCore/platform/graphics/chromium/LayerChromium.cpp:428
&gt;&gt;&gt;&gt; +    if (!needsContentsScale() || m_contentsScale == contentsScale)
&gt;&gt;&gt; 
&gt;&gt;&gt; I don&apos;t understand how this interacts with the needsContentsScale() check.  Only ContentLayerChromium handles contents scale at this point.  Do we want to set the contents scale for any layer, even if it doesn&apos;t handle it?
&gt;&gt;&gt; 
&gt;&gt;&gt; What layer type are you trying to solve this for?
&gt;&gt; 
&gt;&gt; The contents scale should only be set for layers for which needsContentScale() is true. The check that I&apos;ve added is intended to avoid unnecessary invalidation in the case that the contents scale did not actually change from its current value. I haven&apos;t checked whether that actually happens; this is just a precaution.
&gt;&gt; 
&gt;&gt; I&apos;m seeing the problem of missed invalidations on non-root ContentLayerChromium instances. The root layer is properly invalidated through WebViewImpl::invalidateRootLayerRect() when the page scale changes.
&gt; 
&gt; Thanks for the explanation; this makes a lot more sense to me with that context.  :)

this feels a lot like an issue with our type system. We have functions on LayerChromium that should only ever be called on subclasses of LayerChromium, and we have this information available at the callsite.

Something to clean up later, methinks. This looks fine.

&gt; Source/WebKit/chromium/ChangeLog:10
&gt; +        Change-Id: Ic824414f65c2214ab7bacbe50f909c4cbc9ab59d

Same here

&gt; Source/WebKit/chromium/tests/LayerChromiumTest.cpp:710
&gt; +    bool needsContentsScale() const

this is virtual, please tag it as such here for clarity</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517674</commentid>
    <comment_count>6</comment_count>
      <attachid>118445</attachid>
    <who name="Sami Kyostila">skyostil</who>
    <bug_when>2011-12-08 12:19:35 -0800</bug_when>
    <thetext>Created attachment 118445
Patch

Thanks James and Enne. This patch addresses the remaining issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517904</commentid>
    <comment_count>7</comment_count>
      <attachid>118445</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-08 16:38:02 -0800</bug_when>
    <thetext>Comment on attachment 118445
Patch

Clearing flags on attachment: 118445

Committed r102395: &lt;http://trac.webkit.org/changeset/102395&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517905</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-08 16:38:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118384</attachid>
            <date>2011-12-08 07:03:31 -0800</date>
            <delta_ts>2011-12-08 12:19:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>0001-chromium-Layer-contents-scale-change-should-trigger-.patch</filename>
            <type>text/plain</type>
            <size>4546</size>
            <attacher name="Sami Kyostila">skyostil</attacher>
            
              <data encoding="base64">RnJvbSBlYTliMTc3ODUzODkzNDFkMDcxMTc1ZDgxMjhlZTBlN2U4NWUyMWI2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW1pIEt5b3N0aWxhIDxza3lvc3RpbEBnb29nbGUuY29tPgpE
YXRlOiBUaHUsIDggRGVjIDIwMTEgMTQ6MzE6MDkgKzAwMDAKU3ViamVjdDogW1BBVENIXSBbY2hy
b21pdW1dIExheWVyIGNvbnRlbnRzIHNjYWxlIGNoYW5nZSBzaG91bGQgdHJpZ2dlciBpbnZhbGlk
YXRpb24KCmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDA4NgoKV2hl
biB0aGUgY29udGVudHMgc2NhbGUgb2YgYSBsYXllciBpcyBjaGFuZ2VkLCB0aGUgZW50aXJlIGNv
bnRlbnRzIG9mCnRoZSBsYXllciBzaG91bGQgYmUgbWFya2VkIGRpcnR5LgoKQ2hhbmdlLUlkOiBJ
YzgyNDQxNGY2NWMyMjE0YWI3YmFjYmU1MGY5MDljNGNiYzlhYjU5ZAotLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArKysrKysrKysK
IC4uLi9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNwcCAgIHwgICAg
MyArLQogU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAg
fCAgIDE1ICsrKysrKysrKwogU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9MYXllckNocm9t
aXVtVGVzdC5jcHAgfCAgIDMzICsrKysrKysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQs
IDY2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDBjZTkwNWUu
LmUxZjdjNGMgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMS0xMi0wOCAgU2FtaSBL
eW9zdGlsYSAgPHNreW9zdGlsQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBMYXll
ciBjb250ZW50cyBzY2FsZSBjaGFuZ2Ugc2hvdWxkIHRyaWdnZXIgaW52YWxpZGF0aW9uCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0MDg2CisKKyAg
ICAgICAgV2hlbiB0aGUgY29udGVudHMgc2NhbGUgb2YgYSBsYXllciBpcyBjaGFuZ2VkLCB0aGUg
ZW50aXJlIGNvbnRlbnRzIG9mCisgICAgICAgIHRoZSBsYXllciBzaG91bGQgYmUgbWFya2VkIGRp
cnR5LgorCisgICAgICAgIENoYW5nZS1JZDogSWM4MjQ0MTRmNjVjMjIxNGFiN2JhY2JlNTBmOTA5
YzRjYmM5YWI1OWQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5ZXJDaHJvbWl1bTo6c2V0Q29udGVudHNTY2FsZSk6CisKIDIwMTEt
MTItMDcgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMDIyNDQuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3Bw
CmluZGV4IDg1NWY5YTYuLmI0NWUxMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwCkBAIC00MjUs
OSArNDI1LDEwIEBAIHZvaWQgTGF5ZXJDaHJvbWl1bTo6c2V0RGVidWdCb3JkZXJXaWR0aChmbG9h
dCB3aWR0aCkKIAogdm9pZCBMYXllckNocm9taXVtOjpzZXRDb250ZW50c1NjYWxlKGZsb2F0IGNv
bnRlbnRzU2NhbGUpCiB7Ci0gICAgaWYgKCFuZWVkc0NvbnRlbnRzU2NhbGUoKSkKKyAgICBpZiAo
IW5lZWRzQ29udGVudHNTY2FsZSgpIHx8IG1fY29udGVudHNTY2FsZSA9PSBjb250ZW50c1NjYWxl
KQogICAgICAgICByZXR1cm47CiAgICAgbV9jb250ZW50c1NjYWxlID0gY29udGVudHNTY2FsZTsK
KyAgICBzZXROZWVkc0Rpc3BsYXkoKTsKIH0KIAogdm9pZCBMYXllckNocm9taXVtOjpjcmVhdGVS
ZW5kZXJTdXJmYWNlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNjk3OTk1Zi4uZWE3
YWMwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMS0x
Mi0wOCAgU2FtaSBLeW9zdGlsYSAgPHNreW9zdGlsQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2No
cm9taXVtXSBMYXllciBjb250ZW50cyBzY2FsZSBjaGFuZ2Ugc2hvdWxkIHRyaWdnZXIgaW52YWxp
ZGF0aW9uCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTc0MDg2CisKKyAgICAgICAgV2hlbiB0aGUgY29udGVudHMgc2NhbGUgb2YgYSBsYXllciBpcyBj
aGFuZ2VkLCB0aGUgZW50aXJlIGNvbnRlbnRzIG9mCisgICAgICAgIHRoZSBsYXllciBzaG91bGQg
YmUgbWFya2VkIGRpcnR5LgorCisgICAgICAgIENoYW5nZS1JZDogSWM4MjQ0MTRmNjVjMjIxNGFi
N2JhY2JlNTBmOTA5YzRjYmM5YWI1OWQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHRlc3RzL0xheWVyQ2hyb21pdW1UZXN0LmNwcDoKKwogMjAxMS0x
Mi0wNyAgSm9uYXRoYW4gQmFja2VyICA8YmFja2VyQGNocm9taXVtLm9yZz4KIAogICAgICAgICBb
Y2hyb21pdW1dIFBsdW1iIGRhbWFnZSBmcm9tIFdlYkV4dGVybmFsVGV4dHVyZUxheWVyIGFuZCBX
ZWJQbHVnaW5Db250YWluZXIgdG8gQ0NEYW1hZ2VUcmFja2VyCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL0xheWVyQ2hyb21pdW1UZXN0LmNwcCBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCmluZGV4IDY5MzY1YTYuLjA2
ZWZiOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTGF5ZXJDaHJv
bWl1bVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTGF5ZXJDaHJv
bWl1bVRlc3QuY3BwCkBAIC03MDAsNCArNzAwLDM3IEBAIFRFU1RfRihMYXllckNocm9taXVtVGVz
dCwgY2hlY2tOb25Db21wb3NpdGVkQ29udGVudFByb3BlcnR5Q2hhbmdlQ2F1c2VzQ29tbWl0KQog
ICAgIG5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC0+c2V0Vmlld3BvcnQoSW50U2l6ZSgzMCwgMzAp
LCBJbnRTaXplKDIwLCAyMCksIEludFBvaW50KDEwLCAxMCksIDEpOwogfQogCitjbGFzcyBMYXll
ckNocm9taXVtV2l0aENvbnRlbnRTY2FsaW5nIDogcHVibGljIExheWVyQ2hyb21pdW0geworcHVi
bGljOgorICAgIGV4cGxpY2l0IExheWVyQ2hyb21pdW1XaXRoQ29udGVudFNjYWxpbmcoQ0NMYXll
ckRlbGVnYXRlKiBkZWxlZ2F0ZSkKKyAgICAgICAgOiBMYXllckNocm9taXVtKGRlbGVnYXRlKQor
ICAgIHsKKyAgICB9CisKKyAgICBib29sIG5lZWRzQ29udGVudHNTY2FsZSgpIGNvbnN0CisgICAg
eworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICB2b2lkIHJlc2V0TmVlZHNEaXNw
bGF5KCkKKyAgICB7CisgICAgICAgIG1fbmVlZHNEaXNwbGF5ID0gZmFsc2U7CisgICAgfQorfTsK
KworVEVTVF9GKExheWVyQ2hyb21pdW1UZXN0LCBjaGVja0NvbnRlbnRzU2NhbGVDaGFuZ2VUcmln
Z2Vyc05lZWRzRGlzcGxheSkKK3sKKyAgICBNb2NrTGF5ZXJEZWxlZ2F0ZSBtb2NrRGVsZWdhdGU7
CisgICAgUmVmUHRyPExheWVyQ2hyb21pdW1XaXRoQ29udGVudFNjYWxpbmc+IHRlc3RMYXllciA9
IGFkb3B0UmVmKG5ldyBMYXllckNocm9taXVtV2l0aENvbnRlbnRTY2FsaW5nKCZtb2NrRGVsZWdh
dGUpKTsKKworICAgIEludFNpemUgdGVzdEJvdW5kcyA9IEludFNpemUoMzIwLCAyNDApOworICAg
IEVYRUNVVEVfQU5EX1ZFUklGWV9OT1RJRllfU1lOQ19CRUhBVklPUihtb2NrRGVsZWdhdGUsIDEs
IHRlc3RMYXllci0+c2V0Qm91bmRzKHRlc3RCb3VuZHMpKTsKKworICAgIHRlc3RMYXllci0+cmVz
ZXROZWVkc0Rpc3BsYXkoKTsKKyAgICBFWFBFQ1RfRkFMU0UodGVzdExheWVyLT5uZWVkc0Rpc3Bs
YXkoKSk7CisKKyAgICBFWEVDVVRFX0FORF9WRVJJRllfTk9USUZZX1NZTkNfQkVIQVZJT1IobW9j
a0RlbGVnYXRlLCAxLCB0ZXN0TGF5ZXItPnNldENvbnRlbnRzU2NhbGUodGVzdExheWVyLT5jb250
ZW50c1NjYWxlKCkgKyAxLmYpKTsKKyAgICBFWFBFQ1RfVFJVRSh0ZXN0TGF5ZXItPm5lZWRzRGlz
cGxheSgpKTsKK30KKwogfSAvLyBuYW1lc3BhY2UKLS0gCjEuNy4zLjEKCg==
</data>
<flag name="review"
          id="118119"
          type_id="1"
          status="+"
          setter="jamesr"
    />
    <flag name="commit-queue"
          id="118197"
          type_id="3"
          status="-"
          setter="jamesr"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118445</attachid>
            <date>2011-12-08 12:19:35 -0800</date>
            <delta_ts>2011-12-08 16:38:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>0001-chromium-Layer-contents-scale-change-should-trigger-.patch</filename>
            <type>text/plain</type>
            <size>4370</size>
            <attacher name="Sami Kyostila">skyostil</attacher>
            
              <data encoding="base64">RnJvbSAwNjQ2MjAwMTE4MGNjOTAzZDJjZmQ3NzE0ZGRiM2EwN2FmMzNhOTcyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW1pIEt5b3N0aWxhIDxza3lvc3RpbEBnb29nbGUuY29tPgpE
YXRlOiBUaHUsIDggRGVjIDIwMTEgMTQ6MzE6MDkgKzAwMDAKU3ViamVjdDogW1BBVENIXSBbY2hy
b21pdW1dIExheWVyIGNvbnRlbnRzIHNjYWxlIGNoYW5nZSBzaG91bGQgdHJpZ2dlciBpbnZhbGlk
YXRpb24KCmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDA4NgoKV2hl
biB0aGUgY29udGVudHMgc2NhbGUgb2YgYSBsYXllciBpcyBjaGFuZ2VkLCB0aGUgZW50aXJlIGNv
bnRlbnRzIG9mCnRoZSBsYXllciBzaG91bGQgYmUgbWFya2VkIGRpcnR5LgotLS0KIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKysr
KwogLi4uL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwICAgfCAg
ICAzICstCiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICB8ICAgMTMgKysrKysrKysKIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTGF5ZXJDaHJv
bWl1bVRlc3QuY3BwIHwgICAzMyArKysrKysrKysrKysrKysrKysrKwogNCBmaWxlcyBjaGFuZ2Vk
LCA2MiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAwY2U5MDVl
Li4wZTllZGQ5IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMTItMDggIFNhbWkg
S3lvc3RpbGEgIDxza3lvc3RpbEBnb29nbGUuY29tPgorCisgICAgICAgIFtjaHJvbWl1bV0gTGF5
ZXIgY29udGVudHMgc2NhbGUgY2hhbmdlIHNob3VsZCB0cmlnZ2VyIGludmFsaWRhdGlvbgorCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDA4NgorCisg
ICAgICAgIFdoZW4gdGhlIGNvbnRlbnRzIHNjYWxlIG9mIGEgbGF5ZXIgaXMgY2hhbmdlZCwgdGhl
IGVudGlyZSBjb250ZW50cyBvZgorICAgICAgICB0aGUgbGF5ZXIgc2hvdWxkIGJlIG1hcmtlZCBk
aXJ0eS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6TGF5ZXJDaHJvbWl1bTo6c2V0Q29udGVudHNTY2FsZSk6CisKIDIwMTEtMTItMDcg
IFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVu
cmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMDIyNDQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwCmluZGV4
IDg1NWY5YTYuLmI0NWUxMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uY3BwCkBAIC00MjUsOSArNDI1
LDEwIEBAIHZvaWQgTGF5ZXJDaHJvbWl1bTo6c2V0RGVidWdCb3JkZXJXaWR0aChmbG9hdCB3aWR0
aCkKIAogdm9pZCBMYXllckNocm9taXVtOjpzZXRDb250ZW50c1NjYWxlKGZsb2F0IGNvbnRlbnRz
U2NhbGUpCiB7Ci0gICAgaWYgKCFuZWVkc0NvbnRlbnRzU2NhbGUoKSkKKyAgICBpZiAoIW5lZWRz
Q29udGVudHNTY2FsZSgpIHx8IG1fY29udGVudHNTY2FsZSA9PSBjb250ZW50c1NjYWxlKQogICAg
ICAgICByZXR1cm47CiAgICAgbV9jb250ZW50c1NjYWxlID0gY29udGVudHNTY2FsZTsKKyAgICBz
ZXROZWVkc0Rpc3BsYXkoKTsKIH0KIAogdm9pZCBMYXllckNocm9taXVtOjpjcmVhdGVSZW5kZXJT
dXJmYWNlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNjk3OTk1Zi4uYTEwNWMyNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMS0xMi0wOCAg
U2FtaSBLeW9zdGlsYSAgPHNreW9zdGlsQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVt
XSBMYXllciBjb250ZW50cyBzY2FsZSBjaGFuZ2Ugc2hvdWxkIHRyaWdnZXIgaW52YWxpZGF0aW9u
CisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0MDg2
CisKKyAgICAgICAgV2hlbiB0aGUgY29udGVudHMgc2NhbGUgb2YgYSBsYXllciBpcyBjaGFuZ2Vk
LCB0aGUgZW50aXJlIGNvbnRlbnRzIG9mCisgICAgICAgIHRoZSBsYXllciBzaG91bGQgYmUgbWFy
a2VkIGRpcnR5LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogdGVzdHMvTGF5ZXJDaHJvbWl1bVRlc3QuY3BwOgorCiAyMDExLTEyLTA3ICBKb25hdGhh
biBCYWNrZXIgIDxiYWNrZXJAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gUGx1
bWIgZGFtYWdlIGZyb20gV2ViRXh0ZXJuYWxUZXh0dXJlTGF5ZXIgYW5kIFdlYlBsdWdpbkNvbnRh
aW5lciB0byBDQ0RhbWFnZVRyYWNrZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vdGVzdHMvTGF5ZXJDaHJvbWl1bVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9MYXllckNocm9taXVtVGVzdC5jcHAKaW5kZXggNjkzNjVhNi4uZTljNjVhNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9MYXllckNocm9taXVtVGVzdC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9MYXllckNocm9taXVtVGVzdC5jcHAK
QEAgLTcwMCw0ICs3MDAsMzcgQEAgVEVTVF9GKExheWVyQ2hyb21pdW1UZXN0LCBjaGVja05vbkNv
bXBvc2l0ZWRDb250ZW50UHJvcGVydHlDaGFuZ2VDYXVzZXNDb21taXQpCiAgICAgbm9uQ29tcG9z
aXRlZENvbnRlbnRIb3N0LT5zZXRWaWV3cG9ydChJbnRTaXplKDMwLCAzMCksIEludFNpemUoMjAs
IDIwKSwgSW50UG9pbnQoMTAsIDEwKSwgMSk7CiB9CiAKK2NsYXNzIExheWVyQ2hyb21pdW1XaXRo
Q29udGVudFNjYWxpbmcgOiBwdWJsaWMgTGF5ZXJDaHJvbWl1bSB7CitwdWJsaWM6CisgICAgZXhw
bGljaXQgTGF5ZXJDaHJvbWl1bVdpdGhDb250ZW50U2NhbGluZyhDQ0xheWVyRGVsZWdhdGUqIGRl
bGVnYXRlKQorICAgICAgICA6IExheWVyQ2hyb21pdW0oZGVsZWdhdGUpCisgICAgeworICAgIH0K
KworICAgIHZpcnR1YWwgYm9vbCBuZWVkc0NvbnRlbnRzU2NhbGUoKSBjb25zdAorICAgIHsKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgdm9pZCByZXNldE5lZWRzRGlzcGxheSgp
CisgICAgeworICAgICAgICBtX25lZWRzRGlzcGxheSA9IGZhbHNlOworICAgIH0KK307CisKK1RF
U1RfRihMYXllckNocm9taXVtVGVzdCwgY2hlY2tDb250ZW50c1NjYWxlQ2hhbmdlVHJpZ2dlcnNO
ZWVkc0Rpc3BsYXkpCit7CisgICAgTW9ja0xheWVyRGVsZWdhdGUgbW9ja0RlbGVnYXRlOworICAg
IFJlZlB0cjxMYXllckNocm9taXVtV2l0aENvbnRlbnRTY2FsaW5nPiB0ZXN0TGF5ZXIgPSBhZG9w
dFJlZihuZXcgTGF5ZXJDaHJvbWl1bVdpdGhDb250ZW50U2NhbGluZygmbW9ja0RlbGVnYXRlKSk7
CisKKyAgICBJbnRTaXplIHRlc3RCb3VuZHMgPSBJbnRTaXplKDMyMCwgMjQwKTsKKyAgICBFWEVD
VVRFX0FORF9WRVJJRllfTk9USUZZX1NZTkNfQkVIQVZJT1IobW9ja0RlbGVnYXRlLCAxLCB0ZXN0
TGF5ZXItPnNldEJvdW5kcyh0ZXN0Qm91bmRzKSk7CisKKyAgICB0ZXN0TGF5ZXItPnJlc2V0TmVl
ZHNEaXNwbGF5KCk7CisgICAgRVhQRUNUX0ZBTFNFKHRlc3RMYXllci0+bmVlZHNEaXNwbGF5KCkp
OworCisgICAgRVhFQ1VURV9BTkRfVkVSSUZZX05PVElGWV9TWU5DX0JFSEFWSU9SKG1vY2tEZWxl
Z2F0ZSwgMSwgdGVzdExheWVyLT5zZXRDb250ZW50c1NjYWxlKHRlc3RMYXllci0+Y29udGVudHNT
Y2FsZSgpICsgMS5mKSk7CisgICAgRVhQRUNUX1RSVUUodGVzdExheWVyLT5uZWVkc0Rpc3BsYXko
KSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlCi0tIAoxLjcuMy4xCgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>