<?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>60219</bug_id>
          
          <creation_ts>2011-05-04 15:35:51 -0700</creation_ts>
          <short_desc>Unable to Paste After Deleting Text from Input due to -webkit-user-select</short_desc>
          <delta_ts>2011-05-13 16:07:38 -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>HTML Editing</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enrica</cc>
    
    <cc>joepeck</cc>
    
    <cc>justin.garcia</cc>
    
    <cc>leviw</cc>
    
    <cc>ojan</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>398319</commentid>
    <comment_count>0</comment_count>
      <attachid>92331</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 15:35:51 -0700</bug_when>
    <thetext>Created attachment 92331
[REDUCTION] Test Case

When removing the final text an &lt;input&gt;, a placeholder &lt;br&gt; element is added.
Later when attempting a paste, a test run takes the -webkit-user-select CSS
property from the placeholder &lt;br&gt; element, which may be different from the
&lt;input&gt; and cause issues.

Test case attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398330</commentid>
    <comment_count>1</comment_count>
      <attachid>92333</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 15:47:29 -0700</bug_when>
    <thetext>Created attachment 92333
[PATCH] Skip Possible Placeholders When Getting Context Style for Test Rendering</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398332</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 15:48:17 -0700</bug_when>
    <thetext>FYI: All other LayoutTests/editing tests passed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398335</commentid>
    <comment_count>3</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 15:48:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/9068091&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398351</commentid>
    <comment_count>4</comment_count>
      <attachid>92333</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-04 16:04:20 -0700</bug_when>
    <thetext>Comment on attachment 92333
[PATCH] Skip Possible Placeholders When Getting Context Style for Test Rendering

It seems like what we want to walk trees until we hit some text node, no?  what if there was img, input, etc...? Should we stop the search before them?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398357</commentid>
    <comment_count>5</comment_count>
      <attachid>92333</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-04 16:06:21 -0700</bug_when>
    <thetext>Comment on attachment 92333
[PATCH] Skip Possible Placeholders When Getting Context Style for Test Rendering

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

&gt; Source/WebCore/ChangeLog:13
&gt; +        When deleting all the text inside the input a placeholder &lt;br&gt;
&gt; +        element was inserted for the selection point. However, when
&gt; +        pasting, the test run computes the -webkit-user-select for the
&gt; +        &lt;br&gt; element, instead of what would be the text inside the
&gt; +        &lt;input&gt; and incorrectly disallows selection and prevented
&gt; +        the paste.

The real problem here seems to me either that the style rule should not apply to the &lt;br&gt; inside the input element, or we should not use a &lt;br&gt; inside the input element. We don’t want a style rule to have any effect on the elements inside the shadow tree.

Adding a special case to the replace command doesn’t necessarily seem like the right fix to me. It might be OK as a workaround, but it seems a little random.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398359</commentid>
    <comment_count>6</comment_count>
      <attachid>92333</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-05-04 16:07:35 -0700</bug_when>
    <thetext>Comment on attachment 92333
[PATCH] Skip Possible Placeholders When Getting Context Style for Test Rendering

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

&gt;&gt; Source/WebCore/ChangeLog:13
&gt;&gt; +        the paste.
&gt; 
&gt; The real problem here seems to me either that the style rule should not apply to the &lt;br&gt; inside the input element, or we should not use a &lt;br&gt; inside the input element. We don’t want a style rule to have any effect on the elements inside the shadow tree.
&gt; 
&gt; Adding a special case to the replace command doesn’t necessarily seem like the right fix to me. It might be OK as a workaround, but it seems a little random.

But on second thought, I do think this is fine as a workaround. Longer term we could find another way to fix this. The &lt;br&gt; does have a special status because of its use as a placeholder.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398439</commentid>
    <comment_count>7</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 17:35:01 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 92333 [details])
&gt; It seems like what we want to walk trees until we hit some
&gt; text node, no?  what if there was img, input, etc...? Should
&gt; we stop the search before them?

I like this idea. Changing the while condition to walk up to
the first TextNode didn&apos;t fix this case and caused at least
one other test to fail:

    editing/pasteboard/paste-plaintext-user-select-none.html

I think, with Darin&apos;s r+, I&apos;ll land this now. I also like the idea
of maybe using something different as a placeholder in this
situation, but I won&apos;t attempt that here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398463</commentid>
    <comment_count>8</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2011-05-04 18:18:00 -0700</bug_when>
    <thetext>Landed in r85818: &lt;http://trac.webkit.org/changeset/85818&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>403924</commentid>
    <comment_count>9</comment_count>
    <who name="Justin Garcia">justin.garcia</who>
    <bug_when>2011-05-13 16:03:31 -0700</bug_when>
    <thetext>Re-architecting editing to not use brs as placeholders sounds like a big change, and I don&apos;t see the reason for it. The bug here is what Darin pointed out, that style rules from the document should not apply to shadow content.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>403930</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-05-13 16:07:38 -0700</bug_when>
    <thetext>We need scoped CSS!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>92331</attachid>
            <date>2011-05-04 15:35:51 -0700</date>
            <delta_ts>2011-05-04 15:35:51 -0700</delta_ts>
            <desc>[REDUCTION] Test Case</desc>
            <filename>user-select.html</filename>
            <type>text/html</type>
            <size>221</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">PG9sPgogICAgPGxpPkZvY3VzIHRoZSBpbnB1dC48L2xpPgogICAgPGxpPldyaXRlIHNvbWUgdGV4
