<?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>155229</bug_id>
          
          <creation_ts>2016-03-09 04:38:11 -0800</creation_ts>
          <short_desc>[GTK] Artifacts when using web view background color</short_desc>
          <delta_ts>2016-03-09 23:13:43 -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>WebKitGTK</component>
          <version>WebKit Local 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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1172502</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-03-09 04:38:11 -0800</bug_when>
    <thetext>This is easy to reproduce by using the MiniBrowser in editable mode, try something like this:

MiniBrowser --bg-color=&quot;rgba(255,0,0,1)&quot; -e

Write someting and move the cursor or select text, you will see that some areas are not repainted at all. This is because when using a web view color, we fill with the color every rectangle updated by the web process, but we should always fill the entire backing store before rendering the actual contents on top.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172504</commentid>
    <comment_count>1</comment_count>
      <attachid>273422</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-03-09 04:43:20 -0800</bug_when>
    <thetext>Created attachment 273422
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172506</commentid>
    <comment_count>2</comment_count>
      <attachid>273422</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-03-09 04:50:59 -0800</bug_when>
    <thetext>Comment on attachment 273422
Patch

This doesn&apos;t work, sometimes we render the bg color over the contents</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172508</commentid>
    <comment_count>3</comment_count>
      <attachid>273423</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-03-09 05:16:35 -0800</bug_when>
    <thetext>Created attachment 273423
Different approach

This fixes the problem from the web process side. It&apos;s a it more aggressive, because it always sends updates to the Ui process for the whole visible content rectangle, but it&apos;s the only way I&apos;ve managed to fix the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1172515</commentid>
    <comment_count>4</comment_count>
      <attachid>273423</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2016-03-09 06:08:01 -0800</bug_when>
    <thetext>Comment on attachment 273423
Different approach

I&apos;ve been poking at this code recently and this change makes sense to me. r+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1173009</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-03-09 23:13:43 -0800</bug_when>
    <thetext>Committed r197927: &lt;http://trac.webkit.org/changeset/197927&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273422</attachid>
            <date>2016-03-09 04:43:20 -0800</date>
            <delta_ts>2016-03-09 05:16:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-web-view-bg-color.diff</filename>
            <type>text/plain</type>
            <size>2718</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAwODU5ZTlhLi5iOWM2ZWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTYtMDMtMDkgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFydGlmYWN0cyB3aGVuIHVzaW5nIHdlYiB2aWV3IGJhY2tncm91