dC48L2xpPgogICAgPGxpPkRlbGV0ZSBhbGwgdGhlIHRleHQuPC9saT4KICAgIDxsaT5QYXN0ZS48
L2xpPgo8L29sPgo8c3R5bGU+CiogeyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyB9CmlucHV0
IHsgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDsgfSAKPC9zdHlsZT4KPGlucHV0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92333</attachid>
            <date>2011-05-04 15:47:29 -0700</date>
            <delta_ts>2011-05-04 16:07:35 -0700</delta_ts>
            <desc>[PATCH] Skip Possible Placeholders When Getting Context Style for Test Rendering</desc>
            <filename>user-select-1.patch</filename>
            <type>text/plain</type>
            <size>4576</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5ZmQ4NTU0Li43MWM2Y2JmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDUt
MDQgIEpvc2VwaCBQZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVbmFibGUgdG8gUGFzdGUgQWZ0ZXIg
RGVsZXRpbmcgVGV4dCBmcm9tIElucHV0IGR1ZSB0byAtd2Via2l0LXVzZXItc2VsZWN0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDIxOQorCisgICAg
ICAgICogZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXBsYWNlaG9sZGVyLWlucHV0LWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXBsYWNlaG9s
ZGVyLWlucHV0Lmh0bWw6IEFkZGVkLgorCiAyMDExLTA1LTAyICBKb3NlcGggUGVjb3Jhcm8gIDxq
b2VwZWNrQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVyLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXBsYWNlaG9s
ZGVyLWlucHV0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1wbGFjZWhvbGRlci1pbnB1dC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uNjRiM2YxNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Vk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1wbGFjZWhvbGRlci1pbnB1dC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMCBAQAorVGVzdCB0aGF0IGRlbGV0aW5nIHRoZSB0ZXh0IGluIGEgdGV4dGZpZWxk
LCBhbmQgcGFzdGluZywgZG9lc24ndCBoaXQgYW4gaXNzdWUgd2l0aCAtd2Via2l0LXVzZXItc2Vs
ZWN0IG9uIGJyCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGlucHV0LnZh
bHVlIGlzICJQQVNTIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENP
TVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0
ZS1wbGFjZWhvbGRlci1pbnB1dC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJk
L3Bhc3RlLXBsYWNlaG9sZGVyLWlucHV0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uODc2ZWMzZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcv
cGFzdGVib2FyZC9wYXN0ZS1wbGFjZWhvbGRlci1pbnB1dC5odG1sCkBAIC0wLDAgKzEsMzMgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8dGl0bGU+VGVzdCAtd2Via2l0
LXVzZXItc2VsZWN0IHdpdGggYSBwbGFjZWhvbGRlciBpbiBhIHRleHRmaWVsZC48L3RpdGxlPgor
ICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMv
anMtdGVzdC1zdHlsZS5jc3MiPgorICAgIDxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPHN0eWxlPgorICAgICogeyAtd2Vi
a2l0LXVzZXItc2VsZWN0OiBub25lOyB9CisgICAgaW5wdXQgeyAtd2Via2l0LXVzZXItc2VsZWN0
OiB0ZXh0OyB9CisgICAgPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxwIGlkPSJkZXNj
cmlwdGlvbiI+PC9wPgorICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgIDxpbnB1dCBp
ZD0ieCIgdmFsdWU9IlBBU1MiPgorICAgIDxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oIlRlc3Qg
dGhhdCBkZWxldGluZyB0aGUgdGV4dCBpbiBhIHRleHRmaWVsZCwgYW5kIHBhc3RpbmcsIGRvZXNu
J3QgaGl0IGFuIGlzc3VlIHdpdGggLXdlYmtpdC11c2VyLXNlbGVjdCBvbiBiciIpOworCisgICAg
dmFyIGlucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIngiKTsKKyAgICBpbnB1dC5mb2N1
cygpOworICAgIGlucHV0LnNlbGVjdCgpOworCisgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkNv
cHkiKTsKKyAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgiRGVsZXRlIik7CisgICAgZG9jdW1lbnQu
ZXhlY0NvbW1hbmQoIlBhc3RlIik7CisKKyAgICBzaG91bGRCZSgnaW5wdXQudmFsdWUnLCAnIlBB
U1MiJyk7CisKKyAgICB2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKyAgICA8L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBiYWM0N2U5Li5i
MGQxYTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDUtMDQgIEpvc2VwaCBQ
ZWNvcmFybyAgPGpvZXBlY2tAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBVbmFibGUgdG8gUGFzdGUgQWZ0ZXIgRGVsZXRpbmcgVGV4
dCBmcm9tIElucHV0IGR1ZSB0byAtd2Via2l0LXVzZXItc2VsZWN0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDIxOQorCisgICAgICAgIFdoZW4gZGVs
ZXRpbmcgYWxsIHRoZSB0ZXh0IGluc2lkZSB0aGUgaW5wdXQgYSBwbGFjZWhvbGRlciA8YnI+Cisg
ICAgICAgIGVsZW1lbnQgd2FzIGluc2VydGVkIGZvciB0aGUgc2VsZWN0aW9uIHBvaW50LiBIb3dl
dmVyLCB3aGVuCisgICAgICAgIHBhc3RpbmcsIHRoZSB0ZXN0IHJ1biBjb21wdXRlcyB0aGUgLXdl
YmtpdC11c2VyLXNlbGVjdCBmb3IgdGhlCisgICAgICAgIDxicj4gZWxlbWVudCwgaW5zdGVhZCBv
ZiB3aGF0IHdvdWxkIGJlIHRoZSB0ZXh0IGluc2lkZSB0aGUKKyAgICAgICAgPGlucHV0PiBhbmQg
aW5jb3JyZWN0bHkgZGlzYWxsb3dzIHNlbGVjdGlvbiBhbmQgcHJldmVudGVkCisgICAgICAgIHRo
ZSBwYXN0ZS4KKworICAgICAgICBUZXN0OiBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtcGxhY2Vo
b2xkZXItaW5wdXQuaHRtbAorCisgICAgICAgICogZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29t
bWFuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZXBsYWNlbWVudEZyYWdtZW50OjppbnNlcnRG
cmFnbWVudEZvclRlc3RSZW5kZXJpbmcpOiBza2lwCisgICAgICAgIDxicj4gZWxlbWVudHMgYWJv
dmUgdXMgYXMgdGhvc2UgYXJlIGxpa2VseSBwbGFjZWhvbGRlciBlbGVtZW50cy4KKwogMjAxMS0w
NS0wMiAgSm9zZXBoIFBlY29yYXJvICA8am9lcGVja0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhdmlkIEtpbHplci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9S
ZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAKaW5kZXggMzhhYjFiMy4uMTMyZjNkNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAK
QEAgLTI0Niw5ICsyNDYsMTAgQEAgUGFzc1JlZlB0cjxTdHlsZWRFbGVtZW50PiBSZXBsYWNlbWVu
dEZyYWdtZW50OjppbnNlcnRGcmFnbWVudEZvclRlc3RSZW5kZXJpbmcoTm8KICAgICBFeGNlcHRp
b25Db2RlIGVjID0gMDsKIAogICAgIC8vIENvcHkgdGhlIHdoaXRlc3BhY2UgYW5kIHVzZXItc2Vs
ZWN0IHN0eWxlIGZyb20gdGhlIGNvbnRleHQgb250byB0aGlzIGVsZW1lbnQuCisgICAgLy8gV2Fs
ayB1cCBwYXN0IDxicj4gZWxlbWVudHMgd2hpY2ggbWF5IGJlIHBsYWNlaG9sZGVycyBhbmQgbWln
aHQgaGF2ZSB0aGVpciBvd24gc3BlY2lmaWVkIHN0eWxlcy4KICAgICAvLyBGSVhNRTogV2Ugc2hv
dWxkIGV4YW1pbmUgb3RoZXIgc3R5bGUgcHJvcGVydGllcyB0byBzZWUgaWYgdGhleSB3b3VsZCBi
ZSBhcHByb3ByaWF0ZSB0byBjb25zaWRlciBkdXJpbmcgdGhlIHRlc3QgcmVuZGVyaW5nLgogICAg
IE5vZGUqIG4gPSBjb250ZXh0OwotICAgIHdoaWxlIChuICYmICFuLT5pc0VsZW1lbnROb2RlKCkp
CisgICAgd2hpbGUgKG4gJiYgKCFuLT5pc0VsZW1lbnROb2RlKCkgfHwgbi0+aGFzVGFnTmFtZShi
clRhZykpKQogICAgICAgICBuID0gbi0+cGFyZW50Tm9kZSgpOwogICAgIGlmIChuKSB7CiAgICAg
ICAgIFJlZlB0cjxDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24+IGNvbkZvbnRTdHlsZSA9IGNv
bXB1dGVkU3R5bGUobik7Cg==
</data>
<flag name="review"
          id="85286"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>