bmQgY29sb3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1NTIyOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoaXMgaXMgYmVjYXVzZSB3aGVuIHVzaW5nIGEgd2ViIHZpZXcgY29sb3IsIHdlIGZpbGwgd2l0
aCB0aGUKKyAgICAgICAgY29sb3IgZXZlcnkgcmVjdGFuZ2xlIHVwZGF0ZWQgYnkgdGhlIHdlYiBw
cm9jZXNzLCBidXQgd2Ugc2hvdWxkCisgICAgICAgIGFsd2F5cyBmaWxsIHRoZSBlbnRpcmUgYmFj
a2luZyBzdG9yZSBiZWZvcmUgcmVuZGVyaW5nIHRoZSBhY3R1YWwKKyAgICAgICAgY29udGVudHMg
b24gdG9wLgorCisgICAgICAgICogVUlQcm9jZXNzL2NhaXJvL0JhY2tpbmdTdG9yZUNhaXJvLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6QmFja2luZ1N0b3JlOjppbmNvcnBvcmF0ZVVwZGF0ZSk6CisK
IDIwMTYtMDMtMDcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFJFR1JFU1NJT04ocjE5NzA2Mik6IFtHVEtdIFRyYW5zcGFyZW50IGJhY2tncm91
bmRzIG5vIGxvbmdlciB3b3JrIGFmdGVyIHIxOTcwNjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9jYWlyby9CYWNraW5nU3RvcmVDYWlyby5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvY2Fpcm8vQmFja2luZ1N0b3JlQ2Fpcm8uY3BwCmluZGV4IGRmNGI3NDcuLjIw
M2E1NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9jYWlyby9CYWNraW5n
U3RvcmVDYWlyby5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2NhaXJvL0JhY2tp
bmdTdG9yZUNhaXJvLmNwcApAQCAtOTksMTkgKzk5LDI4IEBAIHZvaWQgQmFja2luZ1N0b3JlOjpp
bmNvcnBvcmF0ZVVwZGF0ZShTaGFyZWFibGVCaXRtYXAqIGJpdG1hcCwgY29uc3QgVXBkYXRlSW5m
byYKICAgICAvLyBQYWludCBhbGwgdXBkYXRlIHJlY3RzLgogICAgIEludFBvaW50IHVwZGF0ZVJl
Y3RMb2NhdGlvbiA9IHVwZGF0ZUluZm8udXBkYXRlUmVjdEJvdW5kcy5sb2NhdGlvbigpOwogICAg
IFJlZlB0cjxjYWlyb190PiBjb250ZXh0ID0gYWRvcHRSZWYoY2Fpcm9fY3JlYXRlKG1fYmFja2Vu
ZC0+c3VyZmFjZSgpKSk7CisKKyNpZiBQTEFURk9STShHVEspCisgICAgaWYgKCFtX3dlYlBhZ2VQ
cm94eS5kcmF3c0JhY2tncm91bmQoKSkgeworICAgICAgICBjb25zdCBXZWJDb3JlOjpDb2xvciBj
b2xvciA9IG1fd2ViUGFnZVByb3h5LmJhY2tncm91bmRDb2xvcigpOworICAgICAgICBjYWlyb19z
YXZlKGNvbnRleHQuZ2V0KCkpOworICAgICAgICBpZiAoY29sb3IuaGFzQWxwaGEoKSkgeworICAg
ICAgICAgICAgY2Fpcm9fc2V0X29wZXJhdG9yKGNvbnRleHQuZ2V0KCksIENBSVJPX09QRVJBVE9S
X0NMRUFSKTsKKyAgICAgICAgICAgIGNhaXJvX3BhaW50KGNvbnRleHQuZ2V0KCkpOworICAgICAg
ICB9CisgICAgICAgIGlmIChjb2xvci5hbHBoYSgpID4gMCkgeworICAgICAgICAgICAgY2Fpcm9f
c2V0X29wZXJhdG9yKGNvbnRleHQuZ2V0KCksIENBSVJPX09QRVJBVE9SX09WRVIpOworICAgICAg
ICAgICAgc2V0U291cmNlUkdCQUZyb21Db2xvcihjb250ZXh0LmdldCgpLCBjb2xvcik7CisgICAg
ICAgICAgICBjYWlyb19wYWludChjb250ZXh0LmdldCgpKTsKKyAgICAgICAgfQorICAgICAgICBj
YWlyb19yZXN0b3JlKGNvbnRleHQuZ2V0KCkpOworICAgIH0KKyNlbmRpZgorCiAgICAgR3JhcGhp
Y3NDb250ZXh0IGdyYXBoaWNzQ29udGV4dChjb250ZXh0LmdldCgpKTsKICAgICBmb3IgKGNvbnN0
IGF1dG8mIHVwZGF0ZVJlY3QgOiB1cGRhdGVJbmZvLnVwZGF0ZVJlY3RzKSB7CiAgICAgICAgIElu
dFJlY3Qgc3JjUmVjdCA9IHVwZGF0ZVJlY3Q7CiAgICAgICAgIHNyY1JlY3QubW92ZSgtdXBkYXRl
UmVjdExvY2F0aW9uLngoKSwgLXVwZGF0ZVJlY3RMb2NhdGlvbi55KCkpOwotI2lmIFBMQVRGT1JN
KEdUSykKLSAgICAgICAgaWYgKCFtX3dlYlBhZ2VQcm94eS5kcmF3c0JhY2tncm91bmQoKSkgewot
ICAgICAgICAgICAgY29uc3QgV2ViQ29yZTo6Q29sb3IgY29sb3IgPSBtX3dlYlBhZ2VQcm94eS5i
YWNrZ3JvdW5kQ29sb3IoKTsKLSAgICAgICAgICAgIGlmIChjb2xvci5oYXNBbHBoYSgpKQotICAg
ICAgICAgICAgICAgIGdyYXBoaWNzQ29udGV4dC5jbGVhclJlY3Qoc3JjUmVjdCk7Ci0gICAgICAg
ICAgICBpZiAoY29sb3IuYWxwaGEoKSA+IDApCi0gICAgICAgICAgICAgICAgZ3JhcGhpY3NDb250
ZXh0LmZpbGxSZWN0KHNyY1JlY3QsIGNvbG9yKTsKLSAgICAgICAgfQotI2VuZGlmCiAgICAgICAg
IGJpdG1hcC0+cGFpbnQoZ3JhcGhpY3NDb250ZXh0LCBkZXZpY2VTY2FsZUZhY3RvcigpLCB1cGRh
dGVSZWN0LmxvY2F0aW9uKCksIHNyY1JlY3QpOwogICAgIH0KIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>273423</attachid>
            <date>2016-03-09 05:16:35 -0800</date>
            <delta_ts>2016-03-09 06:08:01 -0800</delta_ts>
            <desc>Different approach</desc>
            <filename>wk2-web-view-bg-color.diff</filename>
            <type>text/plain</type>
            <size>2452</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAwODU5ZTlhLi4xNzNiOTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAg
QEAKKzIwMTYtMDMtMDkgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIEFydGlmYWN0cyB3aGVuIHVzaW5nIHdlYiB2aWV3IGJhY2tncm91
bmQgY29sb3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE1NTIyOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoaXMgaXMgYmVjYXVzZSB3aGVuIHVzaW5nIGEgd2ViIHZpZXcgY29sb3IsIHdlIGZpbGwgd2l0
aCB0aGUKKyAgICAgICAgY29sb3IgZXZlcnkgcmVjdGFuZ2xlIHVwZGF0ZWQgYnkgdGhlIHdlYiBw
cm9jZXNzLCBidXQgd2Ugc2hvdWxkCisgICAgICAgIGFsd2F5cyBmaWxsIHRoZSBlbnRpcmUgYmFj
a2luZyBzdG9yZSBiZWZvcmUgcmVuZGVyaW5nIHRoZSBhY3R1YWwKKyAgICAgICAgY29udGVudHMg
b24gdG9wLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhSW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OkRyYXdpbmdBcmVhSW1wbDo6ZGlzcGxheSk6IEVuc3VyZSB0
aGUgd2ViIHByb2Nlc3MgYWx3YXlzCisgICAgICAgIHJlbmRlcnMgdGhlIHdob2xlIHZpc2libGUg
cmVjdGFuZ2xlIHdoZW4gYmFja2dyb3VuZCBpcyByZW5kZXJlZCBieQorICAgICAgICB0aGUgVUkg
cHJvY2Vzcy4KKwogMjAxNi0wMy0wNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMTk3MDYyKTogW0dUS10gVHJhbnNwYXJl
bnQgYmFja2dyb3VuZHMgbm8gbG9uZ2VyIHdvcmsgYWZ0ZXIgcjE5NzA2MgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhSW1wbC5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcAppbmRl
eCBjYjQzNTJlLi44MjVjNzY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWFJbXBsLmNwcApAQCAtNjM2LDcgKzYzNiw4IEBAIHZvaWQg
RHJhd2luZ0FyZWFJbXBsOjpkaXNwbGF5KFVwZGF0ZUluZm8mIHVwZGF0ZUluZm8pCiAgICAgdXBk
YXRlSW5mby52aWV3U2l6ZSA9IG1fd2ViUGFnZS5zaXplKCk7CiAgICAgdXBkYXRlSW5mby5kZXZp
Y2VTY2FsZUZhY3RvciA9IG1fd2ViUGFnZS5jb3JlUGFnZSgpLT5kZXZpY2VTY2FsZUZhY3Rvcigp
OwogCi0gICAgSW50UmVjdCBib3VuZHMgPSBtX2RpcnR5UmVnaW9uLmJvdW5kcygpOworICAgIC8v
IEFsd2F5cyByZW5kZXIgdGhlIHdob2xlIHBhZ2Ugd2hlbiB3ZSBkb24ndCByZW5kZXIgdGhlIGJh
Y2tncm91bmQuCisgICAgSW50UmVjdCBib3VuZHMgPSBtX3dlYlBhZ2UuZHJhd3NCYWNrZ3JvdW5k
KCkgPyBtX2RpcnR5UmVnaW9uLmJvdW5kcygpIDogbV93ZWJQYWdlLmJvdW5kcygpOwogICAgIEFT
U0VSVChtX3dlYlBhZ2UuYm91bmRzKCkuY29udGFpbnMoYm91bmRzKSk7CiAKICAgICBJbnRTaXpl
IGJpdG1hcFNpemUgPSBib3VuZHMuc2l6ZSgpOwpAQCAtNjQ5LDEyICs2NTAsMTYgQEAgdm9pZCBE
cmF3aW5nQXJlYUltcGw6OmRpc3BsYXkoVXBkYXRlSW5mbyYgdXBkYXRlSW5mbykKICAgICBpZiAo
IWJpdG1hcC0+Y3JlYXRlSGFuZGxlKHVwZGF0ZUluZm8uYml0bWFwSGFuZGxlKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgVmVjdG9yPEludFJlY3Q+IHJlY3RzID0gbV9kaXJ0eVJlZ2lvbi5yZWN0
cygpOworICAgIFZlY3RvcjxJbnRSZWN0PiByZWN0czsKKyAgICBpZiAobV93ZWJQYWdlLmRyYXdz
QmFja2dyb3VuZCgpKSB7CisgICAgICAgIHJlY3RzID0gbV9kaXJ0eVJlZ2lvbi5yZWN0cygpOwog
Ci0gICAgaWYgKHNob3VsZFBhaW50Qm91bmRzUmVjdChib3VuZHMsIHJlY3RzKSkgewotICAgICAg
ICByZWN0cy5jbGVhcigpOworICAgICAgICBpZiAoc2hvdWxkUGFpbnRCb3VuZHNSZWN0KGJvdW5k
cywgcmVjdHMpKSB7CisgICAgICAgICAgICByZWN0cy5jbGVhcigpOworICAgICAgICAgICAgcmVj
dHMuYXBwZW5kKGJvdW5kcyk7CisgICAgICAgIH0KKyAgICB9IGVsc2UKICAgICAgICAgcmVjdHMu
YXBwZW5kKGJvdW5kcyk7Ci0gICAgfQogCiAgICAgdXBkYXRlSW5mby5zY3JvbGxSZWN0ID0gbV9z
Y3JvbGxSZWN0OwogICAgIHVwZGF0ZUluZm8uc2Nyb2xsT2Zmc2V0ID0gbV9zY3JvbGxPZmZzZXQ7
Cg==
</data>
<flag name="review"
          id="298018"
          type_id="1"
          status="+"
          setter="mario"
    />
          </attachment>
      

    </bug>

</bugzilla>